about summary refs log tree commit diff
path: root/editors/code/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-10-04 17:31:44 +0000
committerbors <bors@rust-lang.org>2023-10-04 17:31:44 +0000
commitb57658d9a9fbc3ca34c1eb13ef41ef0e5e4b49d0 (patch)
tree9e3d1cfbff211dc5b7c55c4720a0c0eb6e2f1c16 /editors/code/src
parentad73597448a4d703dc7161c3f4a8a0602b1a12a0 (diff)
parentab091b73d0117d9788549289d3cd1ac709b462dd (diff)
downloadrust-b57658d9a9fbc3ca34c1eb13ef41ef0e5e4b49d0.tar.gz
rust-b57658d9a9fbc3ca34c1eb13ef41ef0e5e4b49d0.zip
Auto merge of #15707 - dfireBird:default-statusbar-action-config, r=lnicola
Add configuration for the default action of the status bar click action in VSCode

Fixes #15441

Please suggest any changes if necessary.
Diffstat (limited to 'editors/code/src')
-rw-r--r--editors/code/src/config.ts4
-rw-r--r--editors/code/src/ctx.ts6
2 files changed, 9 insertions, 1 deletions
diff --git a/editors/code/src/config.ts b/editors/code/src/config.ts
index 9821aee6f92..987d936943a 100644
--- a/editors/code/src/config.ts
+++ b/editors/code/src/config.ts
@@ -329,6 +329,10 @@ export class Config {
     get showDependenciesExplorer() {
         return this.get<boolean>("showDependenciesExplorer");
     }
+
+    get statusBarClickAction() {
+        return this.get<string>("statusBar.clickAction");
+    }
 }
 
 // the optional `cb?` parameter is meant to be used to add additional
diff --git a/editors/code/src/ctx.ts b/editors/code/src/ctx.ts
index 904efa4d5eb..84d1ad98bd9 100644
--- a/editors/code/src/ctx.ts
+++ b/editors/code/src/ctx.ts
@@ -400,7 +400,11 @@ export class Ctx {
                 statusBar.tooltip.appendText(status.message ?? "Ready");
                 statusBar.color = undefined;
                 statusBar.backgroundColor = undefined;
-                statusBar.command = "rust-analyzer.openLogs";
+                if (this.config.statusBarClickAction === "stopServer") {
+                    statusBar.command = "rust-analyzer.stopServer";
+                } else {
+                    statusBar.command = "rust-analyzer.openLogs";
+                }
                 this.dependencies?.refresh();
                 break;
             case "warning":