Closed Bug 644277 Opened 9 years ago Closed 9 years ago

Titlebar right-click system menu missing entries added by 3rd party software?

Categories

(Firefox :: General, defect, major)

x86
Windows 7
defect
Not set
major

Tracking

()

VERIFIED FIXED

People

(Reporter: rvortman, Assigned: jimm)

References

Details

Attachments

(2 files)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.151 Safari/534.16
Build Identifier: Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gecko/20100101 Firefox/4.0

When Firefox 4.0 is run in a virtual desktop manager (Virtual Dimension or Dexpot are two examples), and one right-clicks on the title bar, the name of the virtual desktop manager is supposed to be in the menu that comes up.  This allows the user to select a different virtual desktop to move the instance of Firefox to.  This has worked correctly in all past releases of Firefox that I've used with virtual desktop managers (for every release for about the last 5 years).

For Firefox 4.0, this doesn't work.  When you right-click the title bar of Firefox 4.0, the current virtual desktop manager name does not appear in the pop-up menu.  This is broken.

I don't know what needs to be done to Firefox 4.0 to make this work, but please take a look at this and fix it.

Thanks very much.

Reproducible: Always

Steps to Reproduce:
1. Boot Windows 7 system that has virtual desktop manager in installed (Virtual Dimension or Dexpot are examples).
2. In a virtual desktop, bring up Firefox 4.0
3. With your mouse, right click on the Firefox 4.0 title bar, and you will not see the name of the virtual desktop manager in the right-click menu.
Actual Results:  
Name of virtual desktop manager is not in the right-click menu when right-click is on title bar.

Expected Results:  
The name of the virtual desktop manager should be in the right-click menu when mouse is right-clicked on the Firefox 4.0 title bar.

This is a major feature for me, it allows me to easily use Firefox 4.0 in my normal work flow.  Without it, Firefox is still usable, but I have to use work-arounds for this breakage.  So I've classified it as "Major" in Severity.  I can see how you might downgrade this to "Normal", but for me it is "Major".
Can you post some screen shots of the problem in the menu?
I'm having a problem getting a screen shot with the right-click menu up...I right-click the Firefox window title bar and the menu comes up, and then when I try to press ALT-PrintScreen, the right-click menu goes away as soon as I press alt.  The contents of the right click menu, though are the standard "Restore", "Move", "Size", "Minimize", "Maximize", and "Close" entries from the Windows 7 windows manager (I assume that's the process that produces the standard right-click menu).  What's missing is that the name of the virtual desktop windows manager that you use would be in this menu.  If that name were in the right-click menu, when you click on that name, you would get a list of desktops to which the Firefox (or whichever window's title bar that you click on) window can be moved.  That's how you move windows between virtual desktops in virtual desktop manager applications.  Very useful, no substitute for that functionality in the virtual desktop managers that I've used (Virtual Dimension and Dexpot).

So, if I were to make a guess, I'd say that Firefox is not doing part of the registration with the Window 7 window manager that it needs to do in order for other applications (like a virtual desktop manager) to add something to its (Firefox's) right-click menu.  That's my guess, anyways...previous versions of Firefox worked correctly for this.
Summary: Firefox 4.0 doesn't work correctly with virtual desktop managers on Windows 7 → Titlebar right-click system menu missing entries added by 3rd party software?
For reference, we load and display this ourselves when users have the fx button enabled. 

http://mxr.mozilla.org/mozilla-central/source/widget/src/windows/nsWindow.cpp#4519
I wonder if we really need that reset call. I interpreted that to mean we were resetting the states of the default entries. Maybe that is resetting 3rd party additions as well. I'll fire off a try build with that disabled to see if it fixes this.
Try builds:

http://ftp.mozilla.org/pub/mozilla.org/firefox/tryserver-builds/jmathies@mozilla.com-4e7a4ff0a66d

This will take about 4 hours. rvortman would you mind taking a windows build for a test run to see if the problem persists?
This happens on my work desktop systems, please keep that in mind *smile*.  Would I install this build on top of my Firefox 4 release to test, and then re-install Firefox 4 release version on top of the test build when I'm done testing?

Or would I have to uninstall each time before (re-)installing?

