<table><tr><td style="">rjvbb created this revision.<br />rjvbb added a project: Frameworks.
</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/D5069" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>KWindowSystem has been and is still lacking a platform plugin for OS X. A ReviewBoard RR has been up with a "backport" of the modified KDE4 KWindowSystem implementation that has been used in the MacPorts kdelibs4 port for the last 2 or 3 (or more) years. This is a continuation of that request, still open at <a href="https://git.reviewboard.kde.org/r/126291" class="remarkup-link" target="_blank" rel="noreferrer">https://git.reviewboard.kde.org/r/126291</a></p>

<p>There's 1 outstanding issue on that RR (<a href="https://git.reviewboard.kde.org/r/126291/#comment68028" class="remarkup-link" target="_blank" rel="noreferrer">https://git.reviewboard.kde.org/r/126291/#comment68028</a>). I have also reintroduced a small change to <tt style="background: #ebebeb; font-size: 13px;">KWindowSystem::setMainWindow()</tt> so that it doesn't cause crashing. Ideally this function would be part of the backend but that's too big of a change to graft on the current patch.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>Thoroughly tested up to and include with Qt 5.8.0 and KF5 Frameworks 5.32.0</p>

<p>The Mac backend code also contains a number of experimental functions that have been deactivated with #ifdefs . At this point I cannot assess their true potential importance; I do not seem to miss them for now but it certainly wouldn't hurt for instance to be able to map windows to applications.<br />
I'd vote to leave in the code in question until it's clearer from feedback whether or not we need it.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R278 KWindowSystem</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D5069" rel="noreferrer">https://phabricator.kde.org/D5069</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>src/kwindowsystem.cpp<br />
src/kwindowsystem.h<br />
src/platforms/osx/CMakeLists.txt<br />
src/platforms/osx/cocoa.json<br />
src/platforms/osx/kkeyserver.cpp<br />
src/platforms/osx/kwindowinfo.cpp<br />
src/platforms/osx/kwindowinfo.mm<br />
src/platforms/osx/kwindowinfo_mac_p.h<br />
src/platforms/osx/kwindowinfo_p_cocoa.h<br />
src/platforms/osx/kwindowsystem.cpp<br />
src/platforms/osx/kwindowsystem_mac_p.h<br />
src/platforms/osx/kwindowsystem_macobjc.mm<br />
src/platforms/osx/kwindowsystem_p_cocoa.h<br />
src/platforms/osx/plugin.cpp<br />
src/platforms/osx/plugin.h</div></div></div><br /><div><strong>To: </strong>rjvbb, Frameworks<br /><strong>Cc: </strong>kde-mac, Frameworks<br /></div>