mirror of
https://github.com/anomalyco/opencode.git
synced 2026-05-15 17:13:12 +00:00
fix(tui): consume Enter in dialog useKeyboard handlers (#23390)
This commit is contained in:
@@ -77,6 +77,8 @@ export function DialogGoUpsell(props: DialogGoUpsellProps) {
|
||||
return
|
||||
}
|
||||
if (evt.name === "return") {
|
||||
evt.preventDefault()
|
||||
evt.stopPropagation()
|
||||
if (selected() === "subscribe") subscribe(props, dialog)
|
||||
else dismiss(props, dialog)
|
||||
}
|
||||
|
||||
@@ -42,6 +42,8 @@ export function DialogSessionDeleteFailed(props: {
|
||||
|
||||
useKeyboard((evt) => {
|
||||
if (evt.name === "return") {
|
||||
evt.preventDefault()
|
||||
evt.stopPropagation()
|
||||
void confirm()
|
||||
}
|
||||
if (evt.name === "left" || evt.name === "up") {
|
||||
|
||||
@@ -15,6 +15,8 @@ export function DialogAlert(props: DialogAlertProps) {
|
||||
|
||||
useKeyboard((evt) => {
|
||||
if (evt.name === "return") {
|
||||
evt.preventDefault()
|
||||
evt.stopPropagation()
|
||||
props.onConfirm?.()
|
||||
dialog.clear()
|
||||
}
|
||||
|
||||
@@ -25,6 +25,8 @@ export function DialogConfirm(props: DialogConfirmProps) {
|
||||
|
||||
useKeyboard((evt) => {
|
||||
if (evt.name === "return") {
|
||||
evt.preventDefault()
|
||||
evt.stopPropagation()
|
||||
if (store.active === "confirm") props.onConfirm?.()
|
||||
if (store.active === "cancel") props.onCancel?.()
|
||||
dialog.clear()
|
||||
|
||||
@@ -35,6 +35,8 @@ export function DialogExportOptions(props: DialogExportOptionsProps) {
|
||||
|
||||
useKeyboard((evt) => {
|
||||
if (evt.name === "return") {
|
||||
evt.preventDefault()
|
||||
evt.stopPropagation()
|
||||
props.onConfirm?.({
|
||||
filename: textarea.plainText,
|
||||
thinking: store.thinking,
|
||||
|
||||
@@ -11,6 +11,8 @@ export function DialogHelp() {
|
||||
|
||||
useKeyboard((evt) => {
|
||||
if (evt.name === "return" || evt.name === "escape") {
|
||||
evt.preventDefault()
|
||||
evt.stopPropagation()
|
||||
dialog.clear()
|
||||
}
|
||||
})
|
||||
|
||||
@@ -29,6 +29,8 @@ export function DialogPrompt(props: DialogPromptProps) {
|
||||
return
|
||||
}
|
||||
if (evt.name === "return") {
|
||||
evt.preventDefault()
|
||||
evt.stopPropagation()
|
||||
props.onConfirm?.(textarea.plainText)
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user