Commit graph

2113 commits

Author SHA1 Message Date
Benoit Marty
72b89338b3 Remove Modifier parameter in private function when only default value is used.
This will improve the code coverage metrics, and this also fixes a few potential bug, where the Modifier was used several times.
2024-02-08 11:06:06 +01:00
Jorge Martin Espinosa
6f082232d3 Move migration screen to within the room list (#2361)
* Rename migration bg drawable and add night variant
* Move `migration` package from `ftue` to `messages:impl` module
* Update `SunsetPage` with light and dark modes
* Fix bloom colors when nested theme is used
* Integrate the migration screen in the room list
* Fix `WaitListView` cancel button color
* Clear migration store when removing the app's cache

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-02-08 10:01:08 +00:00
Jorge Martin Espinosa
1288c42bb2 Merge branch 'develop' into poljar/log-olm-trace 2024-02-08 09:50:58 +01:00
Benoit Marty
125da04192 Extract session folder name computation from RustMatrixClient 2024-02-07 16:33:48 +01:00
Benoit Marty
a1f78372d6 Remove LogCompositions.
It was used at the beginning of the project, but is not useful anymore.
2024-02-07 16:33:48 +01:00
Damir Jelić
b2101a1b80 Enable trace logging for the Olm Account
This should help us to track down UTD sources, it ensures that we log
the state of a Olm session when we try to decrypt an `m.olm.*` to-device
message.
2024-02-07 10:46:34 +01:00
Benoit Marty
3c36868f85 Merge pull request #2349 from element-hq/feature/bma/disableTyping
"Share presence" setting
2024-02-07 10:29:43 +01:00
Benoit Marty
79b8a628b1 Merge pull request #2341 from element-hq/fix/jme/forwarding-with-new-timeline-api
Fix message forwarding after SDK API change
2024-02-06 16:11:40 +01:00
Benoit Marty
6234d6e092 Fix API break and change from SDK 0.1.97 2024-02-06 09:18:35 +01:00
Benoit Marty
365502ac96 Avoid computing default value if it's not necessary. 2024-02-05 12:29:36 +01:00
Benoit Marty
b987397b79 SessionPreferencesStore: add entries for sharePresence, renderReadReceipts, sendTypingNotifications, renderTypingNotifications.
`sharePresence` should take existing value of `sendPublicReadReceipts`, which has been added first.
2024-02-05 12:27:04 +01:00
bmarty
7911a26003 Sync Strings from Localazy 2024-02-05 00:09:59 +00:00
Jorge Martin Espinosa
3e98e7e33a Merge pull request #2303 from element-hq/misc/jme/remove-session-preferences-on-logout
Remove session preferences on logout.
2024-02-02 16:26:15 +01:00
Jorge Martín
038bcc6f94 Fix message forwarding after SDK API change
Created `Room.fullRoomWithTimeline` helper to always get an initialized timeline with the room object.
2024-02-02 11:34:12 +01:00
Marco Antonio Alvarez
ab4b3c2b01 Merge branch 'develop' of github.com:element-hq/element-x-android into align-cta-button-on-login-flow
# Conflicts:
#	features/onboarding/impl/src/main/kotlin/io/element/android/features/onboarding/impl/OnBoardingView.kt
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Day-0_1_null_0,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Day-0_1_null_1,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Day-0_1_null_2,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Day-0_1_null_3,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Day-0_1_null_4,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Night-0_2_null_0,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Night-0_2_null_1,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Night-0_2_null_2,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Night-0_2_null_3,NEXUS_5,1.0,en].png
#	tests/uitests/src/test/snapshots/images/ui_S_t[f.onboarding.impl_OnBoardingScreen_null_OnBoardingScreen-Night-0_2_null_4,NEXUS_5,1.0,en].png
2024-02-01 17:54:11 +01:00
Jorge Martin Espinosa
f482e40b04 Merge pull request #2333 from element-hq/feature/jme/use-unencrypted-room-calls-if-room-is-not-encrypted
Use `MatrixRoom.isEncrypted` value to set encryption mode in room calls
2024-02-01 16:19:42 +01:00
Benoit Marty
2d54b3d239 Merge pull request #2328 from element-hq/sync-localazy
Sync Strings
2024-02-01 15:44:42 +01:00
Jorge Martín
64a48a2abd Fix test fixtures 2024-02-01 12:19:25 +01:00
SpiritCroc
00bcc944d7 Do not crash on UP unregistered 2024-02-01 12:04:47 +01:00
Jorge Martín
34d7657e19 Use MatrixRoom.isEncrypted value to enable encryption in room calls 2024-02-01 11:49:17 +01:00
jmartinesp
697c482b6d Sync Strings from Localazy 2024-01-31 11:38:48 +00:00
renovate[bot]
f36d3cae89 Update dependency org.matrix.rustcomponents:sdk-android to v0.1.96 (#2323)
* Update dependency org.matrix.rustcomponents:sdk-android to v0.1.96

* Fixes for the SDK upgrade

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-01-31 11:07:34 +00:00
Jorge Martin Espinosa
47f7f8952b Add missing device id to settings screen (#2320)
* Add missing device id to settings screen

* Extract footer component

* Restore `@PreviewWithLargeHeight` logic

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-31 10:01:17 +00:00
Jorge Martín
a497227396 Remove session preferences on logout
Observe the sessions in `DefaultSessionPreferencesFactory` and remove the session preferences from both the cache and disk when a session is finished.
2024-01-31 10:35:29 +01:00
Jorge Martin Espinosa
7686fbbd07 Make the whole items in advanced settings screen clickable, standarize paddings (#2314)
* Make sure the whole item in advanced settings screen triggers the toggle action

* Fix UI changes when setting `onChecked` actions to null.

* Fix padding in invite member list items

* Remove redundant `CheckableUserRow` alternatives.

* Use 4dp for padding instead

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-30 11:39:04 +00:00
Jorge Martin Espinosa
38fdef0388 Fix crash about several DataStores using the same file (#2312)
* Fix crash about several DataStores using the same file

- Create `@SessionCoroutineScope` annotation to pass a session-managed coroutine scope to the DI.
- Expose this scope from `MatrixClient`.
- Rework DataStore file creation a bit.
- Centralise session preference creation through `DefaultSessionPreferencesStoreFactory` until we figure out what went wrong with the scoping
2024-01-30 11:10:46 +01:00
Benoit Marty
444954bad9 Merge pull request #2293 from element-hq/feature/bma/notificationCount
Iterate on notification badges
2024-01-30 10:33:17 +01:00
Benoit Marty
066c502a0c Merge pull request #2309 from element-hq/sync-localazy
Sync Strings
2024-01-29 09:55:38 +01:00
bmarty
2be0a69c50 Sync Strings from Localazy 2024-01-29 00:09:56 +00:00
Benoit Marty
2ef8f67951 Send typing notification #2240 2024-01-26 16:30:43 +01:00
Jorge Martin Espinosa
17f22d143b Add 'send private read receipts' option in advanced settings (#2290)
* Add 'send private read receipts' option in advanced settings
* Create `SessionPreferencesStore` that stores the settings for the current use separate from those of the app.
* Rename `PreferencesStore` to `AppPreferencesStore` to split the preferences.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-26 10:06:26 +01:00
Jorge Martin Espinosa
e22ac6a48d Add a special tracing configuration for nightlies (#2297)
It also enables logging `MATRIX_SDK_BASE_READ_RECEIPTS` at a `TRACE` level for both debug and nightly versions.
2024-01-26 10:05:30 +01:00
Benoit Marty
6bf1806ed4 Disambiguate display name in notifications #2224 2024-01-25 18:43:56 +01:00
Benoit Marty
fe0e82b5d6 Map roomInfo.numUnreadNotifications to RoomSummaryDetails.numUnreadNotifications 2024-01-25 15:00:43 +01:00
Benoit Marty
f47b9827c5 Restore branch and git sha, to use it in logs and in rageshakes.
Remove quite useless `gitRevisionDate`.
2024-01-25 14:16:21 +01:00
Benoit Marty
3faaf208b4 Merge pull request #2264 from element-hq/renovate/io.nlopez.compose.rules-detekt-0.x
Update dependency io.nlopez.compose.rules:detekt to v0.3.10
2024-01-23 18:55:02 +01:00
Jorge Martin Espinosa
f9c5cd07a9 Return cached room members before fetching new ones, do it in batches (#2274)
* Use cached users from the Rust SDK.

Also lazy load received users by batches.

* Create `RoomMemberListFetcher` to wrap all the room member loading logic

* Ensure we clear `RoomMember` Rust references if the fetching coroutine is canceled
2024-01-23 18:23:20 +01:00
Benoit Marty
30cea9c70a Always use the latest... fix. 2024-01-23 18:13:33 +01:00
Benoit Marty
cff076b508 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
cdbfe8f92c Fix API break: use new methods canUserRedactOwn and canUserRedactOther. 2024-01-23 13:32:13 +01:00
Benoit Marty
ca1f907ec5 Use new Rust fields numUnreadMessages and numUnreadMentions, and iterate on the room badge rendering. 2024-01-22 15:48:46 +01:00
Benoit Marty
f42e220d55 Merge pull request #2130 from element-hq/feature/bma/roomListBadge
Some rework on the codebase
2024-01-22 10:17:38 +01:00
bmarty
d2a4c737a6 Sync Strings from Localazy 2024-01-22 00:10:44 +00:00
Benoit Marty
32dc7bca23 Merge pull request #2221 from element-hq/feature/bma/displayNameAmbiguous
Display name disambiguation
2024-01-19 17:42:32 +01:00
Benoit Marty
5e5eddd537 Merge pull request #2244 from element-hq/feature/bma/encryptedDb2
Encrypted db
2024-01-19 17:40:23 +01:00
Jorge Martin Espinosa
ac3201b317 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
854622b85f 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
31b2c55bee Remove default value of RoomSummaryDetails constructor, and iterate on fixture functions. 2024-01-19 16:46:42 +01:00
Benoit Marty
82a3750cd8 Remove notificationMode to userDefinedNotificationMode to match SDK name. 2024-01-19 16:46:42 +01:00
Benoit Marty
9b3a0c1f08 Remove hasOngoingCall to hasRoomCall to match SDK name. 2024-01-19 16:16:57 +01:00