waveterm/frontend
Evan Simkowitz b7a5dea0a0
Fix Term Widget not registering pointer events (#1614)
This is a bit janky. The problem is that we were placing the
`xterm-viewport` div, which contains the scroll observer for the xterm
contents, at a higher z-index than the xterm contents, meaning that the
contents couldn't register any pointer events. If we don't put a
z-index, though, the scroll bar can't accept pointer events. To get
around this, I've added two observer divs, which control whether the
contents or the viewport have pointer event priority. The first div, the
`term-scrollbar-show-observer`, sits above where the scrollbar will be
rendered. When the user hovers over it, it will cause the viewport div
to move to a z-index above the contents. It will also enable a second
div, the `term-scrollbar-hide-observer`, which sits above the viewport
and the term contents, but not blocking the scrollbar. When the user
hovers over this div (indicating their mouse has left the scrollbar),
the viewport div is moved back to its original z-index and the hide
observer is set to `display: none`. This gives pointer event priority
back to the contents div.

This resolves an issue where the user could not click links in the
terminal output.

Resolves #1357
2024-12-23 23:35:51 -05:00
..
app Fix Term Widget not registering pointer events (#1614) 2024-12-23 23:35:51 -05:00
layout Add wsh wavepath command for getting Wave paths (#1545) 2024-12-17 14:11:40 -08:00
types Entirely Internal Connection (#1610) 2024-12-23 15:12:14 -08:00
util Make default workspace icon the Wave logo (#1470) 2024-12-10 13:54:11 -08:00
wave.ts add a refocus at the end of wave reinit (#1499) 2024-12-11 13:13:40 -08:00