Commit graph

178 commits

Author SHA1 Message Date
Benoit Marty
6aa5239189 Enable detekt rule PreviewPublic and fix existing issues. 2023-07-26 10:08:39 +02:00
Jorge Martin Espinosa
9247cd765a
Fix: make sure we ignore notifications for open rooms (#867)
* Make sure we ignore notifications for open rooms
- Listen to process lifecycle changes in `AppForegroundStateService`. Use initializers to reliable create it.
- Merge `AppNavigationState` with `AppForegroundState`. Renamed the previous `AppNavigationState` to `NavigationState`, created a new `AppNavigationState` which contains both the navigation state and the foreground state.
2023-07-17 17:02:06 +02:00
Benoit Marty
47b684f724 Let RootFlowNode manage MatrixClientsHolder save and restoration. 2023-07-12 12:25:04 +02:00
ganfra
d77ff60f03 Coroutine: remove diffUpdateDispatcher, not used anymore 2023-07-11 11:40:55 +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
ganfra
d71a025f9d Room : rename the flows 2023-07-06 12:00:45 +02:00
ganfra
43b4351732 Room : small refactoring 2023-07-05 16:10:47 +02:00
Benoit Marty
e81d9c1ac9 Add application version to the setting screen. 2023-07-03 17:09:04 +02:00
Benoit Marty
ea620fc200 Use modifier. 2023-07-03 17:09:04 +02:00
Benoit Marty
26e46dc6ed Splash theme: remove icon 2023-06-29 18:17:37 +02:00
Benoit Marty
c53933ccea Add compose preview for launcher icons (mainly for tests) 2023-06-29 15:21:28 +02:00
Benoit Marty
02960fc4fb Update application icon. 2023-06-29 15:03:59 +02:00
Jorge Martin Espinosa
b66801a022 Fix crash when opening a URL with associated text (#699)
* Fix crash when opening a URL with associated text

* Enforce using an `Activity` instead of a `Context` in `SafeUriHandler`.
2023-06-28 09:19:39 +00:00
Jorge Martin Espinosa
a16335b4b7 [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
659b9d3d9c 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
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
ganfra
a52db06546 Node: fix compilation after changes 2023-06-12 11:39:28 +02:00
ganfra
3ba219c975 Dagger: makes sure to not remove an active component when navigating 2023-06-09 23:04:33 +02:00
ganfra
ba44ff32c1 Fix crash on MainActivity when restored 2023-06-09 22:44:19 +02:00
Jorge Martin Espinosa
9fa261e393 [Message Actions] Add emoji reactions option (#568)
* Add logic to send message reactions

* Add emoji library, create EmojiPicker component

* Fix bottom sheet behaviors

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-09 16:56:40 +02:00
ganfra
fa63ed1faf MediaViewer: improve actions (save on disk and share) 2023-06-02 20:13:17 +02:00
Benoit Marty
47af53049e Avoid Custom Chrome tab to appear as recent activity. 2023-05-30 15:59:58 +02:00
Benoit Marty
d2f969252d Oidc with CustomTab 2023-05-30 15:59:58 +02:00
Jorge Martin Espinosa
5eaa40a14b [Media upload] Media pre-processing (#403)
* Create `mediaupload` module for media pre-processing.

* Split `mediapicker` and `mediaupload` modules.
2023-05-10 10:06:56 +02:00
ganfra
5cd8e7c6c0 Merge branch 'develop' into feature/fga/some_room_related_fixes 2023-04-28 15:58:54 +02:00
Jorge Martin Espinosa
eeca1c9ee3 Add PickerLauncher wrapper for media/file pickers. (#361)
* Add `PickerLauncher` wrapper for media/file pickers.

* Add FileProvider path, handle Camera picker and add NoOp implementation to fix tests.

* Move media pickers to their own module.

* Add missing media pickers

* Add feature flag and some extra tests
2023-04-28 10:52:34 +02:00
ganfra
1ab96e2f34 Some clean up 2023-04-25 11:17:05 +02:00
ganfra
638b45930e Merge pull request #334 from vector-im/feature/fga/feature_flag
Feature/fga/feature flag
2023-04-18 15:24:04 +02:00
ganfra
df29b1dd8e [BuildMeta] introduce BuildType and remove Network related code from BuildMeta 2023-04-18 11:58:24 +02:00
Benoit Marty
7e28794a3b Add some log to the Activity, to help debugging from Rageshake. 2023-04-18 10:17:59 +02:00
Benoit Marty
b0f14bfb15 Deeplink: handle notification click to open a room. 2023-04-13 15:35:01 +02:00
Benoit Marty
1faedca69d Add some tests (mainly imported from EA). Also change type from String to SessionId, RoomId, etc. 2023-04-05 16:59:17 +02:00
Benoit Marty
7e7e798acf Making progress on notification for multi account. 2023-04-05 16:59:17 +02:00
Benoit Marty
8d5ecfd358 Fix multi Activity wen opening app from notification. 2023-04-05 16:59:17 +02:00
Benoit Marty
e6ac547501 Show basic notification when push is recieve 2023-04-05 16:32:28 +02:00
Benoit Marty
275fa03de3 Import some stuff about Push and notification from Element Android - WIP 2023-04-05 16:18:44 +02:00
Jorge Martin Espinosa
3aea24380a [Room Details] Leave room (#296)
* Add leave room functionality to the Room Details screen

* Add snackbar message throught `SnackbarDistpacher`
2023-04-05 15:36:41 +02:00
Benoit Marty
a68b3f80eb Add :libraries:network module 2023-03-16 15:31:57 +01:00
Benoit Marty
32d9a183ae Add BuildMeta to the project 2023-03-16 14:21:12 +01:00
ganfra
bc9f3b69cc [Architecture] split all feature modules to api/impl 2023-03-08 16:13:45 +01:00
ganfra
84bfb14bd9 [Architecture] introduce nodeBuilder concept 2023-03-07 20:31:16 +01:00
ganfra
49f624afd3 Fix warning 2023-03-07 12:14:15 +01:00
ganfra
7f3679a15e Merge branch 'develop' into feature/fga/improve_node_architecture 2023-03-07 12:10:20 +01:00
ganfra
a13cba9571 [Architecture] : create appnav module so we can use only api feature modules 2023-03-06 20:30:48 +01:00
Jorge Martin Espinosa
c87c0ea28c Refine sign in flow to match designs and iOS flow (#100)
* Fix dark theme

* First attempt at replicating iOS' UI & flows.

* Try to fix Maestro tests

* Add error dialogs and tests

* Remove unused modifiers

* Try to fix detekt issues

* Tidy up maestro login flow a bit

* Add `CompoundColorPalette` with some needed colors

* Fixes to designs

* Fix detekt issues

* More design fixes

* Some other minor design fixes

* Add changelog

* Minor tweaks.

* Remove legacy dark material theme as it's no longer needed.

* Move sliding sync 'learn more' url to constants object

* Remove unused focusManager

* Change how the displayed homeserver works

* Keep user input as homeserver if it's valid

* Remove `CompoundColorPalette`, try to fix issue when toggling dark mode.

* Add `@Stable` to the theme, adjust how it toggles in dark mode

* Remove unused strings

* Update screenshots

* Re-organize components in LoginRootScreen

* Bump min coverage to 55, max to 60

* Always replace the snapshots contents when running `recordPaparazzi`

* Fix dark theme preview of components using content colors

* Add `BackButton` component

* Handle errors with dialogs in a generic way

* Align our Dialog components with the designs, use them were needed

* Use a `MatrixHomeserverDetails` data class instead of just an URL.

* `AuthenticationService.getHomeserverDetails()` now returns a `StateFlow`.

Also, try to fix coverage issues in tests.
2023-03-06 09:30:16 +01:00
ganfra
af6dd3ee30 [Architecture] experiments to remove DI graph managements from navigation flow nodes 2023-03-04 14:14:47 +01:00
ganfra
a94862d778 Try splitting messages into api and impl modules 2023-03-03 14:38:05 +01:00
ganfra
f2fd168a78 [Architecture]: use FeatureEntryPoint on Messages feature 2023-03-02 18:16:17 +01:00
ganfra
91863e2529 [Architecture] introduce BackstackNode 2023-03-02 17:55:26 +01:00
Benoit Marty
466579c4d3 Move class of matrix.api module to api sub package. 2023-03-02 17:32:47 +01:00