diff --git a/src/createRoom.js b/src/createRoom.js index 944c6a70a1..ffe3a85c4e 100644 --- a/src/createRoom.js +++ b/src/createRoom.js @@ -79,12 +79,6 @@ function createRoom(opts) { const modal = Modal.createDialog(Loader, null, 'mx_Dialog_spinner'); let roomId; - if (opts.andView) { - // We will possibly have a successful join, indicate as such - dis.dispatch({ - action: 'will_join', - }); - } return client.createRoom(createOpts).finally(function() { modal.close(); }).then(function(res) { @@ -104,8 +98,10 @@ function createRoom(opts) { action: 'view_room', room_id: roomId, should_peek: false, - // Creating a room will have joined us to the room - joined: true, + // Creating a room will have joined us to the room, + // so we are expecting the room to come down the sync + // stream, if it hasn't already. + joining: true, }); } return roomId; diff --git a/src/stores/RoomViewStore.js b/src/stores/RoomViewStore.js index 1133c7eec5..55adfe0592 100644 --- a/src/stores/RoomViewStore.js +++ b/src/stores/RoomViewStore.js @@ -119,12 +119,10 @@ class RoomViewStore extends Store { roomLoadError: null, // should peek by default shouldPeek: payload.should_peek === undefined ? true : payload.should_peek, + // have we sent a join request for this room and are waiting for a response? + joining: payload.joining || false, }; - if (payload.joined) { - newState.joining = false; - } - if (this._state.forwardingEvent) { dis.dispatch({ action: 'send_event',