Commit graph

26175 commits

Author SHA1 Message Date
Travis Ralston
dd833f4f2f Ensure the sticky room changes if the tag changes
This fixes a case where a user accepts an invite, which causes a tag change, but the room stays stuck in the invites list. The tag change additionally gets swallowed when the user moves away, causing the room to get lost. 

By moving it when we see it, potentially during a sticky room change itself (though extremely rare), we avoid having the room get lost in the wrong lists. A side effect of this is that accepting an invite puts it at the top of the tag it's going to (usually untagged), however this feels like the best option for the user.

A rare case of a tag change happening during a sticky room change is when a leave event comes in for the sticky room, but because it's come through as a tag change it can get swallowed. If it does get swallowed and the user clicks away, the tag change will happen when the room is re-introduced to the list (fake NewRoom event).
2020-07-06 19:38:13 -06:00
Travis Ralston
4345f972e0 Handle sticky room to avoid accidental removal
Plus a bunch of logging.

This fixes a case where switching rooms would cause the last room you were on to disappear due to an optimization where known NewRoom fires would be translated to tag change fires, which wouldn't re-add the room to the underlying tag algorithm.

By tracking the last sticky room, we can identify when we're about to do this and avoid it. 

This commit also adds a check to ensure that we have the latest reference of a room stored as rooms changing from invite -> join change references.

This commit additionally updates the PossibleTagChange handling to be faster and smarter, leading to a more stable generation of the room list. We convert the update cause to a Timeline update in order to indicate it is a change within the same tag rather than having to jump tags. This also means that PossibleTagChange should no longer make it as far as the underlying algorithm.

