Closed Bug 1539471 Opened 9 months ago Closed 7 months ago

[wayland] Track active popup windows on Wayland


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




Tracking Status
firefox68 --- fixed


(Reporter: stransky, Assigned: stransky)


(Blocks 2 open bugs)



(1 file, 1 obsolete file)

Wayland keeps strong popup window hierarchy. We need to track active (visible) popup windows and make sure we hide popup on the same level before we open another one on that level.

It means that every open popup needs to have an unique parent else we get wayland protocol error and the new popup is not shown.

Attached patch mozilla-1539471.patch (obsolete) — Splinter Review

Parked here until the dependent patches are review/checked in.

Blocks: 1543600
Depends on: 1423598
Type: enhancement → defect
Attachment #9054173 - Attachment is obsolete: true

In order to show all popups on Wayland we need to set popup parent runtime for popups which don't have
fixed parent. For instance popup menus (fired after right button mouse click) can be issued on top of another popup
and we need to follow that connection on Wayland.

We track all open (active) popups to:

  • close all visible tooltip windows when we're going to open another tooltip
  • close concurrent popup on the same level when a new one is about to open
  • get latest active popup as a parent for a new tooltip windows
  • get latest active popup as a parent for a new popup menu without fixed parent
Keywords: checkin-needed

Pushed by
[wayland] Track active popup windows on Wayland and use dynamic popup hierarchy, r=ashie

Keywords: checkin-needed
Closed: 7 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68

I expect this bus can cause some regression as we depend on compositor now. Some fixes landed at mutter-3.32.1 but I still see some minor regressions in popup placement so it needs some further work.

Regressions: 1550051
You need to log in before you can comment on or make changes to this bug.