diff --git a/src/shared/components/common/language-select.tsx b/src/shared/components/common/language-select.tsx index 372d372a..fac3216f 100644 --- a/src/shared/components/common/language-select.tsx +++ b/src/shared/components/common/language-select.tsx @@ -16,6 +16,7 @@ interface LanguageSelectProps { showSite?: boolean; iconVersion?: boolean; disabled?: boolean; + showLanguageWarning?: boolean; } export class LanguageSelect extends Component { @@ -49,7 +50,7 @@ export class LanguageSelect extends Component { this.selectBtn ) : (
- {this.props.multiple && ( + {this.props.multiple && this.props.showLanguageWarning && (
{i18n.t("undetermined_language_warning")}
diff --git a/src/shared/components/common/markdown-textarea.tsx b/src/shared/components/common/markdown-textarea.tsx index 8d79de9d..918f9ae3 100644 --- a/src/shared/components/common/markdown-textarea.tsx +++ b/src/shared/components/common/markdown-textarea.tsx @@ -147,6 +147,7 @@ export class MarkdownTextArea extends Component< value={this.state.content} onInput={linkEvent(this, this.handleContentChange)} onPaste={linkEvent(this, this.handleImageUploadPaste)} + onKeyDown={linkEvent(this, this.handleKeyBinds)} required disabled={this.isDisabled} rows={2} @@ -428,6 +429,18 @@ export class MarkdownTextArea extends Component< i.contentChange(); } + // Keybind handler + handleKeyBinds(i: MarkdownTextArea, event: KeyboardEvent) { + if (event.ctrlKey) { + switch (event.key) { + case "k": { + // Currently only one case but will support further keybinds + i.handleInsertLink(i, event); + } + } + } + } + handlePreviewToggle(i: MarkdownTextArea, event: any) { event.preventDefault(); i.setState({ previewMode: !i.state.previewMode }); diff --git a/src/shared/components/person/profile.tsx b/src/shared/components/person/profile.tsx index b0ff4759..d1259f3e 100644 --- a/src/shared/components/person/profile.tsx +++ b/src/shared/components/person/profile.tsx @@ -387,7 +387,7 @@ export class Profile extends Component< {this.getRadio(PersonDetailsView.Overview)} {this.getRadio(PersonDetailsView.Comments)} {this.getRadio(PersonDetailsView.Posts)} - {this.getRadio(PersonDetailsView.Saved)} + {this.amCurrentUser && this.getRadio(PersonDetailsView.Saved)}
); } diff --git a/src/shared/components/person/settings.tsx b/src/shared/components/person/settings.tsx index 77acbd48..834b6f51 100644 --- a/src/shared/components/person/settings.tsx +++ b/src/shared/components/person/settings.tsx @@ -591,6 +591,7 @@ export class Settings extends Component { siteLanguages={this.state.siteRes.discussion_languages} selectedLanguageIds={selectedLangs} multiple={true} + showLanguageWarning={true} showSite onChange={this.handleDiscussionLanguageChange} />