[Wayland/Sway]: extension popups are broken
Categories
(Core :: Widget: Gtk, defect)
Tracking
()
People
(Reporter: laser.eyess.trackers, Unassigned)
References
(Blocks 1 open bug, )
Details
Attachments
(8 files)
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:87.0) Gecko/20100101 Firefox/87.0
Steps to reproduce:
- Start Firefox with MOZ_ENABLE_WAYLAND=1
- Try to clck a popup window
I can only reproduce this on an AMD GPU, my intel GPU laptop in unaffected as far as I can tell, even with identical desktop environments, but not identical firefox settings.
Actual results:
Popups are invisible, the popup icon is highlighted so it appears to be selected, just not visible
Expected results:
Popup window with options should appear
Reporter | ||
Comment 1•4 years ago
|
||
Reporter | ||
Comment 2•4 years ago
|
||
Comment 3•4 years ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Widget: Gtk' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.
Reporter | ||
Comment 4•4 years ago
|
||
It looks like the windows are still there, just invisible. And under unknown circumstances, sometimes my bookmarks widget will do it too. I have added a new video (firefox_test.mp4) that references this.
The extension I'm using there is Dark Reader, it essentially changes the colors of a page, you can see me activating it by pressing the invisible button where I think it is. See what the menu should look like here:
https://camo.githubusercontent.com/cf0abd1233447bd9432879532ee5df9f1c4822f2d005c285424d7ea17e5f714c/68747470733a2f2f692e696d6775722e636f6d2f4479426c5977552e706e67
The cursor clearly changes to a finger and accepts my button presses, but the actual popup is invisible.
Reporter | ||
Comment 5•4 years ago
|
||
I wasn't expecting "attach a file" to immediately send my comment...
Just wanted to add that I've been having this issue for a long time now. I also use two monitors; when I unplug the external monitor and just use the laptop's own monitor, the transparent addon popups only happen sometimes. If I also make the Firefox window smaller (by opening terminals in a vertical split), then the transparent popups become even less likely.
I initially thought I'd get this issue fixed with https://bugzilla.mozilla.org/show_bug.cgi?id=1672139, but it wasn't. At least, when I'm lucky to get a popup, it won't be blank :)
I had the hope that https://github.com/swaywm/wlroots/pull/2811 would fix this, but unfortunately it does not; I rebuilt both packages from git master and I still get missing/invisible popups.
Comment 10•4 years ago
|
||
I have the same issue with FF 87.0 or FF nightly 88.0b7 under sway-1.5.1-3.fc34.x86_64.
Comment 11•4 years ago
|
||
IIUC this was only observed on Sway so far. If things work on Gnome, Weston and Kwin it's most likely a compositor bug. Lasereyes, mind creating a bug at https://github.com/swaywm/wlroots/issues and link it here?
Comment 12•4 years ago
|
||
On Wayfire (wlroots based), AMD GPU, single 2x scale monitor: currently this never happens when first clicking an extension or menu, or "reclicking" between extensions, but consistently happens when going from an extension to the main menu or the downloads one.
I'm running wlroots before https://github.com/swaywm/wlroots/pull/2811 though currently, going to update now.
Comment 13•4 years ago
|
||
Updated wlroots, no change. But interestingly it doesn't seem to happen at all on a clean mach run
profile, even after signing into sync and getting some addons.
Comment 14•4 years ago
|
||
Probably this https://github.com/swaywm/sway/issues/6147 and looks like a sway issue.
Updated•4 years ago
|
Reporter | ||
Comment 15•4 years ago
|
||
That sway bug report does indeed look related, I linked this issue there. I have a similar setup with multiple monitors with scaling.
Comment 16•4 years ago
|
||
(In reply to Robert Mader [:rmader] from comment #11)
IIUC this was only observed on Sway so far. If things work on Gnome, Weston and Kwin it's most likely a compositor bug. Lasereyes, mind creating a bug at https://github.com/swaywm/wlroots/issues and link it here?
It looks like the mozcontainer subsurface isn't being created, so I'm a bit skeptical of it being a compositor bug tbh (although I'd happily be proven wrong), especially knowing how... odd the mozcontainer construct is.
There's only 1 frame callback requested (and serviced) when the bug occurs, but it seems to take two to get the popup. Toggling fullscreen with a binding, which sends configures without having the popup dismissed, leads to the subsurface being created.
I haven't had time to debug it, but I suspect the mozcontainer setup phase ends up dropped on the floor for some reason.
Comment 17•4 years ago
|
||
You can run firefox with:
WAYLAND_DEBUG=1 MOZ_LOG="WidgetWayland:5"
env variables to check how are the surfaces created. Look for moz_container entries.
Comment 18•3 years ago
|
||
Output of firefox with the variables in comment 17.
I ran firefox with a clean profile, clicked on the Menu button four times, and exited.
Hope this helps, let me know if other input is useful.
Comment 19•3 years ago
|
||
Note that the windows are invisible but can be clicked.
If I right-click on a page, move the mouse 3px down, 3px right, and left-click, I navigate to the previous page.
This movement should be clicking the "back" button on a context menu.
Comment 20•3 years ago
|
||
I have also been having this issue (on and off since about when it was initially reported). However I am also experiencing the bug with all other "popup" windows in Firefox. This includes stuff like the right click menu, the application menu (shows the options: new tab, ..., help, quit), bookmark folder contents, the extensions overflow menu, ect. Up until recently I've usually been able to get the pop-up menus to show up, I just had to click the button which was supposed to trigger the pop-up window several times until it would work. However lately I can't get any pop-up windows to show.
The weird thing is, when I go and try to get logs by running:
WAYLAND_DEBUG=1 MOZ_LOG="WidgetWayland:5" firefox
The bug goes away, popup windows work fine. Additionally the entire UI feels scaled up and zoomed in (Like when you launch an old game from 2003 and it only supports 640x480). See the photo I attached for a with debug and without debug options screenshot to observe what I mean.
Firefox 92.0 (64-bit)
sway version 1.6.1
wlroots version 0.14.1
5.13.19_1 #1 SMP x86_64 GNU/Linux
Command in .desktop file which I normally use to launch Firefox: MOZ_ENABLE_WAYLAND=1 MOZ_DBUS_REMOTE=1 firefox
Debug output:
Gtk-Message: 19:27:17.308: Failed to load module "colorreload-gtk-module"
Gtk-Message: 19:27:17.308: Failed to load module "window-decorations-gtk-module"
JavaScript error: resource://gre/modules/XULStore.jsm, line 66: Error: Can't find profile directory.
JavaScript error: moz-extension://be956e77-73fc-4e0d-9474-63154bcc97c0/background.js, line 16: Error: Could not establish connection. Receiving end does not exist.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Comment 21•3 years ago
|
||
I just tried nightly and the bug does not show up under either run condition.
95.0a1 (2021-10-07) (64-bit)
Comment 22•3 years ago
|
||
(In reply to Noah Huppert from comment #21)
I just tried nightly and the bug does not show up under either run condition.
95.0a1 (2021-10-07) (64-bit)
Good, Thanks.
Comment 23•3 years ago
|
||
It seems to be an issue with GTK. I ran into this issue. With popup not rendering, same with right click sometimes and menu tool bar.
An MR is currently running on the GTK repo. https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3944.
I can confirm that for my setup, building and install from the fork present in the MR fixes my all my issues after restarting Firefox
For arch user: I used the AUR gtk-git, and edit the PKGBUILD with the correct source target, dont forget to change both repo url and branch name. And you're good.
Description
•