Commit Graph

91 Commits

Author SHA1 Message Date
ganfra
fb694c50fe Pinned messages analytics : branch analytics 2024-09-23 20:10:04 +02:00
ganfra
e1f88a9232 Pinned messages analytics : introduce LocalAnalyticsService so we can easily inject it in views 2024-09-20 18:28:25 +02:00
Jorge Martin Espinosa
03786c1fd2 Add forced logout flow when the proxy is no longer available (#3458)
* Add `MatrixClient.isSlidingSyncProxySupported` function

* Update localazy strings

* Modify `ErrorDialog` to have an `onSubmit` call, which will be used for the submit action.

Also make the title text optional and dismissing the dialog by tapping outside/going back configurable.

* Check if a forced migration to SSS is needed because the proxy is no longer available.

In that case, display the non-dismissable dialog and force the user to log out after enabling SSS.

* Enable native/simplified sliding sync by default.

* Refactor the login to make sure we:

1. Always try native/simplified sliding sync login first, if available.
2. Then, if it wasn't available or failed with an sliding sync not supported error, try with the proxy instead (either discovered proxy or forced custom one).

* Move logic to `LoggedInPresenter` and the UI to `LoggedInView`

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-09-16 09:13:02 +00:00
Benoit Marty
62a6e916a6 Migrate license to AGPL - XML files. 2024-09-06 17:43:35 +02:00
Benoit Marty
2b016227e9 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
ganfra
0969470066 tests : refactor some classes 2024-07-31 21:14:29 +02:00
Jorge Martin Espinosa
950e502ca6 Improve screenshot testing with ComposablePreviewScanner (#3125)
* Use ComposablePreviewScanner to rework how screenshot testing works
* Add test sharding
* Update screenshots
* Fixes for Element Gallery

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-07-03 13:05:06 +02:00
Benoit Marty
038b60a271 Merge pull request #3044 from element-hq/feature/bma/testDefaultClearCacheUseCase
Add test on DefaultClearCacheUseCase
2024-06-18 10:27:45 +02:00
Jorge Martin Espinosa
feef0f6976 Add full screen intent permissions banner (#3024)
* Add full screen intent permissions banner, creating `:libraries:fullscreenintent` modules.
* Add it to notification settings too:
    - Create `libraries:fullscreenintent` modules for the permission presenter and associated data.
    - Add the presenter and states to `NotificationSettingsPresenter` and `NotificationSettingsView`.
* Use the right API to check for full screen intent permissions.
- Use the right package name for `:libraries:permission` contents.
* Fix broken tests (flaky?)
* Ignore coverage verification for fake and small presenters

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-06-18 07:41:10 +00:00
Benoit Marty
cb07ccdeb9 Add test on DefaultFtueService.reset(). 2024-06-17 15:04:20 +02:00
Benoit Marty
4e3774308e Merge pull request #2970 from element-hq/feature/bma/moreAnalytics
Track when the user starts a room call and when they enable formatting options on the message composer
2024-06-05 09:21:28 +02:00
Benoit Marty
c9c0413c40 Ensure Posthog is only used for Element builds. 2024-06-04 17:04:19 +02:00
Benoit Marty
8e6bf997dc Analytics: track screen MobileScreen.ScreenName.RoomCall 2024-06-03 17:55:52 +02:00
Valere
c9294fd1bf Add missing impl in Sentry 2024-05-31 14:07:03 +02:00
Valere
bcf4e27d6f Test | Fix missing updateSuperProperties impl 2024-05-31 14:07:03 +02:00
Valere
3c98a843e5 Analytics | Add support for SuperProperties 2024-05-31 14:07:02 +02:00
Benoit Marty
9d50ef06a2 Cleanup import 2024-05-29 01:54:06 +02:00
Benoit Marty
d4f651eeda Make anId a const. 2024-05-29 00:37:28 +02:00
Benoit Marty
04cd2bf8f5 Fix compilation issue 2024-05-29 00:30:38 +02:00
Benoit Marty
d4ea1da729 Add test on DefaultAnalyticsService 2024-05-28 18:27:53 +02:00
Benoit Marty
d4e6b4fa1d Remove dead code AnalyticsService.onSignOut.
DefaultAnalyticsService is observing the Session.
2024-05-28 17:37:25 +02:00
Benoit Marty
6acc86641a Make AnalyticsStore an interface and create DefaultAnalyticsStore 2024-05-28 17:36:48 +02:00
Benoit Marty
32f31855b5 Provide serverNames when available and fix issue around analytics 2024-05-14 15:58:10 +02:00
Valere
94bbcbf503 Code review - more tests 2024-05-07 09:38:26 +02:00
Valere
c430699711 Add support for Verification state analytics 2024-05-06 19:06:54 +02:00
SpiritCroc
202456ad19 Fix compile with noop analytics provider 2024-04-12 21:12:44 +02:00
Benoit Marty
37c41131ea Improve ScreenTracker. 2024-04-02 18:12:36 +02:00
Benoit Marty
e3d02b9804 FakeStringProvider: Ensure parameter are included in the result of getString() 2024-04-02 16:15:03 +02:00
Benoit Marty
12a1cf048e Track NotificationTroubleshoot screen 2024-04-02 16:15:02 +02:00
Benoit Marty
99132f39a9 Fix analytics: spaceId have the same syntax as roomId. Use MatrixRoom.isSpace instead of MatrixPatterns.isSpaceId (#2612)
Also remoce useless orFalse() calls.
2024-03-28 12:13:49 +01:00
Benoit Marty
55cbb99201 Improve UtdTracker test. 2024-03-15 12:33:54 +01:00
Benoit Marty
b8e8578fad Add extra properties "cryptoSDK" to Error.CryptoSDK.Rust to all events and screen sent to PostHog. 2024-03-15 11:27:53 +01:00
ganfra
4052abf15c Analytics : add analytics on read status and favorite toggles 2024-02-19 17:38:17 +01:00
Benoit Marty
378692f743 Fix moar ktlint issues 2024-01-11 10:02:10 +01:00
renovate[bot]
7e9cda3aa9 Update plugin ktlint to v12.1.0 (#2200)
* Update plugin ktlint to v12.1.0

* Run `./gradlew ktlintFormat` and fix some issues manually.

* Fix other issues reproted by Ktlint

* Limit false positives, KtLint removes unnecessary curly brace in String templates.

* Remove useless Unit

* Minor improvements over ktlint changes

* Restore `AlertDialogContent` behaviour

* Update screenshots

---------

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>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-10 16:22:24 +01:00
Benoit Marty
2177dc0476 Migrate to PostHog 3.0.0 2023-12-05 16:12:17 +01:00
Benoit Marty
47dc03082e Add test for DefaultNotificationDrawerManager 2023-11-27 16:44:47 +01:00
Benoit Marty
b5b14d38a0 Add test for DefaultBugReporter 2023-11-24 16:30:06 +01:00
Benoit Marty
fc7898ca36 Add tests for NotifiableEventResolver 2023-11-23 17:36:23 +01:00
Benoit Marty
8b85aa51e2 Konsist: check that if sealed interface is used in parameter of Composable, it has the @Stable or @Immutable annotation 2023-11-03 15:19:55 +01:00
Benoit Marty
7ffcb39dd3 Test coverage: Add test on DefaultNavigationStateService 2023-10-24 17:17:15 +02:00
jonnyandrew
9046ac4c8a Add voice message recording duration indicator and limit (#1628)
---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-10-24 11:44:53 +00:00
Benoit Marty
7386da257c Remove AppNameProvider, we have buildMeta now. 2023-10-20 10:41:39 +02:00
Benoit Marty
308a0c0f57 Konsist: add test to ensure filename match top level Composable View, and fix existing issue 2023-10-10 15:39:22 +02:00
ganfra
0bbe549e74 Navigation: fix test and update log. 2023-09-26 11:06:49 +02:00
ganfra
af076c8ccd NavigationStateService : do not throw error but just log and returns 2023-09-25 20:45:29 +02:00
Benoit Marty
d2ca528679 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
e326e49e4c Use DayNightPreview 2023-09-19 11:49:12 +02:00
Benoit Marty
a5bc188e73 Class annotated with @ContributesMultibinding cannot be internal. 2023-09-11 12:03:17 +02:00
Benoit Marty
23d549d2e2 Ensure Posthog data are sent to "https://posthog.element.io" for release build. 2023-09-11 11:35:19 +02:00