You've already forked matrix-react-sdk
mirror of
https://github.com/matrix-org/matrix-react-sdk.git
synced 2025-07-31 13:44:28 +03:00
Save scroll state when swapping to non-room pages too
This commit is contained in:
@ -254,21 +254,15 @@ module.exports = React.createClass({
|
|||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case 'view_user_settings':
|
case 'view_user_settings':
|
||||||
this.setState({
|
this._setPage(this.PageTypes.UserSettings);
|
||||||
page_type: this.PageTypes.UserSettings,
|
|
||||||
});
|
|
||||||
this.notifyNewScreen('settings');
|
this.notifyNewScreen('settings');
|
||||||
break;
|
break;
|
||||||
case 'view_create_room':
|
case 'view_create_room':
|
||||||
this.setState({
|
this._setPage(this.PageTypes.CreateRoom);
|
||||||
page_type: this.PageTypes.CreateRoom,
|
|
||||||
});
|
|
||||||
this.notifyNewScreen('new');
|
this.notifyNewScreen('new');
|
||||||
break;
|
break;
|
||||||
case 'view_room_directory':
|
case 'view_room_directory':
|
||||||
this.setState({
|
this._setPage(this.PageTypes.RoomDirectory);
|
||||||
page_type: this.PageTypes.RoomDirectory,
|
|
||||||
});
|
|
||||||
this.notifyNewScreen('directory');
|
this.notifyNewScreen('directory');
|
||||||
break;
|
break;
|
||||||
case 'notifier_enabled':
|
case 'notifier_enabled':
|
||||||
@ -297,6 +291,15 @@ module.exports = React.createClass({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_setPage: function(pageType) {
|
||||||
|
// record the scroll state if we're in a room view.
|
||||||
|
this._updateScrollMap();
|
||||||
|
|
||||||
|
this.setState({
|
||||||
|
page_type: this.PageTypes.RoomDirectory,
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
_viewRoom: function(roomId) {
|
_viewRoom: function(roomId) {
|
||||||
// before we switch room, record the scroll state of the current room
|
// before we switch room, record the scroll state of the current room
|
||||||
this._updateScrollMap();
|
this._updateScrollMap();
|
||||||
|
Reference in New Issue
Block a user