1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-08-06 15:19:29 +02:00

Suppress duplicate tool dock points that don't give distinct results

This commit is contained in:
Paul Licameli 2016-06-13 19:16:44 -04:00
commit 14f3083f6c

View File

@ -714,8 +714,13 @@ ToolBarConfiguration::Position
// Else, only if the fit is possible.
if (ct || (sz.x <= rect.width && sz.y <= rect.height)) {
// May choose current or previous.
if (ct && point.y < (rect.GetTop() + rect.GetBottom()) / 2)
// "Wedge" the bar into a crack alone, not adopting others
if (ct &&
(sz.y < rect.height ||
point.y < (rect.GetTop() + rect.GetBottom()) / 2))
// "Wedge" the bar into a crack alone, not adopting others,
// if either a short bar displaces a tall one, or else
// the displacing bar is at least at tall, but the pointer is
// in the upper half of the box.
usedPrev = true, result = prevPosition, result.adopt = false;
else
result = position;