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

Can this force round corners on native Wayland clients? If so what else could you force? #27

Open
developer91234 opened this issue Aug 6, 2022 · 3 comments

Comments

@developer91234
Copy link

Sorry I can't test cause I'm not on Gnome but If your extension can do this, this has me thinking whether it's possible to re-create server side decorations for Wayland clients.

Gnome famously doesn't provide window decorations on Wayland, which breaks at least half the linux applications in existence. While the correct solution to this problem is to switch to a desktop that has a modicum of respect for third party developers, I do wonder if it could be "fixed" with an extension, similarly to how you fixed Gnome's inconsistent window shapes by forcing round corners on everything.

@developer91234
Copy link
Author

Just a few of many examples: mpv-player/mpv#3646 kovidgoyal/kitty#3284

@developer91234 developer91234 changed the title Can this force round corners on native Wayland clients? If so what else could once force? Can this force round corners on native Wayland clients? If so what else could you force? Aug 6, 2022
@yilozt
Copy link
Owner

yilozt commented Aug 7, 2022

This extensions can add round corners for Wayland clients, because we can use Shell.GLSLEffect to create a rounded rectangle shader, then call Clutter.Actor.add_effect() to apply shader to windows (because windows shown in Gnome-Shell is an Meta.WindowActor, which inhert from Clutter.Actor).

Those API has exported so it's possible to add rounded corners for all windows in a gnome-shell extensions.

I am don't have programming experience about Wayland WM / protocol, so I can't answer this question correctly. But I think it's impossible (or very hard) to implement ssd support for Wayland in Gnome by an gnome-shell extensions, this is responsibility of window manager / compositor, but sadly developer of Mutter doesn't support it.

@flexagoon
Copy link
Contributor

SSDs in Wayland should (optionally) be drawn by the compositor, so no, it's probably not possible to do that with an extension. Unless GNOME has some APIs for directly modifying how the compositor works, which I hightly doubt.

Btw if you're a developer and you don't want to spend time to implement CSDs for Wayland, you can use GNOME's libdecor library which does this for you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants