Closed Bug 610763 Opened 9 years ago Closed 6 years ago

The context menu of the Firefox button needs to display the system menu

Categories

(Firefox :: General, defect)

x86
Windows 7
defect
Not set

Tracking

()

RESOLVED WONTFIX
Tracking Status
blocking2.0 --- -

People

(Reporter: faaborg, Unassigned)

References

Details

(Whiteboard: [target-betaN])

Attachments

(1 file)

A lot of users are used to right clicking on the window's title icon to access the system menu.  We should continue to support this right click behavior with the Firefox button.
Assignee: nobody → jmathies
This is kind of tricky. We currently send the context menu event, and then test for content using NS_MOUSE_MOZHITTEST before we display the system menu. If I remove the NS_MOUSE_MOZHITTEST check and only rely on the result of the NS_CONTEXTMENU event, I can bring this up on the Fx button. But then we end up being able to bring up the system menu on things like the status bar. An alternative would be to handle the context menu event on content (even if we don't display anything) so that the event returns nsEventStatus_eConsumeNoDefault. But that might be a paint to maintain down the road.
Can we just built our own equivalent system menu in XUL?  That would allow us to more easily add additional commands, like toolbar customization, and the ability to hide or display parts of the UI.  It's now the case that you can turn off the navigation toolbar and if you don't have any tabs you don't really have a surface to turn it back on.
(In reply to comment #2)
> Can we just built our own equivalent system menu in XUL?  That would allow us
> to more easily add additional commands, like toolbar customization, and the
> ability to hide or display parts of the UI.  It's now the case that you can
> turn off the navigation toolbar and if you don't have any tabs you don't really
> have a surface to turn it back on.

Possibly. We would need some additions/tweaks to nsIDOMChromeWindow for that since options like size and move require a message be sent to the default Windows event procedure to kick off the window interaction modes.

https://developer.mozilla.org/en/XPCOM_Interface_Reference/nsIDOMChromeWindow

cc'ing Neil, he might have some ideas.
blocking2.0: --- → ?
We could add stuff to nsIDOMChromeWindow (that the chrome would then use) which would then presumably call through nsIWidget to the widget implementation in much the same way that nsResizerFrame calls BeginResizeDrag for a resize.
Whiteboard: [target-betaN]
blocking2.0: ? → -
(In reply to comment #2)
> Can we just built our own equivalent system menu in XUL?

That's a bad idea, because there are many tools that extend the native system menu and add very useful options, like for example "Always on Top" or "Take screenshot". For example the NVidia graphic driver does this by default IIRC, so there are really a lot of users that are affected by this.

We already can show the system menu when right clicking on the glass above the tab bar. Creating a different menu for the Firefox button seems bad, complicated and inconsistent.
>That's a bad idea, because there are many tools that extend the native system
>menu and add very useful options

Ok, then the more complicated approach would be to try to add a few Firefox specific commands to the native system menu for our application (so we could get both those, and any that are added by other applications on the system).  Either way, we'll worry about that later.

>Creating a different menu for the Firefox button seems bad,
>complicated and inconsistent.

Either way the menu you get when you right click the Firefox button should be the same as the menu you get when you right click the title bar.
(In reply to comment #0)
> A lot of users are used to right clicking on the window's title icon to access
> the system menu.

I think this is actually not true and that users are really used to left-clicking the icon...
Duplicate of this bug: 628215
Left click is the system menu - yes
Assignee: jmathies → nobody
The Firefox button is gone.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.