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
Wayland #15
Comments
Thanks for the report. I'm planning to support Wayland in near future. However, the current state of Qt Wayland support doesn't allow using it by default in Fedora 25 as of now. As you yourself mentioned, the window decorations are wrong and we'll have to figure out the proper way to get SSDs from mutter. And I think font configuration is wrong too. |
An alternative to SSDs from Mutter could be to introduce CSDs to KF5 and then use Adwaita's Qt port for those. That way all KF5 could work under Gnome (and other CSD-focused desktops) even if QGnomePlatform is not installed. |
Mutter on wayland does not support SSDs. You will have to use Qt's CSDs |
Unless Martin asks a fellow Red Hat colleague to implement SSD support for Wayland (not even user configurable but when apps request that, comply with that request). |
So we talked about it with a fellow Red Hat colleague and it seems there's currently no way to get SSDs from Mutter, as @benwaffle said. |
Hi |
I just toyed a bit with the current state of this (enabling Some issues:
Other issues, which might be general to QT on Wayland:
Apart from that I must say that apps look way better with the Wayland backend when fractional scaling is used (they get scaled up by the compositor otherwise, which looks blurry). If there are any bugs left specific to Mutter/GS, please let me know, I might be able to help out at that front. |
about cursor size about window borders |
I don't know why, but Wayland platform plugin doesn't use any gtk/gnome platform theme on gtk based desktops. I have patches to solve all of this on Fedora 31, where I want to have Wayland by default on Gnome. See [this Fedora 31 proposal].(https://fedoraproject.org/wiki/Changes/Qt_Wayland_By_Default_On_Gnome) I also have Adwaita decorations implemented as part of QGnomePlatform (see https://github.com/FedoraQt/QGnomePlatform/tree/wayland-decoration), I just need to find a way how to draw shadows. This is currently not possible without additions to qtwayland and I already have an idea how it can be done. |
Would using @jadahl's https://gitlab.gnome.org/jadahl/libdecoration help? |
Maybe, I haven't checked yet and didn't know such thing exists. I will look into it and let you know. Thanks for a hint. |
I'm not sure libdecorations is in a position where this makes sense for the GNOME Qt platform, e.g. there is no theming integration, and the only backend is a relatively bare bone cairo one. I don't expect a cairo backend to start learning about system themes etc. |
Ok, I was hoping it actually knows about system theme and based on that it would draw me decorations to a buffer I pass to it. At this moment I basically draw just basic Adwaita (light/dark) decorations and if user don't use the Adwaita theme, then the decorations will not match his theme. |
My idea for libdecoration is that one day it may be possible to grow a gtk based backend, but I don't expect it to happen soon. |
@grulja Could you do something about onscreen keyboard support? I.e. that focusing a text input triggers the gnome-osk on touch devices? |
Just a quick heads up: The libdecor project can soon (...?) draw correctly themed window decorations for in with their Cairo/ GTK backend: https://gitlab.gnome.org/jadahl/libdecor/-/merge_requests/43 |
Thanks. I will check and see if it's something we can use in the future. |
Since the QGnomePlatform already provides a plugin that implements Additionally, this all uses private Qt API which might restrict access to the underlying Wayland objects (surfaces, connections, ...) or remove that functionality completely at any time. I think it makes more sense trying to get libdecor (or at least the GTK plugin functionality) into upstream Qt so that private API is not used outside of the upstream repo. |
I believe this can be closed now as there is nothing more for Wayland support I can do. We already have our own window decorations and that's it. |
Is it expected that QT windows dont have shadows on wayland ? |
We have shadows implemented with Qt 6. This is because Qt 5 didn't have all the required API. |
F25 defaults to Wayland but Qt5 applications still run using XWayland.
QGnomePlatform should:
Set the QT_QPA_PLATFORM=wayland environment variable.
Disable Qt's built-in CSDs (QT_WAYLAND_DISABLE_WINDOWDECORATION=1).
Make Mutter/GS draw their own Gnome title bars.
The text was updated successfully, but these errors were encountered: