diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/view/com/composer/Composer.tsx | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/view/com/composer/Composer.tsx b/src/view/com/composer/Composer.tsx index 5c7594d61..3891fa268 100644 --- a/src/view/com/composer/Composer.tsx +++ b/src/view/com/composer/Composer.tsx @@ -91,7 +91,13 @@ export const ComposePost = observer(function ComposePost({ const onEscape = useCallback( (e: KeyboardEvent) => { if (e.key === 'Escape') { - store.shell.openModal({ + const {shell} = store + + if (shell.activeModals.some(modal => modal.name === 'confirm')) { + store.shell.closeModal() + } + + shell.openModal({ name: 'confirm', title: 'Cancel draft', onPressConfirm: onClose, @@ -102,7 +108,7 @@ export const ComposePost = observer(function ComposePost({ }) } }, - [store.shell, onClose], + [store, onClose], ) useEffect(() => { |