The logout dialog has a taskbar entry and appears like a regular window on
wayland. This is because Qt does not support fullscreen windows with xdg_shell
as of 5.9.4. wl-shell works, so force it for the time being.
Details
Ran ksmserver-logout-greeter on X11 and wayland, looks identical now.
Diff Detail
- Repository
- R120 Plasma Workspace
- Branch
- Plasma/5.12
- Lint
No Linters Available - Unit
No Unit Test Coverage
ksmserver/shutdowndlg.cpp | ||
---|---|---|
256 | That's wrong.. it is not notification. |
Don't use the setRole(Notification) hack. That causes it to be drawn below fullscreen windows.
OSD might work, but those don't normally accept input.
So for now just use setSkipTaskbar(true);
OSD might work, but those don't normally accept input.
"normally" = "it shouldn't, but when testing it it does accept input just fine"
@graesslin is it a bug that setRole(OnScreenDisplay); makes it work exactly like on X11 on wayland?
i.e. is it intentional that OSDs are interactive?
I'm against this change. The window is set to fullscreen, but that doesn't work due to a Qt bug. Let's not work around Qt bugs: https://bugreports.qt.io/browse/QTBUG-63748
Is the referenced patch enough to make it work? AFAICT it would also need a change in kwaylandintegration for the decoration.
The calls added here don't conflict with other parts, they simply set what should be done by Qt already.
Doing this in addition isn't even a hack as it has no downsides.
Let's not work around Qt bugs: https://bugreports.qt.io/browse/QTBUG-63748
Why not? Workarounds for Qt bugs are in many places already.
A fullscreen window does not have decorations. Yes, the referenced patch is enough.
The calls added here don't conflict with other parts, they simply set what should be done by Qt already.
Doing this in addition isn't even a hack as it has no downsides.
I disagree. Setting a fullscreen window to frameless is confusing and wrong for anybody who is going to read the code later on.
Let's not work around Qt bugs: https://bugreports.qt.io/browse/QTBUG-63748
Why not? Workarounds for Qt bugs are in many places already.
Yes, but it is bad practice and in this case it's not even fixing all the problems. The window is still not fullscreen, which is a problem as soon as you have other fullscreen windows.
If you want to workaround let's just force to wl_shell instead of xdg_shell which doesn't expose the problem. Just set env variable QT_WAYLAND_SHELL_INTEGRATION to wl-shell