Commit Graph

75 Commits (a66ffa43c419f1fa492331b92cd0188d910c26ba)

Author SHA1 Message Date
Michael Telatynski a88112a37a
Fix issue with dispatch happening mid-dispatch due to js-sdk emit (#8473) 2022-05-03 15:02:55 +01:00
Travis Ralston fce36ec826
Delete groups (legacy communities system) (#8027)
* Remove deprecated feature_communities_v2_prototypes

* Update _components

* i18n

* delint

* Cut out a bit more dead code

* Carve into legacy components

* Carve into mostly the room list code

* Carve into instances of "groupId"

* Carve out more of what comes up with "groups"

* Carve out some settings

* ignore related groups state

* Remove instances of spacesEnabled

* Fix some obvious issues

* Remove now-unused css

* Fix variable naming for legacy components

* Update i18n

* Misc cleanup from manual review

* Update snapshot for changed flag

* Appease linters

* rethemedex

* Remove now-unused AddressPickerDialog

* Make ConfirmUserActionDialog's member a required prop

* Remove useless override from RightPanelStore

* Remove extraneous CSS

* Update i18n

* Demo: "Communities are now Spaces" landing page

* Restore linkify for group IDs

* Demo: Dialog on click for communities->spaces notice

* i18n for demos

* i18n post-merge

* Update copy

* Appease the linter

* Post-merge cleanup

* Re-add spaces_learn_more_url to the new SdkConfig place

* Round 1 of post-merge fixes

* i18n

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-03-22 23:07:37 +00:00
Michael Telatynski 7fa01ffb06
Improve typing around event emitter handlers (#7816) 2022-02-22 12:18:08 +00:00
Michael Telatynski 91ccbe4395
Add way to track posthog user properties and send numSpaces (#7716) 2022-02-09 09:21:56 +00:00
Michael Telatynski 8e4ced6454
Correctly handle Room.timeline events which have a nullable `Room` (#7635) 2022-01-26 13:24:14 +00:00
Aaron Raimist bdc56be863
Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-10-22 17:23:37 -05:00
Dariusz Niemczyk 5e73a212f4 Replace console.error with logger.error
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Šimon Brandner 9d569c378e
Second batch of burning
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-07-02 17:08:27 +02:00
J. Ryan Stinnett ae0a8b8da4 Auto-fix lint errors 2021-06-29 13:11:58 +01:00
Michael Telatynski 50d3e04bda Convert MatrixActionCreators to Typescript 2021-06-07 10:58:22 +01:00
RinkiyaKeDad f5a40eff4b updated TagFilterStore 2020-10-10 18:02:58 +05:30
Jorik Schellekens b3fa855bd8 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into joriks/eslint-config 2020-07-20 16:22:32 +01:00
Travis Ralston 2b15ba21dd Rename RoomListStore file 2020-07-17 15:11:34 -06:00
Travis Ralston 1f9c07861e Remove the old room list store 2020-07-17 14:27:45 -06:00
Travis Ralston 1810711380 Dismantle usage of the proxy store class 2020-07-17 14:25:09 -06:00
Jorik Schellekens 7699aafcaf Use new eslint package- fix lint issues in ts and js 2020-06-23 17:01:19 +01:00
Jorik Schellekens 05d0309081 Lint a few semicolons 2020-06-18 14:32:43 +01:00
Travis Ralston 6cb1efc1a4 Use the new TS dispatcher 2020-05-14 13:45:17 -06:00
Travis Ralston a3b4c2dfa0 Convert more async actions to AsyncActionPayload 2020-05-13 21:07:50 -06:00
Travis Ralston 8c72c27da9 Break out actions and payloads to their own files
The definitions take up a lot of space which makes it hard to see the dispatcher class, so break them out.
2020-05-13 21:07:50 -06:00
Travis Ralston 90a898d03f Move dispatcher into a subdirectory
We're expecting to have a whole bunch of types for the dispatched payloads, so pull the thing into a directory we can throw them in.
2020-05-13 21:07:50 -06:00
Travis Ralston fa83df4bde Convert dispatcher to TypeScript and replace async usage with new class
Due to TypeScript and flux's types being annoying and highly typesafe, we need an AsyncActionPayload which intentionally doesn't use the 'action' property. This looks a bit awkward, though for the rare cases we do actually fire async actions it should be fine enough.

The call signature changes slightly for async events, therefore this commit also updates its usages for async events. 

The `fire()` function is to be used in a future commit.
Remove biased comment
2020-05-13 21:07:50 -06:00
Travis Ralston 866ed68615 Ensure DMs tagged outside of account data work in the invite dialog
Fixes https://github.com/vector-im/riot-web/issues/12418

Includes a refactor so we don't need to litter the code with the same magic string for DM tags.
2020-02-24 19:43:49 -07:00
Travis Ralston f1ac3d2f64 Convert imports to ES6 from CommonJS
This is needed because `require()` means something different in webpack - it ends up importing the module as something we didn't expect (and is occasionally async)
2019-12-22 21:16:06 -07:00
Travis Ralston d56f0f2a25 Convert many imports to handle ES6 exports
Reliant upon https://github.com/matrix-org/matrix-react-sdk/pull/3761
2019-12-22 21:04:42 -07:00
Travis Ralston 821b34b487 React to read receipt changes from ourselves
When a room is read on another device, it should be re-sorted
2019-02-13 17:03:27 -07:00
Travis Ralston ec2528e8b5
Update MatrixActionCreators.js 2018-11-04 23:00:47 -07:00
Travis Ralston f9d5c11d8d Regenerate the room list when m.fully_read is issued
Not doing so results in the RoomListStore tracking stale data when the user reads messages on another device. The visual effect of this is rooms being incorrectly pinned in places they shouldn't be, such as the top of the list. This also fixes another visual bug where rooms don't move down once their timelines are read. This second issue is mot prominent when multiple rooms have been pinned to the top, and the middle one is read ahead of the others - it'll stick around until some other condition decides to wipe the room's cached state.

Fixes https://github.com/vector-im/riot-web/issues/7653
2018-11-04 19:47:24 -07:00
Bruno Windels 93d34e7b3d fix lint 2018-09-19 12:00:29 +02:00
Bruno Windels 2ed414494f use Room.myMembership event instead of RoomMember.membership for me
This is more reliable with LL enabled as the syncing user is
only known when it was active in the current timeline
or when the members have been loaded
2018-09-17 19:14:52 +02:00
Bruno Windels dcc8a45aa1 add final return for clarity 2018-09-10 16:55:24 +02:00
Bruno Windels 9a3717a274 only dispatch an action for self-membership
as everything listens to the dispatcher, dispatching an action can be quite slow,
especially when only matched in one listener, and the rest all having to be called
to just say "no, thanks". This is especially the case for the RoomMember.membership
event being put on the dispatcher, as there can be thousands of these events
when the room members are loading.

Since the RoomMember.membership action is only used on one place,
and only for the syncing user, change it to just that and only dispatch
in that case. This saves 100-300ms when setting the OOB members in
a big room (7000k members)

Maybe later on we can back this by room.getMyMembership() and avoid the
listener even...
2018-09-07 19:53:01 +02:00
Luke Barnard 4b6140b6c5 Fix broken import preventing people tag 2018-03-22 10:23:34 +00:00
Luke Barnard 9e969e33b7 Reorder the RoomListStore lists on Event.decrypted 2018-02-23 10:32:33 +00:00
Luke Barnard a78575929c Document a few action creators 2018-02-21 10:15:52 +00:00
Luke Barnard 644ddbf9b9 Regenerate room lists on Room event
To make sure that we handle rooms that our
client has not seen previously, we regenerate
the room list when the room is stored -
which is indicated by the js-sdk by the
Room event.
2018-02-20 17:57:46 +00:00
David Baker fd90a8b23c
Merge pull request #1756 from matrix-org/luke/fix-recent-ordering
Make RoomListStore aware of Room.timeline events
2018-02-20 10:17:16 +00:00
Luke Barnard 32130fbc28 Don't regenerate RoomListStore state for notifs/scrollback/etc.
Only do so for the live timeline of rooms.
2018-02-19 09:56:03 +00:00
Luke Barnard 3f6c15506c Remove unused `room` parameter of MatrixActions.Room.timeline 2018-02-16 16:17:47 +00:00
Luke Barnard 84ab1ae3e2 Do not assume that tags have been removed
when moving tags
2018-02-16 15:52:15 +00:00
Luke Barnard 94a0a90457 Make RoomListStore aware of Room.timeline events
so that we can do reorderings of lists ordered by most recent event.

No optimisations here; we only update for timeline events
on live timelines that could update the "unread count".
2018-02-16 14:16:50 +00:00
Luke Barnard db4f0cb0bf Handle adding previously removed tags 2018-02-14 16:40:24 +00:00
Luke Barnard a34fea8af8 Merge branch 'develop' into luke/feature-tag-panel-tile-context-menu 2018-02-13 16:51:00 +00:00
Luke Barnard 3eeef064bf Remove unused asyncId 2018-02-12 18:37:54 +00:00
Luke Barnard e3f68f12c8 Add context menu to TagTile
With two options: View Community and Remove, which
removes the tag from the panel.
2018-02-12 18:01:08 +00:00
lukebarnard 9b0df19149 Make RoomListStore aware of sub list orderings
so that it can do optimistic updates of ordered lists.
2018-02-08 16:20:37 +00:00
Luke Barnard 21d70125e4 Dispatch MatrixActions synchronously
Otherwise we risk blocking the dispatches on other work, and they
do not need to be done asynchronously.

This emerged as a bug where the room list appeared empty until
MatrixActions.sync dispatches all occured in one big lump, well
after the sync events being emitted by the js-sdk.
2018-02-08 16:17:26 +00:00
lukebarnard 1ea6301eca Add index fix again
This was changed on /develop to fix an issue where the incorrect
index was being used in a condition to handle literal edge cases
of dragging room tiles to start or end of an ordered sublist.
2018-02-06 14:25:50 +00:00
lukebarnard b744dbaab7 Handle setting a newTag without metaData
metaData is actually the request body for the PUT that adds the tag
so we need to send {} for e.g. m.lowpriority, which is not manually
ordered.
2018-02-06 11:56:55 +00:00
lukebarnard c665c1170b Regenerate room lists when we get RoomMember.membership 2018-02-05 18:27:50 +00:00