Closed Bug 1784876 Opened 2 years ago Closed 2 years ago

[Wayland] Library menu flickering on close

Categories

(Core :: Widget: Gtk, defect, P3)

defect

Tracking

()

RESOLVED FIXED
106 Branch
Tracking Status
firefox106 --- fixed

People

(Reporter: stransky, Assigned: emilio)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

Library menu is flickering on close.

It's because the panel popup is always created as a new window and when we pile them up (we open a new popup while the old one is still open) the anchor calculation is wrong - the underlying popup is shifted by move-to-rect call.

Not sure why we fail to close the popup after second mouse click.

EDIT: That's also reason why we can't close the previous popup - according to layout the two popups is correct setup.

Emilio, can you help me to debug this? Any idea why it's new popup opened when we expect close of the previous one?
Thanks.

Flags: needinfo?(emilio)

It happens when library icon is moved to left and move-to-rect is used. When move-to-rect is disabled (at about:config) it works as expected. I wonder if it's related to anchor config or so.

Can it be related to wrong anchor (or something different) stored at nsMenuPopupFrame ?
I wonder if we return wrong info to content so content opens another popup instead of closing the existing one.

When we move-to-rect we call nsMenuPopupFrame::MoveTo, which causes our
anchor type to be a point. However, we still want to check the original
anchor node for rollups (the button in this case).

Assignee: nobody → emilio
Status: NEW → ASSIGNED
Flags: needinfo?(emilio)
See Also: → 1788273
Pushed by ealvarez@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2f18062042c8 Fix rollup code for moved-to-rect popups. r=stransky
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 106 Branch
Blocks: 1645695

I tried reproducing this issue on Ubuntu 22.04 on a 2022-08-15 Nightly build in a Wayland session without success.
I have widget.wayland.use-move-to-rect set to true, layout.css.devPixelsPerPx to -1.0. Are there any other tweaks I need to configure in order to reproduce?
Thanks.

Flags: needinfo?(stransky)

No need to verify this one.

Flags: needinfo?(stransky)

Thank you. I shall remove the qe-verify based on Comment 9.

Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: