Skip to content

Commit 930bb0f

Browse files
committed
Bust anki quick-select FTUE state to re-show the updated FTUE
1 parent a1c510c commit 930bb0f

5 files changed

Lines changed: 14 additions & 14 deletions

File tree

‎common/app/components/App.tsx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1186,10 +1186,10 @@ function App({
11861186
const { initialized: i18nInitialized } = useI18n({ language: settings.language });
11871187

11881188
const handleDismissShowAnkiDialogQuickSelectFtue = useCallback(() => {
1189-
onGlobalStateChanged({ ftueHasSeenAnkiDialogQuickSelect: true });
1189+
onGlobalStateChanged({ ftueHasSeenAnkiDialogQuickSelectV2: true });
11901190
}, [onGlobalStateChanged]);
11911191

1192-
const showAnkiDialogQuickSelectFtue = !isMobile && globalState?.ftueHasSeenAnkiDialogQuickSelect === false;
1192+
const showAnkiDialogQuickSelectFtue = !isMobile && globalState?.ftueHasSeenAnkiDialogQuickSelectV2 === false;
11931193

11941194
if (!i18nInitialized) {
11951195
return null;

‎common/global-state/index.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
// not be affected by settings profiles. For example: FTUE state.
55

66
export const initialGlobalState: GlobalState = {
7-
ftueHasSeenAnkiDialogQuickSelect: false,
7+
ftueHasSeenAnkiDialogQuickSelectV2: false,
88
};
99

1010
export interface GlobalState {
11-
ftueHasSeenAnkiDialogQuickSelect: boolean;
11+
ftueHasSeenAnkiDialogQuickSelectV2: boolean;
1212
}
1313

1414
export interface GlobalStateProvider {

‎extension/src/controllers/anki-ui-controller.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -252,7 +252,7 @@ export default class AnkiUiController {
252252
});
253253
return;
254254
case 'dismissedQuickSelectFtue':
255-
globalStateProvider.set({ ftueHasSeenAnkiDialogQuickSelect: true }).catch(console.error);
255+
globalStateProvider.set({ ftueHasSeenAnkiDialogQuickSelectV2: true }).catch(console.error);
256256
return;
257257
case 'exported':
258258
const exportedMessage = message as AnkiUiBridgeExportedMessage;
@@ -349,7 +349,7 @@ export default class AnkiUiController {
349349
return {
350350
profiles: await profilesPromise,
351351
activeProfile: (await activeProfilePromise)?.name,
352-
ftueHasSeenAnkiDialogQuickSelect: (await globalStatePromise).ftueHasSeenAnkiDialogQuickSelect,
352+
ftueHasSeenAnkiDialogQuickSelect: (await globalStatePromise).ftueHasSeenAnkiDialogQuickSelectV2,
353353
};
354354
}
355355

‎extension/src/controllers/tab-anki-ui-controller.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ export class TabAnkiUiController {
7474
...card,
7575
profiles: await profilesPromise,
7676
activeProfile: (await activeProfilePromise)?.name,
77-
ftueHasSeenAnkiDialogQuickSelect: (await globalStatePromise).ftueHasSeenAnkiDialogQuickSelect,
77+
ftueHasSeenAnkiDialogQuickSelect: (await globalStatePromise).ftueHasSeenAnkiDialogQuickSelectV2,
7878
};
7979
client.updateState(state);
8080
}
@@ -159,7 +159,7 @@ export class TabAnkiUiController {
159159
});
160160
return;
161161
case 'dismissedQuickSelectFtue':
162-
globalStateProvider.set({ ftueHasSeenAnkiDialogQuickSelect: true }).catch(console.error);
162+
globalStateProvider.set({ ftueHasSeenAnkiDialogQuickSelectV2: true }).catch(console.error);
163163
return;
164164
case 'exported':
165165
const exportedMessage = message as AnkiUiBridgeExportedMessage;

‎extension/src/services/extension-global-state-provider.test.ts‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ import { MockStorageArea } from './mock-storage-area';
33

44
it('can retrieve list of keys', async () => {
55
const provider = new ExtensionGlobalStateProvider(new MockStorageArea());
6-
expect(await provider.get(['ftueHasSeenAnkiDialogQuickSelect'])).toEqual({
7-
ftueHasSeenAnkiDialogQuickSelect: false,
6+
expect(await provider.get(['ftueHasSeenAnkiDialogQuickSelectV2'])).toEqual({
7+
ftueHasSeenAnkiDialogQuickSelectV2: false,
88
});
9-
await provider.set({ ftueHasSeenAnkiDialogQuickSelect: true });
10-
expect(await provider.get(['ftueHasSeenAnkiDialogQuickSelect'])).toEqual({
11-
ftueHasSeenAnkiDialogQuickSelect: true,
9+
await provider.set({ ftueHasSeenAnkiDialogQuickSelectV2: true });
10+
expect(await provider.get(['ftueHasSeenAnkiDialogQuickSelectV2'])).toEqual({
11+
ftueHasSeenAnkiDialogQuickSelectV2: true,
1212
});
1313
});
1414

@@ -19,5 +19,5 @@ it('can retrieve 0 keys', async () => {
1919

2020
it('can retrieve all keys', async () => {
2121
const provider = new ExtensionGlobalStateProvider(new MockStorageArea());
22-
expect(await provider.getAll()).toEqual({ ftueHasSeenAnkiDialogQuickSelect: false });
22+
expect(await provider.getAll()).toEqual({ ftueHasSeenAnkiDialogQuickSelectV2: false });
2323
});

0 commit comments

Comments
 (0)