show empty list as initial state instead of spinner
the spinner should only be shown when joinedpull/21833/head
parent
2ed414494f
commit
c3914d3493
|
@ -34,9 +34,10 @@ module.exports = React.createClass({
|
||||||
getInitialState: function() {
|
getInitialState: function() {
|
||||||
const cli = MatrixClientPeg.get();
|
const cli = MatrixClientPeg.get();
|
||||||
if (cli.hasLazyLoadMembersEnabled()) {
|
if (cli.hasLazyLoadMembersEnabled()) {
|
||||||
return {loading: true};
|
// show an empty list
|
||||||
|
return this._getMembersState([]);
|
||||||
} else {
|
} else {
|
||||||
return this._getMembersState();
|
return this._getMembersState(this.roomMembers());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -46,6 +47,7 @@ module.exports = React.createClass({
|
||||||
if (cli.hasLazyLoadMembersEnabled()) {
|
if (cli.hasLazyLoadMembersEnabled()) {
|
||||||
// true means will not show a spinner but the
|
// true means will not show a spinner but the
|
||||||
// known members so far if not joined
|
// known members so far if not joined
|
||||||
|
this._loadMembersIfNeeded(true);
|
||||||
cli.on("Room.myMembership", this.onMyMembership);
|
cli.on("Room.myMembership", this.onMyMembership);
|
||||||
} else {
|
} else {
|
||||||
this._listenForMembersChanges();
|
this._listenForMembersChanges();
|
||||||
|
@ -73,7 +75,6 @@ module.exports = React.createClass({
|
||||||
|
|
||||||
componentDidMount: async function() {
|
componentDidMount: async function() {
|
||||||
this._mounted = true;
|
this._mounted = true;
|
||||||
this._loadMembersIfNeeded(true);
|
|
||||||
},
|
},
|
||||||
|
|
||||||
componentWillUnmount: function() {
|
componentWillUnmount: function() {
|
||||||
|
@ -104,18 +105,17 @@ module.exports = React.createClass({
|
||||||
await room.loadMembersIfNeeded();
|
await room.loadMembersIfNeeded();
|
||||||
} catch(ex) {/* already logged in RoomView */}
|
} catch(ex) {/* already logged in RoomView */}
|
||||||
if (this._mounted) {
|
if (this._mounted) {
|
||||||
this.setState(this._getMembersState());
|
this.setState(this._getMembersState(this.roomMembers()));
|
||||||
this._listenForMembersChanges();
|
this._listenForMembersChanges();
|
||||||
}
|
}
|
||||||
} else if(initial) {
|
} else if(initial) {
|
||||||
// show the members we've got
|
// show the members we've got
|
||||||
this.setState(this._getMembersState());
|
this.setState(this._getMembersState(this.roomMembers()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_getMembersState: function() {
|
_getMembersState: function(members) {
|
||||||
const members = this.roomMembers();
|
|
||||||
// set the state after determining _showPresence to make sure it's
|
// set the state after determining _showPresence to make sure it's
|
||||||
// taken into account while rerendering
|
// taken into account while rerendering
|
||||||
return {
|
return {
|
||||||
|
|
Loading…
Reference in New Issue