Commit Graph

14634 Commits

Author SHA1 Message Date
David Langley 3b887fdf4e Test room alias links and fix bug found with PillDisplayHander not handling them 2023-06-09 18:12:52 +01:00
David Langley 36b97b1647 Merge branch 'main' of github.com:vector-im/element-android into jonny/feat/rich-text-mentions 2023-06-09 16:05:46 +01:00
David Langley cfa0f95799 Add PillDisplayHandler tests for custom domains. 2023-06-09 16:02:09 +01:00
David Langley f3db4a857a always use getText().insert for adding pills 2023-06-09 14:58:17 +01:00
Benoit Marty 48df1136ca
Merge pull request #8471 from vector-im/bugfix/cjs/poll-finish-contents
Show correct details when a poll is ended.
2023-06-09 14:28:07 +02:00
David Langley 7d084f18a0
Merge pull request #8517 from vector-im/dla/feature/rte_paste_images
Update rich text editor library to support pasting of images
2023-06-09 13:22:05 +01:00
David Langley 38330a7b67 Update RTE library to support pasting of images. 2023-06-09 09:29:01 +01:00
Yoan Pintas 07e06957ef
Prompt the user when the invited MatrixId is not recognized (#8483) 2023-06-05 20:02:11 +00:00
SpiritCroc f440628208 Merge tag 'v1.6.2' into sc
Change-Id: I7a9ebbae6df28044a8fa308fe34241dbd1d8b8ae

Conflicts:
	vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/MessageItemFactory.kt
	vector/src/main/java/im/vector/app/features/media/ImageContentRenderer.kt
2023-06-05 14:59:06 +02:00
dependabot[bot] 7f8a19f194
Bump org.checkerframework:checker from 3.34.0 to 3.35.0 (#8497) 2023-06-02 09:59:16 +00:00
Valere 2f1a7b76ad
Merge pull request #8485 from vector-im/feature/bca/fix_anrs
Make cryptoDevice calls suspendable
2023-06-01 16:36:29 +02:00
Benoit Marty f741c4e7d9
Merge pull request #8463 from vector-im/dla/feature/always_allow_signout
Always allow users sign out
2023-06-01 14:55:39 +02:00
valere 7e6376bf90 remove log 2023-05-31 15:14:28 +02:00
valere 8c1938987b Code review 2023-05-31 12:18:27 +02:00
valere dc969f502a ktlint 2023-05-31 10:55:56 +02:00
valere 2d335c1307 fix unit test 2023-05-31 10:42:46 +02:00
valere 268cbb83cd Make cryptoDevice calls suspendable 2023-05-30 23:47:50 +02:00
Alex Maras 24b18847b5
Fix animated webp playback (#8120)
* fix: add webp as playable image type

* fix: make glide transformations optional to prevent rendering webp throwing exception

* fix: stop marking webp as playable by default

* fix: play animated Webp in attachment view

* feat: autoplay webp if autoplay is enabled

---------

Signed-off-by: Alex Maras <dev@alexmaras.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-05-26 17:03:24 +02:00
Chris Smith 37429c277b Show correct details when a poll is ended.
Previously, the "end poll" timeline item always showed the title
and options from the start event, regardless of whether any edits
had been made.

Now we show the latest edit, if available, falling back to the
original otherwise.
2023-05-26 12:06:41 +01:00
SpiritCroc 9614f5994d Merge tag 'v1.6.1' into sc
Change-Id: If1da0c145abfecd01df1384bedc794d2dd4d6bef

Conflicts:
	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/read/SetReadMarkersTask.kt
	vector/src/main/java/im/vector/app/features/html/EventHtmlRenderer.kt
2023-05-25 12:03:56 +02:00
Benoit Marty 997c9dd917 Ensure signout service is always use even if users want to ignore sigout error from the server. The SDK is doing more cleanup. 2023-05-25 10:38:08 +02:00
Benoit Marty cff9fbd008
Merge pull request #8439 from vector-im/yostyle/fix_crash_on_start_verification
Allow stateloss on verification dialogfragment
2023-05-25 09:36:40 +02:00
dependabot[bot] d5d5c9009b
Bump io.element.android:wysiwyg from 1.2.2 to 2.2.1 (#8464)
* Bump io.element.android:wysiwyg from 1.2.2 to 2.2.1

Bumps [io.element.android:wysiwyg](https://github.com/matrix-org/matrix-wysiwyg) from 1.2.2 to 2.2.1.
- [Changelog](https://github.com/matrix-org/matrix-rich-text-editor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/matrix-org/matrix-wysiwyg/compare/1.2.2...2.2.1)

---
updated-dependencies:
- dependency-name: io.element.android:wysiwyg
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Fix compilation

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: jonnyandrew <jonnya@element.io>
2023-05-24 10:14:22 +00:00
Valere 6da05a3804
Merge pull request #8462 from vector-im/feature/bca/fix_8445
Special text for re-verification after update
2023-05-24 10:10:52 +02:00
Valere 9f3255dd78
Merge pull request #8458 from vector-im/feature/bca/remove_legacy_per_device_verif
Remove legacy manually verify specific other device
2023-05-24 01:09:29 +02:00
valere bb59a758cf code review 2023-05-24 00:06:36 +02:00
David Langley cee6ec5939 Always allow users sign out
- Updates the dialog with a more helpful error message for the user, letting them know what happens if they logout without informing the homeserver.
2023-05-23 16:51:26 +01:00
valere 27f9be5eda Special text for re-verification after update 2023-05-23 13:08:14 +02:00
valere 2ea6cdba6f Fix app non responsive 2023-05-23 08:30:58 +02:00
valere 517af968e6 Remove legacy manually verify specific other device 2023-05-22 22:26:26 +02:00
SpiritCroc d9c1ec588d Merge tag 'v1.6.0' into sc
v1.6.0

Change-Id: Iaca4b437bc5a267c40b83a87a98eb7761dae345b

Conflicts:
	library/ui-styles/src/main/res/values/styles_app_bar_layout.xml
	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/RealmSessionStoreMigration.kt
	vector-app/build.gradle
	vector/src/main/java/im/vector/app/core/di/ConfigurationModule.kt
	vector/src/main/java/im/vector/app/features/crypto/verification/emoji/VerificationEmojiCodeController.kt
	vector/src/main/java/im/vector/app/features/disclaimer/DisclaimerDialog.kt
	vector/src/main/java/im/vector/app/features/home/room/detail/timeline/helper/MessageInformationDataFactory.kt
	vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt
	vector/src/main/java/im/vector/app/features/settings/VectorSettingsHelpAboutFragment.kt
	vector/src/main/java/im/vector/app/features/settings/VectorSettingsPinFragment.kt
	vector/src/main/java/im/vector/app/features/settings/VectorSettingsUrls.kt
	vector/src/main/res/layout/dialog_disclaimer_content.xml
	vector/src/main/res/xml/vector_settings_help_about.xml
2023-05-22 14:19:46 +02:00
jonnyandrew 3157a35b74
Add autocomplete to plain text composer 2023-05-18 13:09:35 +01:00
jonnyandrew 29d8845792
Add slash commands to rich text editor 2023-05-18 13:09:34 +01:00
jonnyandrew 2d1dcd34c0
Add mentions to rich text editor 2023-05-18 13:09:26 +01:00
yostyle dadad3501b Allow stateloss on verification dialogfragment 2023-05-17 11:10:42 +02:00
SpiritCroc 1b8cef9678 Fix live location render crash for Android < 7
Bring back proper implementation from 9ef870b927, probably gone due to mismerge?

Change-Id: I198488e57d9b800cee303373372b1fd165ddf7f1
2023-05-16 14:41:36 +02:00
Valere c9ed3abc36
Merge pull request #8436 from vector-im/feature/bca/update_analytics
Add sentry config for rust crypto
2023-05-15 21:44:02 +02:00
Benoit Marty 7c3ecec92a
Merge pull request #8426 from vector-im/feature/bma/a11yFixes
A11y fixes
2023-05-15 16:28:35 +02:00
valere eba31a7216 Add sentry config for rust crypto
update posthog url
2023-05-15 11:29:49 +02:00
bmarty 1fdb31d4c6 Sync Emojis 2023-05-15 00:03:30 +00:00
Valere b2cde3f9d6
Merge pull request #8390 from vector-im/feature/bma/crypto_rust_default
Rust Crypto SDK is now the default, and the build will replace the existing application
2023-05-11 14:52:26 +02:00
Benoit Marty f9f341e0ed
Merge pull request #8410 from vector-im/feature/bma/fixCrashes
Fix crashes
2023-05-11 14:51:33 +02:00
valere b2a21f7cc8 Add user property for rust to help analytics 2023-05-11 10:48:51 +02:00
valere 1a1f6810e2 Fix missing implem 2023-05-11 10:48:28 +02:00
Benoit Marty 7a65a51ee1 Attempt to give accessibility focus to the first item of the RecyclerView when the recycler view is updated (screen change), to improve screen reader behavior. 2023-05-10 18:45:25 +02:00
Benoit Marty 20fedc87fe Remove dead code 2023-05-10 17:51:40 +02:00
Benoit Marty db76cd5899 Give accessibility focus to title of bottom sheet, which can be updated asynchronously. 2023-05-10 17:27:39 +02:00
Benoit Marty 6c942a7575 Give accessibility focus to the alerts. 2023-05-10 17:00:07 +02:00
Benoit Marty 71a2a4d31a a11y: add custom action to be able to close the alert. 2023-05-10 16:43:54 +02:00
Benoit Marty fe3a41e4e9 Improve accessibility for avatar of users, rooms and spaces. 2023-05-10 14:49:05 +02:00
Benoit Marty c8fbb88511 Let the focus go to the room list and the actions at the bottom, useful when navigating with the keyboard. 2023-05-10 13:39:18 +02:00
Yoan Pintas 36b1e9b5e4
Replace matrix ids by displayname in notice events (#8395) 2023-05-10 08:30:21 +00:00
Benoit Marty eb1d361066 Fix other wrong usage of `repeatOnLifecycle` 2023-05-09 14:03:08 +02:00
Benoit Marty 9569c34324 Do not repeat the recovery setup.
Should fix issue reported at https://github.com/vector-im/element-android/pull/8165#issuecomment-1533212264
2023-05-09 13:50:45 +02:00
Benoit Marty 8b7601029b Fix crash when entering to "Protect access" screen. 2023-05-09 13:46:49 +02:00
valere 257ca26a8e unused resources 2023-05-08 00:08:57 +02:00
Benoit Marty 622aa88f86 Remove LegacySessionImporter, and the dialog which explains that Riot is now Element. 2023-05-05 16:04:30 +02:00
dependabot[bot] 9fbf34f7e5
Bump org.jetbrains.kotlin:kotlin-reflect from 1.8.10 to 1.8.21
Bumps [org.jetbrains.kotlin:kotlin-reflect](https://github.com/JetBrains/kotlin) from 1.8.10 to 1.8.21.
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.8.10...v1.8.21)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlin:kotlin-reflect
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-05 09:09:58 +00:00
Benoit Marty b5f1ecf9e0
Merge pull request #8325 from networkException/free-style-cropping
Enable free style cropping for camera and gallery images
2023-05-05 10:35:51 +02:00
Benoit Marty 09e1d4d97a
Merge pull request #8327 from tulir/emoji-variation-selectors
Add variation selector 16 to all applicable emojis
2023-05-05 10:28:30 +02:00
Benoit Marty 613dc3d7fa Fix crash when starting app with no available network. 2023-05-04 12:02:09 +02:00
Yoan Pintas f3faed0ffd
Update sound on vb network error (#8389) 2023-05-04 08:19:44 +00:00
SpiritCroc acf7d374b9 Render MSC2530 captions in notifications
Change-Id: I0de1c61ded81fe6fc8ef79ec6effc42aca693dc6
2023-05-03 20:20:05 +02:00
Benoit Marty aaa6e7255c
Merge pull request #8385 from vector-im/dependabot/gradle/org.checkerframework-checker-3.34.0
Bump org.checkerframework:checker from 3.33.0 to 3.34.0
2023-05-03 14:18:35 +02:00
Valere 92c37f3bb2
Merge pull request #8364 from vector-im/feature/bca/expose_rust_crate_version
Expose rust version in settings and RS
2023-05-03 12:50:37 +02:00
Benoit Marty 6c80a38c4a
Merge pull request #8383 from vector-im/feature/bma/jitsi8
Upgrade jitsi to version 8.1.1
2023-05-03 09:27:55 +02:00
dependabot[bot] 492115d702
Bump org.checkerframework:checker from 3.33.0 to 3.34.0
Bumps [org.checkerframework:checker](https://github.com/typetools/checker-framework) from 3.33.0 to 3.34.0.
- [Release notes](https://github.com/typetools/checker-framework/releases)
- [Changelog](https://github.com/typetools/checker-framework/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/typetools/checker-framework/compare/checker-framework-3.33.0...checker-framework-3.34.0)

---
updated-dependencies:
- dependency-name: org.checkerframework:checker
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-02 23:58:54 +00:00
Yoan Pintas 9347de3fad
Improve message rendering when editing (#8377) 2023-05-02 13:28:31 +00:00
Yoan Pintas 8ca0381e9b
Add an audio alert when the voice broadcast recording is automatically paused (#8382) 2023-05-02 13:27:43 +00:00
Benoit Marty e34958b814 Jitsi 8.1.1 is now API 24+ 2023-05-02 14:38:40 +02:00
Benoit Marty 48f4ad412f Jitsi 8.1.1 2023-05-02 14:38:40 +02:00
SpiritCroc de1cd864cf Make autocompletion a bit more compact
- Less standard emojis shown by default
- Smaller section titles

Change-Id: Ia79d7370253108a7866628013d8c4f89ba8327a3
2023-05-02 13:18:33 +02:00
SpiritCroc 0faa712f23 Fix possible emoji-autocompletion crash
Thread: main, Exception: java.lang.ClassCastException: im.vector.app.features.autocomplete.AutocompleteHeaderItem$Holder cannot be cast to im.vector.app.features.autocomplete.emoji.AutocompleteEmojiItem$Holder
at im.vector.app.features.autocomplete.emoji.AutocompleteEmojiItem_.handlePreBind(AutocompleteEmojiItem_.java:1)
at com.airbnb.epoxy.BaseEpoxyAdapter.onBindViewHolder(BaseEpoxyAdapter.java:22)
at com.airbnb.epoxy.BaseEpoxyAdapter.onBindViewHolder(BaseEpoxyAdapter.java:3)
at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:43)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:59)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:974)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6)
at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:54)
at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1)
at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:54)
at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:400)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:67)
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:135)
at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:8)

Change-Id: I4d4919c35babea2606a06b3e99b5c3b3ce08e95d
2023-05-02 13:18:20 +02:00
jonnyandrew e37fe1f8f5
Allow custom push gateway to use non-default port (#8376) 2023-05-02 10:05:15 +00:00
SpiritCroc aa34c108b5 Labs: setting to clear highlighted message on scroll
Change-Id: If07012f29159bb10cbd90f410955b49684891945
2023-04-25 14:15:47 +02:00
valere 3705e14851 Expose rust version in settings and RS 2023-04-25 13:31:15 +02:00
SpiritCroc 0cc0a191bc Merge remote-tracking branch 'CicadaCinema/fallback-turn-server' into sc
Change-Id: I07acecb8587ee3bdf6b2eef1e130ffd578739416

Conflicts:
	vector/src/main/java/im/vector/app/features/call/webrtc/WebRtcCall.kt
	vector/src/main/java/im/vector/app/features/call/webrtc/WebRtcCallManager.kt
	vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt
	vector/src/main/res/xml/vector_settings_voice_video.xml
2023-04-24 12:02:18 +02:00
SpiritCroc 9435780036 Fix long freeform reactions moving out sender from reaction info
Change-Id: Ic41b17546f6f0f52a6dfdb800788560788ec1d37
2023-04-23 10:59:16 +02:00
Alexey Nechaev 28da02c583 Fixes #7758: Fixed JWT token for Jitsi openidtoken-jwt authentication
Signed-off-by: Alexey Nechaev <seysane@yahoo.com>
2023-04-22 19:31:24 +03:00
valere 1cc3f194e4 rust/native analytics E2E errors 2023-04-20 16:58:04 +02:00
SpiritCroc b88a41aaa8 Fix (upstream) crash for protected access settings
java.lang.IllegalStateException: Can't access the Fragment View's LifecycleOwner when getView() is null i.e., before onCreateView() or after onDestroyView()
	at androidx.fragment.app.Fragment.getViewLifecycleOwner(Fragment.java:10)
	at im.vector.app.features.settings.VectorSettingsPinFragment.refreshPinCodeStatus(VectorSettingsPinFragment.kt:1)
	at im.vector.app.features.settings.VectorSettingsPinFragment.bindPref(VectorSettingsPinFragment.kt:1)
	at im.vector.app.features.settings.VectorSettingsBaseFragment.onCreatePreferences(VectorSettingsBaseFragment.kt:8)
	at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:74)
	at androidx.fragment.app.Fragment.performCreate(Fragment.java:22)
	at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:52)
	at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:149)
	at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1135)
	at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:82)
	at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:74)
	at androidx.fragment.app.FragmentManager$5.run(FragmentManager.java:4)
	at android.os.Handler.handleCallback(Handler.java:938)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:236)
	at android.app.ActivityThread.main(ActivityThread.java:7876)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:656)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:967)

