quickshell: fix border timing and right-aligned overlap

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
rope 2026-05-27 16:03:27 +01:00
parent 8843bfc830
commit d472ab3444

View file

@ -682,12 +682,10 @@ in
if (activeDropdown && activeDropdown.visible) {
activeDropdown.animateClose();
}
activeDropdown = null;
}
function toggleDropdown(dd, setupFn) {
if (dd.visible && !dd.closing) {
dd.animateClose();
activeDropdown = null;
} else {
if (activeDropdown && activeDropdown !== dd && activeDropdown.visible) {
activeDropdown.animateClose();
@ -1262,7 +1260,7 @@ in
Timer {
id: _closeDelay
interval: 230
onTriggered: { dropdown.visible = false; dropdown.closing = false; }
onTriggered: { dropdown.visible = false; dropdown.closing = false; if (bar.activeDropdown === dropdown) bar.activeDropdown = null; }
}
HoverHandler {
@ -1363,7 +1361,8 @@ in
ctx.arc(r + 0.5, h - r - 0.5, r, Math.PI, Math.PI / 2, true);
// Bottom edge
if (dropdown.alignRight) {
ctx.lineTo(w, h - 0.5);
// Stop 8px before right edge bottom-right ear continues
ctx.lineTo(w - r, h - 0.5);
} else {
ctx.lineTo(w - r - 0.5, h - 0.5);
// Bottom-right curve