Bruno Windels
96f2968854
make all height changes update component state
...
also set visibleTiles as side-effect
2020-07-10 18:40:09 +02:00
Bruno Windels
652fb9e613
track height in pixels in component state
2020-07-10 18:40:09 +02:00
Travis Ralston
314250a6e4
Add a test mode flag to the store
2020-07-10 10:38:07 -06:00
Bruno Windels
49f7170d95
extract type
2020-07-10 18:31:53 +02:00
Bruno Windels
725b7f8950
make show more button a bit less tall
2020-07-10 18:30:52 +02:00
Bruno Windels
d5a3071518
put show more button inside resizer
...
this way we have a flexbox layout in the resizer with:
- the resize handle (fixed)
- the show more/less button, if any (fixed)
- the list of tiles (grabbing whatever is left)
2020-07-10 18:29:39 +02:00
Travis Ralston
f8db0a4637
Resolve complex merge conflicts
2020-07-10 10:21:00 -06:00
Travis Ralston
bf0a503e44
[WITH CONFLICTS] Merge branch 'develop' into travis/room-list/enable
2020-07-10 10:18:12 -06:00
Travis Ralston
976f7381ab
Merge remote-tracking branch 'origin/joriks/room-list-fix-search-padding' into develop
2020-07-10 08:53:30 -06:00
Travis Ralston
2bf2a08e7a
Mark safari hacks
2020-07-10 08:52:46 -06:00
Travis Ralston
37a8b68539
Merge remote-tracking branch 'origin/joriks/room-list-safari-fix' into develop
2020-07-10 08:51:31 -06:00
Travis Ralston
d88dad46b1
Merge pull request #4943 from matrix-org/travis/room-list/perf/dedupe-recalc
...
Reduce event loop load caused by duplicate calculations in the new room list
2020-07-10 08:39:13 -06:00
Travis Ralston
26427817f2
Fix potential listener conflict with RVS
...
If the RVS ever emits something that contains `trigger: false`, we're pretty screwed, so avoid that.
2020-07-10 08:18:40 -06:00
Travis Ralston
46d53e5c8c
Reset before trigger just in case the function triggers too
2020-07-10 08:14:33 -06:00
Travis Ralston
a5ba0cad1f
Rename to trigger and add docs
2020-07-10 08:13:23 -06:00
Travis Ralston
ef18cd5ca1
Merge branch 'develop' into travis/room-list/perf/dedupe-recalc
2020-07-10 07:18:12 -06:00
Travis Ralston
840a4127db
Merge pull request #4944 from matrix-org/travis/room-list/perf/log-disable
...
Add an option to disable room list logging, and improve logging
2020-07-10 07:16:56 -06:00
Bruno Windels
42e101340e
Merge pull request #4942 from matrix-org/joriks/room-list-breadcrumbs-scroll-fade
...
Scroll fade for breadcrumbs
2020-07-10 10:37:55 +00:00
Travis Ralston
bba8197592
Use the new layout store
2020-07-09 22:40:34 -06:00
Travis Ralston
75dbd5f1d4
Merge branch 'develop' into travis/room-list/enable
2020-07-09 22:28:16 -06:00
Jorik Schellekens
e4366632cf
Fix search padding
2020-07-10 02:54:11 +01:00
Jorik Schellekens
60695838d6
Merge pull request #4927 from matrix-org/joriks/room-list-auto-expand-on-search
...
Auto expand room list on search
2020-07-10 02:45:13 +01:00
Jorik Schellekens
ceff68476d
Remove useless dispatches
2020-07-10 02:25:47 +01:00
Jorik Schellekens
1983591cbf
Remove unused actions
2020-07-10 02:22:34 +01:00
Jorik Schellekens
edb556f22e
Stop safari from agressivly shrinking
2020-07-10 02:15:46 +01:00
Travis Ralston
cf154ec9cf
Add an option to disable room list logging, and improve logging
...
For https://github.com/vector-im/riot-web/issues/14035
**This option is not recommended as it completely obliterates all chances of being able to support someone with a broken room list. It is intended for specific testing scenarios only.**
2020-07-09 18:19:38 -06:00
Travis Ralston
8624e8beeb
Break up the event loop tasks for the room list
...
The room list does a hefty amount of work, so instead of blocking the event loop with a `/sync` request and a bunch of room updates (as we can get multiple per sync) we can instead run it over several smaller tasks. The smaller tasks help the event loop do other things between our tasks, ensuring we don't inadvertently block the UI from rendering too slowly.
On my account and machine, this cuts the time to render in half (~30ms, down from ~60ms) .
2020-07-09 15:11:21 -06:00
Travis Ralston
1315f34662
Dedupe room list store updates by marking for updates
...
The core of this is in the MarkedExecution class, with the remainder of the commit ensuring that the right marks and triggers are in place to do the firing.
Because everything is async/await and run through the RoomListStore, we don't have to worry about self-fed updates in the algorithm classes. This also means we have to trigger pretty much all the time.
Changes to tag ordering / list sorting get hit through two paths, so we mark before we do a bulk update and otherwise assume the call is coming in from outside.
2020-07-09 14:53:14 -06:00
Travis Ralston
859f65659c
Attempt to support a hard cutoff with the show more button
...
Known issues:
* Causes scroll jumps when the button gets added to DOM
* Resize handle is invisible when there's a show more button
TODO:
* Clean up comments
* Clean up useless code (all the padding stuff isn't needed)
2020-07-09 13:07:13 -06:00
Travis Ralston
f9e8487d5a
Merge pull request #4939 from matrix-org/travis/room-list/fix-community-badge
...
Fix rough badge alignment for community invite tiles again
2020-07-09 12:26:47 -06:00
Travis Ralston
8ca15d8185
Merge pull request #4940 from matrix-org/travis/room-list/sticky-rooms
...
Improve safety of new rooms in the room list
2020-07-09 12:25:47 -06:00
Jorik Schellekens
e2539f11cd
Scroll fade for breadcrumbs
2020-07-09 19:24:02 +01:00
Bruno Windels
ce68314de9
Revert "Merge pull request #4932 from matrix-org/travis/room-list/invisible-show-more"
...
This reverts commit f58a0a7538
.
2020-07-09 12:13:12 -06:00
Travis Ralston
f8e1996e2f
Handle NewRoom and PossibleTagChange updates correctly
...
For new rooms, we need to append to our list of known rooms. For tag changes, we need to be sure to update our cache when the tag can reasonably be assumed to have changed.
Fixes https://github.com/vector-im/riot-web/issues/14389
2020-07-09 12:08:40 -06:00
Travis Ralston
00fc34924c
Fix rooms disappearing that were created by the user
...
Fixes https://github.com/vector-im/riot-web/issues/14388
We were receiving a read receipt before a room object, leading to the algorithm to assume the room is archived (no membership), which was causing later index issues when the room tried to get moved from archived to untagged.
To prevent this, we just ignore nonsensical updates.
2020-07-09 11:39:40 -06:00
Jorik Schellekens
8a7bebc6bf
lint
2020-07-09 18:37:18 +01:00
Jorik Schellekens
ade89ab4e9
Move sublist auto expand to out from layouts
...
Co-authored-by: Travis Ralston <travpc@gmail.com>
2020-07-09 18:32:28 +01:00
Jorik Schellekens
096cd482f1
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into joriks/room-list-auto-expand-on-search
2020-07-09 18:22:26 +01:00
Travis Ralston
74fa3b2c81
Fix rough badge alignment for community invite tiles again
...
Fixes https://github.com/vector-im/riot-web/issues/14392
2020-07-09 10:39:53 -06:00
Travis Ralston
cd0106964f
Merge pull request #4938 from matrix-org/travis/room-list/badge-fix
...
Don't destroy room notification states when replacing them
2020-07-09 10:25:22 -06:00
Travis Ralston
ae09bfb8fd
Don't destroy room notification states when replacing them
...
The "should never happen" now happens a lot by design. We shouldn't destroy the state as it'll stop badge counts for everything.
Fixes https://github.com/vector-im/riot-web/issues/14391
2020-07-09 10:22:04 -06:00
Jorik Schellekens
9b79de7fe7
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into joriks/room-list-auto-expand-on-search
2020-07-09 17:14:52 +01:00
Jorik Schellekens
d94b6e2b36
Merge pull request #4937 from matrix-org/joriks/appearance-tab-irc-setting-in-advanced
...
Move irc layout option to advanced
2020-07-09 16:20:37 +01:00
Jorik Schellekens
1033eda7fb
Move irc layout option to advanced
2020-07-09 15:54:44 +01:00
Bruno Windels
f58a0a7538
Merge pull request #4932 from matrix-org/travis/room-list/invisible-show-more
...
Potential solution to supporting transparent 'show more' buttons
2020-07-09 14:43:20 +00:00
Travis Ralston
bd8e1f7198
Merge pull request #4931 from matrix-org/travis/room-list/sticky-headers
...
Improve performance and stability in sticky headers for new room list
2020-07-09 08:00:56 -06:00
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