Closed
Bug 41526
Opened 24 years ago
Closed 23 years ago
Need 'Set as Wallpaper' on windows
Categories
(SeaMonkey :: UI Design, enhancement, P2)
Tracking
(Not tracked)
VERIFIED
FIXED
mozilla0.9.9
People
(Reporter: bugs, Assigned: hewitt)
References
()
Details
(Keywords: platform-parity, Whiteboard: [Hixie-P0])
Attachments
(1 file, 2 obsolete files)
10.55 KB,
patch
|
hewitt
:
review+
hewitt
:
superreview+
|
Details | Diff | Splinter Review |
Just about every (windows) browser since the dawn of time has allowed the user
to set an image as their desktop background. Since going down the XP road, we
seem to have lost this ability, which is a shame, as this was a feature I used
;)
Filing so that this issue is 'on the record.'
Comment 1•24 years ago
|
||
m21. law. There's another bug to get context menu version
of this working, I think I have that.
Assignee: don → law
Target Milestone: --- → M21
nav triage team:
Not a beta1 stopper, marking nsbeta1-
Keywords: nsbeta1-
Marking nsbeta1- bugs as future to get off the radar.
Target Milestone: --- → Future
Comment 4•23 years ago
|
||
C|net has spoken, we should fix it. ;) oh, and add a smiley or two. :)
Keywords: mozilla0.9.2,
nsCatFood
Comment 5•23 years ago
|
||
Adding 4xp keyword
Can anyone explain why this is listed as pp? It's not even an option on any
other platform so it's certainly not an issue of "parity" between them.
Keywords: 4xp
Comment 6•23 years ago
|
||
Resetting milestone. Catfood and future don't mix.
Target Milestone: Future → ---
Comment 7•23 years ago
|
||
-> UI Design
Assignee: law → mpt
Component: XP Apps → User Interface Design
Depends on: 75338
QA Contact: sairuh → zach
Comment 8•23 years ago
|
||
But a few features from Netscape 4.x we missed in 6 are still absent, ... the
Set As Wallpaper menu, which lets you grab any graphic from the Web and turn it
into your desktop wallpaper.
--CNet Review of NS6.1 PR1
Just felt I should quote the CNet article mentioned by jelwell. If this will get
us better reviews, we might want to push for it. The main questins however is
how do we implement this? Is there a windows API to do this?
Comment 9•23 years ago
|
||
1) How is this "UI design"? It's not like there's any question of where to put
the option once we have it (the only legit place for it is in the context menu
of an image and in the context menu of a page that has an image for the
background).
2) I agree that this should be implemented, just for 4xp reasons and because
when I used to use windows, I really did find this option useful (eg see a
webpage with a background I liked and set it as my windows background too).
3) 2 minutes of LXRing in the MozillaClassic source pointed me to this, which
looks like source code to set as wallpaper. Presumably this code could be used
as the basis of the implementation for this functionality...
http://lxr.mozilla.org/classic/source/cmd/winfe/popup.cpp#1195
Presumably many of the calls used by this code don't exist in the new world, but
it's a start (and it includes the magic windows function which actually does the
"set as wallpaper" operation given a filename to a .bmp file)
Comment 10•23 years ago
|
||
I'm not sure I see the point in this. If you want to have wallpaper, just save
the image and set the wallpaper from the Control Panel (under Display).
This isn't something you do everyday so it just bloats up the already bloated
context menu. Plus it makes it easy for pranksters to put obscene wallpaper on
networked computers (such as in schools-this happens ALL the time) even if the
sysadmin locked the display settings. This sort of thing happens all the time.
Comment 11•23 years ago
|
||
this is a UI issue, as it adds to our already overlong contextmenus.
This is pp because i doubt it would work in linux, not sure about the mac.
Comment 12•23 years ago
|
||
I guess I could do this. I'd have to go bother pav about retrieving bitmap
representations of other formats (4.x, IE, etc. let you set gifs and others as
wallpaper).
Whiteboard: [br]
Comment 13•23 years ago
|
||
pp Platform Parity bugs. A bug is a Platform Parity bug if it only occurs on
one particular platform or two platforms, but not all three - Win, Mac and
Linux. For example, if you find a bug on Linux, but it does not occur using the
same day's Win32 or Mac OS build.
It kinda fits =)
http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/cmd/winfe/cxdc1.cpp&rev=3.6
&mark=404-612
has the code to export to bitmaps. it should be noted that 98+ and 2k+ support
jpegs and gifs and might even support png's or other formats.
so in reality the old code sucked on 98/2k+ =).
re exploitation by 'hackers' in schools and libraries, that's because the
systems weren't properly secured. It is possible to lock the %winnt%
(ntfs) directory against changes/writes/creates and protect HKLM/HCU, "Control
Panel\Desktop" against changes/writes/creates. This applies to nt4 or newer.
Trying to lock down 9x or complaining that you can't is like trying to stop the
mississippi river w/ 3 2" toothpicks.
I'm giving this bug back to law to consider implementing. Someone else should
file a bug about the interface for it.
Assignee: mpt → pchen
Component: User Interface Design → XP Apps
QA Contact: zach → sairuh
Whiteboard: [br]
Comment 14•23 years ago
|
||
timeless: this bug was in the UI Design component because many people think this
option shouldn't be in the browser's image context menu. mpt is working on a
spec for context menus in bug 75338. If you think we need a separate bug to
implement a backend that may or may not be used, please file a new bug.
Assignee: pchen → mpt
Component: XP Apps → User Interface Design
QA Contact: sairuh → zach
Comment 15•23 years ago
|
||
If mpt already has a bug to design a spec for the context menus then he doesn't
need ot own this bug. However this bug is totally useless if there is no
backend.
As such I would reassign to blake/law and mark this bug as blocking not
blocked by mpt's bug -- which he clearly has.
Updated•23 years ago
|
Comment 16•23 years ago
|
||
Re: the URL added by MPT.
I thought I'd quote the relevant part of the page to save other users from
having to search through it:
"Eric Hartwell highlights a notable problem with the design of the context menus
Internet Explorer. Eric often avails himself of the 'Save Image As' menu item to
copy images from web sites. Unfortunately, the 'Set as Wallpaper ' menu item is
located immediately below the desired menu item, making it a likely inadvertent
target. The problem is that 'Set as Wallpaper ' acts immediately and
irreversibly; the application does not first prompt the user, as is the case
with the menu items immediately before and after it, so there is no way to
cancel the action. If the 'Set as Wallpaper' item is inadvertently selected, the
user will have to go somewhere else and perform a series of actions to undo the
effects of the unintended action."
Obviously, we want to avoid these problems in Mozilla. I'm not sure if placing
'Set as Wallpaper' item away from the 'Save Image As...' item is a good idea as
I think the image-related commands should be together (they're not at the
moment, BTW). However, a confirmation dialogue would be good. It would also be
nice if the dialogue told the user where to go to undo this change (though that
may make the dialogue text too long). So I suggest this text for the dialogue:
Do you wish to set the image whatever.gif as your desktop wallpaper?
You can set your wallpaper in the Background tab of the Desktop Properties
dialog(ue), which is accessible from Control Panel.
[Set As Wallpaper] [Cancel]
Thoughts? Comments?
Comment 17•23 years ago
|
||
"You can set your wallpaper in the Background tab of the Desktop Properties
dialog(ue), which is accessible from Control Panel."
I see no reason why this bug can't be XP. AFAIK Mac has a wallpaper, and popular
Linux Desktops have a wallpaper too (Gnome/KDE). If this were done XP an XP
explanation of where to set the wallpaper would be needed.
Comment 18•23 years ago
|
||
yes, we could totally implement this with an XP interface to the desktop
background, that has 3 unique implementations.
Comment 19•23 years ago
|
||
This is definitely implementable, but it's a bad idea. Several reasons have been
given in this bug; it's a pain for network admins trying to avoid students etc.
setting porn as the wallpaper, there is OS-level functionality for it, it can be
accidentally hit and is irreversible (and no, Yet Another Confirm Dialog is not
the solution to this problem) and it's, in the end, irrelevant to what a browser
_does_.
Gerv
Comment 20•23 years ago
|
||
gerv: please see my comments from 2001-06-15 15:20.
Who said there was os level functionality for this? You can't easily do this on
w95. There is a version of mspaint that supports plugins to allow it to open
gif and jpeg, but getting the filters and the app require more work than buying
a real paint app.
As for undoable, it's certainly possible for this to be undoable.
Mail is irrelevant to what a browser does, so is building web sites, chatting
on irc, chatting in general, perhaps even rendering math. That doesn't mean we
don't have those features.
Comment 21•23 years ago
|
||
It'd be nice to have a preference to turn this off, or at the very least a
dialog asking if we're sure we'd like to change the wallpaper. I've hit this
item by accident several times and it's an inconvience to have to reset my
wallpaper and remove the image file. I know I'm not the only one who's done
this.
Reporter | ||
Comment 22•23 years ago
|
||
While Gerv's concerns are valid, the installed base of wallpaper-setting-capable
browsers on Windows networks is already vast, and if this problem exists, it's
likely sysadmins have already disabled this option using respective CCKs.
This isn't reason enough to remove this feature from all users. This same logic
can be used to remove the ability to set the homepage, as people can set other
people's homepages to porn (copying hyatt, who has suffered this in the past ;)
Comment 23•23 years ago
|
||
This is a useless feature and should not be checked in to Mozilla.
Comment 24•23 years ago
|
||
> Unfortunately, the 'Set as Wallpaper ' menu item is
> located immediately below the desired menu item
> -- Alex Bishop 2001-07-03 10:58
Would placing it above the "Save as..." options reduce the accidental clicks?
Usability people know? When I've accidently clicked the wrong item it's
invariably been below the required item.
> I've hit this item by accident several times and it's an inconvience
> to have to reset my wallpaper and remove the image file
> -- Matt Perry 2001-07-15 21:32
Maybe the saved file can have a hardcoded filename in the user directory, e.g.:
wallpaper(.bmp) so that the next image you immediately set (after confirming in
the dialog) as the wallpaper, overwrites the (offending?) wallpaper you didn't want.
Comment 25•23 years ago
|
||
"Maybe the saved file can have a hardcoded filename in the user directory, e.g.:
wallpaper(.bmp) so that the next image you immediately set (after confirming in
the dialog) as the wallpaper, overwrites the (offending?) wallpaper you didn't
want."
If I understand you correctly, that's how it worked in previous versions.
Choosing the 'Set as Wallpaper' command would save the image as "Netscape
Wallpaper.bmp" (converting it to from GIF or JPEG or whatever to Windows Bitmap
format) and set it as the wallpaper file. The problem is that if you have "Nice
Picture.bmp" set as your wallpaper and then accidentally set a Web page image as
your wallpaper, you must manually change it back to "Nice Picture.bmp" and
delete the "Netscape Wallpaper.bmp" file (as it's no longer needed).
As several people have objected to this feature, why can't the function be
toggled with a line in the prefs.js file? Something along the lines of:
user_pref("browser.enable_set_as_wallpaper", true);
Comment 26•23 years ago
|
||
> The problem is that if you have "Nice
> Picture.bmp" set as your wallpaper and then accidentally set a Web page
> image as your wallpaper, you must manually change it back to "Nice
> Picture.bmp" and delete the "Netscape Wallpaper.bmp" file (as it's no
> longer needed).
The dialog should prevent people from accidently changing their wallpaper.
> As several people have objected to this feature, why can't the function
> be toggled with a line in the prefs.js file? Something along the lines
> of: user_pref("browser.enable_set_as_wallpaper", true);
The kind of users who'd like this feature in the context menu are unlikely to
know how to edit config files. They probably also don't know how to save and
convert it, and manually set it as wallpaper thru the OS.
At the end of the day it's up to the programmers to choose if/how this should be
implemented. Would the best thing be to leave it to others to include it in a
"for Joe Average" browser based on the Moz code?
Comment 27•23 years ago
|
||
> The kind of users who'd like this feature in the context menu are unlikely to
> know how to edit config files. They probably also don't know how to save and
> convert it, and manually set it as wallpaper thru the OS.
I think the pref should be enabled by default (i.e. the prefs.js file should
contain user_pref("browser.enable_set_as_wallpaper", true); in it). Then
advanced users who get annoyed by the option can edit their prefs.js file to
remove the feature.
Comment 28•23 years ago
|
||
Although I generally respect what Gervase Markham and David Hyatt have to say, I
really do not understand their position on this feature.
You may find it "useless" or believe it to be "irrelevant to what a browser
does", but there are a whole lot of people out there who expect this capability
and would not consider using a browser that does not have it. I know of people
who change their Windows wallpaper 3 or more times a week and more often than
not, they do it via their web browser.
If you have a problem selecting the correct context menu item, then figure out
something to help you be more accurate (ie add a separator between the items),
but removing an option from the menu is not going to stop you from selecting the
wrong option (you will just select a different wrong option) unless you are
suggesting that we limit the context menu to a single item?
If you think there are too many options in the context menu, then create a UI
preference dialog where users can select which context menu items you want and
which ones they do not want.
If Mozilla is going to be the best browser available then it should include as
many features that users want as possible. Making the decision that this is a
"useless" and "irrelevant" feature sounds a bit too patronizing when we all know
that people are asking for it.
Comment 29•23 years ago
|
||
Netscape versions up through 4.x had this feature, and the default response to
this bug should be to include this feature in later versions. Users are used to
it, and at least some are desiring its return, or CNET wouldn't have complained
about it.
The time to remove this feature is not now when people are already bitching that
in some ways, 4.x was more usable than current versions. In Windows at least,
there is still no systray mail notification icon, there is still no fullscreen
option, we don't have an undockable task bar that can stay in front of all other
programs - and we still don't have a Set as Wallpaper feature.
Possible compromise:
We COULD add a dialog box that says:
"You're about to replace your wallpaper with _filename_. Click Cancel if you
don't want to replace your wallpaper."
[OK] {Cancel]
AND put a "Never Show Me This Window Again" checkbox so that users who don't
want to be annoyed by the dialog can disable it.
Comment 30•23 years ago
|
||
<< The problem is that if you have "Nice
Picture.bmp" set as your wallpaper and then accidentally set a Web page image as
your wallpaper, you must manually change it back to "Nice Picture.bmp" and
delete the "Netscape Wallpaper.bmp" file (as it's no longer needed). >>
-- Alex Bishop 2001-08-02 17:54
Or if you already have "Netscape Wallpaper.bmp" as your wallpaper, and you
accidently set a NEW "Netscape Wallpaper.bmp" as your wallpaper, then you have
to go back to another web site and find the one you used to have, which may or
may not still be available to d/l. However, if the old wallpaper file is not
automatically overwritten by Moz, then it is not possible to set a new one to
overwrite an offending picture:
<< Maybe the saved file can have a hardcoded filename in the user directory,
e.g.:
wallpaper(.bmp) so that the next image you immediately set (after confirming in
the dialog) as the wallpaper, overwrites the (offending?) wallpaper you didn't
want. >>
-- Jeandré 2001-07-31 15:57
Possible solution: Instead of "Yet Another Confirm Dialog" there could be a box
with options. On Win95, the wallpaper can be "tiled" or "centered." On Win98
(actually I think IE4 Windows Desktop Update thingy) it can also
be "stretched." I doubt many users will want to tile a picture, but the other
two are pretty common (i.e. either leave it in normal proportions or make an
almost-the-right-size image fit without having a border the color of the
desktop). Maybe:
(?) Would you like to set <image-name/> as your desktop wallpaper?
[Center] [Stretch] [Tile] [No]
And could Moz remember the choice used last time, and give it focus so the user
can use the same option by pressing enter if s/he doesn't want to read the
buttons but remembers his/her last choice? This way the way Microsoft Paint
does it can be avoided (it has two menu options: Set as wallpaper (centered),
Set as wallpaper (tiled).
Or, to solve the problem of clicking the wrong option and having something
undesired happen, this could be a sub menu. Such as (needs to be reworded):
...
Save image as...
Set as wallpaper > Set as tiled
----- Set as centered
Select all Set as stretched
... whatever else there is
This way, no annoying dialog pops up, but also nothing happens with a misplaced
click, because the real command is on the submenu.
Comment 31•23 years ago
|
||
MPT, since you haven't accepted this bug; would you mind if I re-assigned it to Ben?
Keywords: mozilla0.9.2
Comment 32•23 years ago
|
||
I like Pete's idea. A dialog's not as bad if it adds value. And it allows
cancellation, which would be a lot easier than implementing Undo. And it makes
the product appear more featureful. ;-)
Gerv
Reporter | ||
Comment 33•23 years ago
|
||
Taking, part of Context Menu work.
Assignee: mpt → ben
Priority: P3 → P2
Target Milestone: --- → mozilla0.9.6
Comment 34•23 years ago
|
||
I think people are overlooking an obvious solution. The users that are against
this are generally in Mozilla's target audience. The users that "need" this are
in Netscape's target audience. My suggestion is that Netscape should add this
feature along with other Netscape-specific items such as AIM. Then we can leave
this out of Mozilla.
BTW, I have never purposely used this feature in IE, but I have triggered it
accidently many times.
Reporter | ||
Updated•23 years ago
|
Severity: normal → enhancement
Status: NEW → ASSIGNED
Reporter | ||
Comment 35•23 years ago
|
||
Joe has volunteered to take this
Assignee: ben → hewitt
Status: ASSIGNED → NEW
Component: User Interface Design → XP Apps: GUI Features
Assignee | ||
Updated•23 years ago
|
Status: NEW → ASSIGNED
Target Milestone: mozilla0.9.6 → mozilla0.9.7
Comment 36•23 years ago
|
||
I like the idea of a confirmation dialog with explanatory text.
As for not adding this to Mozilla, my sister uses this feature (on IE, of course)
on a nearly daily basis; if I converted her to using a Mozilla-based product she
would complain if there was no way to do this.
Whiteboard: [Hixie-P0]
Assignee | ||
Comment 37•23 years ago
|
||
perf/footprint work is pushing this back
Target Milestone: mozilla0.9.7 → mozilla0.9.9
Comment 38•23 years ago
|
||
> the only legit place for it is in the context menu
> of an image and in the context menu of a page that has an image for the
> background
I disagree. A "Set as Wallpaper" command should not be added to the context
menu. It is an extremely seldom used option and the context menu is way too long
anyway. Make the main menu context-sensitive, if you really want to add the
option. IMHO.
Comment 39•23 years ago
|
||
Ben, how do you propose that focus might end up on an image so that we can make
the main menu context-sensitive? The only images that are focusable are input
type=image, which are rarely suitable for wallpaper :)
Comment 40•23 years ago
|
||
Stuart, mpt's spec explains an excellent way of implementing this without the
need for a context menu (as this spec is listed on mozilla.org does it mean it's
an official spec and the way this feature needs implemented in mozilla?)
Source: http://mozilla.org/projects/ui/menus/shortcut/
Where’s Set as Wallpaper?
In the Tools menu. This item should open a dialog (which defaults to the
selected image, if there is one), so you can:
* choose between the various images on the page (useful if the one you
want is a page background, or is layered behind other content);
* give the image a meaningful name, so you can find it in the relevant
control panel later;
* choose whether you want the image stretched, centered, or tiled;
* choose Cancel if you selected the menu item by mistake, without Mozilla
resorting to anything as obviously annoying as an alert.
** END QUOTE **
I think mpt's idea for this feature is the best, for those coming from IE or
Netscape it may take some time to get used to, however ultimately it is the
better solution (for the reasons mpt states) and saves us people who don't use
it having an extra item in the context menus (also keeps context menus
consistent between Windows and platforms that don't have support for set as
wallpaper)
Assignee | ||
Updated•23 years ago
|
Target Milestone: mozilla0.9.9 → mozilla1.0
Assignee | ||
Updated•23 years ago
|
Target Milestone: mozilla1.0 → mozilla0.9.9
Assignee | ||
Comment 41•23 years ago
|
||
This patch is not ready for prime-time, I'm just posting it as a record of my
progress. This patch actually does work, and is able to correctly save about
90% of images as bmp files. However, there are some cases where the image data
we get back from the video card is not a pure stream of RGB pixels - perhaps it
is optimized somehow. In these cases, the bmp file is corrupt and set as
wallpaper will result in a blank desktop.
I talked to Stuart about this for a while and he says he's been thinking of a
way to expose image data serialization for some time now, but hasn't yet
arrived at a solution. I'll play around with this for a while and see if I can
get something working myself -- if not, guess I'll have to push this bug back
again. :/
Assignee | ||
Comment 42•23 years ago
|
||
Looking more closely at this, I am seeing that my patch is actually close to
working completely. I just discovered that the pixel data I get back from
nsIImage::GetBits is actually already converted from a DDB to a non-compressed
DIB, so it should work perfectly all the time. I think the reason the files are
messed up is because the DIBs are 32 bit in memory and I was trying to write
them as 24 bit. Why some bitmaps worked and others didn't I don't know yet. I
don't think I want to be writing these bitmaps as 32 bit, though.
Assignee | ||
Comment 43•23 years ago
|
||
Ok, problem solved, the resolution of the bitmap will always be the resolution
of the video card, so if your card is set to 16, 24, or 32 bit, that will be the
res of the DIB I get back from nsImageWin::GetBits, and that's exactly what I'll
serialize to the bmp file. So, looks like this patch is almost ready to go!
I'll post an updated one shortly.
Assignee | ||
Comment 44•23 years ago
|
||
Attachment #69708 -
Attachment is obsolete: true
Comment 45•23 years ago
|
||
Comment on attachment 69747 [details] [diff] [review]
patch 2.0
add some null checks around the GetImageRequest, GetImage, etc functions, as
they can return null. do that and r=pavlov
Attachment #69747 -
Flags: review+
Comment 46•23 years ago
|
||
Problem with this patch is the filename "Mozilla Wallpaper.bmp" is hardcoded so
whether they're using Mozilla.org's mozilla, Netscape 6.x or another Mozilla
based derivative then the user is gonna have the same filename.
There's already been cases where people have seen their html files described as
"Mozilla Hypertext Document" when they've installed Netscape 6 and users have
been confused wondering what Mozilla is.
Also this implementation doesn't fit in with the spec posted on mozilla.org (see
link I posted in comment #40).
Anyway if this is to go into mozilla as a context menu item rather than as mpt's
spec suggested then I think the naming of the file should be based on the
original filename (e.g. moz1.gif -> moz1.bmp) that means if somone accidentially
sets something as a wallpaper there's less chance of the old one being overwritten.
If this isn't gonna happen then 'Mozilla' should be ditched from the filename so
as not to confuse users of non Mozilla branded versions. "Browser
Wallpaper.bmp", "Navigator Wallpaper.bmp"...?
Assignee | ||
Comment 47•23 years ago
|
||
This patch addresses stuart's comments and renames the file to "Navigator
Wallpaper.bmp"
Attachment #69747 -
Attachment is obsolete: true
Assignee | ||
Comment 48•23 years ago
|
||
Comment on attachment 69764 [details] [diff] [review]
patch 3.0
r=pavlov
sr=blake
Attachment #69764 -
Flags: superreview+
Attachment #69764 -
Flags: review+
Assignee | ||
Comment 49•23 years ago
|
||
fixed. I opened bug 126366 to deal with the added work to make this work for
background images, but support is now in for html:imgs.
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Updated•23 years ago
|
QA Contact: zach → sairuh
Comment 50•23 years ago
|
||
vrfy'd fixed using 2002.03.06.06 comm bits on win2k. when i select "set as
wallpaper" from the context menu, it's saved as "Netscape 6 Wallpaper" under the
Background tab of the win2k Display Properties dlg.
Status: RESOLVED → VERIFIED
Updated•20 years ago
|
Product: Core → Mozilla Application Suite
You need to log in
before you can comment on or make changes to this bug.
Description
•