From 694611aade486ffe7e4d9b8735141a0d1764c09d Mon Sep 17 00:00:00 2001 From: jearhe <0verme7753@gmail.com> Date: Tue, 1 Sep 2026 12:16:59 +0800 Subject: [PATCH] fix(editor): keep scroll after canceling dangerous sql --- apps/desktop/src/App.vue | 1 + .../components/editor/DangerConfirmDialog.vue | 36 ++++++- .../src/components/editor/QueryEditor.vue | 5 + .../__tests__/DangerConfirmDialog.spec.ts | 33 +++++++ .../src/components/layout/ContentArea.vue | 5 + .../__tests__/useSqlExecution.spec.ts | 94 ++++++++++++++++++- .../src/composables/useSqlExecution.ts | 42 +++++++-- .../editor/queryEditorExecution.spec.ts | 5 +- .../editor/queryEditorExecutionViewport.ts | 5 +- 9 files changed, 215 insertions(+), 11 deletions(-) diff --git a/apps/desktop/src/App.vue b/apps/desktop/src/App.vue index a3573e6816..db2905874b 100644 --- a/apps/desktop/src/App.vue +++ b/apps/desktop/src/App.vue @@ -465,6 +465,7 @@ const { onMissingDatabase: promptActiveDatabaseSelection, requestDangerConfirmation: (request) => sqlExecutionDangerStore.requestConfirmation(request), onExecutionStarted: (editorViewportRequestId) => contentAreaRef.value?.acceptQueryEditorExecutionViewport(editorViewportRequestId), + onExecutionCancelled: (editorViewportRequestId) => contentAreaRef.value?.cancelQueryEditorExecutionViewport(editorViewportRequestId), }); function captureActiveEditorExecutionSnapshot() { diff --git a/apps/desktop/src/components/editor/DangerConfirmDialog.vue b/apps/desktop/src/components/editor/DangerConfirmDialog.vue index b5711207af..d88e954751 100644 --- a/apps/desktop/src/components/editor/DangerConfirmDialog.vue +++ b/apps/desktop/src/components/editor/DangerConfirmDialog.vue @@ -1,5 +1,5 @@