Commit Graph

1339 Commits

Author SHA1 Message Date
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
ganfra b802a196fc Merge pull request #3392 from element-hq/feature/fga/pinned_messages_list
[Feature] Pinned messages list
2024-09-06 16:32:44 +02:00