Commit graph

290 commits

Author SHA1 Message Date
Michael Telatynski
59feff3763 Silence RoomListStore possible memory leak warning 2021-07-15 11:49:15 +01:00
J. Ryan Stinnett
9d6d8fc666
Merge pull request #6285 from matrix-org/jryans/rework-linting-2
Migrate to `eslint-plugin-matrix-org`
2021-06-29 17:45:10 +01:00
Germain Souquet
d035151116 Avoid cyclic dependencies by moving watchers out of constructor 2021-06-29 17:04:51 +01:00
J. Ryan Stinnett
ae0a8b8da4 Auto-fix lint errors 2021-06-29 13:11:58 +01:00
Michael Telatynski
59052b1eb7
Merge pull request #6199 from matrix-org/t3chguy/fix/17665 2021-06-22 17:46:57 +01:00
Michael Telatynski
0ae4e7b11d Fix typescript types 2021-06-18 16:21:46 +01:00
Michael Telatynski
a75fb98fbc Fix some NPEs 2021-06-16 09:07:55 +01:00
Michael Telatynski
b4fbc791bb Add experimental options to the Spaces beta 2021-06-16 09:01:13 +01:00
Germain
96f5d3af05
Merge pull request #6130 from matrix-org/gsouquet/member-list-sort 2021-06-02 11:40:52 +01:00
Germain Souquet
d7a5547d80 use Intl.Collator over String.prototype.localeCompare for better performance 2021-06-02 10:42:17 +01:00
Michael Telatynski
1ea73ae9ae Fix all DMs wrongly appearing in room list when m.direct is changed 2021-06-01 10:18:57 +01:00
Germain Souquet
934af23b1f Fix preview generate check 2021-05-26 10:15:31 +01:00
Germain Souquet
e934f81521 Skip generatePreview if event is not part of the live timeline 2021-05-25 16:34:52 +01:00
Germain Souquet
83e2461155 call matches with normalized name 2021-05-20 10:57:20 +01:00
Germain Souquet
66ffaf945f Cache normalized room name 2021-05-20 10:43:57 +01:00
Germain
6170403c10
Depile encrypted events to find the most suitable one for preview (#6056) 2021-05-19 13:25:52 +01:00
Travis Ralston
ec7c1ab9f0
Revert "Try putting room list handling behind a lock" 2021-05-18 15:40:09 -06:00
Travis Ralston
336904cef8
Apply suggestions from code review
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2021-05-14 11:05:49 -06:00
Travis Ralston
deab424c93 Appease the linter 2021-05-12 21:19:31 -06:00
Travis Ralston
9beb2b8d78 Try putting room list handling behind a lock
Some of the logs relating to room list corruption appear to be badly timed race conditions so we'll try to linearize them here.
2021-05-12 21:15:17 -06:00
Michael Telatynski
6137162786 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/fix/17044.1
 Conflicts:
	src/stores/room-list/RoomListStore.ts
2021-05-07 10:40:07 +01:00
Michael Telatynski
4079b03ae0 Bring back filter all spaces behaviour 2021-05-07 10:39:35 +01:00
Michael Telatynski
9518e4d415 Guard all isSpaceRoom calls behind the labs flag 2021-05-05 23:59:07 +01:00
Michael Telatynski
7f396bedd0 add comment 2021-05-05 15:59:02 +01:00
Michael Telatynski
4279e99e4c Improve performance of search all spaces and space switching 2021-05-05 15:29:04 +01:00
Michael Telatynski
2bf931b9d3
Merge pull request #5945 from matrix-org/t3chguy/fix/17085
Fix newly joined room appearing under the wrong space
2021-05-04 21:57:43 +01:00
Michael Telatynski
a70be45b6e Experiment switching the Home Space out for an All rooms space 2021-05-04 18:26:49 +01:00
Michael Telatynski
e9f59ed093
Merge pull request #5943 from matrix-org/t3chguy/fix/17082
Sort rooms in the add existing to space dialog based on recency
2021-05-04 10:57:23 +01:00
Michael Telatynski
7552801103 Room List respect the prefilter for new rooms 2021-04-29 09:48:23 +01:00
Michael Telatynski
bed52319bc Sort rooms in the add existing to space dialog based on recency 2021-04-28 23:39:24 +01:00
Michael Telatynski
efb9b71900 Make the text filter search all spaces instead of just the selected one 2021-04-28 23:18:42 +01:00
J. Ryan Stinnett
3d41b48543 Check for null room in VisibilityProvider
Hopefully fixes https://github.com/vector-im/element-web/issues/16898
2021-04-23 17:27:20 +01:00
Germain
65d55bd0d9
Merge pull request #5908 from matrix-org/gsouquet-messagepreview-nodom
Remove reliance on DOM API to generated message preview
2021-04-23 14:37:19 +01:00
Germain Souquet
2b6551d06a Remove reliance on DOM API to generated message preview 2021-04-22 16:17:53 +01:00
Michael Telatynski
60ef657f64 Properly hide spaces from the room list 2021-04-22 12:07:58 +01:00
Michael Telatynski
1507f64f2b Fix spaces filtering sometimes lagging behind or behaving oddly 2021-04-21 08:52:56 +01:00
Michael Telatynski
344e4b6c5b Trigger lazy loading when filtering using spaces
so that the filtered DMs are correct
2021-04-19 16:15:24 +01:00
Travis Ralston
3c25979520
Merge pull request #5824 from robintown/ignore-punctuation
Ignore punctuation when filtering rooms
2021-04-08 20:10:08 -06:00
Travis Ralston
479df8ac5f Clarify docs 2021-04-02 19:35:10 -06:00
Travis Ralston
343ce3b502 Make log spam more quiet 2021-04-01 00:02:05 -06:00
Travis Ralston
746856ed10 Appease the linter 2021-03-31 23:40:25 -06:00
Travis Ralston
70db749430 Restabilize room list ordering with prefiltering on spaces/communities
Fixes https://github.com/vector-im/element-web/issues/16799

This change replaces the "relative priority" system for filters with a kind model. The kind is used to differentiate and optimize when/where a filter condition is applied, resulting in a more stable ordering of the room list. The included documentation describes what this means in detail.

This also introduces a way to inhibit updates being emitted from the Algorithm class given what we're doing to the poor thing will cause it to do a bunch of recalculation. Inhibiting the update and implicitly applying it (as part of our updateFn.mark()/trigger steps) results in much better performance.

This has been tested on my own account with both communities and spaces of varying complexity: it feels faster, though the measurements appear to be within an error tolerance of each other (read: there's no performance impact of this).
2021-03-31 23:36:36 -06:00
Robin Townsend
b13dae1fc6 Ignore punctuation when filtering rooms
Signed-off-by: Robin Townsend <robin@robin.town>
2021-03-31 22:45:53 -04:00
Germain Souquet
3f33060cdd increase default visible tiles for room sublists 2021-03-31 11:15:16 +01:00
Travis Ralston
1d43c8b791 Remove forgotten rooms from the room list once forgotten
Fixes https://github.com/vector-im/element-web/issues/15559

This isn't exactly perfect as an implementation: if the user refreshes immediately after forgetting then there is a good chance the room re-appears because of the sync accumulator. At the very least this change makes it so in *most* cases the room goes away, which is probably good enough until https://github.com/vector-im/element-web/issues/14038 can be implemented properly.
2021-03-18 23:28:59 -06:00
J. Ryan Stinnett
0583ea6a25 Ignore to-device decryption in the room list store
This avoids meaningless warnings about "unknown" rooms.
2021-03-10 12:11:48 +00:00
Michael Telatynski
e6370a970b Tweak call handler stuff to not explode the room list on unsupported servers 2021-03-09 14:03:58 +00:00
Michael Telatynski
6a5efad142 Show suggested rooms from the selected space 2021-03-08 15:52:21 +00:00
Michael Telatynski
bfe3d648e2
Update src/stores/room-list/algorithms/Algorithm.ts
Co-authored-by: Travis Ralston <travpc@gmail.com>
2021-02-26 22:08:36 +00:00
Michael Telatynski
f21aedc6cf Add Space Panel with Room List filtering 2021-02-26 10:41:26 +00:00