Commit graph

2074 commits

Author SHA1 Message Date
Benoit Marty
3ced570b3c Fix detekt issue:
Lambda parameters in a @Composable that are referenced directly inside of restarting effects can cause issues or unpredictable behavior.

If restarting the effect is ok, you can add the reference to this parameter as a key in that effect, so when the parameter changes, a new effect is created.
However, if the effect is not to be restarted, you will need to use `rememberUpdatedState` on the parameter and use its result in the effect.

See https://mrmans0n.github.io/compose-rules/rules/#be-mindful-of-the-arguments-you-use-inside-of-a-restarting-effect for more information. [LambdaParameterInRestartableEffect]
2024-01-23 18:13:33 +01:00
Benoit Marty
f844399025 Fix API break: use new methods canUserRedactOwn and canUserRedactOther. 2024-01-23 13:32:13 +01:00
Benoit Marty
dd12071ea2 Use new Rust fields numUnreadMessages and numUnreadMentions, and iterate on the room badge rendering. 2024-01-22 15:48:46 +01:00
Benoit Marty
c3538e500d
Merge pull request #2130 from element-hq/feature/bma/roomListBadge
Some rework on the codebase
2024-01-22 10:17:38 +01:00
bmarty
4914c512fe Sync Strings from Localazy 2024-01-22 00:10:44 +00:00
Benoit Marty
5e359a4e73
Merge pull request #2221 from element-hq/feature/bma/displayNameAmbiguous
Display name disambiguation
2024-01-19 17:42:32 +01:00
Benoit Marty
b4773d541f
Merge pull request #2244 from element-hq/feature/bma/encryptedDb2
Encrypted db
2024-01-19 17:40:23 +01:00
Jorge Martin Espinosa
5d462d5ba9
Remove some state events at the start of DMs (#2252)
* Remove some initial events for DMs
2024-01-19 17:34:27 +01:00
Jorge Martin Espinosa
69b290f6fd
Make the room settings screen update automatically (#2197)
* Make the room settings screen update automatically
2024-01-19 17:34:06 +01:00
Benoit Marty
f8f100ccc8 Remove default value of RoomSummaryDetails constructor, and iterate on fixture functions. 2024-01-19 16:46:42 +01:00
Benoit Marty
782f73fb7c Remove notificationMode to userDefinedNotificationMode to match SDK name. 2024-01-19 16:46:42 +01:00
Benoit Marty
ecb000b8ed Remove hasOngoingCall to hasRoomCall to match SDK name. 2024-01-19 16:16:57 +01:00
Benoit Marty
2c691d527b Remove RoomSummaryDetails.lastMessageTimestamp and replace by a getter on lastMessage 2024-01-19 16:11:10 +01:00
Benoit Marty
be0da18a7b Rename userAvatarURLString to userAvatarUrl 2024-01-19 15:59:50 +01:00
Benoit Marty
d1c7520065 Rename avatarURLString to avatarUrl 2024-01-19 15:58:37 +01:00
Benoit Marty
4c86126eae Rename aRoomSummaryDetail to aRoomSummaryDetails 2024-01-19 15:55:26 +01:00
Benoit Marty
ea90b2b833 Remove obsolete comment. 2024-01-19 13:24:50 +01:00
Jorge Martín
48b90fd317 Adapt changes from SDK 0.1.84 2024-01-19 13:20:13 +01:00
Jorge Martin Espinosa
6ecce81f45
Try mitigating unexpected logouts (#2251)
* Try mitigating unexpected logouts.

Try making getting/storing session data use a Mutex for synchronization.

Also added some more logs so we can understand exactly where it's failing.
2024-01-18 16:22:25 +01:00
Benoit Marty
e00d1abe44
Merge pull request #2248 from element-hq/feature/bma/pushProviderSelection
Ensure that a PushProvider is available on a device before using it.
2024-01-18 14:46:05 +01:00
Benoit Marty
877ed3c7ac Fix test. 2024-01-18 12:44:20 +01:00
Benoit Marty
3a91f830da Encrypt databases used by the Rust SDK.
The passphrase is stored in the SessionData, so that a Session created by Element Android can be restored.
Existing sessions will have a null passphrase and will continue to work.
New session will use a passphrase, only on Nightly and Debug build for now.
2024-01-18 12:07:42 +01:00
Benoit Marty
f9c1892f2f SessionData: add the passphrase. 2024-01-18 11:50:05 +01:00
Jorge Martin Espinosa
56990e5e5b
Upgrade Material3 Compose to 1.2.0-beta02 (#2247)
* Upgrade Material3 Compose to `1.2.0-beta02`.

There is also a constraint on a transitive Compose Foundation dependency version (1.6.0-beta02) that fixes the timeline scrolling issue.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-18 08:49:55 +01:00
Benoit Marty
7498c148f1 Ensure that a PushProvider is available on a device before using it.
It help to fallback to UnifiedPush (if available) if the PlayServices are not installed on the device.
2024-01-17 17:11:34 +01:00
Benoit Marty
69e8b85646
Merge pull request #2237 from element-hq/feature/bma/longUserId
Be robust with long userId
2024-01-16 23:16:40 +01:00
Benoit Marty
5ff74fbdff PushClientSecretImpl needs to be a singleton now that it observe the sessions. 2024-01-16 17:33:36 +01:00
Benoit Marty
c821cb5c29 Fix typo 2024-01-16 17:31:26 +01:00
Jorge Martin Espinosa
27f55c0bc4
Replace 'leave room' text with 'leave conversation' for DMs (#2231)
* Replace 'leave room' text with 'leave conversation' for DMs

* Add `isDm` property to both `RoomSummary` and `RoomListRoomSummary`

* Remove redundant `leave_conversation_alert_subtitle_*` texts

* Fix maestro flow

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-16 15:49:44 +01:00
Benoit Marty
4b37ea1a2d Ensure client secret is deleted when the user signs out. 2024-01-16 14:34:06 +01:00
Benoit Marty
40e401c599 Also delete the preference file when the store is reset. 2024-01-16 14:14:04 +01:00
Benoit Marty
8490b0c19d Migrate preferencesDataStoreFile to a file using a hash, to fix a crash if the userId is too long. 2024-01-16 14:13:41 +01:00
ElementBot
6bc080c279
Sync Strings (#2230)
Co-authored-by: bmarty <bmarty@users.noreply.github.com>
2024-01-15 09:21:04 +01:00
Jorge Martin Espinosa
4a7b04524a
Hide verbose state events from the timeline (#2225) 2024-01-12 21:23:52 +00:00
Benoit Marty
14d5274d22 Display name disambiguation #2215.
Applied to:
- timeline message
- detail of timeline message
- reply preview of timeline message
- rendering of state Event
Not applied to:
- room last message
- room member list (we display the MatrixId here)
- room member detail page
2024-01-12 15:58:33 +01:00
Benoit Marty
4ba73c0bb1
Merge pull request #2202 from element-hq/feature/bma/removeReadReceiptFlag
Remove ReadReceipts feature flag.
2024-01-11 17:13:35 +01:00
Benoit Marty
92d8e4f55b
Merge branch 'develop' into feature/bma/sxcludePreviewFromCodeCoverage 2024-01-11 16:02:58 +01:00
Benoit Marty
a83eaede1f Remove ReadReceipts feature flag. 2024-01-11 15:57:59 +01:00
Benoit Marty
d01c70a4fd Fix moar ktlint issues 2024-01-11 11:24:10 +01:00
Benoit Marty
5d086ad82d Fix moar ktlint issues 2024-01-11 10:02:10 +01:00
Benoit Marty
a831f05f6e Fix ktlint issues 2024-01-10 19:33:39 +01:00
Benoit Marty
140a11cf77 Ignore ktlint issue for this particular class. 2024-01-10 19:31:36 +01:00
Benoit Marty
64231044a7 Ignore ktlint issue for this particular object. 2024-01-10 19:31:36 +01:00
Benoit Marty
bac1e3902c Ignore ktlint issue for this particular val. 2024-01-10 19:31:36 +01:00
Benoit Marty
7572968e20 Ignore ktlint issue for this particular class. 2024-01-10 19:31:36 +01:00
renovate[bot]
c8bd362397
Update plugin ktlint to v12.1.0 (#2200)
* Update plugin ktlint to v12.1.0

* Run `./gradlew ktlintFormat` and fix some issues manually.

* Fix other issues reproted by Ktlint

* Limit false positives, KtLint removes unnecessary curly brace in String templates.

* Remove useless Unit

* Minor improvements over ktlint changes

* Restore `AlertDialogContent` behaviour

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-10 16:22:24 +01:00
Jorge Martin Espinosa
13e8e954d3
Improve rendering of voice messages in the timeline in large displays (#2199)
* Improve rendering of voice messages in the timeline in large displays

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-09 18:07:23 +01:00
Benoit Marty
371065bfdd Exclude ContentToPreview from coverage, either by using annotation @ExcludeFromCoverage, or by inlining it. 2024-01-09 17:56:01 +01:00
Benoit Marty
5da6f21447 Remove empty module 2024-01-09 10:45:36 +01:00
Benoit Marty
54e499d0d0 Remove empty test module 2024-01-09 10:45:36 +01:00