https://bugs.kde.org/show_bug.cgi?id=380010

            Bug ID: 380010
           Summary: Compositing is turned off completely and abruptly
                    while windows with _NET_WM_BYPASS_COMPOSITOR 1 exist.
           Product: frameworks-kwindowsystem
           Version: 5.34.0
          Platform: Archlinux Packages
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: mgraess...@kde.org
          Reporter: unsuspicious.fakename+kdeb...@gmail.com
                CC: kdelibs-b...@kde.org
  Target Milestone: ---

( See https://bugs.kde.org/show_bug.cgi?id=349910 for when this was
implemented.  )

As far as I can tell, ALL compositing is turned off completely if a window has
"_NET_WM_BYPASS_COMPOSITOR flag 1". In contrast to that, the specifications
(https://specifications.freedesktop.org/wm-spec/latest/ar01s05.html#idm139870829920368)
might encourage applications to use the flag "generously" ("The Client MAY set
this property to hint the compositor that the window would benefit from running
uncomposited"). Nothing suggests that this might / should trigger actions which
are generally disruptive to the user experience or able to affect the whole
Desktop / other windows. Accordingly, there is no indicator that the flag
should or would be used sparingly or carefully by applications.

P.E.: SDL and allegro appear to use it by default, because - according to the
code comments: "/* This seems like a good idea */". Even for windowed
applications that work perfectly fine with compositing enabled. Considering
this, what does not seem like an especially good idea is: deactivating
essential features of KDE without asking the user first - as a default - every
time an application uses that flag.

There should probably be - at the very least - a clear indicator that makes it
obvious to the user that compositing has been turned off due to a window hint,
so users know why their [Desktop Switching / Accessibility Features / WM
Hotkeys] suddenly stopped working, can find out how to fix it (shift+alt+F12)
and how to deactivate the behavior (more actions => window manager settings =>
"allow application to block compositing"). 

According to the specifications it appears to be the responsibility of the
compositing manager to decide wether it is a good idea to grant the "wish" of
the application with the flag at a given time. One relatively simple addition
to mitigate potential problems therefore might be to honor the flag only from
visible full-screen windows that have input focus ("steam" appears to have a
heuristic detection as a counterpart that does that and goes a bit further, I
think?). Also a more prominent, system-wide option to "disallow applications to
block compositing by default" could be useful for people who prefer to remain
in full control of it.

Optimally, if it is possible at all, then all reactions to
"_NET_WM_BYPASS_COMPOSITOR 1" should probably affect ONLY the window that has
the flag and nothing else (**I haven't encountered any problems with
compositing for a long time though, so I can't guess what trade-offs would be
of allowing the necessary kinds of redirection).

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to