Skip to content

Commit 3180507

Browse files
committed
Ensures home preview banner is collapsed
1 parent 9cdefd1 commit 3180507

File tree

3 files changed

+19
-7
lines changed

3 files changed

+19
-7
lines changed

src/webviews/apps/home/stateProvider.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,8 @@ export class HomeStateProvider implements Disposable {
6565
break;
6666

6767
case DidChangePreviewEnabled.is(msg):
68-
this.state.previewEnabled = msg.params;
68+
this.state.previewEnabled = msg.params.previewEnabled;
69+
this.state.previewCollapsed = msg.params.previewCollapsed;
6970
this.state.timestamp = Date.now();
7071

7172
this.provider.setValue(this.state, true);

src/webviews/home/homeWebview.ts

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -325,15 +325,16 @@ export class HomeWebviewProvider implements WebviewProvider<State, State, HomeWe
325325
if (isEnabled === undefined) {
326326
isEnabled = !this.getPreviewEnabled();
327327
}
328-
this.container.telemetry.sendEvent('home/preview/toggled', { enabled: isEnabled, version: 'v16' });
329-
configuration.updateEffective('home.preview.enabled', isEnabled);
330328

331-
if (!isEnabled) {
329+
if (!this.getPreviewCollapsed()) {
332330
this.onCollapseSection({
333331
section: 'newHomePreview',
334332
collapsed: true,
335333
});
336334
}
335+
336+
this.container.telemetry.sendEvent('home/preview/toggled', { enabled: isEnabled, version: 'v16' });
337+
configuration.updateEffective('home.preview.enabled', isEnabled);
337338
}
338339

339340
private onCollapseSection(params: CollapseSectionParams) {
@@ -422,7 +423,7 @@ export class HomeWebviewProvider implements WebviewProvider<State, State, HomeWe
422423
}
423424

424425
private getPreviewEnabled() {
425-
return configuration.get('home.preview.enabled') ?? false;
426+
return configuration.get('home.preview.enabled');
426427
}
427428

428429
private getRepositoriesState(): DidChangeRepositoriesParams {
@@ -596,7 +597,10 @@ export class HomeWebviewProvider implements WebviewProvider<State, State, HomeWe
596597
}
597598

598599
private notifyDidChangeConfig() {
599-
void this.host.notify(DidChangePreviewEnabled, this.getPreviewEnabled());
600+
void this.host.notify(DidChangePreviewEnabled, {
601+
previewEnabled: this.getPreviewEnabled(),
602+
previewCollapsed: this.getPreviewCollapsed(),
603+
});
600604
}
601605

602606
private notifyDidChangeOnboardingIntegration() {

src/webviews/home/protocol.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,14 @@ export const DidCompleteDiscoveringRepositories = new IpcNotification<undefined>
147147
'repositories/didCompleteDiscovering',
148148
);
149149

150-
export const DidChangePreviewEnabled = new IpcNotification<boolean>(scope, 'previewEnabled/didChange');
150+
export interface DidChangePreviewEnabledParams {
151+
previewEnabled: boolean;
152+
previewCollapsed: boolean;
153+
}
154+
export const DidChangePreviewEnabled = new IpcNotification<DidChangePreviewEnabledParams>(
155+
scope,
156+
'previewEnabled/didChange',
157+
);
151158

152159
export const DidChangeRepositoryWip = new IpcNotification<undefined>(scope, 'repository/wip/didChange');
153160

0 commit comments

Comments
 (0)