<table><tr><td style="">ekurzinger created this revision.<br />ekurzinger added a reviewer: KWin.<br />ekurzinger added a project: KWin.<br />Herald added a subscriber: kwin.<br />ekurzinger requested review of this revision.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D21899">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>Bug 406180 was fixed in Plasma 5.16 and later by commit <br />
<a href="https://phabricator.kde.org/R108:0124b1ef191fcafe0d0f89287be66b36833586e6" style="background-color: #e7e7e7;
          border-color: #e7e7e7;
          border-radius: 3px;
          padding: 0 4px;
          font-weight: bold;
          color: black;text-decoration: none;">0124b1ef191fcafe0d0f89287be66b36833586e6</a>, which<br />
disables vsync for QtQuick windows. However, a bug<br />
in Qt prevents this fix from taking effect for any release<br />
prior to this commit<br />
<a href="https://code.qt.io/cgit/qt/qtbase.git/commit/?id=0c1831178540462da31fd7a4b6d2e446bc84498b" class="remarkup-link" target="_blank" rel="noreferrer">https://code.qt.io/cgit/qt/qtbase.git/commit/?id=0c1831178540462da31fd7a4b6d2e446bc84498b</a></p>

<p>As a workaround for users stuck with an older Qt version,<br />
this change detects whether PRIME synchronization is<br />
enabled for any output, and if so, forces QtQuick to use<br />
software rendering.</p>

<p>BUG: 406180</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>On a hybrid graphics system, using the proprietary NVIDIA driver<br />
with PRIME synchronization enabled, perform any action<br />
causing KWin to create a QtQuick window, such as triggering<br />
the alt + tab application switcher.</p>

<p>The desktop should not freeze, even if the Qt version in<br />
use does not include the above commit.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R108 KWin</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D21899">https://phabricator.kde.org/D21899</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>atoms.cpp<br />
atoms.h<br />
plugins/platforms/x11/standalone/x11_platform.cpp</div></div></div><br /><div><strong>To: </strong>ekurzinger, KWin<br /><strong>Cc: </strong>kwin, KWin, LeGast00n, jraleigh, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, Pitel, iodelay, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart<br /></div>