From e485d318b72b39a9905f6bf72d5018cc48afaa66 Mon Sep 17 00:00:00 2001 From: Henry Heino <46334387+personalizedrefrigerator@users.noreply.github.com> Date: Sat, 25 Oct 2025 05:09:10 -0700 Subject: [PATCH] Desktop: Accessibility: Improve dialog keyboard handling (#13536) --- packages/app-desktop/gui/DialogButtonRow.tsx | 14 +++++++++++--- .../gui/DialogButtonRow/useKeyboardHandler.ts | 13 +++++++------ .../gui/NoteContentPropertiesDialog.tsx | 7 ++++++- packages/app-desktop/gui/NotePropertiesDialog.tsx | 7 ++++++- 4 files changed, 30 insertions(+), 11 deletions(-) diff --git a/packages/app-desktop/gui/DialogButtonRow.tsx b/packages/app-desktop/gui/DialogButtonRow.tsx index edbcbf3bc6..cc623e4e25 100644 --- a/packages/app-desktop/gui/DialogButtonRow.tsx +++ b/packages/app-desktop/gui/DialogButtonRow.tsx @@ -51,7 +51,15 @@ export default function DialogButtonRow(props: Props) { if (props.onClick) props.onClick(event); }, [props.onClick]); - const onKeyDown = useKeyboardHandler({ onOkButtonClick, onCancelButtonClick }); + const okButtonShow = props.okButtonShow ?? true; + const cancelButtonShow = props.cancelButtonShow ?? true; + const canClickOk = okButtonShow && !props.okButtonDisabled; + const canClickCancel = cancelButtonShow && !props.cancelButtonDisabled; + + const onKeyDown = useKeyboardHandler({ + onOkButtonClick: canClickOk ? onOkButtonClick : null, + onCancelButtonClick: canClickCancel ? onCancelButtonClick : null, + }); const buttonComps = []; @@ -65,7 +73,7 @@ export default function DialogButtonRow(props: Props) { } } - if (props.okButtonShow !== false) { + if (okButtonShow) { buttonComps.push(