From 46a771bc61d2422e98c19b06a6da9dd10126c927 Mon Sep 17 00:00:00 2001 From: dev Date: Wed, 1 Jul 2026 14:25:48 +0200 Subject: [PATCH] fix(tooltip): pull the caret base into the panel to hide the border seam MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A perceptible line showed across the caret base on every side but bottom: the panel's border draws across the caret's base edge, "cutting" it off from the panel. Add the popover's per-side fix — pull the caret base into the panel by the border width (margin toward the panel, keyed on data-side) so the fill covers that border and the caret's side strokes continue the panel outline seamlessly. Co-Authored-By: Claude Opus 4.8 --- src/uix/eidos/components/tooltip/tooltip.css | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/uix/eidos/components/tooltip/tooltip.css b/src/uix/eidos/components/tooltip/tooltip.css index 0aa5d9f18..f3a1fd3ad 100644 --- a/src/uix/eidos/components/tooltip/tooltip.css +++ b/src/uix/eidos/components/tooltip/tooltip.css @@ -103,6 +103,23 @@ vector-effect: non-scaling-stroke; } +/* Pull the caret base into the panel by the border width (per side) so the fill + * covers the panel's border there and the side strokes continue the outline — + * otherwise the panel border draws a line across the caret base. Mirrors the + * popover recipe. */ +[data-tooltip-arrow][data-side='bottom'] { + margin-block-start: var(--tooltip-border-width); +} +[data-tooltip-arrow][data-side='top'] { + margin-block-end: var(--tooltip-border-width); +} +[data-tooltip-arrow][data-side='left'] { + margin-inline-end: var(--tooltip-border-width); +} +[data-tooltip-arrow][data-side='right'] { + margin-inline-start: var(--tooltip-border-width); +} + /* Outline variant: transparent bg → fill with the surface, stroke the edges. */ [data-tooltip-content][data-variant='outline'] ~ [data-tooltip-arrow] polygon, [data-tooltip-content][data-variant='outline'] [data-tooltip-arrow] polygon {