Commit Graph

37 Commits

Author SHA1 Message Date
Benoit Marty
629fc552e5 Use DependencyHandlerScope.testCommonDependencies() 2025-09-16 14:38:31 +02:00
Jorge Martín
4bebd1d2ac Remove libs.showkase entry in composeDependencies
Add it only to the needed library modules.
2025-08-13 11:43:57 +02:00
Jorge Martin Espinosa
b91933625c Implement user verification (#4294)
* Add support for starting verification of a user

* Add support for replying to incoming user verification requests

* Add reset recovery key button and previews to `ChooseSelfVerificationModeView`

* Add 'Profile' item in room details screen

* Update screenshots

* Remove `showDeviceVerifiedScreen` parameter from `NavTarget.UseAnotherDevice`

* Allow exiting the FTUE flow, which will close the app. The previous state will be restored when the app is reopened.

* When outgoing verification fails, move to the `Canceled` state. Then, when resetting the state machine state also reset the verification service.

---------

Co-authored-by: ElementBot <android@element.io>
2025-03-10 11:20:17 +01:00
Jorge Martin Espinosa
717a15bea5 When an emoji is used as the 'initial' for an avatar, use the whole emoji (#4277)
* When an emoji is used as the 'initial' for an avatar, use the whole emoji

Use `BreakIterator.getCharacterInstance()` for a simpler solution.
2025-02-18 20:15:11 +01:00
Benoit Marty
468ef0f7fc Add ability to EnterpriseService to override theme colors 2025-02-06 15:10:14 +01:00
Benoit Marty
05fc76822a Apply dual licenses: AGPL + Element Commercial to file headers.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
2025-01-07 10:05:04 +01:00
Benoit Marty
2b016227e9 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
renovate[bot]
9b061ca798 Update android.gradle.plugin to v8.5.2 (#3004)
* Update android.gradle.plugin

* Fix release builds with AGP 8.5 by removing the minification config in each library module. I believe this is now centralised.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-08-09 15:04:10 +02:00
Benoit Marty
29b115dfdf Introduce ElementThemeApp to avoid code duplication. 2024-07-09 11:10:10 +02:00
Jorge Martin Espinosa
950e502ca6 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
Jorge Martin Espinosa
35702c04e9 Sign in with QR code (#2793)
* Add QR code login.
* Add FF to disable it in release mode.
* Force portrait orientation on the login flow.
* Create `NumberedList` UI components.
* Improve camera permission dialog.
* Make nodes in qrcode feature use `QrCodeLoginScope` instead of `AppScope`
* Bump SDK version.
* Fix maestro tests

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-05-31 14:38:27 +02:00
Jorge Martin Espinosa
a8b85fb4e6 Extract compound tokens and theming to compound-android library (#1888)
* Replace tokens & icons with the external Compound ones

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-27 10:30:07 +01:00
Benoit Marty
59c01b1764 Introduce AsyncView to limit duplicated code. 2023-11-06 10:09:41 +01:00
Benoit Marty
0a298433e0 Add TestTags to dialog buttons. 2023-11-02 11:55:56 +01:00
Jorge Martin Espinosa
400315e39a Make sure Snackbars are only displayed once (#1175)
* Make sure Snackbars are only displayed once

* Use a queue instead

* Fix docs

* Add tests for `SnackbarDispatcher`.
2023-08-30 10:43:23 +02:00
Benoit Marty
be6b8c825b Fix account provider change on nightly and release (#861)
* Use parallelMap (same code)

* Add proguard rules. Fixes #818

* Rename file proguard-rules.pro to consumer-rules.pro for coherency.

* Remove empty and non-referenced proguard files.
2023-07-13 14:46:57 +02:00
Jorge Martin Espinosa
ac0b799b6e Make Showkase browser work in the nightly versions (#829) 2023-07-10 10:10:22 +02:00
Jorge Martin Espinosa
02dc447624 [Compound] Integrate compound tokens (#586)
* Added tokens.

* Apply color to MaterialTheme, also add typography.

* Map colors to the right ones in the themes.

* Create and improve previews of some components

* More preview improvements

* Add `tertiary` and `onTertiary` colors, remove some unused ones.

* Fix usage of deleted color token

* Fix bug in Switch previews

* Create a separate `:libraries:theme` module to keep everything related to colors, typography and Compound in general.

* Fix `DatePickerPreview`

* Add missing Compound generated files by fixing their package name

* Move `ElementTheme` to the `:libraries:theme` module, make some variables internal.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-27 16:15:40 +00:00
Benoit Marty
4cb9843415 Now that the composer as been removed, we do not need element resource module anymore. 2023-06-27 13:34:55 +02:00
Jorge Martin Espinosa
25c32cb1e8 [Message actions] New UI for replies (#545)
* Add 'reply to' UI to the message composer.

* Move the `BlurHashAsyncImage` to `:libraries:designsystem` as it is now used in several modules.

*  Create reusable `AttachmentThumbnail` and associated data classes and enums, it's now added to `:libraries:matrixui`.

* Re-use `AttachmentThumbnail` in a `ActionListView` and `TextComposer`.

* Add 'inReplyTo' models and UI.

* Add min size for images

* Create a separate layout for media items with no reply to info. Also, separate `Timeline__Row` components from `TimelineView`, as it was getting too large.

* Added `EqualWidthColumn` to use inside message bubbles. Also fixed some modifiers for media items replying to other messages.

* Disable `inReplyToClicked`.

* Remove unused resources and libraries.

* Remove any traces of `BlurHashAsyncImage` in `:features:messages`, since it was moved to the design system.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-08 12:15:13 +02:00
Jorge Martin Espinosa
921fb55220 Group design components in Showkase for the Compound team (#375)
* Screenshot tests changes:

    - Group components for Showkase.
    - Set special Paparazzi config for scrolling screens using non null `Preview.heightDp`.
    - Add merged theme preview with `ElementThemedPreview` component.
2023-05-02 16:13:35 +00:00
Jorge Martin Espinosa
afd58f1634 Update Gradle to 8.1 and AGP to v8.0 (#329)
* Update AGP to 8.0.0.

* Set JAVA_HOME to JDK17

* Update lint version.

* Use right JDK for dependency analysis, replace deprecated env var.

* Upgrade to Gradle 8.1.

* Remove `@Supress(DSL_SCOPE_VIOLATION)` as it's no longer needed.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-17 08:49:52 +00:00
Florian Renaud
0a926bd05a Navigate from people view to configuration view 2023-04-13 15:44:44 +02:00
Jorge Martin Espinosa
4154a96b54 Revert "Update Gradle and AGP to v8.0 (#283)" (#295)
This reverts commit 4e085efcf4.
2023-04-04 14:44:01 +00:00
Jorge Martin Espinosa
4e085efcf4 Update Gradle and AGP to v8.0 (#283)
* Update dependency gradle to v8

* Handle upgrading Gradle to v8.0.2

* Update AGP to 8.0.0-RC01

* Try to set JAVA_HOME to JDK17

* Update lint version.

* Use right JDK for dependency analysis, replace deprecated env var

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-03 18:02:34 +02:00
ganfra
46e58fe64d enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") 2023-01-20 19:13:44 +01:00
ganfra
0a3697bfe8 Rename matrix modules 2023-01-20 17:27:47 +01:00
Benoit Marty
8c93aedbc1 Create dedicated modules for Strings and apply the plugin com.likethesalad.stem
Remove translations
2023-01-18 11:54:02 +01:00
Benoit Marty
243ee07bfc Fix warning 2022-12-23 15:19:24 +01:00
Benoit Marty
e2515020cf Add missing Copyright 2022-12-22 13:51:56 +01:00
Benoit Marty
0568ea7c28 Add rageskahe module 2022-12-21 15:33:39 +01:00
Benoit Marty
3e86fa48d8 Ktlint for all modules + run it 2022-12-12 17:48:07 +01:00
ganfra
ef0252aa94 Continue cleaning gradle files 2022-12-08 18:52:55 +01:00
Benoit Marty
024fb7146d Setup Showkase and add some Preview. WIP 2022-11-29 15:07:31 +01:00
ganfra
4551c9307e Refine UI 2022-11-03 12:57:49 +01:00
Benoit Marty
a2f0b1c541 Merge remote-tracking branch 'origin/develop' into develop 2022-10-28 17:27:40 +02:00
ganfra
83ac870c92 Refactor some modules + add dependency management (still WIP) 2022-10-27 19:24:57 +02:00