mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-25 17:18:11 +00:00
`ExpandableBlock` used a single full-width `absolute inset-x-0 bottom-0` button that was BOTH the fade overflow cue and the expand/collapse control. It sat on top of the whole 28px bottom strip, so it swallowed: - the horizontal scrollbar of a wide code block (couldn't scroll sideways), and - pointer/drag events on the block's last line (couldn't select/copy the tail). Split the two responsibilities: the full-width fade stays as a pure `pointer-events-none` cue, and the only clickable target is a compact toggle pinned to the right edge (`pointer-events-auto`), clear of the draggable scrollbar track. The inner container gains `overflow-x-auto` so wide code gets a working scrollbar. Applies uniformly to code cards and the plain-text fallback — no per-call prop needed. Regression test asserts the pointer-events contract (fade `pointer-events-none` + full-width, toggle `pointer-events-auto` + right-pinned, not `inset-x-0`) and that the toggle still flips `aria-expanded`. Supersedes #69558, #69428 Fixes #69168 Co-authored-by: alelpoan <alelpoan@proton.me> Co-authored-by: BerneYue <xiongyue_hnu@163.com> |
||
|---|---|---|
| .. | ||
| app | ||
| assets/tiers | ||
| components | ||
| contrib | ||
| fonts | ||
| hooks | ||
| i18n | ||
| lib | ||
| plugins | ||
| sdk | ||
| store | ||
| themes | ||
| types | ||
| global.d.ts | ||
| hermes-cron-scope.test.ts | ||
| hermes-parity.test.ts | ||
| hermes-profile-scope.test.ts | ||
| hermes.test.ts | ||
| hermes.ts | ||
| main.tsx | ||
| styles.css | ||
| vite-env.d.ts | ||