New logging has also been added to aid debugging.
2020-07-06 19:38:13 -06:00
Travis Ralston
18df29b627 Flag & add some debugging 2020-07-06 19:38:13 -06:00
Travis Ralston
0b6f744a58 Wrap handleRoomUpdate in a lock
Dev note: this is removed in a later commit
2020-07-06 19:38:13 -06:00
Travis Ralston
d14dd777b7 Revert "don't need to set width with javascript?"
This reverts commit a2cf641c0e.
2020-07-06 15:23:20 -06:00
Travis Ralston
70eebc978f Revert "Minor cleanup of sticky header CSS"
This reverts commit 5bf14d8427.
2020-07-06 15:22:40 -06:00
Michael Telatynski
3094bb32ec
Merge pull request #4901 from matrix-org/t3chguy/room-list/112
Fix some room list sticky header instabilities
2020-07-06 22:21:02 +01:00
Michael Telatynski
abfbcf4090 use uglier style for props but be consistent :'(
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-06 22:04:30 +01:00
Michael Telatynski
f038dd52e6
Merge pull request #4903 from matrix-org/t3chguy/room-list/14353
null-guard against groups with a null name in new Room List
2020-07-06 22:01:41 +01:00
Michael Telatynski
60225154e6 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-06 21:58:44 +01:00
Michael Telatynski
97d4295bf5
Merge pull request #4902 from matrix-org/t3chguy/room-list/14306
Allow vertical scrolling on the new room list breadcrumbs
2020-07-06 21:53:54 +01:00
Michael Telatynski
f6aa6208ee null-guard against groups with a null name :((
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-06 21:53:20 +01:00
Travis Ralston
5bf14d8427 Minor cleanup of sticky header CSS 2020-07-06 14:37:38 -06:00
Bruno Windels
7647072b05 remove prop instead of assigning unset 2020-07-06 14:36:07 -06:00
Bruno Windels
201f6ebe83 make stick headers jump in a bit later so the transition is less jumpy 2020-07-06 14:36:01 -06:00
Bruno Windels
a2cf641c0e don't need to set width with javascript? 2020-07-06 14:35:53 -06:00
Bruno Windels
61a5807fd1 only show topmost top sticky header 2020-07-06 14:35:46 -06:00
Michael Telatynski
c9bc318ca7 Allow vertical scrolling on the new room list breadcrumbs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-06 21:32:46 +01:00
Michael Telatynski
8233dec72e Fix some room list sticky header instabilities
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-06 21:05:06 +01:00
Michael Telatynski
2c1eb07768
Merge pull request #4883 from matrix-org/t3chguy/ts123
Convert things to Typescript, including languageHandler
2020-07-06 18:54:19 +01:00
Travis Ralston
d98ba9b577
Merge pull request #4894 from matrix-org/travis/room-list/badge-fixes
Fix minor issues with the badges in the new room list
2020-07-03 15:09:15 -06:00
Travis Ralston
afa71c7b7c Fix minor issues with the badges in the new room list
Fixes https://github.com/vector-im/riot-web/issues/14225
2020-07-03 14:26:59 -06:00
Michael Telatynski
ae5ab4c394
Merge pull request #4893 from matrix-org/t3chguy/room-list/101
Radio button outline fixes including for new room list context menu
2020-07-03 20:35:17 +01:00
Michael Telatynski
599cc9c9ed
Merge pull request #4882 from matrix-org/t3chguy/room-list/6
First step towards a11y in the new room list
2020-07-03 20:17:33 +01:00
Michael Telatynski
af5f9b7c41 revert dark mode separator colour
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 19:53:06 +01:00
Michael Telatynski
c8bb6f5904 Improve radio outlines for message layout to be more consistent
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 19:48:22 +01:00
Michael Telatynski
5a542281ed Make Styled Radio Button outlines default-off
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 19:27:45 +01:00
Michael Telatynski
a475887c3e
Merge pull request #4891 from matrix-org/t3chguy/room-list/111
Fix theme selector clicks bubbling out and causing context menu to float away
2020-07-03 16:52:32 +01:00
Michael Telatynski
3f62f20a85 Fix theme selector bubbling out its click events and causing context menu to float away
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 16:29:48 +01:00
Travis Ralston
120e7826c7
Merge pull request #4890 from matrix-org/revert-4886-travis/room-list/logs-1
Revert "Remove a bunch of noisy logging from the room list"
2020-07-03 08:55:34 -06:00
Travis Ralston
9c1efe728c
Revert "Remove a bunch of noisy logging from the room list" 2020-07-03 08:54:54 -06:00
Michael Telatynski
c8a93e9dd7 clean-up
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 14:49:25 +01:00
Michael Telatynski
47ee00ec5d Make explore button at all accessible
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 14:43:02 +01:00
Michael Telatynski
9b0c711837 Make the UserMenu more accessible
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 14:34:43 +01:00
RiotRobot
511e0682fc Add upgrade line to changelog 2020-07-03 13:32:24 +01:00
RiotRobot
5c56a55cf0 Reset matrix-js-sdk back to develop branch 2020-07-03 13:29:56 +01:00
RiotRobot
67fb328c0d Merge branch 'master' into develop 2020-07-03 13:29:14 +01:00
RiotRobot
21b7b88fde v2.9.0 2020-07-03 13:27:48 +01:00
RiotRobot
24687589e1 Prepare changelog for v2.9.0 2020-07-03 13:27:47 +01:00
RiotRobot
452bb73dcf Upgrade matrix-js-sdk to 7.1.0 2020-07-03 13:22:03 +01:00
J. Ryan Stinnett
d97b8bc276
Merge pull request #4889 from matrix-org/jryans/rm-dup-compact-release
Remove duplicate compact settings, handle device level updates
2020-07-03 12:27:54 +01:00
J. Ryan Stinnett
8bb3f4a225 Remove duplicate compact settings, handle device level updates
This removes the duplicate setting for compact layout from the appearance tab,
and leaves the "advanced" one, matching the intention from Design.

This also adds the relevant handling to ensure the device-level setting triggers
an update immediately when changed.

Fixes https://github.com/vector-im/riot-web/issues/14304
2020-07-03 12:19:15 +01:00
J. Ryan Stinnett
67de8f38f0
Merge pull request #4888 from matrix-org/jryans/rm-dup-compact
Remove duplicate compact settings, handle device level updates
2020-07-03 12:15:52 +01:00
J. Ryan Stinnett
04142a8723 Remove duplicate compact settings, handle device level updates
This removes the duplicate setting for compact layout from the appearance tab,
and leaves the "advanced" one, matching the intention from Design.

This also adds the relevant handling to ensure the device-level setting triggers
an update immediately when changed.

Fixes https://github.com/vector-im/riot-web/issues/14304
2020-07-03 12:06:00 +01:00
Travis Ralston
26ce801ef1
Merge pull request #4887 from matrix-org/t3chguy/room-lists/99
fix notifications icons some more
2020-07-02 17:16:45 -06:00
Michael Telatynski
22ac7e6def fix notifications icons some more
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-03 00:14:51 +01:00
Michael Telatynski
9cf162e267 Merge branches 'develop' and 't3chguy/room-list/6' of github.com:matrix-org/matrix-react-sdk into t3chguy/room-list/6
 Conflicts:
	src/components/views/rooms/RoomSublist2.tsx
	src/components/views/rooms/RoomTile2.tsx
2020-07-03 00:02:37 +01:00
Travis Ralston
95bc4a6f44
Merge pull request #4886 from matrix-org/travis/room-list/logs-1
Remove a bunch of noisy logging from the room list
2020-07-02 16:41:49 -06:00
Travis Ralston
98ce1dafee Remove a bunch of noisy logging from the room list
None of these logs are actually needed for troubleshooting anymore.
2020-07-02 16:39:36 -06:00
Michael Telatynski
d725cc3389 convert MatrixClientContext to Typescript
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-02 23:39:27 +01:00