From de7b40a13e6b7867a2a295537ffa3c9b6afda6d7 Mon Sep 17 00:00:00 2001 From: Marijn Haverbeke Date: Tue, 9 Jul 2024 09:07:36 +0200 Subject: [PATCH 1/8] Force document update requests when necessary --- .../codemirror-lsp-client/src/plugin/lsp.ts | 87 +++++++++---------- 1 file changed, 42 insertions(+), 45 deletions(-) diff --git a/packages/codemirror-lsp-client/src/plugin/lsp.ts b/packages/codemirror-lsp-client/src/plugin/lsp.ts index 0f001f6bc1..b457224a46 100644 --- a/packages/codemirror-lsp-client/src/plugin/lsp.ts +++ b/packages/codemirror-lsp-client/src/plugin/lsp.ts @@ -93,23 +93,10 @@ export class LanguageServerPlugin implements PluginValue { private doSemanticTokens: boolean = false private doFoldingRanges: boolean = false - private _defferer = deferExecution((code: string) => { - try { - // Update the state (not the editor) with the new code. - this.client.textDocumentDidChange({ - textDocument: { - uri: this.getDocUri(), - version: this.documentVersion++, - }, - contentChanges: [{ text: code }], - }) - - this.requestSemanticTokens() - this.updateFoldingRanges() - } catch (e) { - console.error(e) - } - }, this.changesDelay) + // When a doc update needs to be sent to the server, this holds the + // timeout handle for it. When null, the server has the up-to-date + // document. + private sendScheduled: number | null = null constructor(options: LanguageServerOptions, private view: EditorView) { this.client = options.client @@ -152,14 +139,9 @@ export class LanguageServerPlugin implements PluginValue { } update(viewUpdate: ViewUpdate) { - // If the doc didn't change we can return early. - if (!viewUpdate.docChanged) { - return + if (viewUpdate.docChanged) { + this.scheduleSendDoc() } - - this.sendChange({ - documentText: viewUpdate.state.doc.toString(), - }) } destroy() { @@ -184,16 +166,6 @@ export class LanguageServerPlugin implements PluginValue { this.updateFoldingRanges() } - async sendChange({ documentText }: { documentText: string }) { - if (!this.client.ready) return - - this._defferer(documentText) - } - - requestDiagnostics() { - this.sendChange({ documentText: this.getDocText() }) - } - async requestHoverTooltip( view: EditorView, { line, character }: { line: number; character: number } @@ -204,7 +176,7 @@ export class LanguageServerPlugin implements PluginValue { ) return null - this.sendChange({ documentText: this.getDocText() }) + this.ensureDocSent() const result = await this.client.textDocumentHover({ textDocument: { uri: this.getDocUri() }, position: { line, character }, @@ -227,6 +199,39 @@ export class LanguageServerPlugin implements PluginValue { return { pos, end, create: (view) => ({ dom }), above: true } } + scheduleSendDoc() { + if (this.sendScheduled != null) window.clearTimeout(this.sendScheduled) + this.sendScheduled = window.setTimeout(() => this.sendDoc(), this.changesDelay) + } + + sendDoc() { + if (this.sendScheduled != null) { + window.clearTimeout(this.sendScheduled) + this.sendScheduled = null + } + + if (!this.client.ready) return + try { + // Update the state (not the editor) with the new code. + this.client.textDocumentDidChange({ + textDocument: { + uri: this.getDocUri(), + version: this.documentVersion++, + }, + contentChanges: [{ text: this.view.state.doc.toString() }], + }) + + this.requestSemanticTokens() + this.updateFoldingRanges() + } catch (e) { + console.error(e) + } + } + + ensureDocSent() { + if (this.sendScheduled != null) this.sendDoc() + } + async getFoldingRanges(): Promise { if ( !this.doFoldingRanges || @@ -284,13 +289,7 @@ export class LanguageServerPlugin implements PluginValue { ) return null - this.client.textDocumentDidChange({ - textDocument: { - uri: this.getDocUri(), - version: this.documentVersion++, - }, - contentChanges: [{ text: this.getDocText() }], - }) + this.ensureDocSent() const result = await this.client.textDocumentFormatting({ textDocument: { uri: this.getDocUri() }, @@ -330,9 +329,7 @@ export class LanguageServerPlugin implements PluginValue { ) return null - this.sendChange({ - documentText: context.state.doc.toString(), - }) + this.ensureDocSent() const result = await this.client.textDocumentCompletion({ textDocument: { uri: this.getDocUri() }, From a72560cb83de70dd80f8569a6a15003450e4124e Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Thu, 11 Jul 2024 09:53:48 -0700 Subject: [PATCH 2/8] fix up codemirror deferrers Signed-off-by: Jess Frazelle --- packages/codemirror-lsp-client/src/plugin/lsp.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/codemirror-lsp-client/src/plugin/lsp.ts b/packages/codemirror-lsp-client/src/plugin/lsp.ts index b457224a46..70c939c9df 100644 --- a/packages/codemirror-lsp-client/src/plugin/lsp.ts +++ b/packages/codemirror-lsp-client/src/plugin/lsp.ts @@ -201,7 +201,10 @@ export class LanguageServerPlugin implements PluginValue { scheduleSendDoc() { if (this.sendScheduled != null) window.clearTimeout(this.sendScheduled) - this.sendScheduled = window.setTimeout(() => this.sendDoc(), this.changesDelay) + this.sendScheduled = window.setTimeout( + () => this.sendDoc(), + this.changesDelay + ) } sendDoc() { From cba50721316bb360a4b4a03e9fc4acc853536c7f Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Thu, 11 Jul 2024 10:40:27 -0700 Subject: [PATCH 3/8] lock Signed-off-by: Jess Frazelle --- src-tauri/Cargo.lock | 130 +++++++++++++++++++++---------------------- 1 file changed, 65 insertions(+), 65 deletions(-) diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 41a89b5ab7..75f18f82da 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -332,7 +332,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -361,13 +361,13 @@ checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799" [[package]] name = "async-trait" -version = "0.1.80" +version = "0.1.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" +checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -407,7 +407,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -550,7 +550,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", "syn_derive", ] @@ -792,9 +792,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.7" +version = "4.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5db83dced34638ad474f39f250d7fea9598bdd239eaced1bdf45d597da0f433f" +checksum = "64acc1846d54c1fe936a78dc189c34e28d3f5afc348403f28ecf53660b9b8462" dependencies = [ "clap_builder", "clap_derive", @@ -802,9 +802,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.7" +version = "4.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7e204572485eb3fbf28f871612191521df159bc3e15a9f5064c66dba3a8c05f" +checksum = "6fb8393d67ba2e7bfaf28a23458e4e2b543cc73a99595511eb207fdb8aede942" dependencies = [ "anstream", "anstyle", @@ -816,14 +816,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.5" +version = "4.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c780290ccf4fb26629baa7a1081e68ced113f1d3ec302fa5948f1c381ebf06c6" +checksum = "2bac35c6dafb060fd4d275d9a4ffae97917c13a6327903a8be2153cd964f7085" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1073,7 +1073,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1083,7 +1083,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f" dependencies = [ "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1107,7 +1107,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.10.0", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1118,7 +1118,7 @@ checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" dependencies = [ "darling_core", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1179,7 +1179,7 @@ checksum = "4078275de501a61ceb9e759d37bdd3d7210e654dbc167ac1a3678ef4435ed57b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", "synstructure", ] @@ -1216,7 +1216,7 @@ dependencies = [ "regex", "serde", "serde_tokenstream", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1227,7 +1227,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1288,7 +1288,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1320,7 +1320,7 @@ checksum = "f2b99bf03862d7f545ebc28ddd33a665b50865f4dfd84031a393823879bd4c54" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1427,7 +1427,7 @@ checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1588,7 +1588,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1704,7 +1704,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -1980,7 +1980,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -2008,7 +2008,7 @@ dependencies = [ "inflections", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -2083,7 +2083,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -2571,7 +2571,7 @@ dependencies = [ [[package]] name = "kcl-lib" -version = "0.1.70" +version = "0.1.72" dependencies = [ "anyhow", "approx", @@ -3377,7 +3377,7 @@ dependencies = [ "regex", "regex-syntax 0.8.3", "structmeta", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -3496,7 +3496,7 @@ dependencies = [ "phf_shared 0.11.2", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -3564,7 +3564,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4438,7 +4438,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4523,9 +4523,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.203" +version = "1.0.204" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" +checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" dependencies = [ "serde_derive", ] @@ -4552,13 +4552,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.203" +version = "1.0.204" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" +checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4569,7 +4569,7 @@ checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4602,7 +4602,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4623,7 +4623,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4665,7 +4665,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4933,7 +4933,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4944,7 +4944,7 @@ checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4966,7 +4966,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -4999,9 +4999,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.68" +version = "2.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9" +checksum = "2f0209b68b3613b093e0ec905354eccaedcfe83b8cb37cbdeae64026c3064c16" dependencies = [ "proc-macro2", "quote", @@ -5017,7 +5017,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -5034,7 +5034,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -5251,7 +5251,7 @@ dependencies = [ "serde", "serde_json", "sha2", - "syn 2.0.68", + "syn 2.0.70", "tauri-utils", "thiserror", "time", @@ -5269,7 +5269,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", "tauri-codegen", "tauri-utils", ] @@ -5642,7 +5642,7 @@ checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -5740,7 +5740,7 @@ checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -5940,7 +5940,7 @@ checksum = "84fd902d4e0b9a4b27f2f440108dc034e1758628a9b702f8ec61ad66355422fa" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -5969,7 +5969,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -6099,7 +6099,7 @@ checksum = "c88cc88fd23b5a04528f3a8436024f20010a16ec18eb23c164b1242f65860130" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", "termcolor", ] @@ -6280,9 +6280,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" -version = "1.9.1" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de17fd2f7da591098415cff336e12965a28061ddace43b59cb3c430179c9439" +checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" dependencies = [ "getrandom 0.2.14", "serde", @@ -6316,7 +6316,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -6415,7 +6415,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", "wasm-bindgen-shared", ] @@ -6449,7 +6449,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -6590,7 +6590,7 @@ checksum = "ac1345798ecd8122468840bcdf1b95e5dc6d2206c5e4b0eafa078d061f59c9bc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -6696,7 +6696,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -6707,7 +6707,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] @@ -7159,7 +7159,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.68", + "syn 2.0.70", ] [[package]] From 1529191e64b04c34ce0b10c1a3018c9b64ae11d3 Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Thu, 11 Jul 2024 10:50:07 -0700 Subject: [PATCH 4/8] fixups kcl/index Signed-off-by: Jess Frazelle --- src/editor/plugins/lsp/kcl/index.ts | 40 +++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 8 deletions(-) diff --git a/src/editor/plugins/lsp/kcl/index.ts b/src/editor/plugins/lsp/kcl/index.ts index cd0b8e89da..6751eddf62 100644 --- a/src/editor/plugins/lsp/kcl/index.ts +++ b/src/editor/plugins/lsp/kcl/index.ts @@ -27,13 +27,10 @@ export class KclPlugin implements PluginValue { this.client = client } - private _deffererCodeUpdate = deferExecution(() => { - if (this.viewUpdate === null) { - return - } - - kclManager.executeCode() - }, changesDelay) + // When a doc update needs to be sent to the server, this holds the + // timeout handle for it. When null, the server has the up-to-date + // document. + private sendScheduledInput: number | null = null private _deffererUserSelect = deferExecution(() => { if (this.viewUpdate === null) { @@ -101,7 +98,34 @@ export class KclPlugin implements PluginValue { codeManager.code = newCode codeManager.writeToFile() - this._deffererCodeUpdate(true) + this.scheduleUpdateDoc() + } + + scheduleUpdateDoc() { + if (this.sendScheduledInput != null) + window.clearTimeout(this.sendScheduledInput) + this.sendScheduledInput = window.setTimeout( + () => this.updateDoc(), + changesDelay + ) + } + + updateDoc() { + if (this.sendScheduledInput != null) { + window.clearTimeout(this.sendScheduledInput) + this.sendScheduledInput = null + } + + if (!this.client.ready) return + try { + kclManager.executeCode() + } catch (e) { + console.error(e) + } + } + + ensureDocUpdated() { + if (this.sendScheduledInput != null) this.updateDoc() } async updateUnits( From f5188c4bf27764e52ecb0baca5c205cd53a34a38 Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Thu, 11 Jul 2024 10:53:24 -0700 Subject: [PATCH 5/8] fix copilot Signed-off-by: Jess Frazelle --- src/editor/plugins/lsp/copilot/index.ts | 38 +++++++++++++++++++++---- 1 file changed, 33 insertions(+), 5 deletions(-) diff --git a/src/editor/plugins/lsp/copilot/index.ts b/src/editor/plugins/lsp/copilot/index.ts index 052f9d9c8a..9ea3d5cb9a 100644 --- a/src/editor/plugins/lsp/copilot/index.ts +++ b/src/editor/plugins/lsp/copilot/index.ts @@ -195,14 +195,15 @@ export class CompletionRequester implements PluginValue { private queuedUids: string[] = [] - private _deffererCodeUpdate = deferExecution(() => { - this.requestCompletions() - }, changesDelay) - private _deffererUserSelect = deferExecution(() => { this.rejectSuggestionCommand() }, changesDelay) + // When a doc update needs to be sent to the server, this holds the + // timeout handle for it. When null, the server has the up-to-date + // document. + private sendScheduledInput: number | null = null + constructor(readonly view: EditorView, client: LanguageServerClient) { this.client = client } @@ -245,7 +246,34 @@ export class CompletionRequester implements PluginValue { } this.lastPos = this.view.state.selection.main.head - if (viewUpdate.docChanged) this._deffererCodeUpdate(true) + if (viewUpdate.docChanged) this.scheduleUpdateDoc() + } + + scheduleUpdateDoc() { + if (this.sendScheduledInput != null) + window.clearTimeout(this.sendScheduledInput) + this.sendScheduledInput = window.setTimeout( + () => this.updateDoc(), + changesDelay + ) + } + + updateDoc() { + if (this.sendScheduledInput != null) { + window.clearTimeout(this.sendScheduledInput) + this.sendScheduledInput = null + } + + if (!this.client.ready) return + try { + this.requestCompletions() + } catch (e) { + console.error(e) + } + } + + ensureDocUpdated() { + if (this.sendScheduledInput != null) this.updateDoc() } ghostText(): GhostText | null { From 0b19e8764eb32fdccef2b239b5551e7b39a0a39f Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Thu, 11 Jul 2024 14:03:28 -0700 Subject: [PATCH 6/8] updates Signed-off-by: Jess Frazelle --- ...serial_test_example_pattern_transform0.png | Bin 341157 -> 341319 bytes .../tests/executor/outputs/i_shape.png | Bin 92829 -> 92832 bytes .../tests/executor/outputs/kittycad_svg.png | Bin 150300 -> 150096 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/src/wasm-lib/kcl/tests/outputs/serial_test_example_pattern_transform0.png b/src/wasm-lib/kcl/tests/outputs/serial_test_example_pattern_transform0.png index 122743a55dc401dc7ba24b1af793ffbdfeb2f6a5..685b743ed0fa4bfbfe52d3a0eb787ed7752392b8 100644 GIT binary patch literal 341319 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