<table><tr><td style="">mglb created this revision.<br />mglb added a reviewer: Konsole.<br />mglb added a project: Konsole.<br />Herald added a subscriber: konsole-devel.<br />mglb 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/D20744">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>Applying the settings in Configure Konsole dialog causes all Konsole<br />
windows to be hidden and shown again. This causes all information<br />
related to window management (window state, desktop, position/display,<br />
etc.) to be lost - windows appear on current display, desktop, at new<br />
positions.</p>

<p>The hide/show action is triggered by window flags change. Only "remove<br />
window titlebar and frame" option really changes the flags, so the<br />
action is changed to be triggered only by this option.</p>

<p>Introduced changes:</p>

<ul class="remarkup-list">
<li class="remarkup-list-item">Window flags are changed change only when necessary (i.e. when "remove window titlebar and frame" option is changed).</li>
<li class="remarkup-list-item">Windows are restored:<ul class="remarkup-list">
<li class="remarkup-list-item">at previous positions</li>
<li class="remarkup-list-item">on the same displays</li>
<li class="remarkup-list-item">on previous activity</li>
<li class="remarkup-list-item">[MISSING] with the same state (minimized, maximized, etc)</li>
<li class="remarkup-list-item">[MISSING] on the same desktop</li>
<li class="remarkup-list-item">[MISSING] with the same stacking order</li>
</ul></li>
</ul>

<p><strong>Any ideas how to implement missing features?</strong></p></div></div><br /><div><strong>TEST PLAN</strong><div><ul class="remarkup-list">
<li class="remarkup-list-item">Open a few Konsole windows, put them on different desktops, different positions, minimize, maximize, etc.</li>
<li class="remarkup-list-item">Open Configure Konsole dialog, change any option except "remove window titlebar and frame"</li>
<li class="remarkup-list-item">Apply</li>
</ul>

<p><strong>Result before change</strong><br />
Konsole windows end up on current desktop; configuration window hides<br />
under them.</p>

<p><strong>Result after change</strong><br />
Konsole windows position and state does not change.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R319 Konsole</div></div></div><br /><div><strong>BRANCH</strong><div><div>wip/Apply-new-configuration-options-only-when-necessary (branched from master)</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D20744">https://phabricator.kde.org/D20744</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>src/MainWindow.cpp</div></div></div><br /><div><strong>To: </strong>mglb, Konsole<br /><strong>Cc: </strong>konsole-devel, Konsole, gennad, thsurrel, ngraham, maximilianocuria, hindenburg<br /></div>