D28021: Show status notifier when compositing was disabled after crashes
Kai Uwe Broulik <[email protected]>
| Newsgroups | gmane.comp.kde.devel.kwin |
|---|---|
| Message-ID | <[email protected]> |
broulik created this revision. broulik added reviewers: KWin, VDG. Herald added a project: KWin. Herald added a subscriber: kwin. broulik requested review of this revision. REVISION SUMMARY When KWin crashes several times in quick succession it disables compositing for safety. However, when this happened, it leaves the user without compositing without any idea what was going on, other than "my windows look ugly now". This patch stores the fact that compositing got disabled because of crashes in the config and shows an appropriate icon which opens the Compositing KCM which then also has an explanatory message. TEST PLAN - Called `killall -SIGSEGV kwin_x11` serveral times in a row - KWin restarted with compositing off and I got a try icon - Clicked the tray icon, acknowledged the message, re-enabled compositing, icon went away F8174182: Screenshot_20200313_121056.PNG <https://phabricator.kde.org/F8174182> When I uncheck "enable compositing at start" KWin reconfigures but doesn't disable the compositor. Not sure if this is caused by this patch or not. Open to suggestions on wording REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D28021 AFFECTED FILES CMakeLists.txt composite.cpp composite.h compositingdisablednotifier.cpp compositingdisablednotifier.h kcmkwin/kwincompositing/compositing.cpp kcmkwin/kwincompositing/compositing.h kcmkwin/kwincompositing/compositing.ui kcmkwin/kwincompositing/main.cpp main_x11.cpp platform.cpp platform.h plugins/platforms/x11/standalone/x11_platform.cpp plugins/platforms/x11/standalone/x11_platform.h To: broulik, #kwin, #vdg Cc: kwin, Orage, cacarry, LeGast00n, The-Feren-OS-Dev, cblack, jraleigh, zachus, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, iodelay, crozbo, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, ahiemstra, mart