diff --git a/src/webviews/apps/settings/settings.ts b/src/webviews/apps/settings/settings.ts index f29008e..f70f186 100644 --- a/src/webviews/apps/settings/settings.ts +++ b/src/webviews/apps/settings/settings.ts @@ -149,6 +149,8 @@ export class SettingsApp extends App { onIpc(DidChangeConfigurationNotificationType, msg, params => { this.state.config = params.config; this.state.customSettings = params.customSettings; + this.state.timestamp = Date.now(); + this.setState(this.state); this.updateState(); }); diff --git a/src/webviews/settings/settingsWebview.ts b/src/webviews/settings/settingsWebview.ts index 2fcd8de..ea7ccda 100644 --- a/src/webviews/settings/settingsWebview.ts +++ b/src/webviews/settings/settingsWebview.ts @@ -54,6 +54,10 @@ export class SettingsWebviewProvider implements WebviewProvider { }; } + onReloaded(): void { + void this.notifyDidChangeConfiguration(); + } + onShowing?( loading: boolean, _options: { column?: ViewColumn; preserveFocus?: boolean }, diff --git a/src/webviews/webviewController.ts b/src/webviews/webviewController.ts index 564ba75..15a2a21 100644 --- a/src/webviews/webviewController.ts +++ b/src/webviews/webviewController.ts @@ -375,6 +375,7 @@ export class WebviewController< if (this._ready) { this.sendPendingIpcNotifications(); } else if (this.provider.onReloaded != null) { + this.clearPendingIpcNotifications(); this.provider.onReloaded(); } else { void this.refresh();