aboutsummaryrefslogtreecommitdiff
path: root/editors/code/src/ctx.ts
diff options
context:
space:
mode:
Diffstat (limited to 'editors/code/src/ctx.ts')
-rw-r--r--editors/code/src/ctx.ts13
1 files changed, 11 insertions, 2 deletions
diff --git a/editors/code/src/ctx.ts b/editors/code/src/ctx.ts
index bd023f803..cf67dd8cf 100644
--- a/editors/code/src/ctx.ts
+++ b/editors/code/src/ctx.ts
@@ -7,6 +7,15 @@ import { createClient } from './client';
7import { isRustEditor, RustEditor } from './util'; 7import { isRustEditor, RustEditor } from './util';
8import { ServerStatusParams } from './lsp_ext'; 8import { ServerStatusParams } from './lsp_ext';
9 9
10export type Workspace =
11 {
12 kind: 'Workspace Folder';
13 }
14 | {
15 kind: 'Detached Files';
16 files: vscode.TextDocument[];
17 };
18
10export class Ctx { 19export class Ctx {
11 private constructor( 20 private constructor(
12 readonly config: Config, 21 readonly config: Config,
@@ -22,9 +31,9 @@ export class Ctx {
22 config: Config, 31 config: Config,
23 extCtx: vscode.ExtensionContext, 32 extCtx: vscode.ExtensionContext,
24 serverPath: string, 33 serverPath: string,
25 cwd: string, 34 workspace: Workspace,
26 ): Promise<Ctx> { 35 ): Promise<Ctx> {
27 const client = createClient(serverPath, cwd, config.serverExtraEnv); 36 const client = createClient(serverPath, workspace, config.serverExtraEnv);
28 37
29 const statusBar = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Left); 38 const statusBar = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Left);
30 extCtx.subscriptions.push(statusBar); 39 extCtx.subscriptions.push(statusBar);