Commit graph

90 commits

Author SHA1 Message Date
Travis Ralston
47380306c2 Move and improve notification state handling
Previously we were creating a notification state whenever we needed one, which was leading to hundreds of listeners even on a small account. To ease the burden, and reduce the load of having to wake so many listeners, we now record a single listener for each tag ID and room combination.

This commit also introduces a number of utilities to make future notification work a bit of an easier transition, such as the `isX` and `hasX` getters on the new NotificationState abstract class. Similarly, "snapshots" have been added to reduce code duplication between different kinds of states checking for updates.

The ListNotificationState is now heavily tied into the store which offers it to help reuse the cache of room notification states. 

Fixes https://github.com/vector-im/riot-web/issues/14370
2020-07-08 19:26:25 -06:00
Jorik Schellekens
6ca7150533 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into
joriks/room-list-priorities
2020-07-08 16:08:55 +01:00
Jorik Schellekens
53bdddfcdd Fix discrepancies with style 2020-07-08 16:07:38 +01:00
Michael Telatynski
5d23e4216e
Merge pull request #4908 from matrix-org/t3chguy/room-list/12345
New room list view_room show_room_tile support
2020-07-08 13:34:28 +01:00
Michael Telatynski
ec54d509e5 remove stale debug log
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-08 13:24:40 +01:00
Michael Telatynski
d7ad555c12
Merge pull request #4871 from matrix-org/t3chguy/room-list/3
Convert Context Menu to TypeScript
2020-07-08 13:24:10 +01:00
Michael Telatynski
faa9124f2b Merge branches 'develop' and 't3chguy/room-list/12345' of github.com:matrix-org/matrix-react-sdk into t3chguy/room-list/12345
 Conflicts:
	src/components/views/rooms/RoomTile2.tsx
2020-07-08 08:57:01 +01:00
Jorik Schellekens
f4e05142db lint 2020-07-07 23:17:56 +01:00
Jorik Schellekens
b3f50b6e17 Enable options to favourite and low priority rooms 2020-07-07 23:14:04 +01:00
Michael Telatynski
f18db23cc4 Remove some TODOs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-07 17:18:56 +01:00
Michael Telatynski
986d56ffdc Merge branches 'develop' and 't3chguy/room-list/12345' of github.com:matrix-org/matrix-react-sdk into t3chguy/room-list/12345
 Conflicts:
	src/components/views/rooms/RoomSublist2.tsx
	src/components/views/rooms/RoomTile2.tsx
2020-07-07 17:11:04 +01:00
Michael Telatynski
afac330143 Merge branches 'develop' and 't3chguy/room-list/3' of github.com:matrix-org/matrix-react-sdk into t3chguy/room-list/3
 Conflicts:
	src/components/structures/ContextMenu.tsx
	src/components/structures/UserMenu.tsx
	src/components/views/rooms/RoomSublist2.tsx
	src/components/views/rooms/RoomTile2.tsx
2020-07-07 15:01:27 +01:00
Michael Telatynski
69852ecef4 Merge branches 'develop' and 't3chguy/room-list/123' of github.com:matrix-org/matrix-react-sdk into t3chguy/room-list/123
 Conflicts:
	src/components/views/rooms/RoomSublist2.tsx
2020-07-07 14:10:58 +01:00
Michael Telatynski
44ae83f228 Move the Volume union type out to a throwaway
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-07 14:07:35 +01:00
Bruno Windels
2ca9044171 swap order of context menu buttons so it does not jump when muted 2020-07-07 12:46:33 +02:00
Michael Telatynski
63ec793fad Support view_room's show_room_tile in the new room list
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-07 10:34:42 +01:00
Michael Telatynski
6cb0ac6a50 Fix checkboxes/radios in context menus should only close on ENTER, not SPACE
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-06 10:18:49 +01:00
Michael Telatynski
7c29a53ebd aria-hide the notifications badge on room tiles as we have manual labels here
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-05 19:59:29 +01:00
Michael Telatynski
a68e23c9e0 Make message previews accessible via describedby
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-05 19:38:45 +01:00
Michael Telatynski
069cdf3ce0 Fix room list v2 context menus to be aria menus
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-05 18:23:57 +01:00
Michael Telatynski
1620feb55e Sprinkle in some better ARIA props
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-05 01:07:46 +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
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
Michael Telatynski
404009c8cb Merge branches 'develop' and 't3chguy/room-list/3' of github.com:matrix-org/matrix-react-sdk into t3chguy/room-list/3
 Conflicts:
	src/components/structures/ContextMenu.tsx
	src/components/views/rooms/RoomSublist2.tsx
