Commit Graph

70 Commits

Author SHA1 Message Date
jonnyandrew dab5e0d0ca Add analytics for voice messages (#1706) 2023-11-02 09:32:22 +00:00
Jorge Martin Espinosa 44de6adb86 Initial support for member suggestions (#1631)
* Initial support for member suggestion (search and UI)

* Add custom `BottomSheetScaffold` implementation to workaround several scrolling bugs

* Start searching as soon as `@` is typed, add UI following initial designs

* Extract suggestion processing code

* Extract component, add previews, fix tests

* Add tests

* Add exception from kover to the forked bottom sheet code

* Add a feature flag for mentions

- Extract composer & mention suggestions to their composable.
- Extract mentions suggestions processing to its own class.
- Add `MatrixRoom.canTriggerRoomNotification` function.
- Update strings and conditions for displaying the `@room` mention.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-10-27 10:26:40 +00:00
jonnyandrew 12404fab78 [Voice messages] Add voice recording UI (#1546)
---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-10-12 15:17:18 +00:00
Benoit Marty 3c41158558 Use existing BooleanProvider 2023-10-12 15:03:50 +02:00
Benoit Marty d55df22db2 Konsist: add test Data class state MUST not have default value, and fix existing issues 2023-10-10 17:31:04 +02:00
Benoit Marty 702c137ead Replace mutableStateOf by mutableIntStateOf and mutableFloatStateOf. Use intValue and floatValue to avoid unboxing. 2023-09-26 18:07:53 +02:00
Benoit Marty 0e4c146e87 Detekt: Rename DayNightPreviews to PreviewsDayNight to follow naming convention.
MultiPreview annotations should start with `Previews` as prefix
2023-09-21 08:30:36 +02:00
Benoit Marty 48fd833f8b More cleanup 2023-09-20 17:32:32 +02:00
Benoit Marty d531e71cd8 Migrate other icons to compound icons. 2023-09-20 16:44:59 +02:00
Benoit Marty 2819448cd4 Use DayNightPreview 2023-09-19 11:49:12 +02:00
Marco Romano 7fdd83bf91 GRemove the @JvmField annotation whenever using WarmUpRule. 2023-09-13 15:19:26 +02:00
Marco Romano 00d21e24e5 Update analytics sdk to v0.8.0 (#1284)
Integrates a few breaking changes introducing a `messageType` Composer prop:
- Sends `messageType` = Text by default in composer.
- Refactors existing location analytics to send the appropriate `messageType`.
2023-09-12 14:01:33 +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
Marco Romano d5c5947ff9 Fix detekt 2023-08-18 15:55:41 +02:00
Marco Romano e66c362fad Add missing tests 2023-08-18 15:55:41 +02:00
Marco Romano 7a96bb7047 Fix wrong packages after refactor 2023-08-18 15:55:41 +02:00
Marco Romano 4ee082ba48 Remove redundant screenshots 2023-08-18 15:55:41 +02:00
Marco Romano c2e8dac96a Add location dialogs to show location. Always show FAB. 2023-08-18 15:55:41 +02:00
Marco Romano a429195cbc Move AndroidLocationActions to impl package 2023-08-18 15:55:41 +02:00
Marco Romano 99ad1c231a Add permission request flow to ShowLocation feature too.
TODO:
- Presenter Tests
- Add Dialogs in View
2023-08-18 15:55:41 +02:00
Benoit Marty a3ae891e51 Fix issue detected by detekt 2023-08-16 15:24:18 +02:00
Benoit Marty 6aa5239189 Enable detekt rule PreviewPublic and fix existing issues. 2023-07-26 10:08:39 +02:00
Benoit Marty 1a1d4c2957 Fix code quality check failures after new rules from #935 has been merged on develop. 2023-07-21 16:04:55 +02:00
Benoit Marty b20448bf08 Merge pull request #935 from vector-im/feature/bma/noWarnings
Code quality: warnings are errors and enable more Detekt rules.
2023-07-21 15:52:05 +02:00
Marco Romano 57d04e487c Static images improvements (#933)
1. On devices less than xhdpi request a 1x image from MapTiler (such devices are generally old, slower and with little memory so avoiding to get the 2x image only to have to shrink it later could help).
2. Coerce too big width/height combos within the API limits keeping the aspect ratio (this will allow requests on big horizontal displays to succeed).
3. Don't crash when given weird width/height combos (i.e. zero or negative).
4. Introduce interfaces to hide this whole logic and make it easier for forks to implement their own.

Related to:
- https://github.com/vector-im/element-meta/issues/1678
2023-07-21 13:37:08 +00:00
Benoit Marty 5e2e03f054 Merge branch 'develop' into feature/bma/noWarnings 2023-07-21 12:17:50 +02:00
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
Marco Romano d964650804 Use correct share my location icon in button (#936)
As per newer design specs.

Related to:
- https://github.com/vector-im/element-meta/issues/1678
2023-07-20 13:59:06 +00:00
Marco Romano c746981000 Add screenshots with ~1.5 lines long desc to expanded location view (#923)
This will help in catching alignment regressions.

Related to:
- https://github.com/vector-im/element-meta/issues/1678
2023-07-20 13:42:35 +00:00
Marco Romano e8e4542a75 Extract maptiler's map ids (#926)
Maptiler custom map ids are only useable by the account that create them. So if we hardcode them forkers won't be able to use the maps even if the bring in their own api key (because they can't access our maps with their api key).

Requires to set our map ids in `local.properties` for local development:
```
services.maptiler.lightMapId=9bc819c8-e627-474a-a348-ec144fe3d810
services.maptiler.darkMapId=dea61faf-292b-4774-9660-58fcef89a7f3
```
2023-07-20 14:29:06 +02:00
Marco Romano f7e7339777 Correct location event body (#930)
- Now sending the correct body format as agreed with design. This won't be show in EX clients though.

Related to:
- https://github.com/vector-im/element-meta/issues/1682
2023-07-20 10:16:40 +00:00
Marco Romano e448bbb92d maplibre-compose allow customisation of location dot style (#929)
- And style it according to our designs.

Related to:
- https://github.com/vector-im/element-meta/issues/1682
2023-07-20 12:09:40 +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
Marco Romano f614895ec1 Refactor a custom alignment to its own modifier for readability. (#924) 2023-07-19 16:58:04 +02:00
Marco Romano cec87ee6a8 Don't crash when sharing a location with no maptiler apikey (#919)
Related to:
- https://github.com/vector-im/element-meta/issues/1682
2023-07-19 16:33:50 +02:00
Marco Romano 4162d16f52 Location expanded view: show own location (#916)
If the location permission is granted:
- Shows the user's own location
- Shows a button to center the map on it

Part of:
- https://github.com/vector-im/element-meta/issues/1678
2023-07-19 13:26:06 +00:00
Marco Romano 4c1a691b78 Fix insets for nav bar in send location view (#915)
Improvement of https://github.com/vector-im/element-x-android/pull/770

- https://github.com/vector-im/element-meta/issues/1682
2023-07-19 13:57:34 +02:00
Marco Romano 3c45a5ece4 Send My Location (#770)
- https://github.com/vector-im/element-meta/issues/1682
2023-07-19 09:58:13 +00:00
Chris Smith 1d99189955 Merge pull request #886 from vector-im/feature/cjs/location-api-key 2023-07-18 15:32:54 +01:00
Benoit Marty d6e811ee26 No need to use trick for night resource when using DayNightPreviews annotation. 2023-07-18 11:19:46 +02:00
Chris Smith 9ef8b36f51 Location sharing: don't hardcode API key
In an effort to make it easier for forks to (a) use their own
API keys (b) change map styles or maybe even providers, move
the MapTiler key out of the source code and pass it in via
env var or property.

Also refactor the utility classes slightly to keep all the URL
related functions together, to reduce the chance of collisions
when maintaining such forks.
2023-07-17 16:09:53 +01:00
Benoit Marty 253e8c1c2b Move TypographyAliases next to ColorAliases 2023-07-11 11:29:56 +02:00
Benoit Marty b7b6e0323d Create alias for typography (more semantic name). aliasScreenTitle 2023-07-11 10:29:06 +02:00
Benoit Marty ff5cecb5cf TextStyle again. 2023-07-10 17:33:42 +02:00
Chris Smith 20bdf98db6 Merge pull request #824 from vector-im/misc/cjs/left-align-top-bars 2023-07-10 12:23:29 +01:00
Marco Romano 3e69985fd6 Use @DayNightPreviews for static map (#832)
* Use @DayNightPreviews for static map

To properly screenshot the dark pin.

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-07-10 10:45:11 +02:00
Chris Smith 043ed3e0aa Remove CenterAlignedTopAppBar
Centering the titles is very iOS-y and not aligned with the material
guidelines (which say center aligned top bars are only for the main
root page in the app). They also present issues when we have titles
and textual actions that end up being quite long in other languages,
as they end up merging together.

Fixes #655
2023-07-07 13:59:05 +01:00