Commit Graph

2032 Commits

Author SHA1 Message Date
Benoit Marty 6cb4a9af6d Fix rendering of emote when the message contains some formatting. 2023-11-14 14:28:15 +01:00
Jorge Martin Espinosa d648f85d75 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
Marco Romano 58e05d139c Always ensure media temp dir exists (#1790)
<!-- Please read [CONTRIBUTING.md](https://github.com/vector-im/element-x-android/blob/develop/CONTRIBUTING.md) before submitting your pull request -->
 
## Type of change

- [ ] Feature
- [x] Bugfix
- [ ] Technical
- [ ] Other :

## Content

`RustMediaLoader` creates the "${cacheDir}/temp/media" dir only once at class creation. Unfortunately when clearing an app's cache this directory will be deleted and the app's process won't be killed, so subsequent usages of the same instance of `RustMediaLoader` will not work because `cacheDirectory` does not exists. This fix makes sure that such directory is always checked and created if needed.

## Motivation and context

Fixes https://github.com/vector-im/element-x-android/issues/1788

## Screenshots / GIFs

<!--
We have screenshot tests in the project, so attaching screenshots to a PR is not mandatory, as far as there
is a Composable Preview covering the changes. In this case, the change will appear in the file diff.
Note that all the UI composables should be covered by a Composable Preview.

Providing a video of the change is still very useful for the reviewer and for the history of the project.

You can use a table like this to show screenshots comparison.
Uncomment this markdown table below and edit the last line `|||`:
|copy screenshot of before here|copy screenshot of after here|

|Before|After|
|-|-|
|||
 -->

## Tests

<!-- Explain how you tested your development -->

- Step 1
- Step 2
- Step ...

## Tested devices

- [ ] Physical
- [ ] Emulator
- OS version(s):

## Checklist

<!-- Depending on the Pull Request content, it can be acceptable if some of the following checkboxes stay unchecked. -->

- [ ] Changes have been tested on an Android device or Android emulator with API 23
- [ ] UI change has been tested on both light and dark themes
- [ ] Accessibility has been taken into account. See https://github.com/vector-im/element-x-android/blob/develop/CONTRIBUTING.md#accessibility
- [ ] Pull request is based on the develop branch
- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/vector-im/element-x-android/blob/develop/CONTRIBUTING.md#changelog
- [ ] Pull request includes screenshots or videos if containing UI changes
- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)
- [ ] You've made a self review of your PR
2023-11-13 15:52:53 +01:00
ElementBot 3bf34eae01 Sync Strings (#1789)
Co-authored-by: bmarty <bmarty@users.noreply.github.com>
2023-11-13 12:31:34 +01:00
Benoit Marty 5850f5342d 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 67d58bac35 Move remaining hard-coded dependency to Gradle catalog. We had 2 different version of material3 library. 2023-11-10 16:56:04 +01:00
Benoit Marty 8819522423 Replace hard-coded value by value from gradle datalog 2023-11-10 16:25:58 +01:00
jonnyandrew 14be887cac Enable seeking a recorded voice message (#1758) 2023-11-10 09:18:01 +00:00
Benoit Marty c5c717ae4d Merge pull request #1781 from vector-im/feature/bma/onBoardingIteration
On boarding iteration
2023-11-09 16:54:17 +01:00
Marco Romano 878417f557 Voice message MediaPlayer: wait until player is ready (#1772)
Change to `MediaPlayer` API to allow waiting for the player to be in a ready state.
This is needed in order to perform some tasks (e.g. read the media duration, seek) after changing the media file.
2023-11-09 14:34:38 +00:00
Benoit Marty e8c194ec77 Simpler code 2023-11-09 15:22:55 +01:00
Benoit Marty a0699f0cc2 Use icon from Compound and ensure the size is 20.dp 2023-11-09 15:16:20 +01:00
Marco Romano b83d8733e2 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 cbc93cfd48 Move icons to the design system to reuse them (and use new ic_devices). 2023-11-09 15:09:42 +01:00
Benoit Marty 81a745871f Onboarding iteration #1776 2023-11-09 15:03:45 +01:00
Benoit Marty 9279420c7e Merge pull request #1773 from vector-im/feature/bma/recoveryKeyErrorDialog
Feature/bma/recovery key error dialog
2023-11-09 14:30:49 +01:00
Benoit Marty e804031bb2 Merge pull request #1774 from vector-im/feature/bma/imageThumbnail
Improve rendering of `AttachmentThumbnail` when thumbnailSource is not provided
2023-11-09 14:30:29 +01:00
Benoit Marty d85deaf785 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
Benoit Marty 035609d74a Add preview for AttachmentThumbnail and fix issue rendering for AttachmentThumbnailType.Location for coherency. 2023-11-08 16:28:07 +01:00
Benoit Marty 65351f0971 If media source for thumbnail info is not available for image, use the source image as a fallback. But if it is available, use it. 2023-11-08 15:48:06 +01:00
Benoit Marty 8218f6c47f Improve dialog content when recovery key (or passphrase) is not correct. 2023-11-08 14:35:15 +01:00
ganfra 1e244b2ffd Merge pull request #1757 from vector-im/feature/fga/lock_polish
LockScreen polish
2023-11-08 14:02:53 +01:00
Benoit Marty 334f4f78d8 Merge pull request #1759 from vector-im/feature/bma/recoveryKeyWithSpaces
Recovery key with spaces
2023-11-08 14:01:30 +01:00
renovate[bot] 9e66180d20 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
ganfra 4f519a817a Lock screen : fix one more test. 2023-11-08 13:45:28 +01:00
ganfra ffcb1bd67b Update features/ftue/impl/src/test/kotlin/io/element/android/features/ftue/impl/DefaultFtueStateTests.kt
Co-authored-by: Benoit Marty <benoit@matrix.org>
2023-11-08 12:54:25 +01:00
ganfra f067163004 Lockscreen : should fix tests 2023-11-08 12:01:54 +01:00
Benoit Marty d99ed8517e Merge pull request #1767 from vector-im/feature/bma/encryptedMessages
Feature/bma/encrypted messages
2023-11-08 11:58:38 +01:00
Benoit Marty 348da6bec2 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
Jorge Martin Espinosa 74e5bf18fc Iterate design on Settings screen (#1763)
* Iterate design on Settings screen:

- Set new icons provided by design.
- Replace `PreferenceText` usages with `ListItem`.
- Add missing icons, and a new way to group them for previews.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-08 11:31:17 +01:00
Marco Romano 26eecb33dd Voice messages: Don't crash if mxc uri is invalid (#1756)
<!-- Please read [CONTRIBUTING.md](https://github.com/vector-im/element-x-android/blob/develop/CONTRIBUTING.md) before submitting your pull request -->
 
## Type of change

- [ ] Feature
- [x] Bugfix
- [ ] Technical
- [ ] Other :

## Content

Code now checks whether the mx uri is invalid and handles the error condition properly.

## Motivation and context

https://github.com/vector-im/element-x-android/pull/1748#discussion_r1384557443

## Screenshots / GIFs

<!--
We have screenshot tests in the project, so attaching screenshots to a PR is not mandatory, as far as there
is a Composable Preview covering the changes. In this case, the change will appear in the file diff.
Note that all the UI composables should be covered by a Composable Preview.

Providing a video of the change is still very useful for the reviewer and for the history of the project.

You can use a table like this to show screenshots comparison.
Uncomment this markdown table below and edit the last line `|||`:
|copy screenshot of before here|copy screenshot of after here|

|Before|After|
|-|-|
|||
 -->

## Tests

<!-- Explain how you tested your development -->

- Step 1
- Step 2
- Step ...

## Tested devices

- [ ] Physical
- [ ] Emulator
- OS version(s):

## Checklist

<!-- Depending on the Pull Request content, it can be acceptable if some of the following checkboxes stay unchecked. -->

- [ ] Changes have been tested on an Android device or Android emulator with API 23
- [ ] UI change has been tested on both light and dark themes
- [ ] Accessibility has been taken into account. See https://github.com/vector-im/element-x-android/blob/develop/CONTRIBUTING.md#accessibility
- [ ] Pull request is based on the develop branch
- [ ] Pull request includes a new file under ./changelog.d. See https://github.com/vector-im/element-x-android/blob/develop/CONTRIBUTING.md#changelog
- [ ] Pull request includes screenshots or videos if containing UI changes
- [ ] Pull request includes a [sign off](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#sign-off)
- [ ] You've made a self review of your PR
2023-11-08 07:46:00 +01:00
ganfra dc0c33fa5a Lock screen : fix code quality 2023-11-07 21:08:02 +01:00
ganfra 05e99adfc4 Lock : fix race condition on setup pin 2023-11-07 21:06:26 +01:00
ganfra 04afa8c200 LockScreen : fix one more navigation issue 2023-11-07 18:22:40 +01:00
Benoit Marty a818807677 UTD: Change wording from "Decryption error" to "Waiting for this message" 2023-11-07 17:52:06 +01:00
Benoit Marty 095a6f7825 RecoveryKey: Let any password manager provide the key and change keyboard type to password. 2023-11-07 17:43:54 +01:00
Benoit Marty 735c6e857a RecoveryKey: Do not apply a visual transformation if the key has spaces, to let user enter passphrase 2023-11-07 17:35:23 +01:00
Benoit Marty c9a7fa88b6 RecoveryKey: remove space if a recovery key is pasted in the TextField 2023-11-07 17:27:50 +01:00
Jorge Martin Espinosa 26c28ff972 Message composer isn't resized when changing the replied to message (#1750) 2023-11-07 16:59:58 +01:00
ganfra 67bdb78f98 LockScreen : reduce delay before validation step in setup 2023-11-07 16:30:25 +01:00
ganfra d524e7b4bd LockScreen : do not show the entire setup flow when changing the pin is settings 2023-11-07 16:23:41 +01:00
ganfra 5a417ba498 LockScreen : refact some code and add secureFlag 2023-11-07 15:55:53 +01:00
Jorge Martin Espinosa 1fe45cde18 Improve confusing text in the 'ready to start verification' screen (#1751)
* Improve confusing text in the 'ready to start verification' screen

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-07 14:33:26 +01:00
Benoit Marty 7bd2ccd2a9 FlowStepPage: make onBackClicked nullable and remove canGoBack. 2023-11-07 10:59:22 +01:00
Benoit Marty 163bc8703f Rename UserStoryFlowPage to FlowStepPage
Rename UserStoryFlowPage to FlowStepPage
2023-11-07 10:59:22 +01:00
Benoit Marty 3e3a7c5516 Let SecureBackupEnterRecoveryKeyView use UserStoryFlowPage. 2023-11-07 10:57:34 +01:00
Benoit Marty 256eb23acf Let SecureBackupEnableView use UserStoryFlowPage. 2023-11-07 10:53:21 +01:00
Benoit Marty 7e63f196d9 Use ButtonColumnMolecule 2023-11-07 10:53:21 +01:00
Benoit Marty 310bd5bb49 Let SecureBackupDisableView use UserStoryFlowPage. 2023-11-07 10:53:21 +01:00
Benoit Marty 85fa899b5d Let LogoutView use UserStoryFlowPage. 2023-11-07 10:53:21 +01:00