1
0
mirror of https://github.com/element-hq/element-x-android.git synced 2026-10-28 07:59:40 +03:00

43 Commits

Author SHA1 Message Date
bmarty
8100fa6555 Sync Strings from Localazy 2026-10-12 00:37:35 +00:00
Benoit Marty
954eb731e7 Remove unused Gradle dependencies
Remove dependencies flagged as unused by the Dependency Analysis Gradle Plugin
(`./gradlew buildHealth`) and explicitly declared in module build files.

Removals were skipped when the dependency provides transitively something the
module (or a consumer of an `api` dependency) uses directly, as well as for
runtime-only dependencies (element-call-embedded, sentry-android,
rustls-platform-verifier). Dependencies added by the convention plugin helpers
(composeDependencies, testCommonDependencies) are left untouched.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-02 15:47:48 +02:00
Benoit Marty
4c4389b29a Remove unnecessary Material3 experimental opt-ins
Many Material3 APIs are now stable, so the `ExperimentalMaterial3Api` and `ExperimentalMaterial3ExpressiveApi`
opt-ins are not required anymore at those places. Also remove the propagating `@ExperimentalMaterial3Api`
marker from `TopAppBarScrollBehaviorLayout`, which does not use experimental API anymore.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-29 18:45:30 +02:00
Benoit Marty
3e861cc646 Do not report detekt LargeClass issues on test classes (#7713)
detekt's default configuration excludes test source sets from
`TooManyFunctions` and `StringLiteralDuplication`, but not from
`LargeClass`, so large test classes were reported and had to carry a
`@Suppress("LargeClass")` annotation.

Add the same kind of exclusion to the `LargeClass` rule in
`tools/detekt/detekt.yml` and remove the 24 now-redundant suppressions
from test files. The two remaining suppressions are in production code,
where the rule still applies.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-15 13:56:33 +02:00
hayaksi1
03c330ee07 Rename PreviewParameterProvider subclasses to the PreviewParam suffix
The `Provider` suffix reads as a dependency provider rather than as preview
data, and it collides with the real providers in the codebase — `StringProvider`,
`PickerProvider`, the login feature's `AccountProvider` — so the name says
nothing about which of the two a class is. `PreviewParam` says it.

195 classes are renamed, along with the 185 files named after them, the konsist
rule that enforces the convention, the presentation-class file templates and the
onboarding documentation.

This cannot be split. `Konsist.scopeFromProduction()` scans the whole project, so
flipping the assertion before every class has moved leaves the rule red, and a
rule that accepted either suffix during a transition would be exactly the kind of
compatibility layer this convention change is meant to remove.

Two judgement calls in the rule itself. The `name.endsWith("PreviewProvider")`
exclusion is dropped: its only job was to reject a redundant `Preview` before
`Provider`, and the new suffix already contains it; no class currently ends with
`PreviewProvider`, so removing it changes nothing today. And
`EditableAvatarViewUriProvider` is renamed rather than deleted from the exclusion
list even though no such class exists in this repository, since it presumably
comes from the modules overlaid for the enterprise build.

Nothing keyed off the old suffix: no snapshot filename contains a provider class
name, so no Paparazzi image changes, and the Kover variants match on `*Presenter`,
`*State` and `*ViewKt`, so coverage bounds are unaffected.
2026-08-17 17:40:33 +03:00
Benoit Marty
a740423343 Sync strings. 2026-08-17 11:34:52 +02:00
Benoit Marty
c430877d87 Ensure Robolectric test are run using API 36 until the library support API 37. 2026-06-18 12:18:32 +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
ElementBot
0c657c258a Sync Strings from Localazy (#6761)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-05-11 09:37:59 +02:00
bmarty
0d2f71643a Sync Strings from Localazy 2026-05-04 00:54:27 +00:00
Benoit Marty
11b9efa2c9 Migrate to v2 testing APIs 2026-04-30 16:04:07 +02:00
ElementBot
9a2ad3928a Merge pull request #6658 from element-hq/sync-localazy
Sync Strings
2026-04-27 09:17:54 +02:00
bmarty
23c1112dcf Sync Strings from Localazy 2026-04-13 00:48:40 +00:00
Benoit Marty
78d500ba55 Edit room detail: increase avatar size. #6458 2026-03-24 16:56:34 +01:00
Benoit Marty
8c5ea9694e Edit room/space detail: change avatar size to 64 and adapt edit icon ratio. See #6364 2026-03-24 12:53:31 +01:00
bmarty
299d5a9394 Sync Strings from Localazy 2026-03-16 00:42:32 +00:00
ElementBot
73961b4940 Sync Strings (#6302)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-03-09 10:38:07 +01:00
ElementBot
cf479a8df0 Sync Strings from Localazy (#6269)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-03-02 14:54:50 +01:00
bmarty
2fefc0691b Sync Strings from Localazy 2026-02-02 00:39:17 +00:00
ElementBot
3ab67a5e15 Sync Strings from Localazy (#6085)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-01-26 12:06:38 +01:00
ganfra
11f6def9ca Fix RoomDetailsEditView avatar picker for spaces
- Use correct AvatarType based on whether editing a space or room
- Add roomRawName to remember key to update avatar when name changes
- Respect canChangeAvatar state to disable picker when not permitted
2026-01-23 12:12:12 +01:00
bmarty
45ed8619dd Sync Strings from Localazy 2026-01-19 00:35:31 +00:00
Jorge Martin Espinosa
6d1ed5967b Create spaces (#5982)
* Allow creating a space with `CreateRoomParameters`

* Add 'Create space' menu item in the spaces home screen. Also, imports new strings related to spaces.

* Link the 'Create space' button with the screen to create the space

* Unify room access and visibility for `ConfigureRoom`, use the updated design

* Fix `EditRoomDetails` avatar size (68dp)

* Replace `EditableAvatarView` and `UnsavedAvatar` copmonents with `AvatarPickerView`

* `AvatarDataFetcherFactory`: Make sure we use a fallback image fetcher when the URL is not an MXC one (a local one, i.e.). This removes the previous need for a separate `UnsavedAvatarView`

* Use `AvatarPickerView` in all the screens where `EditableAvatarView` was used

* Improve naming and previews

* Update strings, remove unused ones for `RoomAccessItem`

* Make `isSpace` part of the `CreateRoomConfig`

* Ensure the content fits in the screenshots for `AvatarPickerSizesPreview`

* Add `AvatarDataFetcherFactoryTest`

* Add new feature flag for creating spaces

* Fix ripple being too large for the `Pick` state

* Tweak margins and section titles a bit

* Add preview for `HomeTopBar` with the spaces case

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-01-13 14:35:49 +01:00
ganfra
9cee5541f7 Merge pull request #5946 from element-hq/sync-localazy
Sync Strings
2025-12-23 12:01:53 +01:00
bmarty
96dc67162c Sync Strings from Localazy 2025-12-23 11:23:46 +01:00
renovate[bot]
00dcbf4a7f fix(deps): update kotlin to 2.3.0 (#5917)
* fix(deps): update kotlin to 2.3.0

* Cleanup - remove `datetime` compat version

* Fix several lint issues caused by the Kotlin compiler inference working better (checks in nullables, vars, etc.)

* Fix tests by removing mock in `File.readBytes`, it seems like it's no longer allowed. Using a tmp file works well enough.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-12-22 14:28:15 +01:00
Jorge Martín
a8ffe46d99 Transform MessageEventType and StateEventType into sealed interfaces to handle the Custom variant, also add missing variants 2025-12-22 11:19:37 +01:00
ganfra
c734d5c485 Merge branch 'develop' into feature/fga/space_settings_iteration 2025-12-16 11:02:29 +01:00
ElementBot
ad881c303a Sync Strings from Localazy (#5904)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-12-15 23:51:19 +01:00
ganfra
ce079e84f5 Merge branch 'develop' into feature/fga/space_settings_iteration 2025-12-15 16:06:06 +01:00
ganfra
d26f21a53b misc(power level) : update tests following api change 2025-12-12 11:52:24 +01:00
ganfra
d654280e30 misc(power level) : use new api 2025-12-12 11:26:54 +01:00
ganfra
47708dc53b fix(editable avatar) : disable avatar editing if no permission 2025-12-10 14:30:09 +01:00
ganfra
5d2008cfe9 misc(power level) : clean up code 2025-12-10 11:26:07 +01:00
Benoit Marty
8a7e71b49e PermissionsEvents -> PermissionsEvent 2025-12-10 10:50:10 +01:00
ganfra
48971d4aee misc(power level) : update tests following api change 2025-12-09 22:38:30 +01:00
ganfra
0e6f339a6c misc(power level) : use new api 2025-12-08 22:23:07 +01:00
bmarty
3935a3b6ce Sync Strings from Localazy 2025-12-08 00:34:18 +00:00
Benoit Marty
82a32371cc RoomDetailsEditEvents -> RoomDetailsEditEvent 2025-12-03 18:05:12 +01:00
Benoit Marty
4b0fb341b6 Fix tests 2025-12-03 18:05:12 +01:00
Benoit Marty
63f7c9a4fd Iterate on Save change dialog. 2025-12-03 18:04:53 +01:00
ganfra
cf4d4505bd change(room details edit): adjust the ui 2025-12-03 15:10:59 +01:00
ganfra
c08de1f904 change(room details edit): move to his own module 2025-12-03 14:30:05 +01:00