Skip to content

Commit 8d00a51

Browse files
committed
Context keys only apply to *active* documents
1 parent c6f28f8 commit 8d00a51

File tree

1 file changed

+10
-21
lines changed

1 file changed

+10
-21
lines changed

apps/vscode/src/providers/context-keys.ts

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
*
1414
*/
1515

16-
1716
import * as vscode from "vscode";
1817
import debounce from "lodash.debounce";
1918

@@ -41,41 +40,31 @@ export function activateContextKeySetter(
4140
context.subscriptions
4241
);
4342

44-
// set context keys when visible text editors change
45-
vscode.window.onDidChangeVisibleTextEditors(
46-
(_editors) => {
47-
triggerUpdateContextKeys(engine);
43+
// set context keys when active text editor changes
44+
vscode.window.onDidChangeActiveTextEditor(
45+
(editor) => {
46+
if (editor) {
47+
setContextKeys(editor, engine);
48+
}
4849
},
4950
null,
5051
context.subscriptions
5152
);
5253

53-
// set context keys on changes to the document (if its visible)
54+
// set context keys on changes to the document (if it's active)
5455
vscode.workspace.onDidChangeTextDocument(
5556
(event) => {
56-
const visibleEditor = vscode.window.visibleTextEditors.find(editor => {
57-
return editor.document.uri.toString() === event.document.uri.toString();
58-
});
59-
if (visibleEditor) {
57+
const activeEditor = vscode.window.activeTextEditor;
58+
if (activeEditor) {
6059
debounce(
61-
() => setContextKeys(visibleEditor, engine),
60+
() => setContextKeys(activeEditor, engine),
6261
debounceOnDidChangeDocumentMs
6362
)();
6463
}
6564
},
6665
null,
6766
context.subscriptions
6867
);
69-
70-
// set context keys at activation time
71-
triggerUpdateContextKeys(engine);
72-
73-
}
74-
75-
function triggerUpdateContextKeys(engine: MarkdownEngine) {
76-
for (const editor of vscode.window.visibleTextEditors) {
77-
setContextKeys(editor, engine);
78-
}
7968
}
8069

8170
function setContextKeys(editor: vscode.TextEditor, engine: MarkdownEngine) {

0 commit comments

Comments
 (0)