mirror of
https://github.com/getpaseo/paseo.git
synced 2026-10-24 02:02:42 +00:00
A result row's exact path belongs in a tooltip: a path is often wider than the result column, and two files can share both base name and nearest parent, so no row label can carry it. The app's Tooltip could not serve that, and the reason was the Command Center itself. Desktop web rendered the panel through React Native Web's Modal, which paints in a plane of its own above the shared overlay root. A tooltip portals into that root, so it could never cover the panel however high its own z-index. adaptive-modal-sheet already hosts desktop modals in the overlay root, which is what docs/floating-panels.md prescribes; the Command Center now does the same and native keeps the Modal. Its existing layer, focus registration, backdrop and Escape handling are unchanged. Proving it needed care. elementFromPoint reports the row either way, because a tooltip is deliberately pointer-transparent, and sampling a pixel proves nothing when the tooltip surface and the panel are both white. What settles it is whether the pixels inside the tooltip's own rectangle change when it opens: they do not under the Modal, and they do in the overlay root. Replaces the hover text swap added in the previous commit, which only widened the label inside a fixed-width column and still elided a genuinely long path. Desktop web loses the Modal's fade-in; the panel now appears immediately.