Change-Id: Iac3e08d95338417f69ee71ce0b185b825b9b0333
2023-04-20 11:19:12 +02:00
SpiritCroc acdf419768 Merge tag 'v1.5.32' into sc
Note: mainly conflicts in differing implementations to fix duplicate
read receipts.

After a quick glance at the upstream implementation, my first impression
is that we likely want to keep our downstream implementation:
- Better performance by checking for the more recent receipt in the SDK
  upon receipt receival, instead on rendering the timeline
- null seems to always map to main, which caused us jumping receipts in
  the past, which we have addressed by now

Conflicts:
	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/helper/ChunkEntityHelper.kt
	vector/src/main/java/im/vector/app/features/home/room/detail/TimelineFragment.kt
	vector/src/main/java/im/vector/app/features/home/room/detail/timeline/TimelineEventController.kt
	vector/src/main/java/im/vector/app/features/html/PillsPostProcessor.kt

Change-Id: I47ae2afe5fcbe77a4fec69374d83821b94a431de
2023-04-20 10:53:09 +02:00
valere b2c7f05a10 Merge branch 'develop' into feature/bca/rust_flavor 2023-04-20 09:51:17 +02:00
SpiritCroc 799279eb5d Do not ellipsize message previews due to trailing newline
Change-Id: I8e6a43f6599e209f40e676a8bdb1754fb6a6e93e
2023-04-19 17:09:45 +02:00
ganfra 0143cf7ea8 Changelog for version 1.5.32 2023-04-19 16:15:35 +02:00
SpiritCroc f16a7edf51 Sticker room summary preview: prefer sticker body like on desktop
Change-Id: If3dda509b1acddccf44b3e3267f098de3ee35611
2023-04-15 10:42:04 +02:00
valere 0e503503d2 Merge branch 'develop' into feature/bca/rust_flavor 2023-04-13 15:49:20 +02:00
Tulir Asokan df9579d7d2 Sync Emojis 2023-04-12 21:44:03 +03:00
Yoan Pintas 110b5cfcb4
Add pills for permalink supported hosts (#8324) 2023-04-12 12:35:01 +00:00
Yoan Pintas fb837fed5a
Keep screen on while recording voicebroadcast (#8313) 2023-04-12 13:55:20 +02:00
Yoan Pintas 99aa9493d6
Update read marker when we go back in live (#8306) 2023-04-12 07:18:02 +00:00
networkException 7fff7a453d
Enable free style cropping for camera and gallery images
This feature was disabled in 3ac2296464.

Resolves #2356

Signed-off-by: networkException <git@nwex.de>
2023-04-11 22:47:04 +02:00
SpiritCroc 9e0ec534d5 [merge] More appropriate pill size for downstream text size
https://developer.android.com/reference/com/google/android/material/chip/ChipDrawable

Change-Id: Ib21bb1426547c8a49f55e2ecd836f83d9dfe1654
2023-04-11 17:27:21 +02:00
valere 4ecbf87cda unused flow 2023-04-07 14:09:25 +02:00
SpiritCroc 89750f74a4 Ensure unique IDs across all emoji autocompletion types
Change-Id: I522eaf4fb8af214ff9b6a0ac744093cbe6b8b6e4
2023-04-07 12:40:46 +02:00
SpiritCroc cb593ebb14 Move standard emojis to top of autocompletion
Now that we can limit emojis per category while allowing to expand them,
makes sense to show standard emojis on top, above custom emotes,
especially when users have lots of emotes.

Change-Id: I822cc091bf595795fa08fef32f0737073a43163a
2023-04-07 12:38:10 +02:00
valere 3e1b59d062 Merge branch 'develop' into feature/bca/rust_flavor 2023-04-06 08:53:20 +02:00
Florian Renaud 9490ddf53f
Merge pull request #8301 from vector-im/dependabot/gradle/org.checkerframework-checker-3.33.0
Bump org.checkerframework:checker from 3.32.0 to 3.33.0
2023-04-06 08:48:32 +02:00
Florian Renaud 90160a9681
Merge pull request #8304 from vector-im/dependabot/gradle/com.gabrielittner.threetenbp-lazythreetenbp-0.16.0
Bump com.gabrielittner.threetenbp:lazythreetenbp from 0.14.0 to 0.16.0
2023-04-05 18:01:58 +02:00
Benoit Marty 673c59b3f8
Merge pull request #8310 from vector-im/feature/fga/fix_multiple_read_receipts
Fix multiple read receipts for the same user in timeline #7882
2023-04-05 17:56:11 +02:00