graesslin created this revision. Restricted Application added a project: KWin. Restricted Application added subscribers: kwin, plasma-devel.
REVISION SUMMARY This is a regression due to changes in Breeze to support Qt 5.8+ behavior change. KWin's own QPA operates like < Qt 5.7 and breeze was programmed against that. Due to that it can happen now that Breeze hits code paths in which KWin does not have a surface. To trigger one only needed to open the user actions menu twice. This change adds a test case which simulates the problem and fixes all crashes happening in the code path. Most likely shadows are now broken for KWin's own windows, this change is only to prevent the crash and thus is for 5.10 branch, while shadow fixing will go to master branch. BUG: 382063 FIXED-IN: 5.10.4 TEST PLAN New test case REPOSITORY R108 KWin BRANCH qpa-verify-surface-5.10 REVISION DETAIL https://phabricator.kde.org/D6533 AFFECTED FILES autotests/integration/CMakeLists.txt autotests/integration/dont_crash_useractions_menu.cpp plugins/qpa/backingstore.cpp plugins/qpa/nativeinterface.cpp To: graesslin, #kwin, #plasma Cc: plasma-devel, kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart, lukas