2020-07-02 23:46:12 +01:00
Michael Telatynski
5c5482a8ae I've got 99 problems and this badge mismatch is no longer one
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-02 23:20:16 +01:00
Michael Telatynski
289f40ce29 First step towards a11y in the new room list
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-02 22:21:10 +01:00
Travis Ralston
1df092d79b
Merge pull request #4879 from matrix-org/travis/room-list/context-menu-fixes
Fix selection states of room tiles in the new room list
2020-07-02 15:18:19 -06:00
Travis Ralston
ea787ad430
Merge pull request #4876 from matrix-org/travis/room-list/notif-dropdown
Update mute icon behaviour for new room list designs
2020-07-02 15:15:56 -06:00
Travis Ralston
3847dc91c0 Move the stoppage to somewhere more generic 2020-07-02 15:15:33 -06:00
Travis Ralston
547690374e Wrap event stoppage in null checks
Some of the code paths (particularly onFinished) do not have events, but the code paths we care about to prevent the room selection do have events - we can stop those without stopping further menus.
2020-07-02 14:53:21 -06:00
Travis Ralston
0d9ce0721f Don't include empty badge container in minimized view
Fixes https://github.com/vector-im/riot-web/issues/14294

It takes up space, and it won't hold anything anyways.
2020-07-02 14:11:31 -06:00
Travis Ralston
aa702514ce Don't try and show context menus if we don't have one
Fixes https://github.com/vector-im/riot-web/issues/14295
2020-07-02 13:59:28 -06:00
Travis Ralston
e51f9d2492 Fix closing the context menu causing the tile to be selected
Fixes https://github.com/vector-im/riot-web/issues/14293
2020-07-02 13:53:38 -06:00
Travis Ralston
349c3f7090 Only show mute notification icon on rooms, not all notif icons 2020-07-02 13:33:06 -06:00
Travis Ralston
b54635863f Merge branch 'develop' into travis/room-list/notification-state 2020-07-02 13:26:16 -06:00
Travis Ralston
43db4b98df Merge branch 'develop' into joriks/room-list-breadcrumbs 2020-07-02 13:22:51 -06:00
Michael Telatynski
07e0a017e7 fix types
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-01 23:56:57 +01:00
Michael Telatynski
e8702aafa5 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-01 23:09:02 +01:00
Michael Telatynski
5c2b291510 Support right click context menu interactions on Room List 2
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-01 23:06:26 +01:00
Travis Ralston
51ce80f333 Merge branch 'develop' into travis/room-list/notification-state 2020-07-01 12:01:07 -06:00
Michael Telatynski
9831698b1e Hide notifications menu from invite tiles
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-01 14:28:00 +01:00
Michael Telatynski
10e547539d Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/room-list/2 2020-07-01 14:26:56 +01:00
Michael Telatynski
3b7b6eca6f align context menus even better
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-01 14:05:33 +01:00
Michael Telatynski
b5014282a4 Iterate PR based on Figma design and feedback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-01 13:59:50 +01:00
Jorik Schellekens
1dd9c1eea3 Use avatar sisze inplace 2020-07-01 12:28:32 +01:00
Travis Ralston
ad982624fe Remove context menu on invites in new room list
Fixes https://github.com/vector-im/riot-web/issues/14198

For both, the decision has been made to not have a context menu pending further considerations of where invites should (and should not) be. Likely this will be dealt with in FTUE Notifications.
2020-06-30 19:43:00 -06:00
Jorik Schellekens
2379ec577c Lint semicolons 2020-06-30 23:39:25 +01:00
Jorik Schellekens
dcd51b5be3 Implement breadcrumb notifications and scrolling 2020-06-30 23:24:46 +01:00
Michael Telatynski
508dea1c89 Wire up Notifications context menu on room tile 2
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-30 22:53:30 +01:00