Commit Graph

344 Commits

Author SHA1 Message Date
Jorge Martin Espinosa
3ba75962e6 Add warning message to 'mentions and keywords only' notification option (#2028)
* Add warning message to 'mentions and keywords only'

 It should be displayed when it's not supported by the homeserver

* Only display disclaimer in the room notification settings if the room is encrypted

Co-authored-by: Benoit Marty <benoit@matrix.org>

* Fix test and add another one

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2023-12-14 16:15:39 +00:00
Benoit Marty
506f47630b Merge pull request #2015 from element-hq/feature/bma/asyncMedia
ReadReceipt
2023-12-14 16:03:09 +01:00
Benoit Marty
e4ba9c1d5a Create RoomMember.getBestName() extension. 2023-12-14 15:10:49 +01:00
Jorge Martin Espinosa
3b59b70e65 Handle tapping on user mentions (#2021) 2023-12-14 11:56:59 +00:00
ganfra
b94f446fc1 Merge pull request #1897 from element-hq/jonny/timeline-poll-edited
Display edited indicator for polls in the timeline
2023-12-14 08:13:11 +01:00
Benoit Marty
68334ba093 Fix API break regarding ReceiptType 2023-12-13 18:02:06 +01:00
Benoit Marty
3d32c0b708 Merge pull request #1965 from vector-im/feature/bma/emojiRepresentation
Fix emoji representation
2023-12-11 17:51:58 +01:00
Benoit Marty
cd99ed2ea8 Rename file. 2023-12-11 15:58:47 +01:00
Benoit Marty
c5168ae27b Extract MxcTools and add test. 2023-12-11 14:53:02 +01:00
Benoit Marty
119e962016 Image in notification 2023-12-11 14:52:50 +01:00
Benoit Marty
e2eaa9a517 kotlin compiler 2023-12-08 16:42:26 +01:00
Benoit Marty
78ce22d458 Update regarding SDK change on verification data 2023-12-08 16:41:56 +01:00
Benoit Marty
e8a489b5cd SAS emoji: use embedded drawable (#1953) 2023-12-06 14:10:05 +01:00
Benoit Marty
e9b7f3d52a Merge pull request #1961 from vector-im/feature/bma/keyBackupIteration
Key backup iteration
2023-12-06 11:18:50 +01:00
Benoit Marty
436220d6f6 Map new CALL_MEMBER state, and fix issue on fun canUserJoinCall(). 2023-12-06 10:40:59 +01:00
Benoit Marty
89a9da81e9 Map RecoveryException 2023-12-05 18:11:33 +01:00
Benoit Marty
1131bc88c9 Follow SDK method renaming: fix_recovery_issues() got renamed to recover() 2023-12-05 17:40:47 +01:00
Benoit Marty
c0dac24a60 Add notification setting to enable/disable being notified for room invite (#1944) 2023-12-04 17:50:21 +01:00
Benoit Marty
002fd0be66 Merge branch 'develop' into jonny/timeline-poll-edited 2023-12-04 16:01:09 +01:00
ganfra
1c56addb2b Merge pull request #1938 from vector-im/feature/fga/user_detail_direct_chat
Feature/fga/user detail direct chat
2023-12-01 13:46:01 +01:00
ganfra
8ff2454ed0 StartDMAction : small improvements after review 2023-12-01 11:28:29 +01:00
ganfra
270c4612f5 Merge pull request #1920 from vector-im/feature/fga/dynamic_room_list_incremental_load
RoomList: introduce incremental loading to improve performances.
2023-11-30 19:51:13 +01:00
ganfra
03a2e31d46 Merge branch 'develop' into feature/fga/user_detail_direct_chat 2023-11-30 18:10:51 +01:00
ganfra
cd28687eb4 StartDM : add tests 2023-11-30 18:05:26 +01:00
ganfra
118f1c1459 Add StartDMAction to further share code 2023-11-30 13:07:24 +01:00
Jorge Martin Espinosa
0a91184e4a Set a default power level to join calls in room (#1927)
* Set a default power level to join calls.

Also, create new rooms taking this power level into account.

* Modify test to make sure we display the disabled state even when there is an ongoing call

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-30 09:47:48 +00:00
ganfra
69d0a5c7b1 Creates a startDM method so we can reuse it for the new flow 2023-11-29 16:16:09 +01:00
Jorge Martin Espinosa
c739ebc0ee Try to make all collections used in Compose code immutable (#1922)
* Try to make all collections used in Compose code immutable.

Mark sealed interfaces as `@Immutable` too

* Add gradle code to check the compose compiler reports

* Fix some more unstable classes
2023-11-29 15:02:08 +00:00
ganfra
a324e18982 RoomList: introduce incremental loading to improve performances. 2023-11-29 11:53:15 +01:00
Marco Romano
c6fdc79f83 Upgrade to rust sdk 0.1.71 (#1905)
https://github.com/matrix-org/matrix-rust-components-kotlin/releases/tag/sdk-v0.1.71

There are breaking changes as specified in: https://github.com/vector-im/element-x-android/issues/1898 plus the one related to the poll history feature.
2023-11-29 10:34:51 +01:00
Benoit Marty
04be1f0385 Use kotlin.time.Duration instead of java.time.Duration. Also use Duration in TimelineItemVideoContent, like in TimelineItemAudioContent and TimelineItemVoiceContent 2023-11-27 21:58:58 +01:00
jonnyandrew
e4604e5668 Display edited poll indicator in the timeline 2023-11-27 13:14:00 +00:00
jonnyandrew
634d8167ea Allow polls to be edited (#1869)
Polls can be edited if they do not have any votes

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-24 16:47:58 +00:00
Benoit Marty
73a062451c Remove UnknownMessageType, should be handled by OtherMessageType now. 2023-11-23 20:18:53 +01:00
ganfra
6e4635b4cd Merge pull request #1865 from vector-im/feature/fga/room_list_dynamic_api
RoomList : rework a bit the api and make usage of entriesWithDynamicAdapter
2023-11-23 12:07:55 +01:00
Jorge Martin Espinosa
f55d347387 Add plain text representation of messages (#1850)
* Add plain text representation of messages.

This is used in the room list as the last message in a room, in the message summary when a message is selected, in the 'replying to' block, in the 'replied to' block in a message in the timeline, and in notifications.
2023-11-23 08:29:20 +01:00
ganfra
d04b26365d RoomList : rework a bit the api and make usage of entriesWithDynamicAdapters 2023-11-22 18:06:19 +01:00
Jorge Martin Espinosa
a52d78c3b3 Add intentional mentions (#1843)
* Add intentional mentions
2023-11-21 17:34:00 +01:00
Jorge Martin Espinosa
b8ee82a912 Integrate mentions in the composer (#1799)
* Integrate mentions in the composer:

    - Add `MentionSpanProvider`.
    - Add custom colors needed for mentions.
    - Use the span provider to render mentions in the composer.
    - Allow selecting users from the mentions suggestions to insert a mention.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-20 18:14:02 +01:00
Benoit Marty
71ef0c3c78 Merge pull request #1834 from vector-im/feature/bma/readReceipts
Render send state and read receipts
2023-11-20 14:39:13 +01:00
Benoit Marty
3c79390e45 BackupState.DISABLED has been removed. Now when the value is UNKNOWN, the app need to invoke EncryptionService.doesBackupExistOnServer() to check if a Backup exists. 2023-11-17 17:32:14 +01:00
Benoit Marty
3d2d0bff6a Read receipts: mapping 2023-11-16 14:05:00 +01:00
Benoit Marty
968a4d3fd0 Add a View to show the beginning of the timeline (parity with iOS) 2023-11-14 17:31:42 +01:00
Jorge Martin Espinosa
d29052eb47 Add active call icon to room list summaries (#1792)
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-13 15:35:11 +00:00
Benoit Marty
79806852ca Move Knit to Gradle catalog and use alias(libs.plugins.kotlin.serialization). Fix issue with JNA 2023-11-13 09:58:00 +01:00
Benoit Marty
765ede0093 Replace hard-coded value by value from gradle datalog 2023-11-10 16:25:58 +01:00
Marco Romano
8f1b699271 Don't leak MediaFileHandle when downloading voice messages (#1748)
Uses the new `MediaFile.persist()` [API](https://github.com/matrix-org/matrix-rust-sdk/pull/2789) to cache voice messages.
This allows to close the `MediaFile` handle after use and keeping the file.
Also disables rust sdk caching for voice messages as we'll use the app's cache dir for that purpose.

Fixes: https://github.com/vector-im/element-meta/issues/2175
2023-11-09 14:15:11 +00:00
Benoit Marty
18ec3ae7c8 Merge pull request #1769 from vector-im/feature/bma/chatBackupWaitingForSync
Ensure BackupState and RecoveryState values are set from the SDK only…
2023-11-09 09:21:51 +01:00
renovate[bot]
dd57197f32 Update kotlin (#1697)
* Update kotlin

* Lower Sonar RAM usage, remove redundant `Dkotlin.daemon.jvm.options`

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-11-08 12:58:14 +00:00
Benoit Marty
8d3af2a1fc Ensure BackupState and RecoveryState values are set from the SDK only when the first sync is finished. 2023-11-08 11:33:02 +01:00