Skip to content

Commit 2efcd1f

Browse files
committed
Fixes overview repo selection
1 parent 70dde74 commit 2efcd1f

File tree

3 files changed

+18
-14
lines changed

3 files changed

+18
-14
lines changed

src/webviews/apps/plus/home/components/overviewState.ts

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@ import type {
66
OverviewFilters,
77
} from '../../../../home/protocol';
88
import {
9-
ChangeOverviewRepository,
9+
ChangeOverviewRepositoryCommand,
1010
DidChangeOverviewFilter,
11+
DidChangeOverviewRepository,
1112
DidChangeRepositories,
1213
DidChangeRepositoryWip,
1314
GetActiveOverview,
@@ -44,6 +45,9 @@ export class ActiveOverviewState extends AsyncComputedState<ActiveOverview> {
4445
case DidChangeRepositoryWip.is(msg):
4546
this.run(true);
4647
break;
48+
case DidChangeOverviewRepository.is(msg):
49+
this.run(true);
50+
break;
4751
}
4852
});
4953
}
@@ -52,9 +56,8 @@ export class ActiveOverviewState extends AsyncComputedState<ActiveOverview> {
5256
this._disposable?.dispose();
5357
}
5458

55-
async changeRepository(): Promise<void> {
56-
await this._ipc.sendRequest(ChangeOverviewRepository, undefined);
57-
this.run(true);
59+
changeRepository(): void {
60+
this._ipc.sendCommand(ChangeOverviewRepositoryCommand, undefined);
5861
}
5962
}
6063

@@ -84,6 +87,9 @@ export class InactiveOverviewState extends AsyncComputedState<InactiveOverview>
8487
this.filter.stale = msg.params.filter.stale;
8588
this.run(true);
8689
break;
90+
case DidChangeOverviewRepository.is(msg):
91+
this.run(true);
92+
break;
8793
}
8894
});
8995
void this._ipc.sendRequest(GetOverviewFilterState, undefined).then(rsp => {

src/webviews/home/homeWebview.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,12 +80,13 @@ import type {
8080
State,
8181
} from './protocol';
8282
import {
83-
ChangeOverviewRepository,
83+
ChangeOverviewRepositoryCommand,
8484
CollapseSectionCommand,
8585
DidChangeIntegrationsConnections,
8686
DidChangeLaunchpad,
8787
DidChangeOrgSettings,
8888
DidChangeOverviewFilter,
89+
DidChangeOverviewRepository,
8990
DidChangePreviewEnabled,
9091
DidChangeRepositories,
9192
DidChangeRepositoryWip,
@@ -234,7 +235,7 @@ export class HomeWebviewProvider implements WebviewProvider<State, State, HomeWe
234235

235236
if (pick == null || pick === currentRepo) return;
236237

237-
this.selectRepository(pick.path);
238+
return this.selectRepository(pick.path);
238239
}
239240

240241
private onRepositoriesChanged() {
@@ -352,9 +353,9 @@ export class HomeWebviewProvider implements WebviewProvider<State, State, HomeWe
352353
case GetOverviewFilterState.is(e):
353354
void this.host.respond(GetOverviewFilterState, e, this._overviewBranchFilter);
354355
break;
355-
case ChangeOverviewRepository.is(e):
356-
await this.onChooseRepository();
357-
void this.host.respond(ChangeOverviewRepository, e, undefined);
356+
case ChangeOverviewRepositoryCommand.is(e):
357+
if ((await this.onChooseRepository()) == null) return;
358+
void this.host.notify(DidChangeOverviewRepository, undefined);
358359
break;
359360
case TogglePreviewEnabledCommand.is(e):
360361
this.onTogglePreviewEnabled();

src/webviews/home/protocol.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,6 @@ export const GetLaunchpadSummary = new IpcRequest<GetLaunchpadSummaryRequest, Ge
6363
'launchpad/summary',
6464
);
6565

66-
export interface GetOverviewRequest {
67-
[key: string]: unknown;
68-
}
69-
7066
export interface GetOverviewBranch {
7167
reference: GitBranchReference;
7268

@@ -238,7 +234,8 @@ export const GetInactiveOverview = new IpcRequest<GetInactiveOverviewRequest, Ge
238234
export type GetOverviewFilterStateResponse = OverviewFilters;
239235
export const GetOverviewFilterState = new IpcRequest<void, GetOverviewFilterStateResponse>(scope, 'overviewFilter');
240236

241-
export const ChangeOverviewRepository = new IpcRequest<undefined, undefined>(scope, 'overview/repository/change');
237+
export const ChangeOverviewRepositoryCommand = new IpcCommand<undefined>(scope, 'overview/repository/change');
238+
export const DidChangeOverviewRepository = new IpcNotification<undefined>(scope, 'overview/repository/didChange');
242239

243240
// COMMANDS
244241

0 commit comments

Comments
 (0)