summaryrefslogtreecommitdiffstats
path: root/webapp
diff options
context:
space:
mode:
Diffstat (limited to 'webapp')
-rw-r--r--webapp/components/channel_invite_modal.jsx2
-rw-r--r--webapp/components/member_list_team.jsx3
-rw-r--r--webapp/components/sidebar.jsx6
-rw-r--r--webapp/components/sidebar_header_dropdown.jsx2
-rw-r--r--webapp/components/team_members_modal.jsx6
5 files changed, 17 insertions, 2 deletions
diff --git a/webapp/components/channel_invite_modal.jsx b/webapp/components/channel_invite_modal.jsx
index a9655f183..4b72cfc40 100644
--- a/webapp/components/channel_invite_modal.jsx
+++ b/webapp/components/channel_invite_modal.jsx
@@ -12,6 +12,7 @@ import TeamStore from 'stores/team_store.jsx';
import {searchUsers} from 'actions/user_actions.jsx';
import * as AsyncClient from 'utils/async_client.jsx';
+import * as UserAgent from 'utils/user_agent.jsx';
import React from 'react';
import {Modal} from 'react-bootstrap';
@@ -140,6 +141,7 @@ export default class ChannelInviteModal extends React.Component {
nextPage={this.nextPage}
search={this.search}
actions={[ChannelInviteButton]}
+ focusOnMount={!UserAgent.isMobile()}
actionProps={{
channel: this.props.channel,
onInviteError: this.handleInviteError
diff --git a/webapp/components/member_list_team.jsx b/webapp/components/member_list_team.jsx
index a48283b96..768129f1c 100644
--- a/webapp/components/member_list_team.jsx
+++ b/webapp/components/member_list_team.jsx
@@ -12,6 +12,8 @@ import {getTeamStats} from 'utils/async_client.jsx';
import Constants from 'utils/constants.jsx';
+import * as UserAgent from 'utils/user_agent.jsx';
+
import React from 'react';
const USERS_PER_PAGE = 50;
@@ -132,6 +134,7 @@ export default class MemberListTeam extends React.Component {
search={this.search}
actions={teamMembersDropdown}
actionUserProps={actionUserProps}
+ focusOnMount={!UserAgent.isMobile()}
/>
);
}
diff --git a/webapp/components/sidebar.jsx b/webapp/components/sidebar.jsx
index 85d39c9e7..1145c8ab3 100644
--- a/webapp/components/sidebar.jsx
+++ b/webapp/components/sidebar.jsx
@@ -19,6 +19,7 @@ import * as AsyncClient from 'utils/async_client.jsx';
import * as Utils from 'utils/utils.jsx';
import * as ChannelUtils from 'utils/channel_utils.jsx';
import * as ChannelActions from 'actions/channel_actions.jsx';
+import * as UserAgent from 'utils/user_agent.jsx';
import Constants from 'utils/constants.jsx';
@@ -341,6 +342,11 @@ export default class Sidebar extends React.Component {
showMoreChannelsModal() {
// manually show the modal because using data-toggle messes with keyboard focus when the modal is dismissed
$('#more_channels').modal({'data-channeltype': 'O'}).modal('show');
+ $('#more_channels').on('shown.bs.modal', () => {
+ if (!UserAgent.isMobile()) {
+ $('#more_channels input').focus();
+ }
+ });
}
showNewChannelModal(type) {
diff --git a/webapp/components/sidebar_header_dropdown.jsx b/webapp/components/sidebar_header_dropdown.jsx
index 1308b2304..dcd791cc6 100644
--- a/webapp/components/sidebar_header_dropdown.jsx
+++ b/webapp/components/sidebar_header_dropdown.jsx
@@ -121,7 +121,6 @@ export default class SidebarHeaderDropdown extends React.Component {
e.preventDefault();
this.setState({
- showDropdown: false,
showTeamMembersModal: true
});
}
@@ -448,6 +447,7 @@ export default class SidebarHeaderDropdown extends React.Component {
if (this.state.showTeamMembersModal) {
teamMembersModal = (
<TeamMembersModal
+ onLoad={this.toggleDropdown}
onHide={this.hideTeamMembersModal}
isAdmin={isAdmin}
/>
diff --git a/webapp/components/team_members_modal.jsx b/webapp/components/team_members_modal.jsx
index 187fa6538..37bfe9ea5 100644
--- a/webapp/components/team_members_modal.jsx
+++ b/webapp/components/team_members_modal.jsx
@@ -25,6 +25,9 @@ export default class TeamMembersModal extends React.Component {
componentDidMount() {
TeamStore.addChangeListener(this.teamChanged);
+ if (this.props.onLoad) {
+ this.props.onLoad();
+ }
}
componentWillUnmount() {
@@ -75,5 +78,6 @@ export default class TeamMembersModal extends React.Component {
TeamMembersModal.propTypes = {
onHide: React.PropTypes.func.isRequired,
- isAdmin: React.PropTypes.bool.isRequired
+ isAdmin: React.PropTypes.bool.isRequired,
+ onLoad: React.PropTypes.func
};