Commit graph

1340 commits

Author SHA1 Message Date
Valere
2230163bbe dep | Adapt rust-sdk, rename PreviouslyVerified to VerificationViolation 2024-10-04 12:37:33 +02:00
ganfra
adc03c9676 timeline : improve jumpTo precision (introducing animateScrollToItemCenter) 2024-10-03 15:33:03 +02:00
ganfra
88e01e7c2e timeline : fix jumpToBottom for not live timeline. 2024-10-03 13:14:14 +02:00
ganfra
8b6fba8512 timeline : add synchronisation around timelineItemIndexer 2024-10-03 13:14:14 +02:00
ganfra
b88e65a3ed timeline : fix lastOutgoingMessage after last changes 2024-10-03 13:14:14 +02:00
ganfra
1e4c30c569 timeline : makes typingNotification item part of the timelineItems. 2024-10-03 13:14:14 +02:00
Benoit Marty
ee7e5b8a46
Merge pull request #3576 from frebib/frebib/dupe-room-crash
Prevent crash with duplicate room suggestion
2024-10-02 13:54:19 +02:00
Jorge Martin Espinosa
79c17f714f
Use Anvil KSP instead of the Square KAPT one (#3564)
* Use Anvil KSP instead of the Square KAPT one

* Fix several configuration cache, lint and test issues

* Allow incremental kotlin compilation in the CI

* Workaround Robolectric + Compose issue that caused `AppNotIdleException`

* Update the `enterprise` commit hash

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2024-10-02 11:52:17 +00:00
Joe Groocock
7f3ebbb85d
Prevent crash with duplicate room suggestion
If two rooms have the same canonical alias, e.g. the recently tombstoned
and upgraded #foundation-office:matrix.org, typing `#foun` into the
composer could cause the app to crash. This avoids that by using the
(hopefully) globally unique room id as the key instead.

Signed-off-by: Joe Groocock <me@frebib.net>
2024-10-02 09:47:29 +00:00
renovate[bot]
3001efb525
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.50 (#3565)
* Adapt to changes in the SDK

* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.50

* Use lambda instead of overriding the `EventDebugInfoProvider` interface

* Fix test proposal.
We may find a better way to compare data class instance if we need to do more comparison in the future...

---------

Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-01 09:44:52 +02:00
Joe Groocock
555f73dfa8
Use MSC2530 filename when loading media
In the case of captioned images, the `body` of the event is the caption,
and is ill suited to be a filename. Often the caption can be
prohibitively long, causing the media to fail to load in some cases.

Fixes: https://github.com/element-hq/element-x-android/issues/2882
Signed-off-by: Joe Groocock <me@frebib.net>
2024-09-30 20:05:58 +00:00
Jorge Martin Espinosa
eeec7cc785
Centralise the DI code generation logic (#3562)
* Create Anvil extension helper

* Use the helper everywhere
2024-09-30 12:20:28 +00:00
Benoit Marty
78da5a91b5 Fix crash when aspectRatio is null. 2024-09-30 09:48:59 +02:00
Benoit Marty
24c7be609d
Merge pull request #3548 from element-hq/feature/fga/timeline_remove_item_animation
timeline : remove animateItem
2024-09-27 10:11:54 +02:00
renovate[bot]
231217c438
Update dependency io.element.android:compound-android to v0.1.0 (#3524)
* Update dependency io.element.android:compound-android to v0.1.0

* Fix usages of `AvatarColorsProvider`

* Update screenshots

* Fix tests and lint issues

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <android@element.io>
2024-09-26 14:54:25 +00:00
ganfra
5a8cfda4c7 timeline : remove animateItem 2024-09-26 16:05:05 +02:00
renovate[bot]
9756afc5d1
Update dependency androidx.compose:compose-bom to v2024.09.00 (#3399)
* Update dependency androidx.compose:compose-bom to v2024.09.00

* Adapt code for changes.

* Workaround crash when closing the RTE

* Fix broken bottom sheet colors and shape

* Fix tons of warnings and deprecations

* Fix lint issues

* Fix more M3 update changes

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: ganfra <francoisg@matrix.org>
Co-authored-by: ElementBot <android@element.io>
2024-09-26 09:30:20 +02:00
Benoit Marty
900074ee20 flatMap with runCatching is more appropriate here. 2024-09-24 16:39:13 +02:00
Benoit Marty
d4e8488dc4
Merge pull request #3523 from element-hq/feature/fga/pinned_messages_analytics
Pinned messages analytics
2024-09-24 09:35:14 +02:00
ganfra
269889da83 Pinned messages analytics : branch analytics 2024-09-23 20:10:04 +02:00
Jorge Martin Espinosa
16d5be3ed5
Fix pinned events banner reappearing when loading (#3519)
* Fix pinned events banner reappearing when loading.

Make the `RustTimelineItem.timelineItems` property a `SharedFlow` so we don't always incorrectly load an empty state by default.
2024-09-23 15:19:29 +02:00
bmarty
1768f24fd0 Sync Strings from Localazy 2024-09-23 00:23:49 +00:00
ganfra
d0f363bf7d Pinned messages analytics : introduce LocalAnalyticsService so we can easily inject it in views 2024-09-20 18:28:25 +02:00
ganfra
3886391557 Pinned messages : add pin icon in timeline for pinned events. 2024-09-20 13:22:45 +02:00
ganfra
7919c924fa Pinned messages : add pinnedEventIds to TimelineRoomInfo 2024-09-19 20:11:24 +02:00
ganfra
2d313089e1
Merge pull request #3487 from element-hq/feature/fga/timeline_improvements
Timeline related improvements
2024-09-18 20:50:00 +02:00
ganfra
1242316c05 Timeline : makes sure we don't emit empty list when navigating back to timeline. 2024-09-18 16:27:25 +02:00
ganfra
05f2c71745 Pinned messages : remove debounce now it's properly handled by sdk. 2024-09-18 14:01:05 +02:00
ganfra
5240555329 Resolve send failure verification : clearer message when unsigned device is from you 2024-09-18 11:30:50 +02:00
ganfra
cbb5e0ffed Resolve send failure verification : fix crash when dismissing. 2024-09-17 16:17:08 +02:00
ganfra
d310c96b4b
Merge pull request #3438 from element-hq/feature/fga/pinned_messages_actions
Update pinned message actions
2024-09-16 16:11:13 +02:00
ganfra
47d0c505b5
Merge pull request #3461 from element-hq/feature/fga/send_failure_identity_changes
Require acknowledgement to send to a verified user if their identity changed or if a device is unverified.
2024-09-16 16:00:18 +02:00
ganfra
f6c6943ef0
Merge branch 'develop' into feature/fga/pinned_messages_actions 2024-09-16 15:24:22 +02:00
ganfra
be3ead0db9 Send failure verified user : add some comments and logs. 2024-09-16 15:22:40 +02:00
Jorge Martin Espinosa
663362ac7f
Add forced logout flow when the proxy is no longer available (#3458)
* Add `MatrixClient.isSlidingSyncProxySupported` function

* Update localazy strings

* Modify `ErrorDialog` to have an `onSubmit` call, which will be used for the submit action.

Also make the title text optional and dismissing the dialog by tapping outside/going back configurable.

* Check if a forced migration to SSS is needed because the proxy is no longer available.

In that case, display the non-dismissable dialog and force the user to log out after enabling SSS.

* Enable native/simplified sliding sync by default.

* Refactor the login to make sure we:

1. Always try native/simplified sliding sync login first, if available.
2. Then, if it wasn't available or failed with an sliding sync not supported error, try with the proxy instead (either discovered proxy or forced custom one).

* Move logic to `LoggedInPresenter` and the UI to `LoggedInView`

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-09-16 09:13:02 +00:00
ganfra
aeea99196b Send failure verified user : fix tests. 2024-09-13 18:04:16 +02:00
ganfra
e16adb9b85 Send failure verified user : handle click on failed send icon. 2024-09-13 16:40:07 +02:00
ganfra
ff368b4072 Send failure verified user : resolve ui and logic 2024-09-13 16:40:07 +02:00
ganfra
e0bc026d5f Send failure verified user : display in ActionListView 2024-09-13 16:40:06 +02:00
ganfra
004cb7404a Pinned messages : remove redact action from the pinned message list action menu. 2024-09-10 13:49:40 +02:00
ganfra
0bf846086f Pinned messages : allow to unpin redacted message 2024-09-10 13:49:12 +02:00
ganfra
631a57e069
Merge branch 'develop' into feature/fga/pinned_messages_list_remove_reaction 2024-09-10 11:25:40 +02:00
ganfra
99158dadc0 Pinned messages : allow action to continue when leaving the pinned messages list. 2024-09-10 09:07:16 +02:00
ganfra
c611f39ec3 Pinned messages : fix timeline provider subscription 2024-09-10 09:07:00 +02:00
ganfra
73bbd1e62a Pinned messages list : hide reactions. 2024-09-09 19:29:25 +02:00
ganfra
74c02cc2d3 Timeline : remove the encrypted history banner for now. 2024-09-09 11:20:50 +02:00
Benoit Marty
6251cb9269
Merge pull request #3422 from element-hq/feature/bma/agpl
Change license to AGPL
2024-09-06 20:40:28 +02:00
Benoit Marty
375ac25d8d Migrate license to AGPL - XML files. 2024-09-06 17:43:35 +02:00
Benoit Marty
f61df38e55 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
ganfra
87dbed98ea
Merge pull request #3415 from element-hq/feature/fga/pinned_messages_banner_indicators
Pinned messages banner : adjust indicator to match design.
2024-09-06 16:57:08 +02:00