<div>graesslin created this revision.<br />
graesslin added a reviewer: Plasma.<br />
Restricted Application added a project: Plasma.<br />
Restricted Application added a subscriber: plasma-devel.</div><br /><div><strong>REVISION SUMMARY</strong><div><p>Remove the AreaBasedEdge class</p>

<p>No difference to Edge.</p>

<p>Add ::window() and ::approachWindow as virtual methods to Edge</p>

<p>This allows to no longer needing to dynamic cast the Edge to<br />
WindowBasedEdge for the X11 specific event handling.</p>

<p>Create screen edge through the Platform</p>

<p>Removes a diversion between X11 and Wayland. The base class Platform<br />
creates an instance of class Edge with plugin implementations being<br />
able to create a different type.</p>

<p>The X11StandalonePlugin does that and creates a WindowBasedEdge. For<br />
this the implementation of WindowBasedEdge is moved from screenedges<br />
into the plugin.</p>

<p>Unfortunately an ifdef is needed to make the screenedge test still<br />
work as expected. This should be improved in future, e.g. have a good<br />
way to load the platform plugin from the tests.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rKWIN KWin</div></div></div><br /><div><strong>BRANCH</strong><div><div>screen-edge-platform</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D1419" rel="noreferrer">https://phabricator.kde.org/D1419</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>atoms.h<br />
autotests/CMakeLists.txt<br />
autotests/test_screen_edges.cpp<br />
platform.cpp<br />
platform.h<br />
plugins/platforms/x11/standalone/CMakeLists.txt<br />
plugins/platforms/x11/standalone/edge.cpp<br />
plugins/platforms/x11/standalone/edge.h<br />
plugins/platforms/x11/standalone/x11_platform.cpp<br />
plugins/platforms/x11/standalone/x11_platform.h<br />
screenedge.cpp<br />
screenedge.h</div></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>graesslin, Plasma<br /><strong>Cc: </strong>plasma-devel, sebas<br /></div>