1
0
mirror of https://github.com/matrix-org/matrix-react-sdk.git synced 2025-12-07 03:42:20 +03:00
Commit Graph

120 Commits

Author SHA1 Message Date
Šimon Brandner
99543a7858 Implement changes to MSC2285 (private read receipts) (#7993) 2022-05-06 21:32:47 +02:00
Eric Eastwood
46ba14219c Add a way to toggle ScrollPanel and TimelinePanel debug logs (#8513)
Part of https://github.com/vector-im/element-web/issues/21532

To better debug timeline issues when they crop up.

Turn on:
```js
mxSettingsStore.setValue('debug_scroll_panel', null, 'device', true);
mxSettingsStore.setValue('debug_timeline_panel', null, 'device', true);
```

Turn off:
```js
mxSettingsStore.setValue('debug_scroll_panel', null, 'device', false);
mxSettingsStore.setValue('debug_timeline_panel', null, 'device', false);
```
2022-05-06 11:13:23 -05:00
Šimon Brandner
3a245a0cbe Fix jump to bottom button being always displayed in non-overflowing timelines (#8460) 2022-05-01 19:38:36 -06:00
Michael Telatynski
763edb7ab9 Fix issue with thread panel not updating when it loads on first render (#8382) 2022-04-22 07:37:23 +00:00
Robin
7335b35fbb Avoid looking up settings during timeline rendering (#8313)
* Avoid showHiddenEventsInTimeline lookups

* Avoid MSC3531 feature lookups

* Test that showHiddenEventsInTimeline doesn't get looked up while
rendering

* Fix code review nits

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-04-14 23:23:22 +00:00
Janne Mareike Koschinski
579a166113 Fix: Remove jittery timeline scrolling after jumping to an event (#8263)
* Fix: Remove jittery timeline scrolling after jumping to an event

* Fix: Remove onUserScroll handler and merge it with onScroll

* Fix: Reset scrollIntoView state earlier

Co-authored-by: Janne Mareike Koschinski <jannemk@element.io>
2022-04-08 20:48:57 +02:00
Janne Mareike Koschinski
e54eb81626 Fix: Ensure links to events scroll the correct events into view (#8250)
Co-authored-by: Janne Mareike Koschinski <jannemk@element.io>
2022-04-07 13:24:45 +02:00
Travis Ralston
9350c50f87 Step 6: Refactor event rendering to stop using getComponent
We move all of the event tile rendering into a factory manager for a couple reasons:
1. `EventTile` is uncomfortably large for a file
2. A simple map isn't possible anymore (can't convert the existing maps like `eventTileTypes` to `Record<string, typeof React.Component>` because the types are actually incompatible)

So, by having a factory manager place we can more easily render components without having to use `getComponent()` all over the place, and without lying to ourselves about how simple the event rendering path is.

This change also moves quite a bit of the rendering path into the new `EventTileFactory` file so it can be easily seen by future developers.
2022-03-28 14:02:31 -06:00
Travis Ralston
997d6d40bf Step 1: Remove all usage of @replaceableComponent 2022-03-28 14:02:31 -06:00
Michael Telatynski
190968c73c Null guard TimelinePanel unmount edge (#8171) 2022-03-28 09:58:49 +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
Germain
acd12c38a9 Fix threads timeline message ordering (#7968) 2022-03-03 15:22:16 +00:00
Šimon Brandner
df591ee835 Make everything use the KeyBindingManager (#7907) 2022-02-28 16:05:52 +00:00
Michael Telatynski
7fa01ffb06 Improve typing around event emitter handlers (#7816) 2022-02-22 12:18:08 +00:00
Michael Telatynski
2a55d22916 Wire up CallEventGroupers for Search Results (#7866) 2022-02-22 10:39:08 +00:00
Michael Telatynski
5f5bb4a4fe Consolidate TileShape into TimelineRenderingType (#7843) 2022-02-18 15:56:05 +00:00
Michael Telatynski
658590e5bc More posthog tracking around joining rooms and room search (#7807) 2022-02-17 18:03:27 +00:00
Germain
e997676ae2 Opt out from check for pre-join UISI for threads (#7834) 2022-02-17 17:34:20 +00:00
Germain
15a9303d29 Improve thread partitioning for 2nd degree relations (#7748) 2022-02-10 15:18:55 +00:00
Michael Telatynski
0d6ef76605 Add analytics for the ViewRoom action (#7666) 2022-02-10 14:29:55 +00:00
Michael Telatynski
b77d31bb4f Fix new call event grouper implementation for encrypted rooms (#7654) 2022-01-27 16:40:06 +00:00
Michael Telatynski
f2249b3e37 Fix CallEventGrouper map building to not occur during a Render phase (#7638) 2022-01-27 11:08:28 +00:00
Michael Telatynski
8e4ced6454 Correctly handle Room.timeline events which have a nullable Room (#7635) 2022-01-26 13:24:14 +00:00
Robin
f59ea6d7ad Show a tile at beginning of visible history (#5887) 2022-01-20 09:51:31 +00:00
Michael Telatynski
4b5ca1d7a9 Fix timeline jumping issues related to bubble layout (#7529) 2022-01-18 09:31:21 +00:00
David Teller
6b870ba1a9 MSC3531 - Implementing message hiding pending moderation (#7518)
Signed-off-by: David Teller <davidt@element.io>
2022-01-17 16:04:37 +01:00
Germain
76839ec42e Prevent soft crash when sending a thread message (#7467) 2022-01-05 15:16:53 +00:00
Timo
325e2ba99b Right panel store refactor (#7313)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2022-01-05 16:14:44 +01:00
Michael Telatynski
a968b4ce53 Improve typing around LoggedInView (#7384)
* Update SyncState imports

* Improve typing around LoggedInView

* Fix typing
2021-12-16 09:57:10 +00:00
Germain
69c4a0cebc Fix main timeline pending events bleeding in thread's timeline (#7373) 2021-12-15 12:40:56 +00:00
Aaron Raimist
7b94e13a84 Merge branch 'develop' into sort-imports
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-12-09 08:34:20 +00:00
Germain
3d4ece02e8 Send read receipts for events in thread's timeline (#7229) 2021-12-01 15:45:31 +00:00
Germain
9d52c23e06 Add option to disable grouping in TimelinePanel (#7221) 2021-11-29 17:01:23 +00:00
Timo
4cbed99de3 Add right panel chat timeline (#7112)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2021-11-29 17:06:15 +01:00
Germain
3a2aa9d96c Polish threads misalignments and UI diversion (#7209) 2021-11-29 10:58:34 +00:00
Renan Cleyson
ae0dba4e87 Add view_room to Action enum (#7203)
* Add ViewRoom action to Action enum

Signed-off-by: Renan <renancleyson.f@gmail.com>

* Change view_room occurrences to Action.ViewRoom

Signed-off-by: Renan <renancleyson.f@gmail.com>

* Add missing Action import
2021-11-25 21:49:43 +01:00
Travis Ralston
3c06e7f7a0 Add option to change the size of images/videos in the timeline (#7017)
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
Co-authored-by: Timo K <toger5@hotmail.de>
2021-11-17 15:19:30 +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
5290afcc4c Replace console.warn with logger.warn
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02: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
Dariusz Niemczyk
2d1d42b90e Globally replace all console.logs via codemod (#6827)
This commit replaces all the `console.log` to `logger.log` via an automated script.
Related: vector-im/element-web#18425
2021-09-21 09:48:09 -06:00
Germain
051e166c68 Merge pull request #6772 from matrix-org/gsouquet/fix-18947 2021-09-09 18:56:49 +01:00
Germain Souquet
672dab1998 Force refresh threads timeline
Fixes vector-im/element-web#18947

In the absence of a proper pending events / remote echo setup it seems fairly difficult to get the timeline to update

Adding a temporary helper to force refresh the timeline and not swallow local events when sending a message from the thread sidebar
2021-09-09 17:31:05 +01:00
David Baker
a4aa6dfcd7 Debounce read marker update on scroll
Reverts https://github.com/matrix-org/matrix-react-sdk/pull/6751 in
favour of debouncing the updates to read markers, because it seems
allowing the scroll to be 1px away from the bottom was important for
some browsers and meant they never got to the bottom.

We can fix the problem instead by debouncing the update to read
markers, because the scroll state gets reset back to the bottom when
componentDidUpdate() runs which happens after the read marker code
does a setState(). This should probably be debounced anyway since
it doesn't need to be run that frequently.

Fixes https://github.com/vector-im/element-web/issues/18961
Type: bugfix
2021-09-09 15:58:19 +01:00
Germain Souquet
d1dbfbd014 hide thread events from the timeline 2021-08-17 11:10:02 +01:00
Šimon Brandner
44acded0a0 Use snake case
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-06 07:55:08 +02:00
Šimon Brandner
015e0b6d77 Make into a labs feature
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-06 07:51:57 +02:00
Šimon Brandner
9761c38f3d Merge remote-tracking branch 'upstream/develop' into feature/hidden-rrs
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-07-27 18:39:22 +02:00
Travis Ralston
c384575375 Merge pull request #6261 from robintown/watch-show-timestamps
Add alwaysShowTimestamps and others to RoomView setting watchers
2021-07-21 19:44:04 -06:00
Michael Telatynski
ce78cdf4ad Conform to new react and typescript eslint rules 2021-07-19 22:43:11 +01:00