Commit graph

68 commits

Author SHA1 Message Date
Š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
Robin Townsend
c0123f5dad Merge branch 'develop' into watch-show-timestamps 2021-07-18 11:47:44 -04:00
Robin Townsend
158e6fa61c Merge branch 'develop' into text-for-event-perf 2021-07-16 18:24:22 -04:00