Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Layer shell popups don't appear to be constrained to the screen #8518

Open
tmccombs opened this issue Jan 3, 2025 · 0 comments
Open

Layer shell popups don't appear to be constrained to the screen #8518

tmccombs opened this issue Jan 3, 2025 · 0 comments
Labels
bug Not working as intended

Comments

@tmccombs
Copy link
Contributor

tmccombs commented Jan 3, 2025

sway version 1.10

Description

I am working on a branch to migrate waybar to gtk4. One issue I've run into is that if the bar is on the bottom , then tooltips are shown off screen, because they are drawn underneath the bar instead of above.

This is partly due to the fact that GTK seems to always try to draw the tooltips below the target widget, however, It also seems that sway (or maybe wlroots?) isn't properly configuring the xdg_popup for the tooltip and constraining it to the screen.

If I make a normal floating window, with a single label, and put it down at the bottom of the screen, the tooltip is correctly positioned above the mouse, and I see an xdg_popup.configure event from sway telling it that it has configured the popup above the window.

However, with waybar, which uses the layer shell, the configure event says to place the popup below, even though that is off screen.

I'm guessing the constraint logic just isn't being used for the layer shell.

Debug logs

Here are the logs from WAYLAND_DEBUG=1 of my version of waybar, showing the tooltips off screen:
https://gist.github.com/tmccombs/3b55e689d51abbbd7d2235e4e5c36035

@tmccombs tmccombs added the bug Not working as intended label Jan 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Not working as intended
Development

No branches or pull requests

1 participant