Navigation between app fragments uses ShareTab as arguments. The newly used
SendTabUseCases uses TabData which is not Parcelable.
For minimal changes we'll keep both data classes and ShareController will know
how to map between the two.
Removed the `sessionId` property of ShareTab as it isn't needed anymore.
* Remove "abi" product flavor and introduce "engine" product flavor.
This patch will allow us to build Fenix against GeckoView Nightly and GeckoView Beta by
introducing a new flavor dimension: engine = [geckoNightly, geckoBeta].
In addition to that it adds a "fenix" prefix to the nightly, beta and production flavors
to reduce the ambiguity between fenix beta/nightly and GeckoView beta/nightly.
For now the build types have the following engine variants enabled:
**debug**: geckoNightly, geckoBeta
Both variants enabled for local development and testing.
**forPerformanceTest**: geckoNightly, geckoBeta
Both variants enabled unless the perf team only cares about Nightly (tbd)
**fenixNightlyLegacy**: geckoBeta
Uses GeckoView Beta for now - the same version we ship production builds with (same behavior
as before). This release type will eventualyl be decommissioned once we switch to a separate
Nightly app on Google Play.
**fenixNightly**: geckoBeta
Uses GeckoView Beta for now - the same version we ship production builds with (same behavior
as before). Changing this build to use GeckoView Nightly is currently being discussed.
**fenixBeta**: geckoBeta
Fenix Beta uses GeckoView Beta.
**fenixProduction**
Fenix Production uses GeckoView Beta (69) currently.
* gradle.py/variant.py: Replace "abi" with "engine".
* Disable enableUnitTestBinaryResources until we can switch to Android Gradle plugin 3.5.
* Fenix nightly should use both geckoview nightly and beta
* Updates automation to use apk splitting and support different engine
* Adding l10n screenshot tests for Fenix
* fixing comments
* fix klint and detekt error and adding all tests
* better test name and doc added explaining tests