Travis Ralston
3f92eabb35
Merge pull request #4935 from matrix-org/travis/room-list/perf/notifications
...
Move and improve notification state handling
2020-07-09 07:46:24 -06:00
Travis Ralston
57b2ae9a0d
Merge branch 'develop' into travis/room-list/perf/notifications
2020-07-09 07:46:01 -06:00
Travis Ralston
8aa2ed0c8b
Merge pull request #4934 from matrix-org/travis/room-list/perf/layout
...
Move list layout management to its own store
2020-07-09 07:44:44 -06:00
Jorik Schellekens
ecc109c45d
Merge pull request #4933 from matrix-org/joriks/room-list-noop-first-breadcrumb
...
Noop first breadcrumb
2020-07-09 13:47:38 +01:00
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
Travis Ralston
62b4596c04
Be consistent with other stores
2020-07-08 18:36:56 -06:00
Travis Ralston
c8f90be81d
Ensure the map gets cleared upon logout
2020-07-08 18:32:12 -06:00
Jorik Schellekens
2baa78d26b
Move no-op to breadcrumb store
2020-07-09 01:31:44 +01:00
Travis Ralston
c5812d6c27
Move list layout management to its own store
...
This is more general maintenance than performance as the RoomList doesn't need to be generating layouts for the sublists, and it certainly doesn't need to be creating a bunch of extra ones.
The sublists are perfectly capable of getting their own layout instance and using it, and we are perfectly able to limit the number of these things we create through the session's lifespan.
2020-07-08 18:28:21 -06:00
Jorik Schellekens
016710af6a
Noop first breadcrumb
2020-07-09 00:44:23 +01:00
Michael Telatynski
ada68c4220
Merge pull request #4892 from jugglinmike/gh-13135-highlight-jump-to-bottom
...
Highlight "Jump to Bottom" badge when appropriate
2020-07-09 00:20:37 +01:00
Michael Telatynski
3abf1586f9
Merge pull request #4930 from matrix-org/t3chguy/room-list/14380
...
Don't render the context menu within its trigger otherwise unhandled clicks bubble
2020-07-08 19:13:20 +01:00
Michael Telatynski
e2d65222a2
Don't render the context menu within its trigger otherwise unhandled clicks will re-trigger
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-08 18:59:27 +01:00
Travis Ralston
d95e3101c5
Merge pull request #4929 from matrix-org/travis/room-list/protect-lost-rooms
...
Protect rooms from getting lost due to complex transitions
2020-07-08 11:58:13 -06:00
Travis Ralston
9b48130f4f
Protect rooms from getting lost due to complex transitions
...
Fixes https://github.com/vector-im/riot-web/issues/14378
Rooms transitioning between multiple states are often at risk of going missing due to the sticky room handling. We now protect that transition by bluntly ensuring the room can't go missing, and by always ensuring we have an updated reference to the room.
2020-07-08 11:48:34 -06:00
Jorik Schellekens
69ce6085ca
Merge pull request #4928 from matrix-org/joriks/room-list-remove-archive
...
Hide archive button
2020-07-08 18:23:07 +01:00
Jorik Schellekens
23754ae2bd
i18n
2020-07-08 18:07:01 +01:00
Jorik Schellekens
fe2bb355ab
Hide archive button
2020-07-08 18:02:20 +01:00
Travis Ralston
eb38d80bd5
Merge pull request #4920 from matrix-org/joriks/room-list-priorities
...
Enable options to favourite and low priority rooms
2020-07-08 10:08:02 -06:00
Travis Ralston
0368bff5b1
Merge pull request #4904 from matrix-org/joriks/room-list-voip
...
Move voip previews to bottom right corner
2020-07-08 10:07:42 -06:00
Jorik Schellekens
5ba64aa4e1
Back to defaul orientation
2020-07-08 17:03:08 +01:00
Jorik Schellekens
9dd28a9ce0
semi
2020-07-08 17:02:26 +01:00
Jorik Schellekens
4ae64aff9a
lint line length
2020-07-08 16:14:04 +01: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
Jorik Schellekens
fb6791e221
Merge pull request #4923 from matrix-org/joriks/room-list-focus-search
...
Focus room filter on openSearch
2020-07-08 15:20:08 +01:00
Travis Ralston
536238a9a3
Merge pull request #4924 from matrix-org/travis/room-list/resizable
...
Swap out the resizer lib for something more stable in the new room list
2020-07-08 08:05:00 -06:00
Travis Ralston
3912f2d21c
Merge remote-tracking branch 'origin/develop' into travis/room-list/resizable
2020-07-08 07:55:10 -06:00
Travis Ralston
b4f3b8ab11
Use the right variables when detecting max height
2020-07-08 07:53:55 -06:00
Travis Ralston
b2abe61fc5
clarify which NumberSize to use
2020-07-08 07:51:48 -06:00
Travis Ralston
9b0eeae2eb
Clarify who is meant to use the polyfill
2020-07-08 07:51:04 -06:00
Bruno Windels
989e4a9ceb
Merge pull request #4912 from matrix-org/bwindels/bettersticky
...
Add wrapper to room list so sticky headers don't need a background
2020-07-08 13:34:01 +00:00
Bruno Windels
a361ac3f83
make collapsing/expanding the first header work again
2020-07-08 15:11:47 +02:00
Bruno Windels
a8085f4e3b
remove background on sticky headers
2020-07-08 14:50:08 +02:00
Bruno Windels
0d94cfa97a
put sticky headers in padding of wrapper
...
this way they don't need a background, as the list is already clipped
2020-07-08 14:49:38 +02:00
Bruno Windels
75751abc60
add wrapper we can then add padding to when sticking headers
2020-07-08 14:49:04 +02: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
5ef93686d9
Merge pull request #4925 from matrix-org/t3chguy/room-list/14352
...
Use html innerText for org.matrix.custom.html m.room.message room list previews
2020-07-08 13:23:58 +01:00
Michael Telatynski
64d7580494
Merge pull request #4913 from matrix-org/t3chguy/fix/14363
...
Fix MELS summary of 3pid invite revocations
2020-07-08 13:23:45 +01:00
Michael Telatynski
fe04846c6d
Merge pull request #4926 from matrix-org/t3chguy/room-list/14318
...
Fix sticky headers being left on display:none if they change too quickly
2020-07-08 13:23:13 +01:00
Michael Telatynski
7b115056b0
Fix sticky headers being left on display:none if they change too quickly
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-08 09:21:33 +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
Michael Telatynski
8d5d3b1c92
Use html innerText for org.matrix.custom.html m.room.message room list previews
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-08 08:50:25 +01:00
Michael Telatynski
c5e8a0b5af
Convert HtmlUtils to TypeScript
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-08 08:40:58 +01:00
Travis Ralston
15b6a273c9
Swap out the resizer lib for something more stable
...
react-resizer appears to be okay at tracking state, but it often desyncs from reality. re-resizer is more maintained and more broadly used (160k downloads vs 110k), and appears to generally do a better job of tracking the cursor.
The new library has some oddities though, such as deltas, touch support (hence the polyfill), and calling handles "Enable".
For https://github.com/vector-im/riot-web/issues/14022
2020-07-07 22:21:00 -06:00
Travis Ralston
7f757cd0f3
Merge pull request #4922 from matrix-org/joriks/room-list-fix-resize-gaps
...
Fix gaps under resize handle
2020-07-07 22:20:01 -06:00
Jorik Schellekens
8679d90703
lint semi
2020-07-08 00:27:29 +01:00
Jorik Schellekens
70c1bf3e5c
Focus room filter on openSearch
2020-07-08 00:25:43 +01:00