Skip to content

Commit f54a2c1

Browse files
authored
Merge pull request Expensify#68741 from dukenv0307/fix/67944
Background is changed when reloading keyboard shortcut modal
2 parents ad3fc2d + e81ee74 commit f54a2c1

7 files changed

Lines changed: 26 additions & 9 deletions

File tree

src/ROUTES.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -387,7 +387,10 @@ const ROUTES = {
387387

388388
SETTINGS_SAVE_THE_WORLD: 'settings/teachersunite',
389389

390-
KEYBOARD_SHORTCUTS: 'keyboard-shortcuts',
390+
KEYBOARD_SHORTCUTS: {
391+
route: 'keyboard-shortcuts',
392+
getRoute: (backTo?: string) => getUrlWithBackToParam('keyboard-shortcuts', backTo),
393+
},
391394

392395
NEW: 'new',
393396
NEW_CHAT: 'new/chat',

src/libs/Navigation/AppNavigator/AuthScreens.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -370,10 +370,10 @@ function AuthScreens({session, lastOpenedPublicRoomID, initialLastUpdateIDApplie
370370
return;
371371
}
372372

373-
if (Navigation.isActiveRoute(ROUTES.KEYBOARD_SHORTCUTS)) {
373+
if (Navigation.isActiveRoute(ROUTES.KEYBOARD_SHORTCUTS.getRoute(Navigation.getActiveRoute()))) {
374374
return;
375375
}
376-
return Navigation.navigate(ROUTES.KEYBOARD_SHORTCUTS);
376+
return Navigation.navigate(ROUTES.KEYBOARD_SHORTCUTS.getRoute(Navigation.getActiveRoute()));
377377
});
378378
},
379379
shortcutsOverviewShortcutConfig.descriptionKey,

src/libs/Navigation/linkingConfig/config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -913,7 +913,7 @@ const config: LinkingOptions<RootNavigatorParamList>['config'] = {
913913
exact: true,
914914
},
915915
[SCREENS.KEYBOARD_SHORTCUTS]: {
916-
path: ROUTES.KEYBOARD_SHORTCUTS,
916+
path: ROUTES.KEYBOARD_SHORTCUTS.route,
917917
},
918918
[SCREENS.WORKSPACE.NAME]: ROUTES.WORKSPACE_OVERVIEW_NAME.route,
919919
[SCREENS.SETTINGS.SHARE_CODE]: {

src/libs/Navigation/types.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -933,7 +933,9 @@ type SettingsNavigatorParamList = {
933933
/** cardID of selected card */
934934
cardID: string;
935935
};
936-
[SCREENS.KEYBOARD_SHORTCUTS]: undefined;
936+
[SCREENS.KEYBOARD_SHORTCUTS]: {
937+
backTo: Routes;
938+
};
937939
[SCREENS.SETTINGS.EXIT_SURVEY.REASON]: undefined;
938940
[SCREENS.SETTINGS.EXIT_SURVEY.RESPONSE]: {
939941
[EXIT_SURVEY_REASON_FORM_INPUT_IDS.REASON]: ValueOf<typeof CONST.EXIT_SURVEY.REASONS>;

src/pages/KeyboardShortcutsPage.tsx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import type {RouteProp} from '@react-navigation/native';
12
import React from 'react';
23
import {View} from 'react-native';
34
import HeaderWithBackButton from '@components/HeaderWithBackButton';
@@ -8,16 +9,24 @@ import Text from '@components/Text';
89
import useLocalize from '@hooks/useLocalize';
910
import useThemeStyles from '@hooks/useThemeStyles';
1011
import KeyboardShortcut from '@libs/KeyboardShortcut';
12+
import Navigation from '@libs/Navigation/Navigation';
13+
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
1114
import CONST from '@src/CONST';
15+
import type SCREENS from '@src/SCREENS';
1216

1317
type Shortcut = {
1418
displayName: string;
1519
descriptionKey: 'search' | 'newChat' | 'openShortcutDialog' | 'escape' | 'copy';
1620
};
1721

18-
function KeyboardShortcutsPage() {
22+
type KeyboardShortcutsPageProps = {
23+
route: RouteProp<SettingsNavigatorParamList, typeof SCREENS.KEYBOARD_SHORTCUTS>;
24+
};
25+
26+
function KeyboardShortcutsPage({route}: KeyboardShortcutsPageProps) {
1927
const styles = useThemeStyles();
2028
const {translate} = useLocalize();
29+
const backTo = route.params.backTo;
2130
const shortcuts = Object.values(CONST.KEYBOARD_SHORTCUTS)
2231
.map((shortcut) => {
2332
const platformAdjustedModifiers = KeyboardShortcut.getPlatformEquivalentForKeys(shortcut.modifiers);
@@ -46,7 +55,10 @@ function KeyboardShortcutsPage() {
4655
includeSafeAreaPaddingBottom={false}
4756
testID={KeyboardShortcutsPage.displayName}
4857
>
49-
<HeaderWithBackButton title={translate('keyboardShortcutsPage.title')} />
58+
<HeaderWithBackButton
59+
title={translate('keyboardShortcutsPage.title')}
60+
onBackButtonPress={() => Navigation.goBack(backTo)}
61+
/>
5062
<ScrollView contentContainerStyle={styles.flexGrow1}>
5163
<View style={[styles.ph5, styles.pv3]}>
5264
<Text style={[styles.mb3, styles.webViewStyles.baseFontStyle]}>{translate('keyboardShortcutsPage.subtitle')}</Text>

src/pages/settings/AboutPage/AboutPage.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ function AboutPage() {
6565
{
6666
translationKey: 'initialSettingsPage.aboutPage.viewKeyboardShortcuts',
6767
icon: Expensicons.Keyboard,
68-
action: waitForNavigate(() => Navigation.navigate(ROUTES.KEYBOARD_SHORTCUTS)),
68+
action: waitForNavigate(() => Navigation.navigate(ROUTES.KEYBOARD_SHORTCUTS.getRoute(Navigation.getActiveRoute()))),
6969
},
7070
{
7171
translationKey: 'initialSettingsPage.aboutPage.viewTheCode',

src/setup/platformSetup/index.desktop.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export default function () {
1818

1919
// Trigger action to show keyboard shortcuts
2020
window.electron.on(ELECTRON_EVENTS.KEYBOARD_SHORTCUTS_PAGE, () => {
21-
Navigation.navigate(ROUTES.KEYBOARD_SHORTCUTS);
21+
Navigation.navigate(ROUTES.KEYBOARD_SHORTCUTS.getRoute(Navigation.getActiveRoute()));
2222
});
2323

2424
// Start current date updater

0 commit comments

Comments
 (0)