Anyways, I'd be happy to help if I can...also please tell me when the build is done, and what URL to use to download.

Thanks.

-Roger
Use the win32 zip version and extract the Fx4 build to your desktop. It won't affect your normal Fx4 install (it will use the profile, but that's fine) and can be deleted from the desktop once tested. The link won't work until the build is finished, which will be up to 4 hours.
Version: unspecified → Trunk
Okay, I'll wait for the build to finish, and give it a try...most likely on Windows XP instead of Windows 7, but that shouldn't matter, the behavior is the same on both.

Thanks.

-Roger
I downloaded and started up the new Firefox build.  The problem is not fixed in this build.  Virtual Dimension was still not in the right-click menu from the title bar, the right-click menu looks identical to the one from Firefox 4.0.

I do appreciate the efforts, and am willing to test future versions, if that's helpful.

-Roger
(In reply to comment #9)
> I downloaded and started up the new Firefox build.  The problem is not fixed in
> this build.  Virtual Dimension was still not in the right-click menu from the
> title bar, the right-click menu looks identical to the one from Firefox 4.0.
> 
> I do appreciate the efforts, and am willing to test future versions, if that's
> helpful.
> 
> -Roger

Well at least we know that wasn't the problem. We'll have to dig into how these apps do this and figure out why our system menu doesn't get these entries.
Actually, the new build does fix the problem for me. Tools like this typically add their entries to the system menu only once when the window is created - at least that's what Dexpot does. So when you call GetSystemMenu with bRevert set to true, which destroys the existing system menu and builds a new one from scratch, this is indeed what removes third party entries. By the way, 628217 seems to be the same bug.
Interesting.  I didn't test the new build with Dexpot, only with Virtual Dimension.  It didn't help with Virtual Dimension.  Nice that it helps for Dexpot, though, the Firefox 4.0 release version doesn't work correctly with Dexpot.  Virtual Dimension is an open source project, you can easily download it yourself and test it to verify my testing:

http://sourceforge.net/projects/virt-dimension/files/Virtual%20Dimension/0.94/VirtualDimension-0.94.exe/download

So there is still a piece missing here.

-Roger
Duplicate of this bug: 628217
Status: UNCONFIRMED → NEW
Ever confirmed: true
Attached patch partial fixSplinter Review
(In reply to comment #12)
> Interesting.  I didn't test the new build with Dexpot, only with Virtual
> Dimension.  It didn't help with Virtual Dimension.  Nice that it helps for
> Dexpot, though, the Firefox 4.0 release version doesn't work correctly with
> Dexpot.  Virtual Dimension is an open source project, you can easily download
> it yourself and test it to verify my testing:
> 
> http://sourceforge.net/projects/virt-dimension/files/Virtual%20Dimension/0.94/VirtualDimension-0.94.exe/download
> 
> So there is still a piece missing here.
> 
> -Roger

This fix is working in VD as well. I think we'll go with this patch.
Comment on attachment 521809 [details] [diff] [review]
partial fix

Neil, this is a small bug fix to the system menu work. I was using the menu reset function improperly. We need to avoid this and reset each item manually without resetting the menu contents.
Attachment #521809 - Flags: review?(neil)
Comment on attachment 521809 [details] [diff] [review]
partial fix

>+    EnableMenuItem(hMenu, SC_RESTORE, MF_BYCOMMAND | MF_ENABLED);
...
>+    EnableMenuItem(hMenu, SC_RESTORE, MF_BYCOMMAND | MF_ENABLED);
r=me with one of those removed.
Attachment #521809 - Flags: review?(neil) → review+
Attached patch fixSplinter Review
Whoops, sorry. Updated patch.
Assignee: nobody → jmathies
http://hg.mozilla.org/mozilla-central/rev/ebb1c53b5901
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Verified on Windows 7 with:
Build identifier: Mozilla/5.0 (Windows NT 6.1; rv:2.2a1pre) Gecko/20110404 Firefox/4.2a1pre
Status: RESOLVED → VERIFIED
Duplicate of this bug: 548272
Duplicate of this bug: 656568
You need to log in before you can comment on or make changes to this bug.