Unnamed repository; edit this file 'description' to name the repository.
Auto merge of #12754 - Veykril:vscode-status, r=Veykril
fix: Fix VSCode status bar tooltip not showing the error messages
bors 2022-07-13
parent fc47ce5 · parent def89af · commit 90b5097
-rw-r--r--editors/code/src/ctx.ts31
1 files changed, 16 insertions, 15 deletions
diff --git a/editors/code/src/ctx.ts b/editors/code/src/ctx.ts
index 992c3d5de6..f2d4737010 100644
--- a/editors/code/src/ctx.ts
+++ b/editors/code/src/ctx.ts
@@ -77,34 +77,35 @@ export class Ctx {
setServerStatus(status: ServerStatusParams) {
let icon = "";
+ const statusBar = this.statusBar;
switch (status.health) {
case "ok":
- this.statusBar.tooltip = status.message ?? "Ready";
- this.statusBar.command = undefined;
- this.statusBar.color = undefined;
- this.statusBar.backgroundColor = undefined;
+ statusBar.tooltip = status.message ?? "Ready";
+ statusBar.command = undefined;
+ statusBar.color = undefined;
+ statusBar.backgroundColor = undefined;
break;
case "warning":
- this.statusBar.tooltip += "\nClick to reload.";
- this.statusBar.command = "rust-analyzer.reloadWorkspace";
- this.statusBar.color = new vscode.ThemeColor("statusBarItem.warningForeground");
- this.statusBar.backgroundColor = new vscode.ThemeColor(
+ statusBar.tooltip =
+ (status.message ? status.message + "\n" : "") + "Click to reload.";
+
+ statusBar.command = "rust-analyzer.reloadWorkspace";
+ statusBar.color = new vscode.ThemeColor("statusBarItem.warningForeground");
+ statusBar.backgroundColor = new vscode.ThemeColor(
"statusBarItem.warningBackground"
);
icon = "$(warning) ";
break;
case "error":
- this.statusBar.tooltip += "\nClick to reload.";
- this.statusBar.command = "rust-analyzer.reloadWorkspace";
- this.statusBar.color = new vscode.ThemeColor("statusBarItem.errorForeground");
- this.statusBar.backgroundColor = new vscode.ThemeColor(
- "statusBarItem.errorBackground"
- );
+ statusBar.tooltip += "\nClick to reload.";
+ statusBar.command = "rust-analyzer.reloadWorkspace";
+ statusBar.color = new vscode.ThemeColor("statusBarItem.errorForeground");
+ statusBar.backgroundColor = new vscode.ThemeColor("statusBarItem.errorBackground");
icon = "$(error) ";
break;
}
if (!status.quiescent) icon = "$(sync~spin) ";
- this.statusBar.text = `${icon}rust-analyzer`;
+ statusBar.text = `${icon}rust-analyzer`;
}
pushCleanup(d: Disposable) {