<table><tr><td style="">amhndu retitled this revision from "Sublime: Fix crash caused when all tool view items are small" to "Sublime: Fix crash when changing areas".<br />amhndu edited the summary of this revision. <a href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-6kchcm3v65rujco/">(Show Details)</a>
</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/D15625">View Revision</a></tr></table><br /><div><strong>CHANGES TO REVISION SUMMARY</strong><div><div style="white-space: pre-wrap; color: #74777D;">Fixe<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">d two causes identified for the regression introduced in D15450:<br />
- In IdealLayout, buttonSpacing not being considered while checking if a<br />
  button should be shrinked. Changed this to properly account for spacing.</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">s regression introduced in D15450 by making IdealButtonBarLayout derive from</span><br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">- minimumSize in Ideal </span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">QBoxLayout instead of Q</span>Layout <span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">calls doVerticalLayout with a height of zero,</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">and thus delete most operations to Qt instead</span><br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">  the property is always 0.</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">of manually handling them,</span> <span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">Re-implemented (also previously commented as buggy)<br />
  by accumulating the also newly added `minimumSize` in the IdealToolButton, along with</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">removing the bugged implementation.<br />
<br />
Added minimumSizeHint in IdealToolButton to prevent it from being resized</span><br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">  setting the size policy to Preferred for correctness.<br />
- Boilerplate to avoid this crash in the future, if the calculation still missed something</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">to zero.<br />
<br />
IdealButtonBarLayout is now a child layout for vertical bars as well</span>,<br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">  or possibly due to some exotic theme settings</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">the top level layout is stretched and allows for context menu</span>.<div style="padding: 8px 0;">...</div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>BRANCH</strong><div><div>segfault-fix</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D15625">https://phabricator.kde.org/D15625</a></div></div><br /><div><strong>To: </strong>amhndu, KDevelop, kossebau, rjvbb<br /><strong>Cc: </strong>kossebau, rjvbb, kdevelop-devel, glebaccon, antismap, iodelay, vbspam, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd<br /></div>