* Upgrade to Mozilla Android components 15.0.0-SNAPSHOT
* Update findinpage integration to use browser-state
* Use new UseCases APIs after download migration.
* For #5092 - Show a Snackbar with retry option if sharing to devices fails
ShareController will contain all the business logic for checking the result
status of the `share to device` operations. When this fails it will show a
snackbar which also offer the possibility to retry the just failed operation.
To allow this even in the event the user has closed the share fragment we'll
use a GlobalScope's coroutine.
Refactored out the TabsSharedCallback from ShareFragment because otherwise we
would have neede to sent through that the just failed operation. After the
refactor the ShareController is solely responsable for showing the right
snackbar and handling the retry actions.
* For #5092 - Refactor ShareControllerTest
* For #5092: Adds color theming of snackbars
This introduces test coverage, using the Glean SDK
testing API, for the metrics that are set at startup
by Fenix in the GleanMetricsService.
This additional adds a basic test for the translation
of the `app_opened` event.
This patch includes:
- WebChannels support enabled by default, with ability to disable it via remote flag
- expanded FxA telemetry (closes#4971)
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
There is a "unused" lint suppression in place with the comment
"Referenced from XML". I found no such usage.
It's documentation says that this Behavior will always position FindInPageBar
above BrowserToolbar but the current code ensures
BrowserToolbar.visibility == GONE when FindInPageBar.visibility == VISIBLE
so there's no need for such behavior.
FindInPageFeature is used inside the app as a LifecycleAwareFeature and as such
it receives the onStart / onStop lifecycle calls.
The onStart() lifecycle call would not get passed to the feature but in
onStop() FindInPageFeature will detach it's Presenter and Interactor so when
the user comes back to the screen she could not interact anymore with the
feature.
To fix this we'll propagate LifecycleAwareFeature's onStart() to the inner
feature which is to rebind it's Presenter and Interactor in onStart().
This behavior is common to all the other features so all of them who implement
LifecycleAwareFeature will now get the onStart() call also.