It needs to install the x11connection on the QApplication as it uses
kwinglobals.h internally. Same fix as already done for the KCM, see
305387ec3a.
Thanks to soee on #plasma for reporting the issue just in time to make
Riddell hold the release off.
When kdeglobals doesn't exist, QStandardPaths::locate() for it returns
an empty string, so the check in previous fix doesn't work in this case.
This change sets m_colorScheme properly in this case and also creates an
empty kdeglobals(needed because QFileSystemWatcher can't monitor
non-existing files) so kdeglobals can be reloaded if it is later
populated.
REVIEW: 123399
E.g. KSelectionOwner installs a native event filter and listens for
xcb events. Without that the KSelectionOwner::claim never succeeds and
for other X11 applications it will look like Compositing is not
supported.
This allows to start applications once kwin_wayland is started. E.g.
kwin_wayland --libinput --xwayland --framebuffer /usr/bin/startkde
Thus it would start startkde once both Wayland Server and Xwayland
are up and running and ready for connection. This resolves the problem
that prior to startup it is not known which will be the X11 display
variable. By passing the environment to the process by KWin this problem
is resolved.
If Xwayland goes down it's better to abort than staying alive. If
Xwayland goes down the next roundtrip to X (most likely during call
to xStackingOrder) will just freeze completely, which is kind of the
worst as one cannot VT-switch anymore. So a clean abort is a bad but
better solution.
Setting this means we get scaled screen geometry from Qt, and everything
becomes confusing when commmunicating with apps that might not have
this set.
As we use plasma units for UI everything is scaled anyway.
REVIEW: 123115
Currently, if a color scheme lacks the WM group, DecorationPalette
doesn't load it so we can fallback to kdeglobals color scheme. If
kdeglobals doesn't have WM group we get black decorations.
This change will always load the kdeglobals color scheme even if it
is missing WM group.
REVIEW: 123320
This is now crucial, because while before
(the minimized) windows were conditionally
shown, but are now always behind the desktop.
Also, it makes the tabbox more consistent.
BUG: 344083
REVIEW: 122679
This is an alternative approach suggested by the
NETWM spec.
The advantage is, that windows are not minimized
at all what apparently lead to some confusion
about the nature of the mode (which was abused
to tidy up) and a secret config key to allow for
that unrelated behavior.
Instead the ShowDesktopIsMinimizeAll key is removed
and replaced by a dedicated script + shortcut.
Bonus: less code to remember "minimized" windows =)