Commit Graph

203 Commits

Author SHA1 Message Date
Brais Gabín 1f633edd7d For #23046 - Align detekt config between Fenix and Android Components
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2022-03-29 00:03:06 +00:00
Jonathan Almeida f953c5ec94 For #24220 and #24223: Connect GleanPlumb messages with the new tab ui card.
Co-authored-by: Jonathan Almeida <jalmeida@mozilla.com>
2022-03-26 22:14:49 +00:00
Gabriel Luong c9a47d08a8 For #24130 - Change Shortcuts setting to toggle the display of Top Sites 2022-03-11 19:48:08 +00:00
Gabriel Luong 56022546f2 For #23893 - Add telemetry for Contile services 2022-03-03 20:56:44 +00:00
Arturo Mejia 1c66804c0b Add remote wallpapers 2022-03-01 22:16:52 +00:00
MatthewTighe 9b4a85942d fixes #23981: open download function and override for test 2022-02-25 18:34:22 +00:00
Gabriel Luong 37a0edceb6 For #23431 - Display the order of Contile Top Sites correctly 2022-02-10 00:54:24 +00:00
Matthew Tighe 9dc0506ec2
closes #23504: download focus wallpapers at runtime (#23505)
* closes #23504: download focus wallpapers at runtime

* address pr feedback

