Fix another infinite spin on register

Don't set ready on logging_in, set it before we start the client,
as commented
This commit is contained in:
David Baker 2017-06-20 12:03:37 +01:00
parent 0e71918ba1
commit 61c5384855

View file

@ -500,10 +500,9 @@ module.exports = React.createClass({
break; break;
case 'on_logging_in': case 'on_logging_in':
// We are now logging in, so set the state to reflect that // We are now logging in, so set the state to reflect that
// and also that we're not ready (we'll be marked as logged // NB. This does not touch 'ready' since if our dispatches
// in once the login completes, then ready once the sync // are delayed, the sync could already have completed
// completes). this.setState({loggingIn: true});
this.setState({loggingIn: true, ready: false});
break; break;
case 'on_logged_in': case 'on_logged_in':
this._onLoggedIn(payload.teamToken); this._onLoggedIn(payload.teamToken);
@ -989,6 +988,10 @@ module.exports = React.createClass({
*/ */
_onWillStartClient() { _onWillStartClient() {
const self = this; const self = this;
// if the client is about to start, we are, by definition, not ready.
// Set ready to false now, then it'll be set to true when the sync
// listener we set below fires.
this.setState({ready: false});
const cli = MatrixClientPeg.get(); const cli = MatrixClientPeg.get();
// Allow the JS SDK to reap timeline events. This reduces the amount of // Allow the JS SDK to reap timeline events. This reduces the amount of