Commit graph

1518 commits

Author SHA1 Message Date
David Baker
9ef9d09d44 Fix another race with first-sync
Set the first sync variables in onWillStartClient, as they race if
set on logged in (similar fix to https://github.com/matrix-org/matrix-react-sdk/pull/1124)
2017-06-21 11:27:18 +01:00
Matthew Hodgson
d441ba1fd0 Merge pull request #1129 from matrix-org/luke/fix-logout
Don't allow UserSettings to render if !MatrixClientPeg.get()
2017-06-20 18:43:33 +01:00
Richard van der Hoff
1cd152e5f7 Merge pull request #1130 from matrix-org/rav/log_fixes
Various logging cleanups
2017-06-20 17:55:07 +01:00
Richard van der Hoff
cd73139af5 Various logging cleanups
* don't just log errors without any context as to where they came from or what
   they mean
 * avoid the use of '%s' and multi-argument console.log because it looks awful
   under karma.
2017-06-20 17:38:02 +01:00
Luke Barnard
3320df4cdd Don't allow UserSettings to render if !MatrixClientPeg.get()
Now that it has state that updates following the nulling of the MCP (userHasGeneratedPassword) we need to stop it from rendering if the MCP is null.

Fixes https://github.com/vector-im/riot-web/issues/4319
2017-06-20 17:13:06 +01:00
Luke Barnard
c337485d90 Redesign the warning to be red text, move below "Sign out" 2017-06-20 15:01:53 +01:00
Luke Barnard
4f9c1fe199 Merge branch 'develop' into luke/feature-user-settings-password-warning 2017-06-20 13:40:34 +01:00
Richard van der Hoff
0c431887b0 Merge pull request #996 from matrix-org/rav/handle_received_room_key_requests
Pop up a dialog when we get a room key request
2017-06-20 13:20:58 +01:00
David Baker
e15aedfeb2 Fix another infinite spin on register
Don't set ready on logging_in, set it before we start the client,
as commented
2017-06-20 12:03:37 +01:00
Luke Barnard
e16d1b3cfb Implement password nag warning in user settings account section
"To return to your account in future you need to set a password" in the account section when a user has not yet set a password (is a PWLU).
2017-06-20 11:22:07 +01:00
Richard van der Hoff
a0534e7477 Merge branch 'develop' into rav/handle_received_room_key_requests 2017-06-20 00:25:14 +01:00
Richard van der Hoff
3a6dabdc08 Merge pull request #1116 from matrix-org/rav/no_more_guestcreds
Get rid of guestCreds
2017-06-19 14:34:12 +01:00
Luke Barnard
57f01b83be Revert "Save scroll state immediately before updating"
This reverts commit 4124a8dcff from PR https://github.com/matrix-org/matrix-react-sdk/pull/1076
2017-06-19 13:19:17 +01:00
Luke Barnard
513a585a3e Merge pull request #1076 from ollieh/issues/reduce-save-restore-window
Reduce save-restore window in ScrollPanel to reduce scrolling jumps
2017-06-19 11:23:10 +01:00
Richard van der Hoff
a5d65ee391 Get rid of guestCreds
-- we just keep the MatrixClient running in the background, so it is easy to
resume.
2017-06-19 10:36:25 +01:00
Richard van der Hoff
3b518f2c59 Fix race in registration for pusher config
we no longer immediately create the MatrixClient, so don't assume we do.
2017-06-19 10:22:18 +01:00
Richard van der Hoff
115a3deed9 Merge pull request #1102 from matrix-org/rav/refactor_matrixclient_states
Refactor the state machine in MatrixChat
2017-06-19 08:53:50 +01:00
Richard van der Hoff
cb29d92912 Merge pull request #1110 from matrix-org/rav/fix_token_redirect
Avoid transitioning to loggedIn state during token login
2017-06-19 08:52:22 +01:00
Matthew Hodgson
032650e095 Merge branch 'develop' into t3chguy/fix_forwarding 2017-06-19 01:53:35 +01:00
Luke Barnard
ba95d7a16c Merge pull request #1113 from matrix-org/luke/fix-no-peek-on-create
Don't peek when creating a room
2017-06-16 18:35:20 +01:00
Luke Barnard
be58e1095e Don't peek when creating a room
This causes a race between receiving the room when starting to peek and receiving the room from joining it - https://github.com/vector-im/riot-web/issues/4330, https://github.com/matrix-org/riot-web-rageshakes/issues/196
2017-06-16 18:24:07 +01:00
Michael Telatynski
7b4cd31124 make forward_message be friendly with the RVS stuffs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-16 16:12:52 +01:00
David Baker
aa7ddfe86e Remove unused collapse_rhs
Remove all the places we pass collapse_rhs through to places it's
never used. Remove the commented RHS collapse button from
SimpleRoomHeader.
2017-06-16 15:47:40 +01:00
Richard van der Hoff
db3d9c0573 Make Lifecycle.loadSession return an explicit result
- rather than inferring it from the fact it didn't call logging_in.
2017-06-16 15:23:09 +01:00
Richard van der Hoff
5f689b7929 Merge branch 'rav/fix_token_redirect' into rav/refactor_matrixclient_states_tmp 2017-06-16 15:20:47 +01:00
Richard van der Hoff
eb1fc9ae2d Avoid transitioning to loggedIn state during token login
Fixes riot-web#4334

When we do a token login, don't carry on with the normal app startup
(transitioning to the loggedIn state etc) - instead tell the app about the
successful login and wait for it to redirect.

Replace onLoadCompleted with onTokenLoginCompleted so that the app can see what
it's supposed to be doing.
2017-06-16 15:05:53 +01:00
Richard van der Hoff
3884c5ccf0 Log an error on unknown state instead of throwing 2017-06-16 11:51:12 +01:00
Richard van der Hoff
5e5639b730 Fix half-written comment 2017-06-16 11:50:53 +01:00
Luke Barnard
82b2da7833 Correctly inspect state when rejecting invite
So that we view_next_room if we're looking at the room we're rejecting
2017-06-16 11:27:47 +01:00
David Baker
64b555dfe3 Merge pull request #1107 from matrix-org/luke/fix-use-room-alias-in-preview
Make sure to pass the roomAlias to the preview header if we have it
2017-06-16 11:21:03 +01:00
Luke Barnard
807f01b57e Make sure to pass the roomAlias to the preview header if we have it 2017-06-16 11:10:55 +01:00
David Baker
af6392d7ca Fix URL previews
and also things like the unsent message error and encryption
warning.

Stuff that we need to do at room view mount time had got moved into
a clause of the if statement in onHaveRoom and so wasn't being
executed.

Fixes https://github.com/vector-im/riot-web/issues/4327
2017-06-15 22:57:41 +01:00
Richard van der Hoff
7b526308fd Rearrange MatrixChat.render for sanity
no-op to make it into a nice simple switch-like arrangement
2017-06-15 17:57:24 +01:00
Richard van der Hoff
90213ce72e MatrixChat: Replace state.{loading,loggedIn,loggingIn} with views
MatrixChat is essentially a glorified state machine, with its states partially
determined by the loading, loggedIn and loggingIn state flags. If we actually
make each of the states implied by those flags an explicit 'view', then
everything gets much clearer.
2017-06-15 17:57:24 +01:00
Richard van der Hoff
ce42a9a06f Replace MatrixChat.state.screen with 'view'
'screen' is overloaded, as it us used for the parameter of `showScreen` (and,
by implication, `state.screenAfterLogin`). Attempt to clear up the confusion by
replacing 'screen' with 'view' and using some constants for the potential
values.

This should be a no-op!
2017-06-15 16:41:17 +01:00
Richard van der Hoff
1f48b4caa6 Merge pull request #1098 from matrix-org/rav/test_rts_login
Groundwork for tests including a teamserver login
2017-06-15 16:12:28 +01:00
Luke Barnard
9d74001f4f Show a spinner when accepting an invite and waitingForRoom 2017-06-15 15:32:01 +01:00
Luke Barnard
cc46fd34d7 Only stop peeking if at some point we were joined 2017-06-15 14:21:23 +01:00
Luke Barnard
5c37d591b0 Unbreak auto joining 2017-06-15 13:35:19 +01:00
Luke Barnard
fc7da536d6 Add forceUpdate for memberships !== join 2017-06-15 13:32:56 +01:00
Luke Barnard
30566beb43 Fix if-statement thinko 2017-06-15 13:28:52 +01:00
Luke Barnard
d55d61e456 Remove redundant isUserJoined 2017-06-15 12:37:01 +01:00
Luke Barnard
b90ceaa111 Display a spinner until new room object after join success
If we successfully join, display a spinner until the js-sdk indicates (via room membership event or room event) that we can start using the room normally. A room event indicates we have never seen that room which means we need to use the new room object to clobber state.room. This is to make sure we replace the room that is set up for peeking with the room that can be used normally. For historical rooms, this isn't a problem.

This is a workaround for the fact that when peeking, the js-sdk calls onRoom, which is difficult to handle from the clients perspective because onRoom should only be called for rooms that you've never seen before. But if you peek a room that you've joined and left and get an onRoom, you run into trouble. You also can't just always use onRoomMembership because this won't be triggered for the first time you see the room. So we end up using a combination of both.

See https://github.com/matrix-org/matrix-js-sdk/issues/464 for discussion on improving this
2017-06-15 12:01:16 +01:00
Richard van der Hoff
65f351ff22 Clear Lifecycle.RtsClient on MatrixChat.mount
- otherwise it ends up sitting around and failing later tests.
2017-06-15 02:15:13 +01:00
David Baker
8840625045 Merge pull request #1097 from matrix-org/luke/attempt-fix-peeking-regression
Luke/attempt fix peeking regression
2017-06-14 17:33:45 +01:00
Luke Barnard
58554cce53 Remove racey condition
joining might become false before we get the room down the sync
2017-06-14 17:13:13 +01:00
Luke Barnard
ed5f01d46f Add logging for diagnosis 2017-06-14 16:53:21 +01:00
Luke Barnard
b5fd78a97f Only attempt to peek once in the lifetime of RoomView 2017-06-14 16:50:46 +01:00
Luke Barnard
2d6ba056d1 Attempt to follow closely what RoomView did pre-ILAG
In terms of peeking and what happens to the state when joining. This is another attempt to mitigate https://github.com/vector-im/riot-web/issues/4307
2017-06-14 16:48:34 +01:00
Richard van der Hoff
5d649626b0 Merge remote-tracking branch 'origin/develop' into rav/no_resume_client_on_login 2017-06-14 11:08:16 +01:00