* only download wallpapers if feature flag is set
2022-02-01 21:45:55 +00:00
jhugman 82a6f8cae4
First use of Nimbus FML plugin (#23400)
* Consume Nimbus FML plugin

* Convert Homescreen to use FML

* Convert nimbusValidation to use FML

* Convert legacy experiments to use the feature API and FML

Remove dead helper code and documentation

* Fixup failing test

Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-01-28 12:48:05 +00:00
Gabriel Luong e5e7e6dbcf For #23409 - Specify fetchProvidedTopSites parameter for TopSitesConfig 2022-01-26 05:25:03 +00:00
mcarare cdbe7983f5 For #22879: Filter default engines when sending telemetry.
Filter out custom engines that are not well known search domains.
2022-01-04 10:29:16 +00:00
mcarare 00280d3b65 For #20513: Use UrlMetricType for search engine submission url. 2021-12-21 11:25:00 +00:00
Mugurell d4a6facd81 For #22155 - Store inactive tabs count telemetry when user opens tabs tray
Setting this value in FenixApplication.onCreate was buggy because of a race
with restoring BrowserState.
Setting it here would ensure a better granularity of the events and so to more
accurate reporting.
2021-11-16 21:04:16 +00:00
Noah Bond 811f255b71
MR2 Telemetry: Opening screen preference (#22333)
* For #22145 - Added telemetry to the opening screen preference.

* For #22145 - Added PR number to metric

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-11-10 20:13:40 +00:00
Mugurell 953f6feb17 For #22155 - The inactiveTabsCount probe reports actualInactiveTabs number 2021-11-08 12:32:39 +00:00
Mugurell f9b67091c6 For #22155 - New BrowserState.actualInactiveTabs public method
This allows querying from all throughout the app which of the current tabs are
inactive while taking into consideration whether the feature is enabled or not
such that when the feature is disabled it will always return an empty result.
2021-11-08 12:32:39 +00:00
Mugurell 207e85e59d For #22155 - Inactive tabs count telemetry
A quantity probe in the metrics ping means we'll loose the granularity events
provided but it will be easier to extract the values.

For reporting whether the inactive tabs feature is enabled or not we already
have the "preferences.inactive_tabs_enabled" probe so I didn't duplicate this.
2021-11-02 16:32:00 +00:00
Roger Yang a46905b5e7 Issue #22057: Add search term groups telemetry 2021-11-02 15:46:29 +00:00
Mugurell 018fe15072 For #22138 - Install source metrics probe 2021-11-02 09:12:34 +00:00
Arturo Mejia 940af156eb For #22192 add telemetry for studies 2021-11-01 14:08:52 +00:00
Michael Comella 99533626f1 For #21921: rename MarkersLifecycleCallbacks to ...ActivityLifecycle...
This is to disamibugate with the MarkersFragmentLifecycleCallbacks that
we'll be adding.
2021-10-23 01:21:39 +00:00
Noah Bond 826249497a
MR2 Inactive tabs telemetry (#21908)
* For #21903 - Added telemetry for interacting with inactive tabs

* For #21903 - Added missing inactive tab delete count event to delete all event

* For #21903 - Added PR numbers to metrics

* For #21903 - Updated broken unit tests. Resolved critical lint warning.

* For #21903 - Fixed inactive tabs setting toggle metric

* For #21903 - Updated FenixApp unit test

* For #21903 - Updated newline character in Metrics. Set inactive tab metrics' lifetime to default. Updated expiration to Nov 2022. Refactored inactive tabs metric to be a single metric.

* PR: addendum for last commit that missed a file

* For #21903 - Changed logic check for reporting inactive tab count

* PR: fixed merge conflict

* For #21903 - Removed tab close tracking when the user closes ALL inactive tabs

* For #21903 - Removed individual tab close metric verify from CLOSE ALL test

* For #21903 - Updated inactive tabs toggle setting expiration to match the expiration of the other events

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-10-20 22:30:59 +00:00
Christian Sadilek c3ef16de61 Closes #21944: Top sites rendered slowly on first load of HomeFragment 2021-10-14 18:04:17 -04:00
Arturo Mejia 2b363b9868 For #21618: Integrate Nimbus with MR2 Home Page to enable experimentation 2021-10-04 00:39:59 +00:00
Arturo Mejia 3272de1364 For #21239 add telemetry for Allow users to customize their home screen 2021-09-21 15:55:03 -04:00
Michael Comella f8a4113271 For #21299: add markers for all activity lifecycle callbacks.
We implement these all in the same track because between it'd create a
lot noise between this and fragment lifecycle callbacks.
2021-09-17 22:34:01 +00:00
Elise Richards fa811cb244 Remove enable private search suggestions telemetry 2021-08-31 18:28:05 +00:00
Elise Richards de992994de Remove open links in private tab telemetry 2021-08-31 18:28:05 +00:00
Grisha Kruglov 6161dc6e8d Closes 20975: Run metadata cleanup after Megazord.init()
This ensures that we do not attempt places initialization before
Megazord.init() finishes, and that touching BrowserStore does not
kick-off places initialization (due to the `cleanup` call being a
side-effect of creating metadata middleware, used as part of the
BrowserStore).

Glean initialization happens before initialize megazord, and it touches
core.store BrowserStore instance, kicking-off places initialization on
an IO thread (due to the cleanup call), which raced megazord
initialization on the main thread.

App init sequence is a bit of a mine-field, so this patch takes the easy
way out and doesn't attempt to re-order initialization sequence. Also,
initializing places as a side-effect of touching BrowserStore was also,
clearly, a bug.
2021-08-23 22:29:46 +00:00
Rohan Maity c45703db07 For #20596 remove perf.startup probes 2021-08-11 22:31:52 +00:00
Roger Yang 2ed4115a6c Revert "For #18711 - Refactor credit card telemetry under the Metrics ping (#19733)"
This reverts commit 172a118a51.
2021-08-05 18:53:46 +00:00
Sebastian Kaspari 971b419d77 Run ktlintFormat to adapt to latest formatting rules. 2021-07-30 11:58:02 +00:00
Sebastian Kaspari 24e9f64cff Add telemetry for Android Autofill feature. 2021-07-30 09:37:43 +00:00
Sebastian Kaspari 8b5aef7def Update Kotlin to 1.5.10 (and Coroutines to 1.5.0). 2021-07-19 09:20:50 +00:00
Michael Comella be64ee4159 For #20127: remove app_opened_all_startup integration. 2021-07-12 21:53:54 +00:00
Sebastian Kaspari 4753a1d494 Complete browser-state migration and remove browser-session dependency.
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2021-06-09 18:30:21 +02:00
Gabriel Luong 172a118a51
For #18711 - Refactor credit card telemetry under the Metrics ping (#19733) 2021-05-31 17:35:47 -04:00
mcarare 9400f58e2a For #17538: Perform autofill storage warm-up after visual completeness. 2021-05-24 23:23:15 +03:00
Roger Yang f13560ae52 Issue #19147: Move set startup metrics off main thread 2021-05-12 06:44:31 +04:00
Elise Richards cf9a84eed5
Move locale restoration on startup to the visual completeness queue to prevent perf impact (#19315) 2021-05-07 14:12:40 -05:00
Roger Yang 74047cdceb
Closes #19147: Move startup metrics to right after Glean initialization (#19252) 2021-05-05 11:11:02 -04:00
Michael Comella 000bef020a For #18836: replace StartupActivityStateProvider with StartupStateProvider.
The StartupActivityStateProvider uses an imperative implementation,
driven by callbacks, to set the state of the application. This is hard
to follow as you need to understand which callbacks will be called in
which order. For example, to make sense of an implementation like this,
COLD, WARM, AND HOT would likely need to be implemented in separate
ActivityLifecycleCallbacks.

I feel the StartupStateProvider is an improvement because it leverages
the StartupActivityLog to query a linear state for a more understandable
implementation. Furthermore, it seems accessible to write COLD, WARM,
and HOT in the same class because they can all be approached the same
way.
2021-04-13 15:10:36 -07:00
Michael Comella cde954f3a7 For #18836: add StartupActivityLog, tests. 2021-04-13 15:10:36 -07:00
Sebastian Kaspari dfb3c4c9bf Introduce process lifecycle observer to collect metrics about tabs when app goes to foreground/background. 2021-04-09 12:36:27 +02:00
Michael Comella 2be9fb61d0 For #18426: add StartupActivityStateProvider.
This will be used to filter conditions for the start up telemetry we're
adding.
2021-03-30 10:38:44 -07:00
Michael Comella edd49b286d For #18426: add ApplicationStartReasonProvider.
We need to know this state to add a correct COLD MAIN probe.
2021-03-30 10:38:44 -07:00
Elise Richards 559cf54798
For #17190: notifications are updated when locale is changed (#18179)
* Add intent processor for locale changes

* Recreate notification and notify in the service

* Use locale use cases to update notification

* Use notification id instead of tag

* Add locale use cases and restore locale in application

* Send locale to service instead of string

* Controller tests for locale

* Update Android Components version to 74.0.20210323143308

Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2021-03-23 14:16:30 -04:00
Michael Comella 9024eca01e For #18426: add telemetry for app.onCreate subsections.
Hopefully this will help us understand behavior of the
`application_on_create` probe, specifically that it seems to take longer
in telemetry than in does locally compared to `home_activity_on_create`
(comparing the medians to local runs)..
2021-03-19 11:52:29 -07:00
Mugurell ec0176275b For #17869 - Start the Android Keystore experiment
Only on API 23+ (minimum Android version needed for SecureAbove22Preferences)
and only if enabled by a Nimbus experiment.

The Nimbus experiment will have the key `fenix-android-keystore` and use the
default branches - "control" and "treatment".
2021-03-15 13:35:49 -07:00
Arturo Mejia 8f43acc903 Closes #18367 run SupportedAddonsChecker only for users with unsupported extensions 2021-03-15 10:40:10 -04:00