Commit Graph

70 Commits

Author SHA1 Message Date
Benoit Marty 1c56d95eab Do not render notification if the user has dismiss the notification.
It should not change anything, just avoid doing useless notification rendering.
2023-09-15 15:42:55 +02:00
ganfra b382993cbb Sync Strings from Localazy 2023-09-14 14:38:49 +00:00
Marco Romano 7fdd83bf91 GRemove the @JvmField annotation whenever using WarmUpRule. 2023-09-13 15:19:26 +02:00
jonnyandrew 9e5b46200b Reduce test flakiness by warming up molecule tests (#1226) 2023-09-06 10:08:21 +00:00
Benoit Marty 5f7c1e9545 Move module features.analytics.test to services.analytics.test. FakeAnalyticsService was not implemented at the correct location. 2023-08-28 14:31:36 +02:00
Benoit Marty 7083abcf09 migrate object to data object (#1135) 2023-08-24 09:32:44 +02:00
ElementBot ef8a60b657 Sync Strings from Localazy (#1098)
Co-authored-by: bmarty <bmarty@users.noreply.github.com>
2023-08-21 08:34:19 +02:00
Jorge Martin Espinosa 0324719606 Upgrade compose-material3 to 1.2.0-alpha05 version (#1011)
Co-authored-by: ElementBot <benoitm+elementbot@element.io>

Also upgrade compileSdk to 34.
2023-08-17 14:20:54 +02:00
Jorge Martin Espinosa 9e1ff513e4 [Compound] Implement Snackbars based on designs (#1054)
* Make `InternalButton` internal instead of private so it can be customised.

Also, change the `ButtonColors.contentColor` for text buttons to `LocalContentColor.current` by default.

* Add temporary color for Snackbar action label

* Implement `Snackbar` component based on Compound

* Propagate changes to all other components

* Use right Preview annotation config

* Move `ButtonVisuals` to their own file

* Update screenshots

* Make previews internal

* Update screenshots

* Set a custom token for contentColor in AppBars

* Change 'Label' to 'Action' in the previews

* Add changelog

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-08-16 10:38:28 +00:00
ElementBot 38a25dc3e9 Sync Strings from Localazy (#1032)
Co-authored-by: Florian14 <Florian14@users.noreply.github.com>
2023-08-11 14:34:05 +00:00
ganfra fa51f6eaa7 Feature/fga/sync states (#1042)
* Change RoomSummaryDataSource to RoomListService to better reflects the rust api

* Better Sync management

* Sync: improve sync spinner rendering

* Sync: make test compiles

* Sync: add more test for sync spinner

* Sync: more clean-up

* Sync: pr review

---------

Co-authored-by: ganfra <francoisg@element.io>
2023-08-09 12:37:43 +00:00
Jorge Martin Espinosa 23982dde47 [Compound] Implement components (Button) (#1021)
* Create `CompoundButton`

* Some fixes

* Lint fixes

* Start replacing existing `Button` usages

* Replace button usages

* Remove previous Button composable

* Rename `CompoundButton` to `Button`

* Fix emphasized button being displayed as Text

* Fix cancel button in `WaitListView`

* Update screenshots

* Add shorthand functions for `OutlinedButton` and `TextButton`

* Add changelog

* Fix wrong size used for emphasized button in dialog

* Create a private `ButtonInternal` implementation with the shared logic.

- Make `ButtonStyle` private.
- Rename `title` to `text`.
- Rename `buttonStyle` and `buttonSize` to just `style` and `size`.

* Fix several warnings and lint issues.

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-08-08 16:11:37 +00:00
Benoit Marty 822bb82347 Merge pull request #967 from vector-im/feature/bma/detektConfig
Update detekt config.
2023-07-28 16:47:26 +02:00
Benoit Marty 8f4b664158 Sync strings. 2023-07-27 12:16:04 +02:00
Benoit Marty 0e219200b0 Enable detekt rules OptionalUnit and fix existing issues. 2023-07-26 11:43:48 +02:00
renovate[bot] 156bf08b7a Update dependency app.cash.molecule:molecule-runtime to v1 (#925)
* Update dependency app.cash.molecule:molecule-runtime to v1

* Replace `RecompositionClock` with `RecompositionMode`

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-07-20 07:36:19 +02:00
ganfra dfd7f9cc5b Fix tests 2023-07-18 22:27:44 +02:00
ganfra 614f97543e Update rust sdk to 0.1.34 2023-07-18 20:12:51 +02:00
ElementBot e75438a8e3 Sync Strings (#882)
* Sync Strings from Localazy

* Update screenshots

---------

Co-authored-by: bmarty <bmarty@users.noreply.github.com>
2023-07-17 10:22:15 +02:00
Benoit Marty 253e8c1c2b Move TypographyAliases next to ColorAliases 2023-07-11 11:29:56 +02:00
Benoit Marty 3e03ca4a5e Create alias for typography (more semantic name). aliasButtonText 2023-07-11 10:29:06 +02:00
Benoit Marty b7b6e0323d Create alias for typography (more semantic name). aliasScreenTitle 2023-07-11 10:29:06 +02:00
Benoit Marty 92bc490fa3 Remove fontWeight parameter. Must use style only. 2023-07-10 17:33:42 +02:00
Benoit Marty ff5cecb5cf TextStyle again. 2023-07-10 17:33:42 +02:00
Benoit Marty 5846af2aa4 Remove ElementTextStyles. Only ElementTheme.typography.* styles must be used now. 2023-07-10 17:33:42 +02:00
Jorge Martin Espinosa a0c1f2c18a Display room invitation notification (#735)
* Notifications: Add some extra mappings so we keep the original contents and can pass it later to an UI layer

* Fix notifications not appearing for a room if the app was on that room when it went to background.

* Modernize how we create spannable strings for notifications, remove unneeded dependency

* Remove actions from invite notifications temporarily

* Add `NotificationDrawerManager` interface to be able to clear membership notifications when accepting or rejecting a room invite

* Fix tests

* Add comment to clarify some weird behaviours

* Address review comments

* Set circle shape for `largeBitmap` in message notifications

* Fix no avatar in DM rooms

* Fix rebase issues

* Add invite list pending intent:

- Refactor pending intents.
- Make `DeepLinkData` a sealed interface.
- Fix and add tests.

* Rename `navigate__` functions to `attach__`

* Add an extra test case for the `InviteList` deep link

* Address most review comments.

* Fix rebase issue

* Add fallback notification type, allow dismissing invite notifications.

Fallback notifications have a different underlying type and can be dismissed at will.

* Fix tests
2023-07-10 14:34:58 +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
bmarty 6e54ed7b77 Sync Strings from Localazy 2023-07-03 00:11:17 +00:00
Benoit Marty 8cb0e0808c Improve API of UnreadIndicatorAtom 2023-06-29 18:17:37 +02:00
Benoit Marty 349d9fbc0f Rename color alias 2023-06-29 18:17:37 +02:00
Benoit Marty 85d3fef5e7 Unread indicator color changed to iconAccentTertiary 2023-06-29 18:17:37 +02:00
ganfra 8e5c2a749a Merge branch 'develop' into feature/fga/room_list_api 2023-06-28 15:14:06 +02:00
Benoit Marty 1cd92165f4 Fix test 2023-06-27 19:49:54 +02:00
Benoit Marty 0c7832534c Cleanup 2023-06-27 19:49:54 +02:00
Benoit Marty b6cdafe02d Fix test compilation issue. 2023-06-27 19:43:03 +02:00
Benoit Marty fb09991793 Create UnreadIndicatorAtom with preview. 2023-06-27 19:31:44 +02:00
Benoit Marty 92bd16832d Rework AvatarSize.
Remove default value for AvatarSize, it has to be explicitely provided.
2023-06-27 19:23:37 +02:00
Yoan Pintas 710c3b279a Add JoinedRoom posthog event (#687) 2023-06-27 16:32: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
ganfra 812880a148 RoomList: fix tests and sample 2023-06-27 14:06:58 +02:00
Marco Romano 316d57d1b6 Async API improvements "v2" (#672)
* Async API improvements "v2"

**NB: This PR actually changes only 3 files in `libraries/architecture/`. All the other changes are automated refactors to fix the calling code.**

This is a proposal for improvements to our `Async` type as discussed in: https://github.com/vector-im/element-x-android/pull/598/files#r1230664392 and in other chats.

Please bear in mind it is just a proposal, I'd love to hear your feedback about it, especially when it comes to naming: I've tried to make parameter and function names use a terminology similar to what we find in the Kotlin stdlib and its `Result` type.

I'm inclined to like more the non-extension flavours of the new `run*` APIs, though I'd also like your feedback about what API shape you prefer.

### Summary of the changes:
#### Functional
- Adds `exceptionOrNull()` API to complement the existing `dataOrNull()` API.
- Adds `isFailure()`, `isLoading()`, `isSuccess()` and `isUninitialized()` courtesy APIs.
- Renames `executeResult()` to `runUpdatingState()`:
	- Becomes the base API to which all the other similarly named APIs call into.
	- Makes it inline.
	- Adds contract.
	- Passes over any `prevData` to newre Async states.
	- Passes through the `block`s return value.
	- Adds unit tests.
- Renames `execute` to `runCatchingUpdatingState()` and makes it just call into `runUpdatingState()`
- Adds extension function overloads to the `run*` functions to accept `MutableState` as receiver

#### Cosmetics
- Reorders classes and methods in alphabetic order.
- Reorder parameter names to mimic conventions in Kotlin stdlib.
- Adds docstrings where useful.

* Use `fold()`

* rename pop to popFirst

* Add docstrings

* Please Detekt

* Rename exception to error.

* Please detekt

* Update existing usages.
2023-06-27 13:37:23 +02:00
ganfra 34f5e0597a Merge branch 'develop' into feature/fga/room_list_api 2023-06-27 10:47:50 +02:00
Benoit Marty 798da50454 Use CommonStrings everywhere 2023-06-27 09:45:00 +02:00
ganfra fa48c29486 RoomList: more rework on RoomSummaryDataSource 2023-06-26 18:02:53 +02:00
bmarty 874739ece9 Sync Strings from Localazy 2023-06-26 00:10:53 +00:00
ganfra ef8dc6ea7a RoomList: change a bit the api of RoomSummaryDataSource 2023-06-22 12:34:07 +02:00
github-actions[bot] fe5524bae4 Sync Strings (#630)
* Sync Strings from Localazy

* Update strings, remove broken German translation

* Update screenshots

---------

Co-authored-by: bmarty <bmarty@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-19 11:18:01 +00:00
Benoit Marty 9b4b9e9140 Introduce simulateLongTask to ensure that the Presenter State Loading is visible.
Also do some cleanup on the tests.
2023-06-15 10:57:05 +02:00
Chris Smith 3a7e310bd3 Invites: increase vertical padding to 16dp 2023-06-06 16:44:18 +01:00