summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSebastian Herrlinger <[email protected]>2026-01-16 03:17:32 +0100
committerSebastian Herrlinger <[email protected]>2026-01-16 03:17:32 +0100
commit46be47d0bea0302ad9fb3005f4a0fbbe73c0f325 (patch)
treede46e62198322ffd202a45b2a0e8fb5db8591988
parent4af9defb891405a9a7efb4b276850d9547080bb8 (diff)
downloadopencode-46be47d0bea0302ad9fb3005f4a0fbbe73c0f325.tar.gz
opencode-46be47d0bea0302ad9fb3005f4a0fbbe73c0f325.zip
stop select dialog event propagation
-rw-r--r--packages/opencode/src/cli/cmd/tui/ui/dialog-select.tsx24
1 files changed, 20 insertions, 4 deletions
diff --git a/packages/opencode/src/cli/cmd/tui/ui/dialog-select.tsx b/packages/opencode/src/cli/cmd/tui/ui/dialog-select.tsx
index f7d7306d0..d3239ebac 100644
--- a/packages/opencode/src/cli/cmd/tui/ui/dialog-select.tsx
+++ b/packages/opencode/src/cli/cmd/tui/ui/dialog-select.tsx
@@ -157,10 +157,26 @@ export function DialogSelect<T>(props: DialogSelectProps<T>) {
const keybind = useKeybind()
useKeyboard((evt) => {
- if (evt.name === "up" || (evt.ctrl && evt.name === "p")) move(-1)
- if (evt.name === "down" || (evt.ctrl && evt.name === "n")) move(1)
- if (evt.name === "pageup") move(-10)
- if (evt.name === "pagedown") move(10)
+ if (evt.name === "up" || (evt.ctrl && evt.name === "p")) {
+ evt.preventDefault()
+ evt.stopPropagation()
+ move(-1)
+ }
+ if (evt.name === "down" || (evt.ctrl && evt.name === "n")) {
+ evt.preventDefault()
+ evt.stopPropagation()
+ move(1)
+ }
+ if (evt.name === "pageup") {
+ evt.preventDefault()
+ evt.stopPropagation()
+ move(-10)
+ }
+ if (evt.name === "pagedown") {
+ evt.preventDefault()
+ evt.stopPropagation()
+ move(10)
+ }
if (evt.name === "return") {
const option = selected()
if (option) {