diff options
| author | Lukas Wirth <lukastw97@gmail.com> | 2022-07-13 13:16:35 +0200 |
|---|---|---|
| committer | Lukas Wirth <lukastw97@gmail.com> | 2022-07-13 13:26:23 +0200 |
| commit | def89af1eff41291df4d83e38c2ada8ad9931266 (patch) | |
| tree | 62cb8b839f94b4b78a1f2ed18ba35ef08145037b /editors/code | |
| parent | fc47ce53c8ed91dec1f791d79eb4566988266e73 (diff) | |
| download | rust-def89af1eff41291df4d83e38c2ada8ad9931266.tar.gz rust-def89af1eff41291df4d83e38c2ada8ad9931266.zip | |
fix: Fix VSCode status bar tooltip not showing the error messages
Diffstat (limited to 'editors/code')
| -rw-r--r-- | editors/code/src/ctx.ts | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/editors/code/src/ctx.ts b/editors/code/src/ctx.ts index 992c3d5de69..f2d47370105 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) { |
