-
-
Notifications
You must be signed in to change notification settings - Fork 76
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
Implement PantheonShellX11 protocol #1997
Conversation
…om/elementary/gala into lenemter/shell-clients-support-x11
I think this is a bit beyond my technical knowledge, but afaict everything works as expected and I'd love to not have to ship Plank for X11 ❤️ |
This would be really cool :) Since X11 has pretty much no security anyways what if we just allow windows to set the x property _MUTTER_HINTS (or one of our own if preferred) to something like |
@leolost2605 I think using x properties is double-edged sword. While, yes, it would save us ids and dbus stuff, but we would have to deal with x properties (which I assume is a bit more complicated than simple dbus interface) and also listen to properties changes in Gala, since user can change dock hide mode. |
IMHO it's not that bad at least when using the _MUTTER_HINTS property because there mutter already handles everything for us. I did a quick implementation at #2002 which works with elementary/dock#263. What would you say about that? Or if you really prefer we could also do it this way, although we kinda want to move away from launching our clients in general see https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3844) |
Closes #1965
Makes Gtk4 Dock (and other Gtk4 ports in the future) usable in X11 session.
This is achieved using 3 "hacks":
supports-id
as an attribute in shell list. If it's true, then window is launched with a unique id by passing it as--id <id here>
. Then Gala can identify new windows by checking the window titles.PantheonShellX11
protocol for positioning windows on X11. It requires an id from the first step. Other than that it's a simplified copy of our Wayland protocol.X.Display
.You can use elementary/dock#260 to test it with the dock.
Unblocks elementary/notifications#157