<table><tr><td style="">graesslin created this revision.<br />graesslin added reviewers: Plasma, apol, lbeltrame.<br />Restricted Application added a project: Plasma.<br />Restricted Application added a subscriber: plasma-devel.</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/D1744" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>The checks in Client::adjustedClientArea were a little bit too<br />
agressive, excluding also valid setups.</p>

<p>This change addresses the regression by keeping the actual intended<br />
improvements in place.</p>

<p>The check in Client::adjustedClientArea is now only done for the<br />
special case of desktopArea == area. This ensures that a strut excluding<br />
a complete screen won't affect the overall workarea.</p>

<p>In addition new checks are introduced in Workspace::updateClientArea.<br />
When calculating the new sareas a check is performed whether the<br />
intersection with the adjustedClientArea would result in the sarea<br />
becoming empty (thus a screen being completely removed). If that's the<br />
case the geometry is ignored to not exclude a complete screen.</p>

<p>Interestingly I should have noticed that something with the logic is<br />
odd. As the test case had two commented geometries which we now get.</p>

<p>BUG: 363804</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rKWIN KWin</div></div></div><br /><div><strong>BRANCH</strong><div><div>fix-ignore-struts</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D1744" rel="noreferrer">https://phabricator.kde.org/D1744</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>autotests/wayland/struts_test.cpp<br />
geometry.cpp</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, apol, lbeltrame<br /><strong>Cc: </strong>plasma-devel, sebas<br /></div>