fix(editor): continue completion after selecting schemas

This commit is contained in:
zipg authored and GitHub committed 2026-07-13 17:16:23 +08:00
1 parent 35ca4e3a37
commit d794bbe768
3 files changed
+22 -4

No files matched your search

@@ -31,6 +31,7 @@ import {
isSqlLikeCompletionStatement,
recordCompletionSelection,
shouldAutoOpenSqlCompletion,
shouldChainSqlCompletionAfterAccept,
extractCteDefinitions,
} from "@/lib/sql/sqlCompletion";
import { sqlCompletionContextFromSemantic } from "@/lib/sql/semantic/completion";
@@ -1762,8 +1763,8 @@ function isTypedCompletionActivation(explicit: boolean) {
return explicit && typedCompletionActivationUntil >= Date.now();
}
function markCompletionAccepted() {
suppressNextSqlCompletionAutoStartUntil = Date.now() + 750;
function markCompletionAccepted(item: QueryCompletionItem) {
suppressNextSqlCompletionAutoStartUntil = shouldChainSqlCompletionAfterAccept(item) ? 0 : Date.now() + 750;
completionEpoch++;
}
@@ -1820,7 +1821,7 @@ function completionOptionForItem(item: QueryCompletionItem) {
...completion,
apply(view: EditorViewType, completionItem: unknown, from: number, to: number) {
record();
markCompletionAccepted();
markCompletionAccepted(item);
if (typeof originalApply === "function") {
originalApply(view, completionItem as never, from, to);
} else {
@@ -1841,7 +1842,7 @@ function completionOptionForItem(item: QueryCompletionItem) {
boost: item.boost,
apply(view: EditorViewType, _completionItem: unknown, from: number, to: number) {
record();
markCompletionAccepted();
markCompletionAccepted(item);
const insert = item.apply ?? item.label;
if (codeMirrorInsertCompletionText) {
view.dispatch(codeMirrorInsertCompletionText(view.state, insert, from, to));