PLT-2786 Open Account Settings/Recent Mentions Shortcuts (#2957)
* Account settings shortcut added * Added constants * Added recent mentions shortcut
Этот коммит содержится в:
коммит произвёл
Joram Wilander
родитель
1630892b4c
Коммит
a3cfdf0483
@@ -47,6 +47,7 @@ export default class ChannelHeader extends React.Component {
|
|||||||
this.searchMentions = this.searchMentions.bind(this);
|
this.searchMentions = this.searchMentions.bind(this);
|
||||||
this.showRenameChannelModal = this.showRenameChannelModal.bind(this);
|
this.showRenameChannelModal = this.showRenameChannelModal.bind(this);
|
||||||
this.hideRenameChannelModal = this.hideRenameChannelModal.bind(this);
|
this.hideRenameChannelModal = this.hideRenameChannelModal.bind(this);
|
||||||
|
this.openRecentMentions = this.openRecentMentions.bind(this);
|
||||||
|
|
||||||
const state = this.getStateFromStores();
|
const state = this.getStateFromStores();
|
||||||
state.showEditChannelPurposeModal = false;
|
state.showEditChannelPurposeModal = false;
|
||||||
@@ -82,6 +83,7 @@ export default class ChannelHeader extends React.Component {
|
|||||||
PreferenceStore.addChangeListener(this.onListenerChange);
|
PreferenceStore.addChangeListener(this.onListenerChange);
|
||||||
UserStore.addChangeListener(this.onListenerChange);
|
UserStore.addChangeListener(this.onListenerChange);
|
||||||
$('.sidebar--left .dropdown-menu').perfectScrollbar();
|
$('.sidebar--left .dropdown-menu').perfectScrollbar();
|
||||||
|
document.addEventListener('keydown', this.openRecentMentions);
|
||||||
}
|
}
|
||||||
componentWillUnmount() {
|
componentWillUnmount() {
|
||||||
ChannelStore.removeChangeListener(this.onListenerChange);
|
ChannelStore.removeChangeListener(this.onListenerChange);
|
||||||
@@ -89,6 +91,7 @@ export default class ChannelHeader extends React.Component {
|
|||||||
SearchStore.removeSearchChangeListener(this.onListenerChange);
|
SearchStore.removeSearchChangeListener(this.onListenerChange);
|
||||||
PreferenceStore.removeChangeListener(this.onListenerChange);
|
PreferenceStore.removeChangeListener(this.onListenerChange);
|
||||||
UserStore.removeChangeListener(this.onListenerChange);
|
UserStore.removeChangeListener(this.onListenerChange);
|
||||||
|
document.removeEventListener('keydown', this.openRecentMentions);
|
||||||
}
|
}
|
||||||
onListenerChange() {
|
onListenerChange() {
|
||||||
const newState = this.getStateFromStores();
|
const newState = this.getStateFromStores();
|
||||||
@@ -139,6 +142,11 @@ export default class ChannelHeader extends React.Component {
|
|||||||
is_mention_search: true
|
is_mention_search: true
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
openRecentMentions(e) {
|
||||||
|
if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.keyCode === Constants.KeyCodes.M) {
|
||||||
|
this.searchMentions(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
showRenameChannelModal(e) {
|
showRenameChannelModal(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ export default class NavbarDropdown extends React.Component {
|
|||||||
this.handleAboutModal = this.handleAboutModal.bind(this);
|
this.handleAboutModal = this.handleAboutModal.bind(this);
|
||||||
this.aboutModalDismissed = this.aboutModalDismissed.bind(this);
|
this.aboutModalDismissed = this.aboutModalDismissed.bind(this);
|
||||||
this.onTeamChange = this.onTeamChange.bind(this);
|
this.onTeamChange = this.onTeamChange.bind(this);
|
||||||
|
this.openAccountSettings = this.openAccountSettings.bind(this);
|
||||||
|
|
||||||
this.state = {
|
this.state = {
|
||||||
showUserSettingsModal: false,
|
showUserSettingsModal: false,
|
||||||
@@ -53,6 +54,7 @@ export default class NavbarDropdown extends React.Component {
|
|||||||
});
|
});
|
||||||
|
|
||||||
TeamStore.addChangeListener(this.onTeamChange);
|
TeamStore.addChangeListener(this.onTeamChange);
|
||||||
|
document.addEventListener('keydown', this.openAccountSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
onTeamChange() {
|
onTeamChange() {
|
||||||
@@ -65,8 +67,13 @@ export default class NavbarDropdown extends React.Component {
|
|||||||
componentWillUnmount() {
|
componentWillUnmount() {
|
||||||
$(ReactDOM.findDOMNode(this.refs.dropdown)).off('hide.bs.dropdown');
|
$(ReactDOM.findDOMNode(this.refs.dropdown)).off('hide.bs.dropdown');
|
||||||
TeamStore.removeChangeListener(this.onTeamChange);
|
TeamStore.removeChangeListener(this.onTeamChange);
|
||||||
|
document.removeEventListener('keydown', this.openAccountSettings);
|
||||||
|
}
|
||||||
|
openAccountSettings(e) {
|
||||||
|
if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.keyCode === Constants.KeyCodes.A) {
|
||||||
|
this.setState({showUserSettingsModal: true});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
var teamLink = '';
|
var teamLink = '';
|
||||||
var inviteLink = '';
|
var inviteLink = '';
|
||||||
|
|||||||
@@ -549,7 +549,9 @@ export default {
|
|||||||
ESCAPE: 27,
|
ESCAPE: 27,
|
||||||
SPACE: 32,
|
SPACE: 32,
|
||||||
TAB: 9,
|
TAB: 9,
|
||||||
U: 85
|
U: 85,
|
||||||
|
A: 65,
|
||||||
|
M: 77
|
||||||
},
|
},
|
||||||
CODE_PREVIEW_MAX_FILE_SIZE: 500000, // 500 KB
|
CODE_PREVIEW_MAX_FILE_SIZE: 500000, // 500 KB
|
||||||
HighlightedLanguages: {
|
HighlightedLanguages: {
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user