Commit graph

103 commits

Author SHA1 Message Date
Benoit Marty
c75eabbcb0 Enable detekt rules UnnecessaryParentheses and cleanup the code. 2023-07-20 18:08:08 +02:00
Benoit Marty
2928073e22 Enable detekt rules UnusedImports and cleanup the code. 2023-07-20 18:00:23 +02:00
Benoit Marty
08a7287e8b Remove detekt rules about ViewModels. 2023-07-20 17:53:29 +02:00
Benoit Marty
e918d6affd Enable detekt rules TopLevelPropertyNaming and cleanup the code. 2023-07-20 17:52:48 +02:00
Benoit Marty
a8ed8b7a59 Enable detekt rules VariableNaming and cleanup the code. 2023-07-20 17:50:23 +02:00
Benoit Marty
86756dbc09 Enable detekt rules UnusedParameter and UnusedPrivateProperty and cleanup the code. 2023-07-20 17:48:56 +02:00
Benoit Marty
24ece8c454 Enable detekt rule UnusedPrivateMember and cleanup the code. 2023-07-20 17:44:14 +02:00
Jorge Martin Espinosa
2488432805
Hide encryption history + FTUE flow (#839)
* First attempt at implementing encrypted history banner and removing old UTDs

* Get the right behavior in the timeline

* Implement the designs

* Extract post-processing logic, add tests

* Add encryption banner to timeline screenshots

* Create FTUE feature to handle welcome screen and analytics

* Move classes to their own packages, add tests for `DefaultFtueState`.

* Remove unnecessary private MutableStateFlow

* Move some FTUE related methods and classes back to the `impl` module

* Handle back press at each FTUE step

* Remove unneeded `TestScope` receiver for `createState` in tests.

* Use light & dark previews for the banner view.

* Move color customization from `TextStyle` to `Text` component.

* Rename `InfoList` design components, use them in `AnalyticsOptInView` too.

* Cleanup MatrixClient.

* Fix copy&paste error

Co-authored-by: Benoit Marty <benoit@matrix.org>

* Fix typo

* Fix Maestro tests

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2023-07-17 18:34:36 +02:00
Marco Romano
004b86b05d
MapLibre compose wrapper library (#877)
Heavily inspired from https://github.com/googlemaps/android-maps-compose It doesn't aim to be a full featured library like android-maps-compose, it's been stripped down to only handle our use cases.

Related to:
https://github.com/vector-im/element-meta/issues/1674
https://github.com/vector-im/element-meta/issues/1682
2023-07-17 16:22:29 +02:00
Benoit Marty
e2f3f2966b Remove ElementColors. We should use semantics and material colors now. 2023-07-10 17:33:42 +02:00
Benoit Marty
73fa6fc6be Remove the legacy script which imports Strigns from Element Android project. 2023-07-10 12:15:41 +02:00
Benoit Marty
77e2ff4953
Merge pull request #781 from vector-im/feature/bma/waitingListScreen
Implement waiting list screen (error IO_ELEMENT_X_WAIT_LIST)
2023-07-06 18:24:41 +02:00
Marco Romano
3449ea486a Optional day night preview annotation (#793)
Adds the `@DayNightPreviews` annotation that when used on a composable will:
- Display both a day mode and night mode preview in Android Studio.
- Produce both a day and night screenshot during screenshot testing.

The usage of this new annotation is optional, all the current previews continue to work without breakages.
New code can use, when appropriate, the new `@DayNightPreviews` annotation and replace the pattern using three `LightPreview/DarkPreview/ContentToPreview` functions with:

```
@DayNightPreviews
@Composable
fun MyScreenPreview(@PreviewParameter(MyStateProvider::class) state: MyState) {
    ElementPreview {
        MyScreen(
            state = state,
        )
    }
}
```
2023-07-06 12:35:54 +02:00
Benoit Marty
41e722cba4 Move string screen_waitlist_ to module login. 2023-07-05 15:53:28 +02:00
Marco Romano
ca695ca077 Revert "Auto generate dark mode previews and screenshots (#776)" (#784)
This reverts commit fd467c2451.
2023-07-05 15:47:53 +02:00
Marco Romano
fd467c2451 Auto generate dark mode previews and screenshots (#776)
With this change, composable previews and screenshots should be created with just:
```
@ElementPreviews
@Composable
fun MyViewPreview() {
    ElementPreview { 
        MyView()
    }
}
```

- Adds `@ElementPreviews` which is a shorthand for:
```
@Preview(name = "D")
@Preview(name = "N", uiMode = Configuration.UI_MODE_NIGHT_YES)
```
Should be used in connection with the now public `fun ElementPreview()` composable.

- Adds ElementPreviews to previewAnnotations in dangerfile
- Screenshots of night mode previews are now rendered with night mode
- Replaces `ElementPreviewLight` and `ElementThemedPreview` with `ElementPreview`
- Deprecates `ElementPreviewDark` which should be removed.
- Remaining usages of `ElementPreviewDark` are now ignored during screenshot tests
2023-07-05 13:58:24 +02:00
Benoit Marty
3c601c4210 Fix false positive. 2023-07-03 17:09:04 +02:00
Jorge Martin Espinosa
683b0b3594 Link Compound's TypographyTokens to ElementTheme. (#700)
* Link Compound's `TypographyTokens` to `ElementTheme`.

Also add some docs about when we should use each set of tokens.

* Renamed `LocalColors` to `LocalLegacyColors`.

Made both `LocalLegacyColors` and `LocalCompoundColors` internal. This means it will need to always be used through `ElementTheme.`

Also, removed any usages of `LocalColors.current` accross the project, they're now used through `ElementTheme.legacyColors`.
2023-06-28 08:53:20 +00:00
Benoit Marty
c33a08b602 Merge pull request #684 from vector-im/feature/bma/stringR
Quick PR to introduce `CommonStrings` type alias
2023-06-27 16:00:31 +02:00
Chris Smith
ca1df5829f Danger: remove "add screenshots" warning (#691)
We have screenshot tests that basically negate the need for this,
and when we're doing more complicated things we tend to use
videos anyway which aren't caught by this check.
2023-06-27 15:37:44 +02:00
Benoit Marty
931edb27ae Update check rule. 2023-06-27 09:55:14 +02:00
Jorge Martin Espinosa
9251cbf536 [Message Actions] Report messages (#642)
* Add report messages feature

* Try to improve how snackbars are delivered

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-23 10:44:47 +02:00
Benoit Marty
cd377edec6 Ensure files downloaded by localazy end with a new line. 2023-06-16 15:14:00 +02:00
Benoit Marty
8f8ac76d69 Prevent direct usage of io.element.android.libraries.ui.strings.R package. 2023-06-09 18:24:51 +02:00
Benoit Marty
b72cf1dcdd Update strings. 2023-06-09 16:34:22 +02:00
Benoit Marty
7001c7b9cc Account provider screen. - Crashing 2023-06-07 09:00:20 +02:00
Benoit Marty
67e85e0a36 Change account provider screen. 2023-06-07 09:00:20 +02:00
Yoan Pintas
f534ecda96 Init analytics modules (#350) 2023-06-05 13:11:34 +00:00
Chris Smith
5de90c3871 Danger: don't complain about reviewers (#509)
Now we have a CODEOWNERS file a reviewer is assigned automatically,
so there's no need for this.

It also misfires a bunch (maybe if there are no _pending_ reviewers
because they've already reviewed?), so removing it fixes that noise.
2023-06-01 14:02:28 +00:00
Jorge Martin Espinosa
b040953d7b Merge pull request #501 from vector-im/misc/jme/remove-duplicate-danger-reports
Remove duplicate issue reporting by Danger
2023-06-01 12:15:37 +02:00
Benoit Marty
ed18d2b343 Merge pull request #494 from vector-im/feature/bma/checkCode
Check code
2023-06-01 11:53:53 +02:00
Jorge Martín
9efbe52c0d Remove duplicate issue reporting by Danger 2023-06-01 11:04:52 +02:00
Benoit Marty
7f71b2d81d Search for forbidden patterns in Kotlin files. 2023-05-31 15:30:18 +02:00
Benoit Marty
4ecd7a2417 Fix test script 2023-05-30 15:59:58 +02:00
Benoit Marty
d2f969252d Oidc with CustomTab 2023-05-30 15:59:58 +02:00
renovate[bot]
29fcfcf68c Update dependency io.gitlab.arturbosch.detekt to v1.23.0 (#454)
* Update dependency io.gitlab.arturbosch.detekt to v1.23.0

* Disable new detekt rules for unused params

UnusedParameter and UnusedPrivateProperty are both potentially
useful but we currently break them a lot, for the most part
in places that haven't been fully implemented yet.

The unused params are reported as build warnings anyway, so
we're not missing much by disabling these for now.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Chris Smith <csmith@lunarian.uk>
2023-05-30 11:18:51 +00:00
Benoit Marty
0c95912c9c Group some state events in the timeline 2023-05-25 14:17:09 +02:00
Benoit Marty
9d66af834d Move RoomLastMessageFormatter and related class and resource to the new module eventformatter, in order to prepare rendering of state event in the timeline. 2023-05-25 14:15:35 +02:00
Chris Smith
6165e60e53 Make danger check view changes (#391)
Make danger check view changes

Add a check that if a file with @Preview or @LargeHeightPreview
in it is changed, then the corresponding build file includes
the showkase processor.

Also change the check that prompts about screenshots to use
the same @Preview logic instead of checking for "/layout" in
the path which doesn't work with compose.

Also add missing showkase processors
2023-05-05 08:24:12 +00:00
Chris Smith
e5912edfb5 Add Marco to dangerfile (#388) 2023-05-04 12:39:40 +00:00
Jorge Martin Espinosa
014c0f4186 [Media upload] Add media pickers to the Room screen and the composer (#380)
* Add media pickers to the Room screen and the composer.

* Fix exclude rules for translations
2023-05-04 11:51:03 +02:00
Chris Smith
88360802af Merge pull request #297 from csmith/102-show-invites-list
Feat: show invites list
2023-04-19 12:40:29 +01:00
Chris Smith
34cc352053 Invite list view
Adds a CTA on the room list to view invites if there are any.

The invite list presents each invite with accept/decline buttons
and (for room invites) the sender details.

Fixes #102
2023-04-19 10:20:48 +01:00
Benoit Marty
edb5695e24 Merge pull request #179 from vector-im/michaelk/danger_check_github_org
Attempt to check org/group membership before danger complains about signoff.
2023-04-18 10:49:46 +02:00
Benoit Marty
9d39d815ea Merge pull request #321 from vector-im/feature/bma/push3
Handle navigation on notification click
2023-04-14 10:08:42 +02:00
Florian Renaud
99bb29c81a Use string resources 2023-04-13 15:49:00 +02:00
Benoit Marty
1858eadd70 Fix typo 2023-04-13 15:47:23 +02:00
Benoit Marty
b0f14bfb15 Deeplink: handle notification click to open a room. 2023-04-13 15:35:01 +02:00
Benoit Marty
b396ce3e20 Add default value for noActivityFoundMessage 2023-04-12 09:41:22 +02:00
Benoit Marty
d003a9023b For usage of Python3
CI complain with:
 Traceback (most recent call last):
  File "./tools/localazy/generateLocalazyConfig.py", line 39, in <module>
    action = baseAction | {
TypeError: unsupported operand type(s) for |: 'dict' and 'dict'
2023-04-07 14:39:13 +02:00