Commit graph

340 commits

Author SHA1 Message Date
Benoit Marty
aa8132227f Add a check for screenshot name duplication. 2024-10-18 15:45:45 +02:00
Jorge Martin Espinosa
366db4791b
Upgrade Kotlin to v2.0 (#3594)
* Bump Kotlin to v2.0

* Fix lots of issues due to the upgrade: lint issues, function signature incompatibilities, broken tests, etc.

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-10 08:32:00 +00: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
Jorge Martin Espinosa
48a4a9d69b
Update Gradle impl module template with setupAnvil() call (#3563) 2024-09-30 14:28:06 +02:00
ganfra
0b1e68ae2e Pinned messages analytics : add LocalAnalyticsService to allowedCompositionLocals 2024-09-23 16:09:02 +02:00
Benoit Marty
b87bec6228 Account deactivation. 2024-09-17 16:51:11 +02:00
Benoit Marty
39348d2e7e Account Creation using a WebView 2024-09-16 12:24:47 +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
Benoit Marty
4690cd80e1 Small update of the release script wording. 2024-09-10 10:35:06 +02:00
Jorge Martin Espinosa
67e262fdc8
Add banner for optional migration to simplified sliding sync (#3429)
* Add banner for optional migration to native sliding sync

- Add `MatrixClient.isNativeSlidingSyncSupported()` and `MatrixClient.isUsingNativeSlidingSync` to check whether the home server supports native sliding sync and we're already using it.
- Add `NativeSlidingSyncMigrationBanner` composable to the `RoomList` screen when the home server supports native sliding sync but the current session is not using it.
- Add an extra logout successful action to the logout flow, create `EnableNativeSlidingSyncUseCase` so it can be used there.

* Update screenshots

* Make sure the sliding sync migration banner has lower priority than the encryption setup ones

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-09-09 18:13:19 +02:00
Benoit Marty
1b7b39f97f Migrate license to AGPL - other files. 2024-09-06 17:55:16 +02:00
Benoit Marty
2da5f630b7 Migrate license to AGPL 2024-09-06 17:51:37 +02:00
Benoit Marty
66aa78d822 Migrate license to AGPL - sh files. 2024-09-06 17:50:45 +02:00
Benoit Marty
0c414bdce4 Add missing license header on shell files. 2024-09-06 17:48:14 +02:00
Benoit Marty
375ac25d8d Migrate license to AGPL - XML files. 2024-09-06 17:43:35 +02:00
Benoit Marty
ea44bb55ba Add missing license header on Python files. 2024-09-06 17:25:05 +02:00
Benoit Marty
526bebeddf Fix comment block on Python files 2024-09-06 17:21:51 +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
Benoit Marty
31d0621fa1
Merge pull request #3360 from element-hq/feature/bma/sessionVerificationBannerIsBack
Add banner entry point to set up recovery
2024-08-30 16:56:11 +02:00
Benoit Marty
ad8e8305eb Add banner entry point to set up recovery 2024-08-29 18:34:55 +02:00
Benoit Marty
f4beddef99 Add a way to sign out when the user is asked to verify the session. 2024-08-29 15:56:08 +02:00
Jorge Martín
8a1e333aa7 Fix most review comments 2024-08-14 16:53:50 +02:00
Erik Johnston
20d02785f9
Fix build_rust_sdk.sh script to work on linux (#3291)
A few linux distributions don't have `gdate`, but I think they should
all have `date`.
2024-08-09 16:04:49 +02:00
Jorge Martin Espinosa
2ff5fa67fc
Restore intentional mentions in the markdown/plain text editor (#3193)
* Restore intentional mentions in the markdown/plain text editor

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-07-15 18:27:59 +02:00
Benoit Marty
7b057faf1d Add a local copy of inplace-fix.py and fix-pg-map-id.py from latest release https://github.com/obfusk/reproducible-apk-tools/blob/v0.2.7 2024-07-09 10:09:59 +02:00
Benoit Marty
a8dcd52db0 Add --alignment-preserved true when signing APK for F-Droid. Closes #3151 2024-07-08 18:21:03 +02:00
Jorge Martin Espinosa
1f69722bdd
Remove Showkase processor not found warning from Danger (#3148)
Instead create a new rule to check if the package name is included in `ComposablePreviewProvider`.
2024-07-05 15:15:18 +02:00
Jorge Martin Espinosa
b0cebf5ca0
Improve screenshot testing with ComposablePreviewScanner (#3125)
* Use ComposablePreviewScanner to rework how screenshot testing works
* Add test sharding
* Update screenshots
* Fixes for Element Gallery

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-07-03 13:05:06 +02:00
Benoit Marty
49c3b16f16 Release note for nightly: remove title so that it can be used for Enterprise nightly without confusing the user. 2024-07-02 16:48:58 +02:00
Benoit Marty
6c4e7ec85e
Merge pull request #3025 from element-hq/feature/bma/elementEnterprise
Element enterprise (EE) foundations
2024-07-01 17:08:40 +02:00
Benoit Marty
d22dd7c2f7 Let Konsist checks the license header 2024-07-01 11:12:02 +02:00
Benoit Marty
ed00ed4811
Merge pull request #3106 from element-hq/feature/bma/fixRelease
Fix F-Droid reproducible build.
2024-06-27 15:23:35 +02:00
Benoit Marty
c9c66ba9d3 Fix download path. 2024-06-27 14:56:52 +02:00
Benoit Marty
cedbaadf8c inplace-fix.py also needs fix-pg-map-id.py to do the requested work. 2024-06-27 14:18:47 +02:00
Benoit Marty
09afedd433 Remove towncrier: iterate on release script. 2024-06-27 12:24:22 +02:00
Benoit Marty
a457561b47 Remove towncrier template. 2024-06-27 12:16:34 +02:00
Benoit Marty
ffa4bec78c Towncrier is gone, iterate on danger checks 2024-06-27 12:02:29 +02:00
Benoit Marty
a565a0396f Remove towncrier invocation when building nightly. 2024-06-27 11:52:38 +02:00
Benoit Marty
f4a5ef8233 Use curl instead of wget. 2024-06-24 17:54:26 +02:00
Benoit Marty
fbdc5cc145 Make sure F-Droid build are reproducible by patching the value of pg-map-id #3061 2024-06-24 17:46:19 +02:00
Benoit Marty
1cffa3d1fe Min SDK is now 24 2024-06-24 17:34:58 +02:00
Benoit Marty
2bf80fb0cc Use BuildTools 35.0.0 2024-06-24 17:31:47 +02:00
Jorge Martin Espinosa
310a7fc229
Resolve display names in mentions in real time (#3051)
* Resolve display names in mentions in real time

* Use `LocalRoomMemberProfilesCache` to avoid having to implement `TextMessagePresenter`

* Also use local composition provider for `MentionSpanProvider`
2024-06-21 09:57:36 +00:00
Jorge Martin Espinosa
b741c32e91
Add full screen intent permissions banner (#3024)
* Add full screen intent permissions banner, creating `:libraries:fullscreenintent` modules.
* Add it to notification settings too:
    - Create `libraries:fullscreenintent` modules for the permission presenter and associated data.
    - Add the presenter and states to `NotificationSettingsPresenter` and `NotificationSettingsView`.
* Use the right API to check for full screen intent permissions.
- Use the right package name for `:libraries:permission` contents.
* Fix broken tests (flaky?)
* Ignore coverage verification for fake and small presenters

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-06-18 07:41:10 +00:00
Benoit Marty
303642bb8e Fix script on CI 2024-06-14 10:27:03 +02:00
Benoit Marty
d43d0cda9e Add Python script to check for invalid dependencies - keeping the existing errors to check that the CI works as expected. 2024-06-14 09:29:23 +02:00
Benoit Marty
89e0d94d86 Fix warning: more redirection to end. 2024-06-11 17:58:24 +02:00
Benoit Marty
9be8ab7f38 Fix error 2024-06-11 15:39:05 +02:00
Benoit Marty
31cfae0578 Run shellcheck autofix. 2024-06-11 15:27:02 +02:00
Benoit Marty
756905b9cd
Merge pull request #3000 from element-hq/sync-localazy
Sync Strings
2024-06-11 15:16:55 +02:00