diff --git a/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx b/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx
index 1988ec50ac..405125bb59 100644
--- a/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx
+++ b/src/components/views/settings/tabs/user/PreferencesUserSettingsTab.tsx
@@ -24,6 +24,8 @@ import * as sdk from "../../../../..";
import PlatformPeg from "../../../../../PlatformPeg";
import { SettingLevel } from "../../../../../settings/SettingLevel";
import { replaceableComponent } from "../../../../../utils/replaceableComponent";
+import * as KeyboardShortcuts from "../../../../../accessibility/KeyboardShortcuts";
+import AccessibleButton from "../../../elements/AccessibleButton";
interface IState {
autoLaunch: boolean;
@@ -45,6 +47,10 @@ export default class PreferencesUserSettingsTab extends React.Component<{}, ISta
'breadcrumbs',
];
+ static KEYBINDINGS_SETTINGS = [
+ 'ctrlFForSearch',
+ ];
+
static COMPOSER_SETTINGS = [
'MessageComposerInput.autoReplaceEmoji',
'MessageComposerInput.suggestEmoji',
@@ -53,28 +59,32 @@ export default class PreferencesUserSettingsTab extends React.Component<{}, ISta
'MessageComposerInput.showStickersButton',
];
- static TIMELINE_SETTINGS = [
- 'showTypingNotifications',
- 'autoplayGifsAndVideos',
- 'urlPreviewsEnabled',
- 'TextualBody.enableBigEmoji',
- 'showReadReceipts',
+ static TIME_SETTINGS = [
'showTwelveHourTimestamps',
'alwaysShowTimestamps',
- 'showRedactions',
+ ];
+ static CODE_BLOCKS_SETTINGS = [
'enableSyntaxHighlightLanguageDetection',
'expandCodeByDefault',
- 'scrollToBottomOnMessageSent',
'showCodeLineNumbers',
- 'showJoinLeaves',
- 'showAvatarChanges',
- 'showDisplaynameChanges',
- 'showImages',
- 'showChatEffects',
- 'Pill.shouldShowPillAvatar',
- 'ctrlFForSearch',
];
-
+ static IMAGES_AND_VIDEOS_SETTINGS = [
+ 'urlPreviewsEnabled',
+ 'autoplayGifsAndVideos',
+ 'showImages',
+ ];
+ static TIMELINE_SETTINGS = [
+ 'showTypingNotifications',
+ 'showRedactions',
+ 'showReadReceipts',
+ 'showJoinLeaves',
+ 'showDisplaynameChanges',
+ 'showChatEffects',
+ 'showAvatarChanges',
+ 'Pill.shouldShowPillAvatar',
+ 'TextualBody.enableBigEmoji',
+ 'scrollToBottomOnMessageSent',
+ ];
static GENERAL_SETTINGS = [
'TagPanel.enableTagPanel',
'promptBeforeInviteUnknownUsers',
@@ -222,11 +232,34 @@ export default class PreferencesUserSettingsTab extends React.Component<{}, ISta
{this.renderGroup(PreferencesUserSettingsTab.ROOM_LIST_SETTINGS)}
+
+
{_t("Keyboard shortcuts")}
+
+ { _t("To view all keyboard shortcuts, click here.") }
+
+ {this.renderGroup(PreferencesUserSettingsTab.KEYBINDINGS_SETTINGS)}
+
+
+
+ {_t("Displaying time")}
+ {this.renderGroup(PreferencesUserSettingsTab.TIME_SETTINGS)}
+
+
{_t("Composer")}
{this.renderGroup(PreferencesUserSettingsTab.COMPOSER_SETTINGS)}
+
+ {_t("Code blocks")}
+ {this.renderGroup(PreferencesUserSettingsTab.CODE_BLOCKS_SETTINGS)}
+
+
+
+ {_t("Images, GIFs and videos")}
+ {this.renderGroup(PreferencesUserSettingsTab.IMAGES_AND_VIDEOS_SETTINGS)}
+
+
{_t("Timeline")}
{this.renderGroup(PreferencesUserSettingsTab.TIMELINE_SETTINGS)}
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index 618d5763fa..ef9b5c621f 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -840,8 +840,8 @@
"Enable big emoji in chat": "Enable big emoji in chat",
"Send typing notifications": "Send typing notifications",
"Show typing notifications": "Show typing notifications",
- "Use Command + F to search": "Use Command + F to search",
- "Use Ctrl + F to search": "Use Ctrl + F to search",
+ "Use Command + F to search timeline": "Use Command + F to search timeline",
+ "Use Ctrl + F to search timeline": "Use Ctrl + F to search timeline",
"Use Command + Enter to send a message": "Use Command + Enter to send a message",
"Use Ctrl + Enter to send a message": "Use Ctrl + Enter to send a message",
"Automatically replace plain text Emoji": "Automatically replace plain text Emoji",
@@ -1339,7 +1339,12 @@
"Show tray icon and minimize window to it on close": "Show tray icon and minimize window to it on close",
"Preferences": "Preferences",
"Room list": "Room list",
+ "Keyboard shortcuts": "Keyboard shortcuts",
+ "To view all keyboard shortcuts, click here.": "To view all keyboard shortcuts, click here.",
+ "Displaying time": "Displaying time",
"Composer": "Composer",
+ "Code blocks": "Code blocks",
+ "Images, GIFs and videos": "Images, GIFs and videos",
"Timeline": "Timeline",
"Autocomplete delay (ms)": "Autocomplete delay (ms)",
"Read Marker lifetime (ms)": "Read Marker lifetime (ms)",
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
index 96820d0ff2..1751eddb2c 100644
--- a/src/settings/Settings.tsx
+++ b/src/settings/Settings.tsx
@@ -455,7 +455,7 @@ export const SETTINGS: {[setting: string]: ISetting} = {
},
"ctrlFForSearch": {
supportedLevels: LEVELS_ACCOUNT_SETTINGS,
- displayName: isMac ? _td("Use Command + F to search") : _td("Use Ctrl + F to search"),
+ displayName: isMac ? _td("Use Command + F to search timeline") : _td("Use Ctrl + F to search timeline"),
default: false,
},
"MessageComposerInput.ctrlEnterToSend": {