<div>drosca added a comment.</div><br /><div><div><p>The problem is that PanelView::length() is always set to Layout.preferredSize, which says nothing about the actual panel length. PanelView::length() seems to be used only for restoring size of panel, but in most (all?) cases it gets overridden by minimumLength/maximumLength, so the panels are restored to correct size. Another use is in geometryByDistance, which can use size(), but it won't fix the main issue.</p>

<p>I don't think there is a binding loop, because it doesn't actually resize the panel, it just saves the value to config and rest of PanelView::setLength is no-op.</p>

<p>That being said, this timer is being fired too often, probably on height/width changed would be enough (but that needs more testing, because of the userConfiguring conditional).</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rPLASMADESKTOP Plasma Desktop</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D1066" rel="noreferrer">https://phabricator.kde.org/D1066</a></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>drosca, Plasma, davidedmundson<br /><strong>Cc: </strong>davidedmundson, apol, plasma-devel<br /></div>