mirror of
https://github.com/vector-im/element-web.git
synced 2024-11-18 06:35:35 +08:00
Fix view_next_room, view_previous_room and view_indexed_room
These must now make a dispatch to RoomViewStore instead of calling `viewRoom` directly on MatrixChat. This will call both `viewRoom` of MatrixChat _and_ the logic in RVS so there is some redundancy here. It'd be best to move as much as possible of viewRoom out to the RVS itself. But for now, this fixes a bug that occures when leaving (the viewed room would not change).
This commit is contained in:
parent
91edc06441
commit
0849b0e205
@ -553,6 +553,7 @@ module.exports = React.createClass({
|
|||||||
this.notifyNewScreen('register');
|
this.notifyNewScreen('register');
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// TODO: Move to RoomViewStore
|
||||||
_viewNextRoom: function(roomIndexDelta) {
|
_viewNextRoom: function(roomIndexDelta) {
|
||||||
const allRooms = RoomListSorter.mostRecentActivityFirst(
|
const allRooms = RoomListSorter.mostRecentActivityFirst(
|
||||||
MatrixClientPeg.get().getRooms(),
|
MatrixClientPeg.get().getRooms(),
|
||||||
@ -566,15 +567,22 @@ module.exports = React.createClass({
|
|||||||
}
|
}
|
||||||
roomIndex = (roomIndex + roomIndexDelta) % allRooms.length;
|
roomIndex = (roomIndex + roomIndexDelta) % allRooms.length;
|
||||||
if (roomIndex < 0) roomIndex = allRooms.length - 1;
|
if (roomIndex < 0) roomIndex = allRooms.length - 1;
|
||||||
this._viewRoom({ room_id: allRooms[roomIndex].roomId });
|
dis.dispatch({
|
||||||
|
action: 'view_room',
|
||||||
|
room_id: allRooms[roomIndex].roomId,
|
||||||
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// TODO: Move to RoomViewStore
|
||||||
_viewIndexedRoom: function(roomIndex) {
|
_viewIndexedRoom: function(roomIndex) {
|
||||||
const allRooms = RoomListSorter.mostRecentActivityFirst(
|
const allRooms = RoomListSorter.mostRecentActivityFirst(
|
||||||
MatrixClientPeg.get().getRooms(),
|
MatrixClientPeg.get().getRooms(),
|
||||||
);
|
);
|
||||||
if (allRooms[roomIndex]) {
|
if (allRooms[roomIndex]) {
|
||||||
this._viewRoom({ room_id: allRooms[roomIndex].roomId });
|
dis.dispatch({
|
||||||
|
action: 'view_room',
|
||||||
|
room_id: allRooms[roomIndex].roomId,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user