Commit Graph

395 Commits

Author SHA1 Message Date
Jorge Martin Espinosa c0bb68c872 New timeline event renderer: add new modules (#7721)
* Added HTML parser to abstract tree nodes

* Add HTML renderer using `HtmlMessageContent`

* Add custom rendering for inline code nodes besides the monospace font

* Support `<s>` and `<strike>` too

* Add `ContentAvoidingLayoutData` support

* Improve the last block node behaviour and its integration with `ContentAvoidingLayout`

* Move `ContentAvoidingLayout` to `:libraries:ui-common` so it can be shared

* Add missing `:libraries:htmlrenderer:impl` entry in `DependencyHandlerScope.allLibrariesImpl`

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-17 19:08:32 +02:00
ganfra 24a257bd38 Setting version for the release 26.09.2 2026-09-10 21:51:49 +02:00
Benoit Marty 1ee156f480 Remove Showkase from the project. 2026-09-09 15:56:25 +02:00
jmartinesp dfccde93c6 Sync Strings from Localazy 2026-09-02 10:07:17 +00:00
Jorge Martín 7c42f22b7c Setting version for the release 26.09.1 2026-09-01 13:57:32 +02:00
Benoit Marty 2f3d197060 Setting version for the release 26.08.4 2026-08-27 14:20:36 +02:00
Benoit Marty 94259962a0 Setting version for the release 26.08.3 2026-08-26 13:56:12 +02:00
Benoit Marty b774e6a280 Setting version for the release 26.08.2 2026-08-20 10:12:25 +02:00
Benoit Marty 7adbd3941a Make the PUSHER_APP_ID configurable at build time. 2026-08-19 14:20:31 +02:00
Benoit Marty 07983221e6 Move google_app_id to resource files. 2026-08-18 16:25:57 +02:00
Benoit Marty 815b2a895e Reorder items and specify type explicitly so that diff is minimal when comparing to a generated file for a variant build. 2026-08-18 11:18:18 +02:00
Benoit Marty de05495d51 Setting version for the release 26.08.1 2026-08-12 12:34:30 +02:00
Jorge Martin Espinosa cb3b9e7946 Add default OAUTH_CLIENT_URL_PATH alternative (#7385)
* Add default `OAUTH_CLIENT_URL_PATH` alternative

Previously this was `null`, but we want to use `apps/android` instead to identify Element X Android. Element Pro will use a different value, and other custom apps based on EP will use `null` or their own custom value, if they provided one

* Suppress lint check so the pro app can be built
2026-08-10 16:16:14 +02:00
Jorge Martin Espinosa 52d146a59d CI: split unit tests, screenshots and coverage in tests.yml (#7296)
* Check if splitting the steps for testing and generating the reports improves performance and keeps the coverage stats

* Exclude Konsist tests and include `:app` ones

* Remove the extra dependency of `koverVerifyAll` on `:app:koverVerify{variant}`
2026-07-30 11:51:18 +02:00
ganfra ae74546ee4 Setting version for the release 26.08.0 2026-07-29 17:44:12 +02:00
Jorge Martin Espinosa 49692794f9 Allow adding a path suffix to the OAuth client URI (#7286)
* Allow adding a path suffix to the OAuth client URI
2026-07-29 09:29:44 +00:00
ganfra e492f06386 Migrate libraries/recentemojis into libraries/emoji 2026-07-22 15:48:54 +02:00
Jorge Martín b69f299adb Setting version for the release 26.07.1 2026-07-15 16:27:32 +02:00
Benoit Marty 7638c2704d Setting version for the release 26.07.0 2026-07-01 10:06:50 +02:00
ganfra bb5f3bef46 Setting version for the release 26.06.4 2026-06-18 20:34:56 +02:00
Benoit Marty 51c3ee0eae Target API 37 2026-06-18 12:18:31 +02:00
Benoit Marty e54d93cd50 Compile with SDK 37 2026-06-18 12:18:31 +02:00
ganfra f46e05be67 Setting version for the release 26.06.3 2026-06-17 11:07:37 +02:00
renovate[bot] f0a6cba6db fix(deps): update android.gradle.plugin to v9 (major) (#6021)
* Update android.gradle.plugin to v9

* Separate extensions between app and library ones

`CommonExtension` has been split and its properties are now duplicated in `ApplicationExtension` and `LibraryExtension` without a shared interface, so we now need to duplicate the helper extension functions

* Bump Gradle wrapper to `9.3.1`

* Remove `kotlin-android` plugin usage: it's no longer needed

* Enable `resValues` build feature for the modules that have resources in custom variants like gplay, debug, etc.

Otherwise this now fails saying the resources are there but the feature is disabled

* Remove `retrofit` dependency from `:features:call:impl`

It wasn't in use and the build was failing

* Update kotlin to v2.4.0

* Update plugin paparazzi to v2.0.0-alpha05

* Update gradle wrapper to 9.5.1

./gradlew wrapper --gradle-version 9.5.1 --gradle-distribution-sha256-sum bafc141b619ad6350fd975fc903156dd5c151998cc8b058e8c1044ab5f7b031f

* Update com.android.tools.build:gradle to 9.2.1

* Update plugin sonarqube to v7.3.1.8318

* Kotlin 2.4.0

* Context parameters are enabled by default in Kotlin 2.4.0

* Fix code issue

* Fix record screenshot issue

* Workaround for https://github.com/cashapp/paparazzi/issues/2342

* Workaround for another issue with Paparazzi

* Remove unused import

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: Benoit Marty <benoitm@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: ElementBot <android@element.io>
2026-06-11 09:51:47 +02:00
Jorge Martín 937b2a5e3a Bump version to v26.06.2 2026-06-10 12:29:13 +02:00
Jorge Martín 092448d584 Setting version for the release 26.06.1 2026-06-04 16:13:28 +02:00
Jorge Martín 371e693053 Setting version for the release 26.06.0 2026-06-04 11:06:42 +02:00
Jorge Martin Espinosa dd48582313 Remove DI-generated code from Kover reports (#6834)
* Remove DI-generated code from Kover reports

* Add more regexes for DI-generated code to exclude
2026-05-26 19:27:35 +02:00
ElementBot 0aaa80cbdc Sync Strings from Localazy (#6856)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-05-26 08:05:07 +00:00
Benoit Marty f373c73e60 Setting version for the release 26.05.2 2026-05-19 14:43:49 +02:00
Jorge Martín 7e6d3c60d2 Setting version for the release 26.05.1 2026-05-13 12:15:26 +02:00
ganfra 0cb1a9fb14 Setting version for the release 26.05.0 2026-05-07 16:01:34 +02:00
Benoit Marty 29e0a08dd9 Add a CacheStore module. 2026-04-29 22:29:41 +02:00
Jorge Martin Espinosa 367995303d Rename OIDC components and variables to OAuth (#6686)
* Rename `OIDC` components and variables to `OAuth`. This matches the new behavior in the SDK.
2026-04-29 11:41:47 +02:00
Jorge Martín 61c68f8d4a Setting version for the release 26.04.4 2026-04-21 17:37:15 +02:00
Jorge Martin Espinosa a341a1a59e Replace rustls-platform-verifier-android.aar with single class (#6610)
* Replace the `rustls-platform-verifier-android.aar` with the actual source code

* Exclude the platform-verifier code from linters

* Add manual update instructions

* Exclude from Kover too
2026-04-17 14:48:50 +02:00
Benoit Marty 228f188b5a Setting version for the release 26.04.3 2026-04-16 16:39:44 +02:00
Benoit Marty 4cc9c77264 Use @TestParameter instead of doing the work manually. 2026-04-15 08:32:26 +02:00
bmarty 23c1112dcf Sync Strings from Localazy 2026-04-13 00:48:40 +00:00
Benoit Marty 503449f737 Setting version for the release 26.04.2 2026-04-07 14:28:05 +02:00
ganfra c96544be94 Setting version for the release 26.04.1 2026-04-03 18:22:35 +02:00
Benoit Marty 4ad495d36c Add support for slash commands (under Feature Flag) (#6482)
* Add support for slash commands

* Update screenshots

* Rename module `slash` to `slashcommands`

* Rename `SlashCommand` to `SlashCommandService`

* Introduce MsgType in order to send text message with a different msgtype value.

* Format file and add parameter names, add default values and cleanup

* Add isSupported parameter to filter out unsupported yet commands.

* Slash commands: disable suggestions if the feature is disabled.

* Fix sending shrug command.

* Add missing test on SuggestionsProcessor

* Add tests on MessageComposerPresenter about slash command.

* Fix import ordering

* Add missing tests on CommandExecutor

* Add missing tests in MarkdownTextEditorStateTest

* Slash commands: Improve code when sending message with prefix.

* Slash commands: Add support for /unflip

---------

Co-authored-by: ElementBot <android@element.io>
2026-04-02 16:15:32 +02:00
Jorge Martín e2d418beb8 Setting version for the release 26.04.0 2026-04-01 13:37:57 +02:00
ganfra 64ea57a432 Setting version for the release 26.03.4 2026-03-24 14:01:25 +01:00
Jorge Martin Espinosa 3a7faa8b76 Fix TransactionTooLargeExceptions caused by Appyx (#6410)
* Fix `TransactionTooLargeExceptions` caused by Appyx

After a long debugging session, we discovered the code Appyx uses to clear the saved state of nodes that have been removed is not working because of a race condition, causing this saved state to grow indefinitely.

To fix it, we need to wait until the node has been disposed, which will call `SaveableStateHolder.removeState` once, removing the associated `SaveableStateRegistry`, and *then* call `removeState` again when we detect the node has been removed from the navigation graph.

Since these classes and APIs are private in Appyx, we had to copy and modify and use these copies.

* Remove ktlint checks on `SafeChildrenTransitionScope.kt`

* Don't count the new code for coverage
2026-03-23 18:07:00 +01:00
Jorge Martin Espinosa e79d9b627e Improve Kover setup by using only convention plugins (#6213)
* Improve Kover setup using convention plugins.
* Add a new JVM library convention plugin with Kover support
2026-03-16 14:41:07 +00:00
Benoit Marty 46f0455337 Setting version for the release 26.03.3 2026-03-10 16:22:55 +01:00
Jorge Martín ae8da22729 Setting version for the release 26.03.2 2026-03-06 11:25:44 +01:00
Jorge Martín c546ce7f81 Setting version for the release 26.03.0 2026-02-24 17:04:32 +01:00
Jorge Martin Espinosa 3a565e6065 Remove explicit dependency androix.compose.material (#6199)
* Remove explicit dependency for `androix.compose.material` for compose library modules

* Ensure `Button` uses the `material3.Icon` instead of the `material.Icon`

* Remove entry in `libs.versions.toml`
2026-02-13 15:19:31 +01:00