Popup menus clipped by window - should use separate windows

RESOLVED INCOMPLETE

Status

Core Graveyard
Widget: Qt
RESOLVED INCOMPLETE
8 years ago
2 years ago

People

(Reporter: heeen, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

8 years ago
Right now for a Desktop build, menus are clipped by the main window, as they are drawn by xulrunner directly on top of the main xul view.
We should create separate Qt windows for each popup menu to faciliate menus bigger than the main window, drop shadows and other platform window decorations on popup and context menus.
(Reporter)

Comment 1

8 years ago
Created attachment 513100 [details] [diff] [review]
work in progress

Here's a first patch that pushes menus in their own widget. There are still a few problems, though:
* I couldn't use the Qt::Popup window flag because the QGraphicsView will eat all events and never release its grab on the keyboard and mouse - very bad
* not using Qt::Popup causes all menus to appear as a taskbar item
* sometimes the content on menus will vanish if you open a second menu or hover around a bit.
I think this bug would be interesting for Tatiana, because she was fixing some problems around this area
(Reporter)

Comment 3

8 years ago
Created attachment 515030 [details] [diff] [review]
hovering works, proper popup flag

Latest WIP patch. This uses Qt::Popup which should prevent the popup menus from getting thier own taskbar entry. I had to write logic to forward mouse events to parent menus and the main window because of the modality that Qt::Popup causes.
Attachment #513100 - Attachment is obsolete: true

Comment 4

2 years ago
In bug 1282866, I have removed the QT code from the Firefox tree with the approval of the active peer. That code is not currently maintained by any team.

I have looked through the bugs in the Widget: Qt bugzilla component and I believe all of these are no longer relevant because the Qt code has been removed. If you believe that this bug is still valid, please move it to another more appropriate bugzilla component as you reopen it.
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → INCOMPLETE
(Assignee)

Updated

2 years ago
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.