├── .cron.yml ├── .git-blame-ignore-revs ├── .github ├── ISSUE_TEMPLATE │ └── config.yml ├── SECURITY.md ├── pull_request_template.md └── workflows │ ├── ac-update-geckoview.yml │ ├── bugzilla-format.yml │ ├── bugzilla-linker.yml │ ├── fenix-update-nimbus-experiments.yml │ ├── focus-update-nimbus-experiments.yml │ ├── glean-probe-scraper.yml │ └── pull-request-labeler.yml ├── .gitignore ├── .mergify.yml ├── .taskcluster.yml ├── CODEOWNERS ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md ├── android-components ├── .buildconfig.yml ├── .config.yml ├── .editorconfig ├── .gitattributes ├── CHANGELOG.md ├── README.md ├── android-lint.gradle ├── automation │ ├── __init__.py │ ├── publish_to_maven_local_if_modified.py │ └── taskcluster │ │ ├── __init__.py │ │ ├── action │ │ ├── generate_docs.sh │ │ ├── update_geckoview.sh │ │ └── update_publicsuffixlist.sh │ │ └── androidTest │ │ ├── flank-arm.yml │ │ ├── flank-x86.yml │ │ ├── parse-ui-test.py │ │ └── ui-test.sh ├── build.gradle ├── components │ ├── browser │ │ ├── domains │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ └── domains │ │ │ │ │ │ ├── br │ │ │ │ │ │ ├── ca │ │ │ │ │ │ ├── de │ │ │ │ │ │ ├── fr │ │ │ │ │ │ ├── gb │ │ │ │ │ │ ├── global │ │ │ │ │ │ ├── hk │ │ │ │ │ │ ├── id │ │ │ │ │ │ ├── pl │ │ │ │ │ │ ├── ru │ │ │ │ │ │ ├── sg │ │ │ │ │ │ ├── tw │ │ │ │ │ │ └── us │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── domains │ │ │ │ │ ├── CustomDomains.kt │ │ │ │ │ ├── Domain.kt │ │ │ │ │ ├── DomainAutoCompleteProvider.kt │ │ │ │ │ ├── Domains.kt │ │ │ │ │ └── autocomplete │ │ │ │ │ └── Providers.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── domains │ │ │ │ │ ├── BaseDomainAutocompleteProviderTest.kt │ │ │ │ │ ├── CustomDomainsTest.kt │ │ │ │ │ ├── DomainAutoCompleteProviderTest.kt │ │ │ │ │ ├── DomainTest.kt │ │ │ │ │ ├── DomainsTest.kt │ │ │ │ │ └── ProvidersTest.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── engine-gecko │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── docs │ │ │ │ └── metrics.md │ │ │ ├── geckoview.fml.yaml │ │ │ ├── metrics.yaml │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── engine │ │ │ │ │ └── gecko │ │ │ │ │ └── fetch │ │ │ │ │ └── geckoview │ │ │ │ │ └── GeckoViewFetchTestCases.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ ├── browser │ │ │ │ │ └── engine │ │ │ │ │ │ └── gecko │ │ │ │ │ │ ├── GeckoEngine.kt │ │ │ │ │ │ ├── GeckoEngineSession.kt │ │ │ │ │ │ ├── GeckoEngineSessionState.kt │ │ │ │ │ │ ├── GeckoEngineView.kt │ │ │ │ │ │ ├── GeckoResult.kt │ │ │ │ │ │ ├── GeckoTrackingProtectionExceptionStorage.kt │ │ │ │ │ │ ├── NestedGeckoView.kt │ │ │ │ │ │ ├── activity │ │ │ │ │ │ ├── GeckoActivityDelegate.kt │ │ │ │ │ │ ├── GeckoScreenOrientationDelegate.kt │ │ │ │ │ │ └── GeckoViewActivityContextDelegate.kt │ │ │ │ │ │ ├── autofill │ │ │ │ │ │ └── GeckoAutocompleteStorageDelegate.kt │ │ │ │ │ │ ├── content │ │ │ │ │ │ └── blocking │ │ │ │ │ │ │ └── GeckoTrackingProtectionException.kt │ │ │ │ │ │ ├── cookiebanners │ │ │ │ │ │ ├── GeckoCookieBannersStorage.kt │ │ │ │ │ │ └── ReportSiteDomainsRepository.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── Address.kt │ │ │ │ │ │ ├── CreditCard.kt │ │ │ │ │ │ ├── GeckoChoice.kt │ │ │ │ │ │ ├── GeckoContentPermissions.kt │ │ │ │ │ │ ├── Login.kt │ │ │ │ │ │ └── TrackingProtectionPolicy.kt │ │ │ │ │ │ ├── fetch │ │ │ │ │ │ └── GeckoViewFetchClient.kt │ │ │ │ │ │ ├── glean │ │ │ │ │ │ └── GeckoAdapter.kt │ │ │ │ │ │ ├── integration │ │ │ │ │ │ ├── LocaleSettingUpdater.kt │ │ │ │ │ │ └── SettingUpdater.kt │ │ │ │ │ │ ├── media │ │ │ │ │ │ └── GeckoMediaDelegate.kt │ │ │ │ │ │ ├── mediaquery │ │ │ │ │ │ └── PreferredColorScheme.kt │ │ │ │ │ │ ├── mediasession │ │ │ │ │ │ ├── GeckoMediaSessionController.kt │ │ │ │ │ │ └── GeckoMediaSessionDelegate.kt │ │ │ │ │ │ ├── permission │ │ │ │ │ │ ├── GeckoPermissionRequest.kt │ │ │ │ │ │ └── GeckoSitePermissionsStorage.kt │ │ │ │ │ │ ├── profiler │ │ │ │ │ │ └── Profiler.kt │ │ │ │ │ │ ├── prompt │ │ │ │ │ │ ├── ChoicePromptDelegate.kt │ │ │ │ │ │ ├── GeckoPromptDelegate.kt │ │ │ │ │ │ └── PromptInstanceDismissDelegate.kt │ │ │ │ │ │ ├── selection │ │ │ │ │ │ └── GeckoSelectionActionDelegate.kt │ │ │ │ │ │ ├── serviceworker │ │ │ │ │ │ └── GeckoServiceWorkerDelegate.kt │ │ │ │ │ │ ├── translate │ │ │ │ │ │ ├── GeckoTranslateSessionDelegate.kt │ │ │ │ │ │ └── GeckoTranslationUtils.kt │ │ │ │ │ │ ├── util │ │ │ │ │ │ └── SpeculativeSessionFactory.kt │ │ │ │ │ │ ├── webextension │ │ │ │ │ │ ├── GeckoWebExtension.kt │ │ │ │ │ │ └── GeckoWebExtensionException.kt │ │ │ │ │ │ ├── webnotifications │ │ │ │ │ │ └── GeckoWebNotificationDelegate.kt │ │ │ │ │ │ ├── webpush │ │ │ │ │ │ ├── GeckoWebPushDelegate.kt │ │ │ │ │ │ └── GeckoWebPushHandler.kt │ │ │ │ │ │ └── window │ │ │ │ │ │ └── GeckoWindowRequest.kt │ │ │ │ │ └── experiment │ │ │ │ │ └── NimbusExperimentDelegate.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ ├── browser │ │ │ │ │ ├── engine │ │ │ │ │ │ └── gecko │ │ │ │ │ │ │ ├── GeckoEngineSessionStateTest.kt │ │ │ │ │ │ │ ├── GeckoEngineSessionTest.kt │ │ │ │ │ │ │ ├── GeckoEngineTest.kt │ │ │ │ │ │ │ ├── GeckoEngineViewTest.kt │ │ │ │ │ │ │ ├── GeckoResultTest.kt │ │ │ │ │ │ │ ├── GeckoTrackingProtectionExceptionStorageTest.kt │ │ │ │ │ │ │ ├── GeckoWebExtensionExceptionTest.kt │ │ │ │ │ │ │ ├── NestedGeckoViewTest.kt │ │ │ │ │ │ │ ├── activity │ │ │ │ │ │ │ ├── GeckoActivityDelegateTest.kt │ │ │ │ │ │ │ ├── GeckoScreenOrientationDelegateTest.kt │ │ │ │ │ │ │ └── GeckoViewActivityContextDelegateTest.kt │ │ │ │ │ │ │ ├── cookiebanners │ │ │ │ │ │ │ ├── GeckoCookieBannersStorageTest.kt │ │ │ │ │ │ │ └── ReportSiteDomainsRepositoryTest.kt │ │ │ │ │ │ │ ├── ext │ │ │ │ │ │ │ └── TrackingProtectionPolicyKtTest.kt │ │ │ │ │ │ │ ├── fetch │ │ │ │ │ │ │ └── GeckoViewFetchUnitTestCases.kt │ │ │ │ │ │ │ ├── integration │ │ │ │ │ │ │ └── SettingUpdaterTest.kt │ │ │ │ │ │ │ ├── media │ │ │ │ │ │ │ └── GeckoMediaDelegateTest.kt │ │ │ │ │ │ │ ├── mediasession │ │ │ │ │ │ │ ├── GeckoMediaSessionControllerTest.kt │ │ │ │ │ │ │ └── GeckoMediaSessionDelegateTest.kt │ │ │ │ │ │ │ ├── permission │ │ │ │ │ │ │ ├── GeckoPermissionRequestTest.kt │ │ │ │ │ │ │ └── GeckoSitePermissionsStorageTest.kt │ │ │ │ │ │ │ ├── prompt │ │ │ │ │ │ │ ├── ChoicePromptDelegateTest.kt │ │ │ │ │ │ │ ├── GeckoPromptDelegateTest.kt │ │ │ │ │ │ │ └── PromptInstanceDismissDelegateTest.kt │ │ │ │ │ │ │ ├── selection │ │ │ │ │ │ │ └── GeckoSelectionActionDelegateTest.kt │ │ │ │ │ │ │ ├── serviceworker │ │ │ │ │ │ │ └── GeckoServiceWorkerDelegateTest.kt │ │ │ │ │ │ │ ├── translate │ │ │ │ │ │ │ └── GeckoTranslateSessionDelegateTest.kt │ │ │ │ │ │ │ ├── util │ │ │ │ │ │ │ └── SpeculativeSessionFactoryTest.kt │ │ │ │ │ │ │ ├── webextension │ │ │ │ │ │ │ ├── GeckoWebExtensionTest.kt │ │ │ │ │ │ │ └── MockWebExtension.kt │ │ │ │ │ │ │ ├── webnotifications │ │ │ │ │ │ │ ├── GeckoWebNotificationDelegateTest.kt │ │ │ │ │ │ │ └── MockWebNotification.kt │ │ │ │ │ │ │ ├── webpush │ │ │ │ │ │ │ ├── GeckoWebPushDelegateTest.kt │ │ │ │ │ │ │ └── GeckoWebPushHandlerTest.kt │ │ │ │ │ │ │ └── window │ │ │ │ │ │ │ └── GeckoWindowRequestTest.kt │ │ │ │ │ └── experiment │ │ │ │ │ │ └── NimbusExperimentDelegateTest.kt │ │ │ │ │ └── test │ │ │ │ │ └── ReflectionUtils.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── engine-system │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── engine │ │ │ │ │ │ └── system │ │ │ │ │ │ └── VersionTest.kt │ │ │ │ └── resources │ │ │ │ │ └── mockito-extensions │ │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── engine │ │ │ │ │ │ └── system │ │ │ │ │ │ ├── NestedWebView.kt │ │ │ │ │ │ ├── SystemEngine.kt │ │ │ │ │ │ ├── SystemEngineSession.kt │ │ │ │ │ │ ├── SystemEngineSessionState.kt │ │ │ │ │ │ ├── SystemEngineView.kt │ │ │ │ │ │ ├── matcher │ │ │ │ │ │ ├── ReversibleString.kt │ │ │ │ │ │ ├── Safelist.kt │ │ │ │ │ │ ├── Trie.kt │ │ │ │ │ │ └── UrlMatcher.kt │ │ │ │ │ │ ├── permission │ │ │ │ │ │ └── SystemPermissionRequest.kt │ │ │ │ │ │ └── window │ │ │ │ │ │ └── SystemWindowRequest.kt │ │ │ │ └── res │ │ │ │ │ ├── raw │ │ │ │ │ ├── domain_blocklist.json │ │ │ │ │ └── domain_safelist.json │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ann │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nv │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ppl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-szl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── engine │ │ │ │ │ └── system │ │ │ │ │ ├── NestedWebViewTest.kt │ │ │ │ │ ├── SystemEngineSessionStateTest.kt │ │ │ │ │ ├── SystemEngineSessionTest.kt │ │ │ │ │ ├── SystemEngineTest.kt │ │ │ │ │ ├── SystemEngineViewTest.kt │ │ │ │ │ ├── matcher │ │ │ │ │ ├── ReversibleStringTest.kt │ │ │ │ │ ├── SafelistTest.kt │ │ │ │ │ ├── TrieTest.kt │ │ │ │ │ └── UrlMatcherTest.kt │ │ │ │ │ ├── permission │ │ │ │ │ └── SystemPermissionRequestTest.kt │ │ │ │ │ └── window │ │ │ │ │ └── SystemWindowRequestTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── errorpages │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ ├── errorPageScripts.js │ │ │ │ │ ├── error_page_js.html │ │ │ │ │ └── error_style.css │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── errorpages │ │ │ │ │ │ └── ErrorPages.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ann │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nv │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ppl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── errorpages │ │ │ │ │ └── ErrorPagesTest.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── icons │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── icons │ │ │ │ │ ├── OnDeviceBrowserIconsTest.kt │ │ │ │ │ └── decoder │ │ │ │ │ └── ICOIconDecoderTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ ├── extensions │ │ │ │ │ │ └── browser-icons │ │ │ │ │ │ │ ├── icons.js │ │ │ │ │ │ │ └── manifest.template.json │ │ │ │ │ └── mozac.browser.icons │ │ │ │ │ │ └── icons-top200.json │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── icons │ │ │ │ │ │ ├── BrowserIcons.kt │ │ │ │ │ │ ├── Icon.kt │ │ │ │ │ │ ├── IconRequest.kt │ │ │ │ │ │ ├── compose │ │ │ │ │ │ ├── IconLoaderScope.kt │ │ │ │ │ │ ├── IconLoaderState.kt │ │ │ │ │ │ └── Loader.kt │ │ │ │ │ │ ├── decoder │ │ │ │ │ │ ├── ICOIconDecoder.kt │ │ │ │ │ │ ├── SvgIconDecoder.kt │ │ │ │ │ │ └── ico │ │ │ │ │ │ │ └── IconDirectoryEntry.kt │ │ │ │ │ │ ├── extension │ │ │ │ │ │ ├── IconMessage.kt │ │ │ │ │ │ ├── IconMessageHandler.kt │ │ │ │ │ │ └── WebAppManifest.kt │ │ │ │ │ │ ├── generator │ │ │ │ │ │ ├── DefaultIconGenerator.kt │ │ │ │ │ │ └── IconGenerator.kt │ │ │ │ │ │ ├── loader │ │ │ │ │ │ ├── DataUriIconLoader.kt │ │ │ │ │ │ ├── DiskIconLoader.kt │ │ │ │ │ │ ├── HttpIconLoader.kt │ │ │ │ │ │ ├── IconLoader.kt │ │ │ │ │ │ ├── MemoryIconLoader.kt │ │ │ │ │ │ └── NonBlockingHttpIconLoader.kt │ │ │ │ │ │ ├── pipeline │ │ │ │ │ │ └── IconResourceComparator.kt │ │ │ │ │ │ ├── preparer │ │ │ │ │ │ ├── DiskIconPreparer.kt │ │ │ │ │ │ ├── IconPreprarer.kt │ │ │ │ │ │ ├── MemoryIconPreparer.kt │ │ │ │ │ │ └── TippyTopIconPreparer.kt │ │ │ │ │ │ ├── processor │ │ │ │ │ │ ├── AdaptiveIconProcessor.kt │ │ │ │ │ │ ├── ColorProcessor.kt │ │ │ │ │ │ ├── DiskIconProcessor.kt │ │ │ │ │ │ ├── IconProcessor.kt │ │ │ │ │ │ ├── MemoryIconProcessor.kt │ │ │ │ │ │ └── ResizingProcessor.kt │ │ │ │ │ │ └── utils │ │ │ │ │ │ ├── IconDiskCache.kt │ │ │ │ │ │ ├── IconMemoryCache.kt │ │ │ │ │ │ └── Utils.kt │ │ │ │ └── res │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── dimens.xml │ │ │ │ │ └── tags.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── icons │ │ │ │ │ ├── BrowserIconsTest.kt │ │ │ │ │ ├── decoder │ │ │ │ │ └── ICOIconDecoderTest.kt │ │ │ │ │ ├── extension │ │ │ │ │ ├── IconMessageHandlerTest.kt │ │ │ │ │ └── IconMessageKtTest.kt │ │ │ │ │ ├── generator │ │ │ │ │ └── DefaultIconGeneratorTest.kt │ │ │ │ │ ├── loader │ │ │ │ │ ├── DataUriIconLoaderTest.kt │ │ │ │ │ ├── DiskIconLoaderTest.kt │ │ │ │ │ ├── FailureCacheTest.kt │ │ │ │ │ ├── HttpIconLoaderTest.kt │ │ │ │ │ ├── MemoryIconLoaderTest.kt │ │ │ │ │ └── NonBlockingHttpIconLoaderTest.kt │ │ │ │ │ ├── pipeline │ │ │ │ │ └── IconResourceComparatorTest.kt │ │ │ │ │ ├── preparer │ │ │ │ │ ├── DiskIconPreparerTest.kt │ │ │ │ │ ├── MemoryIconPreparerTest.kt │ │ │ │ │ └── TippyTopIconPreparerTest.kt │ │ │ │ │ ├── processor │ │ │ │ │ ├── AdaptiveIconProcessorTest.kt │ │ │ │ │ ├── ColorProcessorTest.kt │ │ │ │ │ ├── DiskIconProcessorTest.kt │ │ │ │ │ ├── MemoryIconProcessorTest.kt │ │ │ │ │ └── ResizingProcessorTest.kt │ │ │ │ │ └── utils │ │ │ │ │ ├── IconDiskCacheTest.kt │ │ │ │ │ └── IconMemoryCacheTest.kt │ │ │ │ └── resources │ │ │ │ ├── bmp │ │ │ │ └── test.bmp │ │ │ │ ├── gif │ │ │ │ └── cat.gif │ │ │ │ ├── ico │ │ │ │ ├── golem_favicon.ico │ │ │ │ ├── microsoft_favicon.ico │ │ │ │ └── nvidia_favicon.ico │ │ │ │ ├── jpg │ │ │ │ └── tonys.jpg │ │ │ │ ├── misc │ │ │ │ └── test.txt │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ ├── png │ │ │ │ └── mozac.png │ │ │ │ ├── robolectric.properties │ │ │ │ └── webp │ │ │ │ └── test.webp │ │ ├── menu │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── lint.xml │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── menu │ │ │ │ │ │ ├── BrowserMenu.kt │ │ │ │ │ │ ├── BrowserMenuAdapter.kt │ │ │ │ │ │ ├── BrowserMenuBuilder.kt │ │ │ │ │ │ ├── BrowserMenuHighlight.kt │ │ │ │ │ │ ├── BrowserMenuItem.kt │ │ │ │ │ │ ├── BrowserMenuPlacement.kt │ │ │ │ │ │ ├── BrowserMenuPositioning.kt │ │ │ │ │ │ ├── WebExtensionBrowserMenu.kt │ │ │ │ │ │ ├── WebExtensionBrowserMenuBuilder.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── BrowserMenuItem.kt │ │ │ │ │ │ └── View.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ └── BrowserMenuFacts.kt │ │ │ │ │ │ ├── item │ │ │ │ │ │ ├── AbstractParentBrowserMenuItem.kt │ │ │ │ │ │ ├── BackPressMenuItem.kt │ │ │ │ │ │ ├── BrowserMenuCategory.kt │ │ │ │ │ │ ├── BrowserMenuCheckbox.kt │ │ │ │ │ │ ├── BrowserMenuCompoundButton.kt │ │ │ │ │ │ ├── BrowserMenuDivider.kt │ │ │ │ │ │ ├── BrowserMenuHighlightableItem.kt │ │ │ │ │ │ ├── BrowserMenuHighlightableSwitch.kt │ │ │ │ │ │ ├── BrowserMenuImageSwitch.kt │ │ │ │ │ │ ├── BrowserMenuImageText.kt │ │ │ │ │ │ ├── BrowserMenuImageTextCheckboxButton.kt │ │ │ │ │ │ ├── BrowserMenuItemToolbar.kt │ │ │ │ │ │ ├── BrowserMenuSwitch.kt │ │ │ │ │ │ ├── CustomTooltip.kt │ │ │ │ │ │ ├── ParentBrowserMenuItem.kt │ │ │ │ │ │ ├── SimpleBrowserMenuHighlightableItem.kt │ │ │ │ │ │ ├── SimpleBrowserMenuItem.kt │ │ │ │ │ │ ├── TwoStateBrowserMenuImageText.kt │ │ │ │ │ │ ├── WebExtensionBrowserMenuItem.kt │ │ │ │ │ │ └── WebExtensionPlaceholderMenuItem.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ ├── DynamicWidthRecyclerView.kt │ │ │ │ │ │ ├── ExpandableLayout.kt │ │ │ │ │ │ ├── MenuButton.kt │ │ │ │ │ │ ├── StickyFooterLinearLayoutManager.kt │ │ │ │ │ │ ├── StickyHeaderLinearLayoutManager.kt │ │ │ │ │ │ └── StickyItemLayoutManager.kt │ │ │ │ └── res │ │ │ │ │ ├── anim-ldrtl │ │ │ │ │ ├── menu_enter_bottom.xml │ │ │ │ │ └── menu_enter_top.xml │ │ │ │ │ ├── anim │ │ │ │ │ ├── menu_enter_bottom.xml │ │ │ │ │ ├── menu_enter_top.xml │ │ │ │ │ └── menu_exit.xml │ │ │ │ │ ├── drawable │ │ │ │ │ ├── mozac_browser_menu_notification_icon.xml │ │ │ │ │ ├── mozac_menu_indicator.xml │ │ │ │ │ ├── mozac_menu_notification.xml │ │ │ │ │ └── rounded_corner.xml │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_browser_menu.xml │ │ │ │ │ ├── mozac_browser_menu_button.xml │ │ │ │ │ ├── mozac_browser_menu_category.xml │ │ │ │ │ ├── mozac_browser_menu_highlightable_item.xml │ │ │ │ │ ├── mozac_browser_menu_highlightable_switch.xml │ │ │ │ │ ├── mozac_browser_menu_item_checkbox.xml │ │ │ │ │ ├── mozac_browser_menu_item_divider.xml │ │ │ │ │ ├── mozac_browser_menu_item_image_switch.xml │ │ │ │ │ ├── mozac_browser_menu_item_image_text.xml │ │ │ │ │ ├── mozac_browser_menu_item_image_text_checkbox_button.xml │ │ │ │ │ ├── mozac_browser_menu_item_parent_menu.xml │ │ │ │ │ ├── mozac_browser_menu_item_simple.xml │ │ │ │ │ ├── mozac_browser_menu_item_switch.xml │ │ │ │ │ ├── mozac_browser_menu_item_toolbar.xml │ │ │ │ │ ├── mozac_browser_menu_web_extension.xml │ │ │ │ │ └── mozac_browser_tooltip_layout.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ldrtl │ │ │ │ │ └── dimens.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-szl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── dimens.xml │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── style.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── menu │ │ │ │ │ ├── BrowserMenuAdapterTest.kt │ │ │ │ │ ├── BrowserMenuBuilderTest.kt │ │ │ │ │ ├── BrowserMenuHighlightTest.kt │ │ │ │ │ ├── BrowserMenuPositioningTest.kt │ │ │ │ │ ├── BrowserMenuTest.kt │ │ │ │ │ ├── WebExtensionBrowserMenuBuilderTest.kt │ │ │ │ │ ├── WebExtensionBrowserMenuTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── BrowserMenuItemTest.kt │ │ │ │ │ ├── item │ │ │ │ │ ├── AbstractParentBrowserMenuItemTest.kt │ │ │ │ │ ├── BrowserMenuCategoryTest.kt │ │ │ │ │ ├── BrowserMenuCheckboxTest.kt │ │ │ │ │ ├── BrowserMenuCompoundButtonTest.kt │ │ │ │ │ ├── BrowserMenuDividerTest.kt │ │ │ │ │ ├── BrowserMenuHighlightableItemTest.kt │ │ │ │ │ ├── BrowserMenuHighlightableSwitchTest.kt │ │ │ │ │ ├── BrowserMenuImageSwitchTest.kt │ │ │ │ │ ├── BrowserMenuImageTextCheckboxButtonTest.kt │ │ │ │ │ ├── BrowserMenuImageTextTest.kt │ │ │ │ │ ├── BrowserMenuItemToolbarTest.kt │ │ │ │ │ ├── BrowserMenuSwitchTest.kt │ │ │ │ │ ├── ParentBrowserMenuItemTest.kt │ │ │ │ │ ├── SimpleBrowserMenuHighlightableItemTest.kt │ │ │ │ │ ├── SimpleBrowserMenuItemTest.kt │ │ │ │ │ ├── TwoStateBrowserMenuImageTextTest.kt │ │ │ │ │ └── WebExtensionBrowserMenuItemTest.kt │ │ │ │ │ └── view │ │ │ │ │ ├── DynamicWidthRecyclerViewTest.kt │ │ │ │ │ ├── ExpandableLayoutTest.kt │ │ │ │ │ ├── FakeStickyItemLayoutManager.kt │ │ │ │ │ ├── FakeStickyItemsAdapter.kt │ │ │ │ │ ├── MenuButtonTest.kt │ │ │ │ │ ├── StickyFooterLinearLayoutManagerTest.kt │ │ │ │ │ ├── StickyHeaderLinearLayoutManagerTest.kt │ │ │ │ │ └── StickyItemsLinearLayoutManagerTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ ├── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ │ │ └── robolectric.properties │ │ ├── menu2 │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── lint.xml │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── menu2 │ │ │ │ │ │ ├── BrowserMenuController.kt │ │ │ │ │ │ ├── adapter │ │ │ │ │ │ ├── CompoundMenuCandidateViewHolders.kt │ │ │ │ │ │ ├── DecorativeTextMenuCandidateViewHolder.kt │ │ │ │ │ │ ├── DividerMenuCandidateViewHolder.kt │ │ │ │ │ │ ├── LastItemViewHolder.kt │ │ │ │ │ │ ├── MenuCandidateListAdapter.kt │ │ │ │ │ │ ├── MenuCandidateViewHolder.kt │ │ │ │ │ │ ├── NestedMenuCandidateViewHolder.kt │ │ │ │ │ │ ├── RowMenuCandidateViewHolder.kt │ │ │ │ │ │ ├── SmallMenuCandidateViewHolder.kt │ │ │ │ │ │ ├── TextMenuCandidateViewHolder.kt │ │ │ │ │ │ └── icons │ │ │ │ │ │ │ ├── DrawableMenuIconViewHolders.kt │ │ │ │ │ │ │ ├── MenuIconAdapter.kt │ │ │ │ │ │ │ ├── MenuIconViewHolder.kt │ │ │ │ │ │ │ └── TextMenuIconViewHolder.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── BrowserMenuPositioning.kt │ │ │ │ │ │ └── View.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ ├── MenuButton2.kt │ │ │ │ │ │ └── MenuView.kt │ │ │ │ └── res │ │ │ │ │ ├── anim │ │ │ │ │ ├── menu_enter_left.xml │ │ │ │ │ ├── menu_enter_left_bottom.xml │ │ │ │ │ ├── menu_enter_left_top.xml │ │ │ │ │ ├── menu_enter_right.xml │ │ │ │ │ ├── menu_enter_right_bottom.xml │ │ │ │ │ ├── menu_enter_right_top.xml │ │ │ │ │ └── menu_exit.xml │ │ │ │ │ ├── drawable │ │ │ │ │ ├── mozac_browser_menu2_indicator.xml │ │ │ │ │ ├── mozac_browser_menu2_notification.xml │ │ │ │ │ └── mozac_browser_menu2_notification_icon.xml │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_browser_menu2_button.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_compound_checkbox.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_compound_switch.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_decorative_text.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_divider.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_nested.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_row.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_row_small_icon.xml │ │ │ │ │ ├── mozac_browser_menu2_candidate_text.xml │ │ │ │ │ ├── mozac_browser_menu2_icon_button.xml │ │ │ │ │ ├── mozac_browser_menu2_icon_drawable.xml │ │ │ │ │ ├── mozac_browser_menu2_icon_notification_dot.xml │ │ │ │ │ ├── mozac_browser_menu2_icon_text.xml │ │ │ │ │ └── mozac_browser_menu2_view.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ldrtl │ │ │ │ │ └── dimens.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-szl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── dimens.xml │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── style.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── menu2 │ │ │ │ │ ├── BrowserMenuControllerTest.kt │ │ │ │ │ ├── adapter │ │ │ │ │ ├── CompoundMenuCandidateViewHolderTest.kt │ │ │ │ │ ├── DecorativeTextMenuCandidateViewHolderTest.kt │ │ │ │ │ ├── DividerMenuCandidateViewHolderTest.kt │ │ │ │ │ ├── MenuCandidateListAdapterTest.kt │ │ │ │ │ ├── RowMenuCandidateViewHolderTest.kt │ │ │ │ │ ├── SmallMenuCandidateViewHolderTest.kt │ │ │ │ │ ├── TextMenuCandidateViewHolderTest.kt │ │ │ │ │ └── icons │ │ │ │ │ │ ├── DrawableMenuIconViewHoldersTest.kt │ │ │ │ │ │ ├── MenuIconAdapterTest.kt │ │ │ │ │ │ └── TextMenuIconViewHolderTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── BrowserMenuPositioningTest.kt │ │ │ │ │ └── ViewTest.kt │ │ │ │ │ └── view │ │ │ │ │ ├── MenuButton2Test.kt │ │ │ │ │ └── MenuViewTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── session-storage │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ ├── assets │ │ │ │ │ └── index.html │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── session │ │ │ │ │ └── storage │ │ │ │ │ ├── FullRestoreTest.kt │ │ │ │ │ └── RestoringBrowsingSessionsTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── session │ │ │ │ │ └── storage │ │ │ │ │ ├── AutoSave.kt │ │ │ │ │ ├── FileEngineSessionStateStorage.kt │ │ │ │ │ ├── RecoverableBrowserState.kt │ │ │ │ │ ├── SessionStorage.kt │ │ │ │ │ └── serialize │ │ │ │ │ ├── BrowserStateReader.kt │ │ │ │ │ ├── BrowserStateWriter.kt │ │ │ │ │ └── Keys.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── session │ │ │ │ │ └── storage │ │ │ │ │ ├── AutoSaveTest.kt │ │ │ │ │ ├── FileEngineSessionStateStorageTest.kt │ │ │ │ │ ├── SessionStorageTest.kt │ │ │ │ │ └── serialize │ │ │ │ │ └── BrowserStateWriterReaderTest.kt │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── state │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── state │ │ │ │ │ └── helper │ │ │ │ │ └── OnDeviceTargetTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── state │ │ │ │ │ ├── action │ │ │ │ │ ├── ActionWithTab.kt │ │ │ │ │ ├── AwesomeBarAction.kt │ │ │ │ │ └── BrowserAction.kt │ │ │ │ │ ├── engine │ │ │ │ │ ├── EngineMiddleware.kt │ │ │ │ │ ├── EngineObserver.kt │ │ │ │ │ └── middleware │ │ │ │ │ │ ├── CrashMiddleware.kt │ │ │ │ │ │ ├── CreateEngineSessionMiddleware.kt │ │ │ │ │ │ ├── EngineDelegateMiddleware.kt │ │ │ │ │ │ ├── ExtensionsProcessMiddleware.kt │ │ │ │ │ │ ├── LinkingMiddleware.kt │ │ │ │ │ │ ├── SessionPrioritizationMiddleware.kt │ │ │ │ │ │ ├── SuspendMiddleware.kt │ │ │ │ │ │ ├── TabsRemovedMiddleware.kt │ │ │ │ │ │ ├── TranslationsMiddleware.kt │ │ │ │ │ │ ├── TrimMemoryMiddleware.kt │ │ │ │ │ │ └── WebExtensionMiddleware.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── CustomTabSessionState.kt │ │ │ │ │ └── PermissionRequest.kt │ │ │ │ │ ├── helper │ │ │ │ │ └── Target.kt │ │ │ │ │ ├── reducer │ │ │ │ │ ├── AwesomeBarStateReducer.kt │ │ │ │ │ ├── BrowserStateReducer.kt │ │ │ │ │ ├── ContainerReducer.kt │ │ │ │ │ ├── ContentStateReducer.kt │ │ │ │ │ ├── CookieBannerStateReducer.kt │ │ │ │ │ ├── CopyInternetResourceStateReducer.kt │ │ │ │ │ ├── CrashReducer.kt │ │ │ │ │ ├── CustomTabListReducer.kt │ │ │ │ │ ├── DebugReducer.kt │ │ │ │ │ ├── DownloadStateReducer.kt │ │ │ │ │ ├── EngineStateReducer.kt │ │ │ │ │ ├── ExtensionsProcessStateReducer.kt │ │ │ │ │ ├── HistoryMetadataReducer.kt │ │ │ │ │ ├── InternetResourceReducerUtils.kt │ │ │ │ │ ├── LastAccessReducer.kt │ │ │ │ │ ├── LocaleStateReducer.kt │ │ │ │ │ ├── MediaSessionReducer.kt │ │ │ │ │ ├── ReaderStateReducer.kt │ │ │ │ │ ├── RecentlyClosedReducer.kt │ │ │ │ │ ├── SearchReducer.kt │ │ │ │ │ ├── ShareInternetResourceStateReducer.kt │ │ │ │ │ ├── SystemReducer.kt │ │ │ │ │ ├── TabGroupReducer.kt │ │ │ │ │ ├── TabListReducer.kt │ │ │ │ │ ├── TrackingProtectionStateReducer.kt │ │ │ │ │ ├── TranslationsStateReducer.kt │ │ │ │ │ ├── UndoReducer.kt │ │ │ │ │ └── WebExtensionReducer.kt │ │ │ │ │ ├── search │ │ │ │ │ ├── RegionState.kt │ │ │ │ │ └── SearchEngine.kt │ │ │ │ │ ├── selector │ │ │ │ │ └── Selectors.kt │ │ │ │ │ ├── state │ │ │ │ │ ├── AppIntentState.kt │ │ │ │ │ ├── AwesomeBarState.kt │ │ │ │ │ ├── BrowserState.kt │ │ │ │ │ ├── ContainerState.kt │ │ │ │ │ ├── ContentState.kt │ │ │ │ │ ├── CustomTabConfig.kt │ │ │ │ │ ├── CustomTabSessionState.kt │ │ │ │ │ ├── EngineState.kt │ │ │ │ │ ├── LastMediaAccessState.kt │ │ │ │ │ ├── LoadRequestState.kt │ │ │ │ │ ├── MediaSessionState.kt │ │ │ │ │ ├── ReaderState.kt │ │ │ │ │ ├── SearchState.kt │ │ │ │ │ ├── SecurityInfoState.kt │ │ │ │ │ ├── SessionState.kt │ │ │ │ │ ├── TabPartition.kt │ │ │ │ │ ├── TabSessionState.kt │ │ │ │ │ ├── TrackingProtectionState.kt │ │ │ │ │ ├── TranslationsBrowserState.kt │ │ │ │ │ ├── TranslationsState.kt │ │ │ │ │ ├── UndoHistoryState.kt │ │ │ │ │ ├── WebExtensionState.kt │ │ │ │ │ ├── content │ │ │ │ │ │ ├── DownloadState.kt │ │ │ │ │ │ ├── FindResultState.kt │ │ │ │ │ │ ├── HistoryState.kt │ │ │ │ │ │ ├── PermissionHighlightsState.kt │ │ │ │ │ │ └── ShareInternetResourceState.kt │ │ │ │ │ ├── extension │ │ │ │ │ │ └── WebExtensionPromptRequest.kt │ │ │ │ │ └── recover │ │ │ │ │ │ └── RecoverableTab.kt │ │ │ │ │ └── store │ │ │ │ │ └── BrowserStore.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── state │ │ │ │ │ ├── action │ │ │ │ │ ├── AwesomeBarActionTest.kt │ │ │ │ │ ├── ContainerActionTest.kt │ │ │ │ │ ├── ContentActionTest.kt │ │ │ │ │ ├── CookieBannerActionTest.kt │ │ │ │ │ ├── CustomTabListActionTest.kt │ │ │ │ │ ├── DebugActionTest.kt │ │ │ │ │ ├── DownloadActionTest.kt │ │ │ │ │ ├── EngineActionTest.kt │ │ │ │ │ ├── HistoryMetadataActionTest.kt │ │ │ │ │ ├── LastAccessActionTest.kt │ │ │ │ │ ├── LocaleActionTest.kt │ │ │ │ │ ├── MediaSessionActionTest.kt │ │ │ │ │ ├── ReaderActionTest.kt │ │ │ │ │ ├── SearchActionTest.kt │ │ │ │ │ ├── TabGroupActionTest.kt │ │ │ │ │ ├── TabListActionTest.kt │ │ │ │ │ ├── TrackingProtectionActionTest.kt │ │ │ │ │ ├── TranslationsActionTest.kt │ │ │ │ │ ├── UpdateProductUrlStateActionTest.kt │ │ │ │ │ └── WebExtensionActionTest.kt │ │ │ │ │ ├── engine │ │ │ │ │ ├── EngineMiddlewareTest.kt │ │ │ │ │ ├── EngineObserverTest.kt │ │ │ │ │ └── middleware │ │ │ │ │ │ ├── CrashMiddlewareTest.kt │ │ │ │ │ │ ├── CreateEngineSessionMiddlewareTest.kt │ │ │ │ │ │ ├── EngineDelegateMiddlewareTest.kt │ │ │ │ │ │ ├── ExtensionsProcessMiddlewareTest.kt │ │ │ │ │ │ ├── LinkingMiddlewareTest.kt │ │ │ │ │ │ ├── SessionPrioritizationMiddlewareTest.kt │ │ │ │ │ │ ├── SuspendMiddlewareTest.kt │ │ │ │ │ │ ├── TabsRemovedMiddlewareTest.kt │ │ │ │ │ │ ├── TranslationsMiddlewareTest.kt │ │ │ │ │ │ ├── TrimMemoryMiddlewareTest.kt │ │ │ │ │ │ └── WebExtensionMiddlewareTest.kt │ │ │ │ │ ├── helper │ │ │ │ │ └── TargetTest.kt │ │ │ │ │ ├── reducer │ │ │ │ │ ├── BrowserStateReducerKtTest.kt │ │ │ │ │ ├── CopyInternetResourceStateReducerTest.kt │ │ │ │ │ ├── DebugReducerTest.kt │ │ │ │ │ ├── ExtensionsProcessStateReducerTest.kt │ │ │ │ │ ├── InternetResourceReducerUtilsTest.kt │ │ │ │ │ ├── LastAccessReducerTest.kt │ │ │ │ │ ├── LocaleStateReducerTest.kt │ │ │ │ │ └── ShareInternetResourceStateReducerTest.kt │ │ │ │ │ ├── selector │ │ │ │ │ └── SelectorsKtTest.kt │ │ │ │ │ ├── state │ │ │ │ │ ├── LanguageSettingTest.kt │ │ │ │ │ ├── SearchStateTest.kt │ │ │ │ │ ├── TabPartitionTest.kt │ │ │ │ │ ├── TranslationEngineStateTest.kt │ │ │ │ │ ├── TranslationSupportTest.kt │ │ │ │ │ └── content │ │ │ │ │ │ └── PermissionHighlightsStateTest.kt │ │ │ │ │ └── store │ │ │ │ │ ├── BrowserStoreExceptionTest.kt │ │ │ │ │ └── BrowserStoreTest.kt │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── storage-sync │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── storage │ │ │ │ │ └── sync │ │ │ │ │ ├── Connection.kt │ │ │ │ │ ├── GlobalPlacesDependencyProvider.kt │ │ │ │ │ ├── PlacesBookmarksStorage.kt │ │ │ │ │ ├── PlacesHistoryStorage.kt │ │ │ │ │ ├── PlacesHistoryStorageWorker.kt │ │ │ │ │ ├── PlacesStorage.kt │ │ │ │ │ ├── RemoteTabsStorage.kt │ │ │ │ │ ├── StorageExtensions.kt │ │ │ │ │ ├── StorageMaintenanceWorker.kt │ │ │ │ │ └── Types.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── storage │ │ │ │ │ └── sync │ │ │ │ │ ├── GlobalPlacesDependencyProviderTest.kt │ │ │ │ │ ├── PlacesBookmarksStorageTest.kt │ │ │ │ │ ├── PlacesHistoryStorageTest.kt │ │ │ │ │ ├── PlacesHistoryStorageWorkerTest.kt │ │ │ │ │ ├── PlacesStorageTest.kt │ │ │ │ │ └── RemoteTabsStorageTest.kt │ │ │ │ └── resources │ │ │ │ ├── databases │ │ │ │ ├── bookmarks-v23.db │ │ │ │ ├── empty-v0.db │ │ │ │ ├── history-v34.db │ │ │ │ ├── pinnedSites-v39.db │ │ │ │ ├── populated-v38.db │ │ │ │ ├── populated-v39.db │ │ │ │ ├── populated-v39.db-shm │ │ │ │ ├── populated-v39.db-wal │ │ │ │ └── withHistory-v39.db │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── tabstray │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── tabstray │ │ │ │ │ │ ├── SelectableTabViewHolder.kt │ │ │ │ │ │ ├── TabTouchCallback.kt │ │ │ │ │ │ ├── TabViewHolder.kt │ │ │ │ │ │ ├── TabsAdapter.kt │ │ │ │ │ │ ├── TabsTray.kt │ │ │ │ │ │ ├── TabsTrayStyling.kt │ │ │ │ │ │ └── thumbnail │ │ │ │ │ │ └── TabThumbnailView.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ └── mozac_browser_tabstray_item.xml │ │ │ │ │ └── values │ │ │ │ │ ├── ids.xml │ │ │ │ │ └── mozac_browser_tabstray_strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── tabstray │ │ │ │ │ ├── DefaultTabViewHolderTest.kt │ │ │ │ │ ├── TabTouchCallbackTest.kt │ │ │ │ │ ├── TabViewHolderTest.kt │ │ │ │ │ ├── TabsAdapterTest.kt │ │ │ │ │ └── thumbnail │ │ │ │ │ └── TabThumbnailViewTest.kt │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── thumbnails │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── thumbnails │ │ │ │ │ │ ├── BrowserThumbnails.kt │ │ │ │ │ │ ├── ThumbnailsMiddleware.kt │ │ │ │ │ │ ├── loader │ │ │ │ │ │ └── ThumbnailLoader.kt │ │ │ │ │ │ ├── storage │ │ │ │ │ │ └── ThumbnailStorage.kt │ │ │ │ │ │ └── utils │ │ │ │ │ │ └── ThumbnailDiskCache.kt │ │ │ │ └── res │ │ │ │ │ └── values │ │ │ │ │ ├── dimens.xml │ │ │ │ │ └── tags.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── thumbnails │ │ │ │ │ ├── BrowserThumbnailsTest.kt │ │ │ │ │ ├── ThumbnailsMiddlewareTest.kt │ │ │ │ │ ├── loader │ │ │ │ │ └── ThumbnailLoaderTest.kt │ │ │ │ │ ├── storage │ │ │ │ │ └── ThumbnailStorageTest.kt │ │ │ │ │ └── utils │ │ │ │ │ └── ThumbnailDiskCacheTest.kt │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ └── toolbar │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── browser │ │ │ │ │ └── toolbar │ │ │ │ │ ├── BrowserToolbar.kt │ │ │ │ │ ├── display │ │ │ │ │ ├── DisplayToolbar.kt │ │ │ │ │ ├── DisplayToolbarView.kt │ │ │ │ │ ├── HighlightView.kt │ │ │ │ │ ├── MenuButton.kt │ │ │ │ │ ├── OriginView.kt │ │ │ │ │ ├── SiteSecurityIconView.kt │ │ │ │ │ └── TrackingProtectionIconView.kt │ │ │ │ │ ├── edit │ │ │ │ │ └── EditToolbar.kt │ │ │ │ │ ├── facts │ │ │ │ │ └── ToolbarFacts.kt │ │ │ │ │ └── internal │ │ │ │ │ ├── ActionContainer.kt │ │ │ │ │ └── ActionWrapper.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── mozac_browser_toolbar_icons_vertical_separator.xml │ │ │ │ ├── mozac_dot_notification.xml │ │ │ │ ├── mozac_ic_site_security.xml │ │ │ │ ├── mozac_ic_tracking_protection_off_for_a_site.xml │ │ │ │ ├── mozac_ic_tracking_protection_on_no_trackers_blocked.xml │ │ │ │ └── mozac_ic_tracking_protection_on_trackers_blocked.xml │ │ │ │ ├── layout │ │ │ │ ├── mozac_browser_toolbar_displaytoolbar.xml │ │ │ │ └── mozac_browser_toolbar_edittoolbar.xml │ │ │ │ ├── values-am │ │ │ │ └── strings.xml │ │ │ │ ├── values-an │ │ │ │ └── strings.xml │ │ │ │ ├── values-ar │ │ │ │ └── strings.xml │ │ │ │ ├── values-ast │ │ │ │ └── strings.xml │ │ │ │ ├── values-az │ │ │ │ └── strings.xml │ │ │ │ ├── values-azb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ban │ │ │ │ └── strings.xml │ │ │ │ ├── values-be │ │ │ │ └── strings.xml │ │ │ │ ├── values-bg │ │ │ │ └── strings.xml │ │ │ │ ├── values-bn │ │ │ │ └── strings.xml │ │ │ │ ├── values-br │ │ │ │ └── strings.xml │ │ │ │ ├── values-bs │ │ │ │ └── strings.xml │ │ │ │ ├── values-ca │ │ │ │ └── strings.xml │ │ │ │ ├── values-cak │ │ │ │ └── strings.xml │ │ │ │ ├── values-ceb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ckb │ │ │ │ └── strings.xml │ │ │ │ ├── values-co │ │ │ │ └── strings.xml │ │ │ │ ├── values-cs │ │ │ │ └── strings.xml │ │ │ │ ├── values-cy │ │ │ │ └── strings.xml │ │ │ │ ├── values-da │ │ │ │ └── strings.xml │ │ │ │ ├── values-de │ │ │ │ └── strings.xml │ │ │ │ ├── values-dsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-el │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rCA │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rGB │ │ │ │ └── strings.xml │ │ │ │ ├── values-eo │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rAR │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rCL │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rES │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rMX │ │ │ │ └── strings.xml │ │ │ │ ├── values-es │ │ │ │ └── strings.xml │ │ │ │ ├── values-et │ │ │ │ └── strings.xml │ │ │ │ ├── values-eu │ │ │ │ └── strings.xml │ │ │ │ ├── values-fa │ │ │ │ └── strings.xml │ │ │ │ ├── values-ff │ │ │ │ └── strings.xml │ │ │ │ ├── values-fi │ │ │ │ └── strings.xml │ │ │ │ ├── values-fr │ │ │ │ └── strings.xml │ │ │ │ ├── values-fur │ │ │ │ └── strings.xml │ │ │ │ ├── values-fy-rNL │ │ │ │ └── strings.xml │ │ │ │ ├── values-ga-rIE │ │ │ │ └── strings.xml │ │ │ │ ├── values-gd │ │ │ │ └── strings.xml │ │ │ │ ├── values-gl │ │ │ │ └── strings.xml │ │ │ │ ├── values-gn │ │ │ │ └── strings.xml │ │ │ │ ├── values-gu-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hi-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hil │ │ │ │ └── strings.xml │ │ │ │ ├── values-hr │ │ │ │ └── strings.xml │ │ │ │ ├── values-hsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-hu │ │ │ │ └── strings.xml │ │ │ │ ├── values-hy-rAM │ │ │ │ └── strings.xml │ │ │ │ ├── values-ia │ │ │ │ └── strings.xml │ │ │ │ ├── values-in │ │ │ │ └── strings.xml │ │ │ │ ├── values-is │ │ │ │ └── strings.xml │ │ │ │ ├── values-it │ │ │ │ └── strings.xml │ │ │ │ ├── values-iw │ │ │ │ └── strings.xml │ │ │ │ ├── values-ja │ │ │ │ └── strings.xml │ │ │ │ ├── values-ka │ │ │ │ └── strings.xml │ │ │ │ ├── values-kaa │ │ │ │ └── strings.xml │ │ │ │ ├── values-kab │ │ │ │ └── strings.xml │ │ │ │ ├── values-kk │ │ │ │ └── strings.xml │ │ │ │ ├── values-kmr │ │ │ │ └── strings.xml │ │ │ │ ├── values-kn │ │ │ │ └── strings.xml │ │ │ │ ├── values-ko │ │ │ │ └── strings.xml │ │ │ │ ├── values-ldrtl │ │ │ │ └── dimens.xml │ │ │ │ ├── values-lij │ │ │ │ └── strings.xml │ │ │ │ ├── values-lo │ │ │ │ └── strings.xml │ │ │ │ ├── values-lt │ │ │ │ └── strings.xml │ │ │ │ ├── values-mix │ │ │ │ └── strings.xml │ │ │ │ ├── values-ml │ │ │ │ └── strings.xml │ │ │ │ ├── values-mr │ │ │ │ └── strings.xml │ │ │ │ ├── values-my │ │ │ │ └── strings.xml │ │ │ │ ├── values-nb-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-ne-rNP │ │ │ │ └── strings.xml │ │ │ │ ├── values-nl │ │ │ │ └── strings.xml │ │ │ │ ├── values-nn-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-oc │ │ │ │ └── strings.xml │ │ │ │ ├── values-or │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rPK │ │ │ │ └── strings.xml │ │ │ │ ├── values-pl │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rBR │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rPT │ │ │ │ └── strings.xml │ │ │ │ ├── values-rm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ro │ │ │ │ └── strings.xml │ │ │ │ ├── values-ru │ │ │ │ └── strings.xml │ │ │ │ ├── values-sat │ │ │ │ └── strings.xml │ │ │ │ ├── values-sc │ │ │ │ └── strings.xml │ │ │ │ ├── values-si │ │ │ │ └── strings.xml │ │ │ │ ├── values-sk │ │ │ │ └── strings.xml │ │ │ │ ├── values-skr │ │ │ │ └── strings.xml │ │ │ │ ├── values-sl │ │ │ │ └── strings.xml │ │ │ │ ├── values-sq │ │ │ │ └── strings.xml │ │ │ │ ├── values-sr │ │ │ │ └── strings.xml │ │ │ │ ├── values-su │ │ │ │ └── strings.xml │ │ │ │ ├── values-sv-rSE │ │ │ │ └── strings.xml │ │ │ │ ├── values-szl │ │ │ │ └── strings.xml │ │ │ │ ├── values-ta │ │ │ │ └── strings.xml │ │ │ │ ├── values-te │ │ │ │ └── strings.xml │ │ │ │ ├── values-tg │ │ │ │ └── strings.xml │ │ │ │ ├── values-th │ │ │ │ └── strings.xml │ │ │ │ ├── values-tl │ │ │ │ └── strings.xml │ │ │ │ ├── values-tok │ │ │ │ └── strings.xml │ │ │ │ ├── values-tr │ │ │ │ └── strings.xml │ │ │ │ ├── values-trs │ │ │ │ └── strings.xml │ │ │ │ ├── values-tt │ │ │ │ └── strings.xml │ │ │ │ ├── values-tzm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ug │ │ │ │ └── strings.xml │ │ │ │ ├── values-uk │ │ │ │ └── strings.xml │ │ │ │ ├── values-ur │ │ │ │ └── strings.xml │ │ │ │ ├── values-uz │ │ │ │ └── strings.xml │ │ │ │ ├── values-vec │ │ │ │ └── strings.xml │ │ │ │ ├── values-vi │ │ │ │ └── strings.xml │ │ │ │ ├── values-yo │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rCN │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rTW │ │ │ │ └── strings.xml │ │ │ │ └── values │ │ │ │ ├── attrs_browser_toolbar.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── ids.xml │ │ │ │ └── strings.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── browser │ │ │ │ └── toolbar │ │ │ │ ├── AsyncFilterListenerTest.kt │ │ │ │ ├── BrowserToolbarTest.kt │ │ │ │ ├── display │ │ │ │ ├── DisplayToolbarTest.kt │ │ │ │ ├── HighlightViewTest.kt │ │ │ │ ├── MenuButtonTest.kt │ │ │ │ └── TrackingProtectionIconViewTest.kt │ │ │ │ └── edit │ │ │ │ └── EditToolbarTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── compose │ │ ├── awesomebar │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── compose │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── awesomebar │ │ │ │ │ │ ├── AwesomeBar.kt │ │ │ │ │ │ ├── AwesomeBarColors.kt │ │ │ │ │ │ ├── AwesomeBarDefaults.kt │ │ │ │ │ │ ├── AwesomeBarFacts.kt │ │ │ │ │ │ ├── AwesomeBarOrientation.kt │ │ │ │ │ │ └── internal │ │ │ │ │ │ ├── Suggestion.kt │ │ │ │ │ │ ├── SuggestionFetcher.kt │ │ │ │ │ │ ├── SuggestionGroup.kt │ │ │ │ │ │ └── Suggestions.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-szl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── compose │ │ │ │ │ └── browser │ │ │ │ │ └── awesomebar │ │ │ │ │ └── internal │ │ │ │ │ ├── SuggestionFetcherTest.kt │ │ │ │ │ └── SuggestionsTest.kt │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── browser-toolbar │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── compose │ │ │ │ │ │ └── browser │ │ │ │ │ │ └── toolbar │ │ │ │ │ │ ├── BrowserDisplayToolbar.kt │ │ │ │ │ │ ├── BrowserEditToolbar.kt │ │ │ │ │ │ └── BrowserToolbar.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-szl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── cfr │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── compose │ │ │ │ │ │ └── cfr │ │ │ │ │ │ ├── CFRPopup.kt │ │ │ │ │ │ ├── CFRPopupContent.kt │ │ │ │ │ │ ├── CFRPopupFullscreenLayout.kt │ │ │ │ │ │ ├── CFRPopupShape.kt │ │ │ │ │ │ └── helper │ │ │ │ │ │ ├── DisplayOrientationListener.kt │ │ │ │ │ │ └── ViewDetachedListener.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-szl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── compose │ │ │ │ │ └── cfr │ │ │ │ │ ├── CFRPopupFullscreenLayoutTest.kt │ │ │ │ │ └── helper │ │ │ │ │ ├── DisplayOrientationListenerTest.kt │ │ │ │ │ └── ViewDetachedListenerTest.kt │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── engine │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── compose │ │ │ │ │ └── engine │ │ │ │ │ └── WebContent.kt │ │ │ │ └── test │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ └── tabstray │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── compose │ │ │ │ │ └── tabstray │ │ │ │ │ ├── Tab.kt │ │ │ │ │ ├── TabCounterButton.kt │ │ │ │ │ └── TabList.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── mozac_tabcounter_background.xml │ │ │ │ ├── values-am │ │ │ │ └── strings.xml │ │ │ │ ├── values-ar │ │ │ │ └── strings.xml │ │ │ │ ├── values-ast │ │ │ │ └── strings.xml │ │ │ │ ├── values-azb │ │ │ │ └── strings.xml │ │ │ │ ├── values-be │ │ │ │ └── strings.xml │ │ │ │ ├── values-bg │ │ │ │ └── strings.xml │ │ │ │ ├── values-br │ │ │ │ └── strings.xml │ │ │ │ ├── values-bs │ │ │ │ └── strings.xml │ │ │ │ ├── values-ca │ │ │ │ └── strings.xml │ │ │ │ ├── values-cak │ │ │ │ └── strings.xml │ │ │ │ ├── values-ceb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ckb │ │ │ │ └── strings.xml │ │ │ │ ├── values-co │ │ │ │ └── strings.xml │ │ │ │ ├── values-cs │ │ │ │ └── strings.xml │ │ │ │ ├── values-cy │ │ │ │ └── strings.xml │ │ │ │ ├── values-da │ │ │ │ └── strings.xml │ │ │ │ ├── values-de │ │ │ │ └── strings.xml │ │ │ │ ├── values-dsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-el │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rCA │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rGB │ │ │ │ └── strings.xml │ │ │ │ ├── values-eo │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rAR │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rCL │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rES │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rMX │ │ │ │ └── strings.xml │ │ │ │ ├── values-es │ │ │ │ └── strings.xml │ │ │ │ ├── values-et │ │ │ │ └── strings.xml │ │ │ │ ├── values-eu │ │ │ │ └── strings.xml │ │ │ │ ├── values-fa │ │ │ │ └── strings.xml │ │ │ │ ├── values-fi │ │ │ │ └── strings.xml │ │ │ │ ├── values-fr │ │ │ │ └── strings.xml │ │ │ │ ├── values-fur │ │ │ │ └── strings.xml │ │ │ │ ├── values-fy-rNL │ │ │ │ └── strings.xml │ │ │ │ ├── values-gd │ │ │ │ └── strings.xml │ │ │ │ ├── values-gl │ │ │ │ └── strings.xml │ │ │ │ ├── values-gn │ │ │ │ └── strings.xml │ │ │ │ ├── values-hi-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hr │ │ │ │ └── strings.xml │ │ │ │ ├── values-hsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-hu │ │ │ │ └── strings.xml │ │ │ │ ├── values-hy-rAM │ │ │ │ └── strings.xml │ │ │ │ ├── values-ia │ │ │ │ └── strings.xml │ │ │ │ ├── values-in │ │ │ │ └── strings.xml │ │ │ │ ├── values-is │ │ │ │ └── strings.xml │ │ │ │ ├── values-it │ │ │ │ └── strings.xml │ │ │ │ ├── values-iw │ │ │ │ └── strings.xml │ │ │ │ ├── values-ja │ │ │ │ └── strings.xml │ │ │ │ ├── values-ka │ │ │ │ └── strings.xml │ │ │ │ ├── values-kaa │ │ │ │ └── strings.xml │ │ │ │ ├── values-kab │ │ │ │ └── strings.xml │ │ │ │ ├── values-kk │ │ │ │ └── strings.xml │ │ │ │ ├── values-kmr │ │ │ │ └── strings.xml │ │ │ │ ├── values-ko │ │ │ │ └── strings.xml │ │ │ │ ├── values-lo │ │ │ │ └── strings.xml │ │ │ │ ├── values-lt │ │ │ │ └── strings.xml │ │ │ │ ├── values-mr │ │ │ │ └── strings.xml │ │ │ │ ├── values-my │ │ │ │ └── strings.xml │ │ │ │ ├── values-nb-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-ne-rNP │ │ │ │ └── strings.xml │ │ │ │ ├── values-nl │ │ │ │ └── strings.xml │ │ │ │ ├── values-nn-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-oc │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rPK │ │ │ │ └── strings.xml │ │ │ │ ├── values-pl │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rBR │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rPT │ │ │ │ └── strings.xml │ │ │ │ ├── values-rm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ro │ │ │ │ └── strings.xml │ │ │ │ ├── values-ru │ │ │ │ └── strings.xml │ │ │ │ ├── values-sat │ │ │ │ └── strings.xml │ │ │ │ ├── values-sc │ │ │ │ └── strings.xml │ │ │ │ ├── values-si │ │ │ │ └── strings.xml │ │ │ │ ├── values-sk │ │ │ │ └── strings.xml │ │ │ │ ├── values-skr │ │ │ │ └── strings.xml │ │ │ │ ├── values-sl │ │ │ │ └── strings.xml │ │ │ │ ├── values-sq │ │ │ │ └── strings.xml │ │ │ │ ├── values-sr │ │ │ │ └── strings.xml │ │ │ │ ├── values-su │ │ │ │ └── strings.xml │ │ │ │ ├── values-sv-rSE │ │ │ │ └── strings.xml │ │ │ │ ├── values-szl │ │ │ │ └── strings.xml │ │ │ │ ├── values-ta │ │ │ │ └── strings.xml │ │ │ │ ├── values-tg │ │ │ │ └── strings.xml │ │ │ │ ├── values-th │ │ │ │ └── strings.xml │ │ │ │ ├── values-tl │ │ │ │ └── strings.xml │ │ │ │ ├── values-tr │ │ │ │ └── strings.xml │ │ │ │ ├── values-trs │ │ │ │ └── strings.xml │ │ │ │ ├── values-tt │ │ │ │ └── strings.xml │ │ │ │ ├── values-ug │ │ │ │ └── strings.xml │ │ │ │ ├── values-uk │ │ │ │ └── strings.xml │ │ │ │ ├── values-ur │ │ │ │ └── strings.xml │ │ │ │ ├── values-uz │ │ │ │ └── strings.xml │ │ │ │ ├── values-vec │ │ │ │ └── strings.xml │ │ │ │ ├── values-vi │ │ │ │ └── strings.xml │ │ │ │ ├── values-yo │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rCN │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rTW │ │ │ │ └── strings.xml │ │ │ │ └── values │ │ │ │ └── strings.xml │ │ │ └── test │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ ├── concept │ │ ├── awesomebar │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── concept │ │ │ │ └── awesomebar │ │ │ │ └── AwesomeBar.kt │ │ ├── base │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── base │ │ │ │ │ ├── crash │ │ │ │ │ ├── Breadcrumb.kt │ │ │ │ │ ├── CrashReporting.kt │ │ │ │ │ └── RustCrashReport.kt │ │ │ │ │ ├── images │ │ │ │ │ ├── ImageLoader.kt │ │ │ │ │ └── ImageRequest.kt │ │ │ │ │ ├── memory │ │ │ │ │ └── MemoryConsumer.kt │ │ │ │ │ └── profiler │ │ │ │ │ └── Profiler.kt │ │ │ │ └── test │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── engine │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ ├── engine │ │ │ │ │ ├── CancellableOperation.kt │ │ │ │ │ ├── DataCleanable.kt │ │ │ │ │ ├── Engine.kt │ │ │ │ │ ├── EngineSession.kt │ │ │ │ │ ├── EngineSessionState.kt │ │ │ │ │ ├── EngineView.kt │ │ │ │ │ ├── HitResult.kt │ │ │ │ │ ├── InputResultDetail.kt │ │ │ │ │ ├── Settings.kt │ │ │ │ │ ├── activity │ │ │ │ │ │ ├── ActivityDelegate.kt │ │ │ │ │ │ └── OrientationDelegate.kt │ │ │ │ │ ├── content │ │ │ │ │ │ └── blocking │ │ │ │ │ │ │ ├── Tracker.kt │ │ │ │ │ │ │ ├── TrackerLog.kt │ │ │ │ │ │ │ ├── TrackingProtectionException.kt │ │ │ │ │ │ │ └── TrackingProtectionExceptionStorage.kt │ │ │ │ │ ├── cookiehandling │ │ │ │ │ │ └── CookieBannersStorage.kt │ │ │ │ │ ├── history │ │ │ │ │ │ ├── HistoryItem.kt │ │ │ │ │ │ └── HistoryTrackingDelegate.kt │ │ │ │ │ ├── manifest │ │ │ │ │ │ ├── Size.kt │ │ │ │ │ │ ├── WebAppManifest.kt │ │ │ │ │ │ ├── WebAppManifestParser.kt │ │ │ │ │ │ └── parser │ │ │ │ │ │ │ ├── ShareTargetParser.kt │ │ │ │ │ │ │ └── WebAppManifestIconParser.kt │ │ │ │ │ ├── media │ │ │ │ │ │ └── RecordingDevice.kt │ │ │ │ │ ├── mediaquery │ │ │ │ │ │ └── PreferredColorScheme.kt │ │ │ │ │ ├── mediasession │ │ │ │ │ │ └── MediaSession.kt │ │ │ │ │ ├── permission │ │ │ │ │ │ ├── PermissionRequest.kt │ │ │ │ │ │ ├── SitePermissions.kt │ │ │ │ │ │ └── SitePermissionsStorage.kt │ │ │ │ │ ├── prompt │ │ │ │ │ │ ├── Choice.kt │ │ │ │ │ │ ├── PromptRequest.kt │ │ │ │ │ │ └── ShareData.kt │ │ │ │ │ ├── request │ │ │ │ │ │ └── RequestInterceptor.kt │ │ │ │ │ ├── search │ │ │ │ │ │ └── SearchRequest.kt │ │ │ │ │ ├── selection │ │ │ │ │ │ └── SelectionActionDelegate.kt │ │ │ │ │ ├── serviceworker │ │ │ │ │ │ └── ServiceWorkerDelegate.kt │ │ │ │ │ ├── shopping │ │ │ │ │ │ ├── ProductAnalysis.kt │ │ │ │ │ │ ├── ProductAnalysisStatus.kt │ │ │ │ │ │ └── ProductRecommendation.kt │ │ │ │ │ ├── translate │ │ │ │ │ │ ├── DetectedLanguages.kt │ │ │ │ │ │ ├── Language.kt │ │ │ │ │ │ ├── LanguageModel.kt │ │ │ │ │ │ ├── LanguageSetting.kt │ │ │ │ │ │ ├── ModelManagementOptions.kt │ │ │ │ │ │ ├── ModelOperation.kt │ │ │ │ │ │ ├── OperationLevel.kt │ │ │ │ │ │ ├── TranslationDownloadSize.kt │ │ │ │ │ │ ├── TranslationEngineState.kt │ │ │ │ │ │ ├── TranslationError.kt │ │ │ │ │ │ ├── TranslationOperation.kt │ │ │ │ │ │ ├── TranslationOptions.kt │ │ │ │ │ │ ├── TranslationPageSettingOperation.kt │ │ │ │ │ │ ├── TranslationPageSettings.kt │ │ │ │ │ │ ├── TranslationPair.kt │ │ │ │ │ │ ├── TranslationSupport.kt │ │ │ │ │ │ └── TranslationsRuntime.kt │ │ │ │ │ ├── utils │ │ │ │ │ │ └── EngineVersion.kt │ │ │ │ │ ├── webextension │ │ │ │ │ │ ├── Action.kt │ │ │ │ │ │ ├── InstallationMethod.kt │ │ │ │ │ │ ├── WebExtension.kt │ │ │ │ │ │ ├── WebExtensionDelegate.kt │ │ │ │ │ │ └── WebExtensionRuntime.kt │ │ │ │ │ ├── webnotifications │ │ │ │ │ │ ├── WebNotification.kt │ │ │ │ │ │ └── WebNotificationDelegate.kt │ │ │ │ │ ├── webpush │ │ │ │ │ │ ├── WebPush.kt │ │ │ │ │ │ └── WebPushDelegate.kt │ │ │ │ │ └── window │ │ │ │ │ │ └── WindowRequest.kt │ │ │ │ │ └── identitycredential │ │ │ │ │ ├── Account.kt │ │ │ │ │ └── Provider.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── engine │ │ │ │ │ ├── EngineSessionTest.kt │ │ │ │ │ ├── EngineTest.kt │ │ │ │ │ ├── EngineViewTest.kt │ │ │ │ │ ├── HitResultTest.kt │ │ │ │ │ ├── InputResultDetailTest.kt │ │ │ │ │ ├── SettingsTest.kt │ │ │ │ │ ├── manifest │ │ │ │ │ ├── SizeTest.kt │ │ │ │ │ └── WebAppManifestParserTest.kt │ │ │ │ │ ├── mediasession │ │ │ │ │ └── MediaSessionTest.kt │ │ │ │ │ ├── permission │ │ │ │ │ ├── PermissionRequestTest.kt │ │ │ │ │ └── PermissionTest.kt │ │ │ │ │ ├── prompt │ │ │ │ │ ├── ChoiceTest.kt │ │ │ │ │ ├── PromptRequestTest.kt │ │ │ │ │ └── ShareDataTest.kt │ │ │ │ │ ├── request │ │ │ │ │ └── RequestInterceptorTest.kt │ │ │ │ │ ├── utils │ │ │ │ │ └── EngineVersionTest.kt │ │ │ │ │ ├── webextension │ │ │ │ │ ├── ActionTest.kt │ │ │ │ │ └── WebExtensionTest.kt │ │ │ │ │ └── webpush │ │ │ │ │ └── WebPushSubscriptionTest.kt │ │ │ │ └── resources │ │ │ │ ├── manifests │ │ │ │ ├── example_google.json │ │ │ │ ├── example_mdn.json │ │ │ │ ├── invalid_json.json │ │ │ │ ├── invalid_missing_name.json │ │ │ │ ├── minimal.json │ │ │ │ ├── minimal_share_target.json │ │ │ │ ├── minimal_short_name.json │ │ │ │ ├── purpose_array.json │ │ │ │ ├── spec_typical.json │ │ │ │ ├── squoosh.json │ │ │ │ ├── twitter_mobile.json │ │ │ │ └── unusual.json │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── fetch │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── fetch │ │ │ │ │ ├── Client.kt │ │ │ │ │ ├── Headers.kt │ │ │ │ │ ├── Request.kt │ │ │ │ │ ├── Response.kt │ │ │ │ │ └── interceptor │ │ │ │ │ └── Interceptor.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── fetch │ │ │ │ │ ├── ClientTest.kt │ │ │ │ │ ├── HeadersTest.kt │ │ │ │ │ ├── RequestTest.kt │ │ │ │ │ ├── ResponseTest.kt │ │ │ │ │ └── interceptor │ │ │ │ │ └── InterceptorTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── menu │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── menu │ │ │ │ │ ├── MenuButton.kt │ │ │ │ │ ├── MenuController.kt │ │ │ │ │ ├── MenuStyle.kt │ │ │ │ │ ├── Orientation.kt │ │ │ │ │ ├── Side.kt │ │ │ │ │ ├── candidate │ │ │ │ │ ├── ContainerStyle.kt │ │ │ │ │ ├── MenuCandidate.kt │ │ │ │ │ ├── MenuEffect.kt │ │ │ │ │ ├── MenuIcon.kt │ │ │ │ │ ├── SmallMenuCandidate.kt │ │ │ │ │ └── TextStyle.kt │ │ │ │ │ └── ext │ │ │ │ │ └── MenuCandidate.kt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── concept │ │ │ │ └── menu │ │ │ │ └── ext │ │ │ │ └── MenuCandidateTest.kt │ │ ├── push │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── push │ │ │ │ │ ├── PushProcessor.kt │ │ │ │ │ ├── PushService.kt │ │ │ │ │ └── exceptions │ │ │ │ │ └── SubscriptionException.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── push │ │ │ │ │ ├── PushErrorTest.kt │ │ │ │ │ └── PushProcessorTest.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── storage │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── concept │ │ │ │ │ └── storage │ │ │ │ │ ├── BookmarksStorage.kt │ │ │ │ │ ├── Cancellable.kt │ │ │ │ │ ├── CreditCardsAddressesStorage.kt │ │ │ │ │ ├── HistoryMetadataStorage.kt │ │ │ │ │ ├── HistoryStorage.kt │ │ │ │ │ ├── KeyManager.kt │ │ │ │ │ ├── KeyProvider.kt │ │ │ │ │ ├── LoginsStorage.kt │ │ │ │ │ ├── Storage.kt │ │ │ │ │ └── StorageMaintenanceRegistry.kt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── concept │ │ │ │ └── storage │ │ │ │ ├── AddressTest.kt │ │ │ │ ├── BookmarkNodeTest.kt │ │ │ │ └── CreditCardEntryTest.kt │ │ ├── sync │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── concept │ │ │ │ └── sync │ │ │ │ ├── AccountEvent.kt │ │ │ │ ├── Devices.kt │ │ │ │ ├── OAuthAccount.kt │ │ │ │ └── Sync.kt │ │ ├── tabstray │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── concept │ │ │ │ └── tabstray │ │ │ │ ├── Tab.kt │ │ │ │ ├── Tabs.kt │ │ │ │ └── TabsTray.kt │ │ └── toolbar │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── concept │ │ │ │ └── toolbar │ │ │ │ ├── AutocompleteDelegate.kt │ │ │ │ ├── AutocompleteProvider.kt │ │ │ │ ├── AutocompleteResult.kt │ │ │ │ ├── ScrollableToolbar.kt │ │ │ │ └── Toolbar.kt │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── concept │ │ │ │ └── toolbar │ │ │ │ ├── ActionButtonTest.kt │ │ │ │ ├── ActionImageTest.kt │ │ │ │ ├── ActionSpaceTest.kt │ │ │ │ └── ActionToggleButtonTest.kt │ │ │ └── resources │ │ │ └── robolectric.properties │ ├── feature │ │ ├── accounts-push │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── accounts │ │ │ │ │ └── push │ │ │ │ │ ├── FxaPushSupportFeature.kt │ │ │ │ │ ├── SendTabFeature.kt │ │ │ │ │ ├── SendTabUseCases.kt │ │ │ │ │ ├── cache │ │ │ │ │ ├── PushScopeProperty.kt │ │ │ │ │ └── ScopeProperty.kt │ │ │ │ │ └── ext │ │ │ │ │ └── String.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── accounts │ │ │ │ │ └── push │ │ │ │ │ ├── AccountObserverTest.kt │ │ │ │ │ ├── AutoPushObserverTest.kt │ │ │ │ │ ├── ConstellationObserverTest.kt │ │ │ │ │ ├── EventsObserverTest.kt │ │ │ │ │ ├── FxaPushSupportFeatureTest.kt │ │ │ │ │ ├── SendTabFeatureKtTest.kt │ │ │ │ │ ├── SendTabUseCasesTest.kt │ │ │ │ │ ├── VerificationDelegateTest.kt │ │ │ │ │ └── ext │ │ │ │ │ └── StringKtTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── accounts │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ └── extensions │ │ │ │ │ │ └── fxawebchannel │ │ │ │ │ │ ├── background.js │ │ │ │ │ │ ├── fxawebchannel.js │ │ │ │ │ │ └── manifest.template.json │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── accounts │ │ │ │ │ ├── FirefoxAccountsAuthFeature.kt │ │ │ │ │ └── FxaWebChannelFeature.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── accounts │ │ │ │ │ ├── FirefoxAccountsAuthFeatureTest.kt │ │ │ │ │ └── FxaWebChannelFeatureTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── addons │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.addons.update.db.UpdateAttemptsDatabase │ │ │ │ │ └── 1.json │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── addons │ │ │ │ │ │ ├── Addon.kt │ │ │ │ │ │ ├── AddonManager.kt │ │ │ │ │ │ ├── AddonsProvider.kt │ │ │ │ │ │ ├── amo │ │ │ │ │ │ └── AMOAddonsProvider.kt │ │ │ │ │ │ ├── menu │ │ │ │ │ │ ├── WebExtensionActionMenuCandidate.kt │ │ │ │ │ │ └── WebExtensionNestedMenuCandidate.kt │ │ │ │ │ │ ├── migration │ │ │ │ │ │ └── SupportedAddonsChecker.kt │ │ │ │ │ │ ├── ui │ │ │ │ │ │ ├── AddonDialogFragment.kt │ │ │ │ │ │ ├── AddonFilePicker.kt │ │ │ │ │ │ ├── AddonInstallationDialogFragment.kt │ │ │ │ │ │ ├── AddonPermissionsAdapter.kt │ │ │ │ │ │ ├── AddonsManagerAdapter.kt │ │ │ │ │ │ ├── AddonsManagerAdapterDelegate.kt │ │ │ │ │ │ ├── CustomViewHolder.kt │ │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ │ ├── PermissionsDialogFragment.kt │ │ │ │ │ │ ├── UnsupportedAddonsAdapter.kt │ │ │ │ │ │ └── UnsupportedAddonsAdapterDelegate.kt │ │ │ │ │ │ ├── update │ │ │ │ │ │ ├── AddonUpdater.kt │ │ │ │ │ │ ├── GlobalAddonDependencyProvider.kt │ │ │ │ │ │ └── db │ │ │ │ │ │ │ ├── UpdateAttemptDao.kt │ │ │ │ │ │ │ ├── UpdateAttemptEntity.kt │ │ │ │ │ │ │ └── UpdateAttemptsDatabase.kt │ │ │ │ │ │ └── worker │ │ │ │ │ │ └── Extensions.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_feature_addons_footer_section_item.xml │ │ │ │ │ ├── mozac_feature_addons_fragment_dialog_addon_installed.xml │ │ │ │ │ ├── mozac_feature_addons_fragment_dialog_addon_permissions.xml │ │ │ │ │ ├── mozac_feature_addons_header_section_item.xml │ │ │ │ │ ├── mozac_feature_addons_item.xml │ │ │ │ │ ├── mozac_feature_addons_permission_item.xml │ │ │ │ │ ├── mozac_feature_addons_section_item.xml │ │ │ │ │ ├── mozac_feature_addons_section_unsupported_section_item.xml │ │ │ │ │ └── mozac_feature_addons_unsupported_item.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-szl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── dimens.xml │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ ├── AddonManagerTest.kt │ │ │ │ ├── AddonTest.kt │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── addons │ │ │ │ │ ├── amo │ │ │ │ │ └── AMOAddonsProviderTest.kt │ │ │ │ │ ├── menu │ │ │ │ │ ├── WebExtensionActionMenuCandidateTest.kt │ │ │ │ │ └── WebExtensionNestedMenuCandidateTest.kt │ │ │ │ │ ├── migration │ │ │ │ │ ├── DefaultSupportedAddonCheckerTest.kt │ │ │ │ │ └── SupportedAddonsWorkerTest.kt │ │ │ │ │ ├── ui │ │ │ │ │ ├── AddonDialogFragmentTest.kt │ │ │ │ │ ├── AddonFilePickerTest.kt │ │ │ │ │ ├── AddonInstallationDialogFragmentTest.kt │ │ │ │ │ ├── AddonsManagerAdapterTest.kt │ │ │ │ │ ├── AddonsPermissionsAdapterTest.kt │ │ │ │ │ ├── ExtensionsTest.kt │ │ │ │ │ ├── PermissionsDialogFragmentTest.kt │ │ │ │ │ └── UnsupportedAddonsAdapterTest.kt │ │ │ │ │ ├── update │ │ │ │ │ ├── AddonUpdaterWorkerTest.kt │ │ │ │ │ ├── DefaultAddonUpdaterTest.kt │ │ │ │ │ ├── GlobalAddonDependencyProviderTest.kt │ │ │ │ │ ├── NotificationHandlerServiceTest.kt │ │ │ │ │ ├── UpdateAttemptStorageTest.kt │ │ │ │ │ ├── UpdateStatusStorageTest.kt │ │ │ │ │ └── db │ │ │ │ │ │ └── UpdateAttemptEntityTest.kt │ │ │ │ │ └── worker │ │ │ │ │ └── ExtensionsTest.kt │ │ │ │ └── resources │ │ │ │ ├── amo_search_localized_single_result.json │ │ │ │ ├── amo_search_multiple_results.json │ │ │ │ ├── amo_search_single_result.json │ │ │ │ ├── collection.json │ │ │ │ ├── collection_with_empty_values.json │ │ │ │ ├── localized_collection.json │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ ├── png │ │ │ │ └── mozac.png │ │ │ │ └── robolectric.properties │ │ ├── app-links │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── app │ │ │ │ │ │ └── links │ │ │ │ │ │ ├── AppLinkRedirect.kt │ │ │ │ │ │ ├── AppLinksFeature.kt │ │ │ │ │ │ ├── AppLinksInterceptor.kt │ │ │ │ │ │ ├── AppLinksUseCases.kt │ │ │ │ │ │ ├── RedirectDialogFragment.kt │ │ │ │ │ │ └── SimpleRedirectDialogFragment.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── app │ │ │ │ │ └── links │ │ │ │ │ ├── AppLinkRedirectTest.kt │ │ │ │ │ ├── AppLinksFeatureTest.kt │ │ │ │ │ ├── AppLinksInterceptorTest.kt │ │ │ │ │ ├── AppLinksUseCasesTest.kt │ │ │ │ │ └── SimpleRedirectDialogFragmentTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── autofill │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── autofill │ │ │ │ │ │ ├── AbstractAutofillService.kt │ │ │ │ │ │ ├── AutofillConfiguration.kt │ │ │ │ │ │ ├── AutofillUseCases.kt │ │ │ │ │ │ ├── authenticator │ │ │ │ │ │ ├── Authenticator.kt │ │ │ │ │ │ ├── BiometricAuthenticator.kt │ │ │ │ │ │ └── DeviceCredentialAuthenticator.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ └── AutofillFacts.kt │ │ │ │ │ │ ├── handler │ │ │ │ │ │ └── FillRequestHandler.kt │ │ │ │ │ │ ├── lock │ │ │ │ │ │ └── AutofillLock.kt │ │ │ │ │ │ ├── preference │ │ │ │ │ │ └── AutofillPreference.kt │ │ │ │ │ │ ├── response │ │ │ │ │ │ ├── dataset │ │ │ │ │ │ │ ├── DatasetBuilder.kt │ │ │ │ │ │ │ ├── LoginDatasetBuilder.kt │ │ │ │ │ │ │ └── SearchDatasetBuilder.kt │ │ │ │ │ │ └── fill │ │ │ │ │ │ │ ├── AuthFillResponseBuilder.kt │ │ │ │ │ │ │ ├── FillResponseBuilder.kt │ │ │ │ │ │ │ └── LoginFillResponseBuilder.kt │ │ │ │ │ │ ├── structure │ │ │ │ │ │ ├── ParsedStructure.kt │ │ │ │ │ │ ├── ParsedStructureBuilder.kt │ │ │ │ │ │ ├── RawStructure.kt │ │ │ │ │ │ └── ViewNodeNavigator.kt │ │ │ │ │ │ ├── ui │ │ │ │ │ │ ├── AbstractAutofillConfirmActivity.kt │ │ │ │ │ │ ├── AbstractAutofillSearchActivity.kt │ │ │ │ │ │ ├── AbstractAutofillUnlockActivity.kt │ │ │ │ │ │ └── search │ │ │ │ │ │ │ ├── LoginViewHolder.kt │ │ │ │ │ │ │ └── LoginsAdapter.kt │ │ │ │ │ │ └── verify │ │ │ │ │ │ └── CredentialAccessVerifier.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_feature_autofill_login.xml │ │ │ │ │ ├── mozac_feature_autofill_preference.xml │ │ │ │ │ └── mozac_feature_autofill_search.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── autofill │ │ │ │ │ ├── AutofillUseCasesTest.kt │ │ │ │ │ ├── handler │ │ │ │ │ └── FillRequestHandlerTest.kt │ │ │ │ │ ├── structure │ │ │ │ │ └── ParsedStructureTest.kt │ │ │ │ │ └── test │ │ │ │ │ ├── DOMNavigator.kt │ │ │ │ │ └── MockStructure.kt │ │ │ │ └── resources │ │ │ │ ├── fixtures │ │ │ │ ├── app_expensify.xml │ │ │ │ ├── app_facebook.xml │ │ │ │ ├── app_facebook_lite.xml │ │ │ │ ├── app_messenger_lite.xml │ │ │ │ ├── app_twitter.xml │ │ │ │ ├── browser_fenix_amazon.co.uk.xml │ │ │ │ └── browser_webview_gmail.xml │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── awesomebar │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── awesomebar │ │ │ │ │ │ ├── AwesomeBarFeature.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ └── AwesomeBarFacts.kt │ │ │ │ │ │ └── provider │ │ │ │ │ │ ├── BookmarksStorageSuggestionProvider.kt │ │ │ │ │ │ ├── ClipboardSuggestionProvider.kt │ │ │ │ │ │ ├── CombinedHistorySuggestionProvider.kt │ │ │ │ │ │ ├── HistoryMetadataSuggestionProvider.kt │ │ │ │ │ │ ├── HistoryStorageSuggestionProvider.kt │ │ │ │ │ │ ├── SearchActionProvider.kt │ │ │ │ │ │ ├── SearchEngineSuggestionProvider.kt │ │ │ │ │ │ ├── SearchSuggestionProvider.kt │ │ │ │ │ │ ├── SearchTermSuggestionsProvider.kt │ │ │ │ │ │ ├── SessionAutocompleteProvider.kt │ │ │ │ │ │ └── SessionSuggestionProvider.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── awesomebar │ │ │ │ │ ├── AwesomeBarFeatureTest.kt │ │ │ │ │ ├── facts │ │ │ │ │ └── AwesomeBarFactsTest.kt │ │ │ │ │ └── provider │ │ │ │ │ ├── BookmarksStorageSuggestionProviderTest.kt │ │ │ │ │ ├── ClipboardSuggestionProviderTest.kt │ │ │ │ │ ├── CombinedHistorySuggestionProviderTest.kt │ │ │ │ │ ├── HistoryMetadataSuggestionProviderTest.kt │ │ │ │ │ ├── HistoryStorageSuggestionProviderTest.kt │ │ │ │ │ ├── SearchActionProviderTest.kt │ │ │ │ │ ├── SearchEngineSuggestionProviderTest.kt │ │ │ │ │ ├── SearchSuggestionProviderTest.kt │ │ │ │ │ ├── SearchTermSuggestionsProviderTest.kt │ │ │ │ │ ├── SessionAutocompleteProviderTest.kt │ │ │ │ │ └── SessionSuggestionProviderTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── containers │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.containers.db.ContainerDatabase │ │ │ │ │ └── 1.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── containers │ │ │ │ │ ├── ContainerStorageTest.kt │ │ │ │ │ └── db │ │ │ │ │ └── ContainerDaoTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── containers │ │ │ │ │ ├── ContainerMiddleware.kt │ │ │ │ │ ├── ContainerStorage.kt │ │ │ │ │ └── db │ │ │ │ │ ├── ContainerDao.kt │ │ │ │ │ ├── ContainerDatabase.kt │ │ │ │ │ └── ContainerEntity.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── containers │ │ │ │ │ └── ContainerMiddlewareTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── contextmenu │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── contextmenu │ │ │ │ │ │ ├── ContextMenuCandidate.kt │ │ │ │ │ │ ├── ContextMenuFeature.kt │ │ │ │ │ │ ├── ContextMenuFragment.kt │ │ │ │ │ │ ├── ContextMenuUseCases.kt │ │ │ │ │ │ ├── DefaultSelectionActionDelegate.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ └── DefaultSelectionActionDelegate.kt │ │ │ │ │ │ └── facts │ │ │ │ │ │ └── ContextMenuFacts.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_feature_contextmenu_dialog.xml │ │ │ │ │ ├── mozac_feature_contextmenu_item.xml │ │ │ │ │ └── mozac_feature_contextmenu_title.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── style.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── contextmenu │ │ │ │ │ ├── ContextMenuCandidateTest.kt │ │ │ │ │ ├── ContextMenuFeatureTest.kt │ │ │ │ │ ├── ContextMenuFragmentTest.kt │ │ │ │ │ └── DefaultSelectionActionDelegateTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── customtabs │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── customtabs │ │ │ │ │ │ ├── AbstractCustomTabsService.kt │ │ │ │ │ │ ├── CustomTabConfigHelper.kt │ │ │ │ │ │ ├── CustomTabIntentProcessor.kt │ │ │ │ │ │ ├── CustomTabWindowFeature.kt │ │ │ │ │ │ ├── CustomTabsFacts.kt │ │ │ │ │ │ ├── CustomTabsToolbarFeature.kt │ │ │ │ │ │ ├── feature │ │ │ │ │ │ ├── CustomTabSessionTitleObserver.kt │ │ │ │ │ │ └── OriginVerifierFeature.kt │ │ │ │ │ │ ├── menu │ │ │ │ │ │ └── CustomTabMenuCandidates.kt │ │ │ │ │ │ ├── store │ │ │ │ │ │ ├── CustomTabsAction.kt │ │ │ │ │ │ ├── CustomTabsServiceState.kt │ │ │ │ │ │ ├── CustomTabsServiceStateReducer.kt │ │ │ │ │ │ └── CustomTabsServiceStore.kt │ │ │ │ │ │ └── verify │ │ │ │ │ │ └── OriginVerifier.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── dimens.xml │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── customtabs │ │ │ │ │ ├── AbstractCustomTabsServiceTest.kt │ │ │ │ │ ├── CustomTabConfigHelperTest.kt │ │ │ │ │ ├── CustomTabIntentProcessorTest.kt │ │ │ │ │ ├── CustomTabWindowFeatureTest.kt │ │ │ │ │ ├── CustomTabsToolbarFeatureTest.kt │ │ │ │ │ ├── feature │ │ │ │ │ ├── CustomTabSessionTitleObserverTest.kt │ │ │ │ │ └── OriginVerifierFeatureTest.kt │ │ │ │ │ ├── menu │ │ │ │ │ └── CustomTabMenuCandidatesTest.kt │ │ │ │ │ ├── store │ │ │ │ │ └── CustomTabsServiceStateReducerTest.kt │ │ │ │ │ └── verify │ │ │ │ │ └── OriginVerifierTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── downloads │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.downloads.db.DownloadsDatabase │ │ │ │ │ ├── 1.json │ │ │ │ │ ├── 2.json │ │ │ │ │ ├── 3.json │ │ │ │ │ └── 4.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── downloads │ │ │ │ │ ├── OnDeviceDownloadStorageTest.kt │ │ │ │ │ └── db │ │ │ │ │ └── DownloadDaoTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── downloads │ │ │ │ │ │ ├── AbstractFetchDownloadService.kt │ │ │ │ │ │ ├── DownloadDialogFragment.kt │ │ │ │ │ │ ├── DownloadMiddleware.kt │ │ │ │ │ │ ├── DownloadNotification.kt │ │ │ │ │ │ ├── DownloadStorage.kt │ │ │ │ │ │ ├── DownloadsFeature.kt │ │ │ │ │ │ ├── DownloadsUseCases.kt │ │ │ │ │ │ ├── SimpleDownloadDialogFragment.kt │ │ │ │ │ │ ├── db │ │ │ │ │ │ ├── DownloadDao.kt │ │ │ │ │ │ ├── DownloadEntity.kt │ │ │ │ │ │ └── DownloadsDatabase.kt │ │ │ │ │ │ ├── dialog │ │ │ │ │ │ └── DeniedPermissionDialogFragment.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── Context.kt │ │ │ │ │ │ └── DownloadState.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ └── DownloadsFacts.kt │ │ │ │ │ │ ├── manager │ │ │ │ │ │ ├── AndroidDownloadManager.kt │ │ │ │ │ │ ├── DownloadManager.kt │ │ │ │ │ │ └── FetchDownloadManager.kt │ │ │ │ │ │ ├── provider │ │ │ │ │ │ └── FileProvider.kt │ │ │ │ │ │ ├── temporary │ │ │ │ │ │ ├── CopyDownloadFeature.kt │ │ │ │ │ │ ├── ShareDownloadFeature.kt │ │ │ │ │ │ └── TemporaryDownloadFeature.kt │ │ │ │ │ │ └── ui │ │ │ │ │ │ ├── DownloadAppChooserDialog.kt │ │ │ │ │ │ ├── DownloadCancelDialogFragment.kt │ │ │ │ │ │ ├── DownloaderApp.kt │ │ │ │ │ │ └── DownloaderAppAdapter.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ ├── mozac_feature_download_ic_download.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_anim0.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_anim1.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_anim2.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_anim3.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_anim4.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_anim5.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_complete.xml │ │ │ │ │ ├── mozac_feature_download_ic_download_failed.xml │ │ │ │ │ └── mozac_feature_download_ic_ongoing_download.xml │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_download_app_list_item.xml │ │ │ │ │ ├── mozac_download_cancel.xml │ │ │ │ │ ├── mozac_downloader_chooser_prompt.xml │ │ │ │ │ └── mozac_downloads_prompt.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ └── strings.xml │ │ │ │ │ └── xml │ │ │ │ │ └── feature_downloads_file_paths.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── downloads │ │ │ │ │ ├── AbstractFetchDownloadServiceTest.kt │ │ │ │ │ ├── DownloadCancelDialogFragmentTest.kt │ │ │ │ │ ├── DownloadDialogFragmentTest.kt │ │ │ │ │ ├── DownloadMiddlewareTest.kt │ │ │ │ │ ├── DownloadNotificationTest.kt │ │ │ │ │ ├── DownloadStorageTest.kt │ │ │ │ │ ├── DownloadUseCasesTest.kt │ │ │ │ │ ├── DownloadsFeatureTest.kt │ │ │ │ │ ├── SimpleDownloadDialogFragmentTest.kt │ │ │ │ │ ├── db │ │ │ │ │ └── DownloadEntityTest.kt │ │ │ │ │ ├── dialog │ │ │ │ │ └── DeniedPermissionDialogFragmentTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── DownloadStateKtTest.kt │ │ │ │ │ ├── manager │ │ │ │ │ ├── AndroidDownloadManagerTest.kt │ │ │ │ │ └── FetchDownloadManagerTest.kt │ │ │ │ │ ├── temporary │ │ │ │ │ ├── CopyDownloadFeatureTest.kt │ │ │ │ │ └── ShareDownloadFeatureTest.kt │ │ │ │ │ └── ui │ │ │ │ │ ├── DownloadAppChooserDialogTest.kt │ │ │ │ │ └── DownloaderAppAdapterTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── findinpage │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── findinpage │ │ │ │ │ │ ├── FindInPageFeature.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ └── FindInPageFacts.kt │ │ │ │ │ │ ├── internal │ │ │ │ │ │ ├── FindInPageInteractor.kt │ │ │ │ │ │ └── FindInPagePresenter.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ ├── FindInPageBar.kt │ │ │ │ │ │ └── FindInPageView.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ └── mozac_feature_findinpage_view.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── attrs.xml │ │ │ │ │ ├── dimens.xml │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── style.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── findinpage │ │ │ │ │ ├── FindInPageFeatureTest.kt │ │ │ │ │ ├── internal │ │ │ │ │ ├── FindInPageInteractorTest.kt │ │ │ │ │ └── FindInPagePresenterTest.kt │ │ │ │ │ └── view │ │ │ │ │ └── FindInPageBarTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── fxsuggest │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── fxsuggest.fml.yaml │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── fxsuggest │ │ │ │ │ │ ├── FxSuggestIngestionScheduler.kt │ │ │ │ │ │ ├── FxSuggestIngestionWorker.kt │ │ │ │ │ │ ├── FxSuggestStorage.kt │ │ │ │ │ │ ├── FxSuggestSuggestionProvider.kt │ │ │ │ │ │ ├── GlobalFxSuggestDependencyProvider.kt │ │ │ │ │ │ └── facts │ │ │ │ │ │ ├── FxSuggestFacts.kt │ │ │ │ │ │ └── FxSuggestFactsMiddleware.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── fxsuggest │ │ │ │ │ ├── FxSuggestFactsMiddlewareTest.kt │ │ │ │ │ ├── FxSuggestFactsTest.kt │ │ │ │ │ ├── FxSuggestIngestionSchedulerTest.kt │ │ │ │ │ ├── FxSuggestIngestionWorkerTest.kt │ │ │ │ │ └── FxSuggestSuggestionProviderTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── intent │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── intent │ │ │ │ │ ├── ext │ │ │ │ │ └── IntentExtensions.kt │ │ │ │ │ └── processing │ │ │ │ │ ├── IntentProcessor.kt │ │ │ │ │ └── TabIntentProcessor.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── intent │ │ │ │ │ ├── ext │ │ │ │ │ └── IntentExtensionsTest.kt │ │ │ │ │ └── processing │ │ │ │ │ └── TabIntentProcessorTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── logins │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.logins.exceptions.db.LoginExceptionDatabase │ │ │ │ │ └── 1.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── logins │ │ │ │ │ ├── LoginExceptionStorageTest.kt │ │ │ │ │ └── exceptions │ │ │ │ │ └── db │ │ │ │ │ └── LoginExceptionDaoTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── logins │ │ │ │ │ └── exceptions │ │ │ │ │ ├── LoginException.kt │ │ │ │ │ ├── LoginExceptionStorage.kt │ │ │ │ │ ├── adapter │ │ │ │ │ └── LoginExceptionAdapter.kt │ │ │ │ │ └── db │ │ │ │ │ ├── LoginExceptionDao.kt │ │ │ │ │ ├── LoginExceptionDatabase.kt │ │ │ │ │ └── LoginExceptionEntity.kt │ │ │ │ └── test │ │ │ │ └── resources │ │ │ │ └── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ ├── media │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── media │ │ │ │ │ │ ├── MediaSessionFeature.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── MediaSessionState.kt │ │ │ │ │ │ └── SessionState.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ └── MediaFacts.kt │ │ │ │ │ │ ├── focus │ │ │ │ │ │ ├── AudioFocus.kt │ │ │ │ │ │ ├── AudioFocusController.kt │ │ │ │ │ │ ├── AudioFocusControllerV21.kt │ │ │ │ │ │ └── AudioFocusControllerV26.kt │ │ │ │ │ │ ├── fullscreen │ │ │ │ │ │ └── MediaSessionFullscreenFeature.kt │ │ │ │ │ │ ├── middleware │ │ │ │ │ │ ├── LastMediaAccessMiddleware.kt │ │ │ │ │ │ └── RecordingDevicesMiddleware.kt │ │ │ │ │ │ ├── notification │ │ │ │ │ │ ├── MediaNotification.kt │ │ │ │ │ │ └── MediaNotificationChannel.kt │ │ │ │ │ │ ├── service │ │ │ │ │ │ ├── AbstractMediaSessionService.kt │ │ │ │ │ │ ├── MediaSessionDelegate.kt │ │ │ │ │ │ └── MediaSessionServiceDelegate.kt │ │ │ │ │ │ └── session │ │ │ │ │ │ └── MediaSessionCallback.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ ├── mozac_feature_media_action_pause.xml │ │ │ │ │ ├── mozac_feature_media_action_play.xml │ │ │ │ │ ├── mozac_feature_media_paused.xml │ │ │ │ │ └── mozac_feature_media_playing.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── media │ │ │ │ │ ├── MediaSessionFeatureTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── SessionStateKtTest.kt │ │ │ │ │ ├── focus │ │ │ │ │ └── AudioFocusTest.kt │ │ │ │ │ ├── fullscreen │ │ │ │ │ └── MediaSessionFullscreenFeatureTest.kt │ │ │ │ │ ├── middleware │ │ │ │ │ ├── LastMediaAccessMiddlewareTest.kt │ │ │ │ │ └── RecordingDevicesMiddlewareTest.kt │ │ │ │ │ ├── notification │ │ │ │ │ └── MediaNotificationTest.kt │ │ │ │ │ └── service │ │ │ │ │ ├── AbstractMediaSessionServiceTest.kt │ │ │ │ │ ├── MediaServiceBinderTest.kt │ │ │ │ │ └── MediaSessionServiceDelegateTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── privatemode │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── privatemode │ │ │ │ │ │ ├── feature │ │ │ │ │ │ └── SecureWindowFeature.kt │ │ │ │ │ │ └── notification │ │ │ │ │ │ ├── AbstractPrivateNotificationService.kt │ │ │ │ │ │ └── PrivateNotificationFeature.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── privatemode │ │ │ │ │ ├── feature │ │ │ │ │ └── SecureWindowFeatureTest.kt │ │ │ │ │ └── notification │ │ │ │ │ ├── AbstractPrivateNotificationServiceTest.kt │ │ │ │ │ └── PrivateNotificationFeatureTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── prompts │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── prompts │ │ │ │ │ └── file │ │ │ │ │ └── OnDeviceFilePickerTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── prompts │ │ │ │ │ │ ├── PromptContainer.kt │ │ │ │ │ │ ├── PromptFeature.kt │ │ │ │ │ │ ├── PromptMiddleware.kt │ │ │ │ │ │ ├── address │ │ │ │ │ │ ├── AddressAdapter.kt │ │ │ │ │ │ ├── AddressDelegate.kt │ │ │ │ │ │ ├── AddressPicker.kt │ │ │ │ │ │ └── AddressSelectBar.kt │ │ │ │ │ │ ├── concept │ │ │ │ │ │ ├── PasswordPromptView.kt │ │ │ │ │ │ └── SelectablePromptView.kt │ │ │ │ │ │ ├── creditcard │ │ │ │ │ │ ├── CreditCardDelegate.kt │ │ │ │ │ │ ├── CreditCardItemViewHolder.kt │ │ │ │ │ │ ├── CreditCardPicker.kt │ │ │ │ │ │ ├── CreditCardSaveDialogFragment.kt │ │ │ │ │ │ ├── CreditCardSelectBar.kt │ │ │ │ │ │ └── CreditCardsAdapter.kt │ │ │ │ │ │ ├── dialog │ │ │ │ │ │ ├── AbstractPromptTextDialogFragment.kt │ │ │ │ │ │ ├── AlertDialogFragment.kt │ │ │ │ │ │ ├── AuthenticationDialogFragment.kt │ │ │ │ │ │ ├── AutofillEditText.kt │ │ │ │ │ │ ├── BasicColorAdapter.kt │ │ │ │ │ │ ├── ChoiceAdapter.kt │ │ │ │ │ │ ├── ChoiceDialogFragment.kt │ │ │ │ │ │ ├── ColorPickerDialogFragment.kt │ │ │ │ │ │ ├── ConfirmDialogFragment.kt │ │ │ │ │ │ ├── FullScreenNotificationDialog.kt │ │ │ │ │ │ ├── LoginDialogFacts.kt │ │ │ │ │ │ ├── MultiButtonDialogFragment.kt │ │ │ │ │ │ ├── PromptAbuserDetector.kt │ │ │ │ │ │ ├── PromptDialogFragment.kt │ │ │ │ │ │ ├── SaveLoginDialogFragment.kt │ │ │ │ │ │ ├── TextPromptDialogFragment.kt │ │ │ │ │ │ └── TimePickerDialogFragment.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── Calendar.kt │ │ │ │ │ │ ├── EditText.kt │ │ │ │ │ │ └── PromptRequest.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ ├── AddressAutofillDialogFacts.kt │ │ │ │ │ │ ├── CreditCardAutofillDialogFacts.kt │ │ │ │ │ │ ├── LoginAutofillDialogFacts.kt │ │ │ │ │ │ └── PromptFacts.kt │ │ │ │ │ │ ├── file │ │ │ │ │ │ ├── FilePicker.kt │ │ │ │ │ │ ├── FileUploadsDirCleaner.kt │ │ │ │ │ │ ├── FileUploadsDirCleanerMiddleware.kt │ │ │ │ │ │ └── MimeType.kt │ │ │ │ │ │ ├── identitycredential │ │ │ │ │ │ ├── DialogColors.kt │ │ │ │ │ │ ├── IdentityCredentialItem.kt │ │ │ │ │ │ ├── PrivacyPolicyDialogFragment.kt │ │ │ │ │ │ ├── SelectAccountDialog.kt │ │ │ │ │ │ ├── SelectAccountDialogFragment.kt │ │ │ │ │ │ ├── SelectProviderDialog.kt │ │ │ │ │ │ ├── SelectProviderDialogFragment.kt │ │ │ │ │ │ └── previews │ │ │ │ │ │ │ ├── DialogPreviewMaterialTheme.kt │ │ │ │ │ │ │ └── LightDarkPreview.kt │ │ │ │ │ │ ├── login │ │ │ │ │ │ ├── BasicLoginAdapter.kt │ │ │ │ │ │ ├── LoginDelegate.kt │ │ │ │ │ │ ├── LoginExceptions.kt │ │ │ │ │ │ ├── LoginPicker.kt │ │ │ │ │ │ ├── LoginSelectBar.kt │ │ │ │ │ │ ├── StrongPasswordPromptViewListener.kt │ │ │ │ │ │ ├── SuggestStrongPasswordBar.kt │ │ │ │ │ │ └── SuggestStrongPasswordDelegate.kt │ │ │ │ │ │ ├── provider │ │ │ │ │ │ └── FileProvider.kt │ │ │ │ │ │ ├── share │ │ │ │ │ │ └── ShareDelegate.kt │ │ │ │ │ │ └── widget │ │ │ │ │ │ ├── LoginPanelTextInputLayout.kt │ │ │ │ │ │ ├── MonthAndYearPicker.kt │ │ │ │ │ │ └── TimePrecisionPicker.kt │ │ │ │ └── res │ │ │ │ │ ├── color │ │ │ │ │ └── button_state_list.xml │ │ │ │ │ ├── drawable-hdpi │ │ │ │ │ └── color_picker_row_bg.9.png │ │ │ │ │ ├── drawable-mdpi │ │ │ │ │ └── color_picker_row_bg.9.png │ │ │ │ │ ├── drawable-xhdpi │ │ │ │ │ └── color_picker_row_bg.9.png │ │ │ │ │ ├── drawable-xxhdpi │ │ │ │ │ └── color_picker_row_bg.9.png │ │ │ │ │ ├── drawable │ │ │ │ │ ├── color_picker_checkmark.xml │ │ │ │ │ └── mozac_ic_password_reveal_two_state.xml │ │ │ │ │ ├── layout │ │ │ │ │ ├── login_selection_list_item.xml │ │ │ │ │ ├── mozac_feature_choice_dialogs.xml │ │ │ │ │ ├── mozac_feature_choice_group_item.xml │ │ │ │ │ ├── mozac_feature_login_multiselect_view.xml │ │ │ │ │ ├── mozac_feature_menu_choice_item.xml │ │ │ │ │ ├── mozac_feature_menu_separator_choice_item.xml │ │ │ │ │ ├── mozac_feature_multiple_choice_item.xml │ │ │ │ │ ├── mozac_feature_promps_widget_month_picker.xml │ │ │ │ │ ├── mozac_feature_prompt_auth_prompt.xml │ │ │ │ │ ├── mozac_feature_prompt_save_credit_card_prompt.xml │ │ │ │ │ ├── mozac_feature_prompt_save_login_prompt.xml │ │ │ │ │ ├── mozac_feature_prompt_simple_text.xml │ │ │ │ │ ├── mozac_feature_prompt_with_check_box.xml │ │ │ │ │ ├── mozac_feature_prompts_address_list_item.xml │ │ │ │ │ ├── mozac_feature_prompts_address_select_prompt.xml │ │ │ │ │ ├── mozac_feature_prompts_color_item.xml │ │ │ │ │ ├── mozac_feature_prompts_color_picker_dialogs.xml │ │ │ │ │ ├── mozac_feature_prompts_credit_card_list_item.xml │ │ │ │ │ ├── mozac_feature_prompts_credit_card_select_prompt.xml │ │ │ │ │ ├── mozac_feature_prompts_date_time_picker.xml │ │ │ │ │ ├── mozac_feature_prompts_time_picker.xml │ │ │ │ │ ├── mozac_feature_single_choice_item.xml │ │ │ │ │ ├── mozac_feature_suggest_strong_password_view.xml │ │ │ │ │ └── mozac_feature_text_prompt.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zam │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values │ │ │ │ │ ├── attrs.xml │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── ids.xml │ │ │ │ │ ├── quarantined_strings.xml │ │ │ │ │ ├── strings-no-translatable.xml │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── styles.xml │ │ │ │ │ └── xml │ │ │ │ │ └── feature_prompts_file_paths.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── prompts │ │ │ │ │ ├── PromptContainerTest.kt │ │ │ │ │ ├── PromptFeatureTest.kt │ │ │ │ │ ├── PromptMiddlewareTest.kt │ │ │ │ │ ├── address │ │ │ │ │ ├── AddressAdapterTest.kt │ │ │ │ │ ├── AddressPickerTest.kt │ │ │ │ │ └── AddressSelectBarTest.kt │ │ │ │ │ ├── creditcard │ │ │ │ │ ├── CreditCardItemViewHolderTest.kt │ │ │ │ │ ├── CreditCardPickerTest.kt │ │ │ │ │ ├── CreditCardSaveDialogFragmentTest.kt │ │ │ │ │ ├── CreditCardSelectBarTest.kt │ │ │ │ │ └── CreditCardsAdapterTest.kt │ │ │ │ │ ├── dialog │ │ │ │ │ ├── AlertDialogFragmentTest.kt │ │ │ │ │ ├── AuthenticationDialogFragmentTest.kt │ │ │ │ │ ├── ChoiceDialogFragmentTest.kt │ │ │ │ │ ├── ColorPickerDialogFragmentTest.kt │ │ │ │ │ ├── ConfirmDialogFragmentTest.kt │ │ │ │ │ ├── MultiButtonDialogFragmentTest.kt │ │ │ │ │ ├── SaveLoginDialogFragmentTest.kt │ │ │ │ │ ├── TextPromptDialogFragmentTest.kt │ │ │ │ │ └── TimePickerDialogFragmentTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── EditTextTest.kt │ │ │ │ │ └── PromptRequestTest.kt │ │ │ │ │ ├── facts │ │ │ │ │ ├── AddressAutofillDialogFactsTest.kt │ │ │ │ │ └── CreditCardAutofillDialogFactsTest.kt │ │ │ │ │ ├── file │ │ │ │ │ ├── FilePickerTest.kt │ │ │ │ │ ├── FileUploadsDirCleanerMiddlewareTest.kt │ │ │ │ │ ├── FileUploadsDirCleanerTest.kt │ │ │ │ │ └── MimeTypeTest.kt │ │ │ │ │ ├── login │ │ │ │ │ ├── BasicLoginAdapterTest.kt │ │ │ │ │ ├── LoginPickerTest.kt │ │ │ │ │ ├── LoginSelectBarTest.kt │ │ │ │ │ ├── StrongPasswordPromptViewListenerTest.kt │ │ │ │ │ └── SuggestStrongPasswordBarTest.kt │ │ │ │ │ ├── share │ │ │ │ │ └── DefaultShareDelegateTest.kt │ │ │ │ │ └── widget │ │ │ │ │ ├── MonthAndYearPickerTest.kt │ │ │ │ │ └── TimePrecisionPickerTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── push │ │ │ ├── README.md │ │ │ ├── assets │ │ │ │ └── autopush-sequence-diagram.png │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── push │ │ │ │ │ └── AutoPushFeature.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── push │ │ │ │ │ └── AutoPushFeatureTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── pwa │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.pwa.db.ManifestDatabase │ │ │ │ │ ├── 0.json │ │ │ │ │ ├── 1.json │ │ │ │ │ ├── 2.json │ │ │ │ │ └── 3.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── pwa │ │ │ │ │ └── db │ │ │ │ │ └── ManifestDatabaseMigrationTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── pwa │ │ │ │ │ │ ├── ManifestStorage.kt │ │ │ │ │ │ ├── ProgressiveWebAppFacts.kt │ │ │ │ │ │ ├── WebAppInterceptor.kt │ │ │ │ │ │ ├── WebAppLauncherActivity.kt │ │ │ │ │ │ ├── WebAppShortcutManager.kt │ │ │ │ │ │ ├── WebAppUseCases.kt │ │ │ │ │ │ ├── db │ │ │ │ │ │ ├── ManifestConverter.kt │ │ │ │ │ │ ├── ManifestDao.kt │ │ │ │ │ │ ├── ManifestDatabase.kt │ │ │ │ │ │ └── ManifestEntity.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── Activity.kt │ │ │ │ │ │ ├── Bundle.kt │ │ │ │ │ │ ├── CustomTabState.kt │ │ │ │ │ │ ├── Intent.kt │ │ │ │ │ │ ├── SessionState.kt │ │ │ │ │ │ ├── Uri.kt │ │ │ │ │ │ └── WebAppManifest.kt │ │ │ │ │ │ ├── feature │ │ │ │ │ │ ├── ManifestUpdateFeature.kt │ │ │ │ │ │ ├── SiteControlsBuilder.kt │ │ │ │ │ │ ├── WebAppActivityFeature.kt │ │ │ │ │ │ ├── WebAppContentFeature.kt │ │ │ │ │ │ ├── WebAppHideToolbarFeature.kt │ │ │ │ │ │ └── WebAppSiteControlsFeature.kt │ │ │ │ │ │ └── intent │ │ │ │ │ │ ├── TrustedWebActivityIntentProcessor.kt │ │ │ │ │ │ └── WebAppIntentProcessor.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ ├── ic_pwa.xml │ │ │ │ │ └── ic_refresh.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── styles.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── pwa │ │ │ │ │ ├── ManifestStorageTest.kt │ │ │ │ │ ├── WebAppInterceptorTest.kt │ │ │ │ │ ├── WebAppLauncherActivityTest.kt │ │ │ │ │ ├── WebAppShortcutManagerTest.kt │ │ │ │ │ ├── WebAppUseCasesTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── ActivityKtTest.kt │ │ │ │ │ ├── CustomTabStateKtTest.kt │ │ │ │ │ ├── SessionStateKtTest.kt │ │ │ │ │ ├── UriKtTest.kt │ │ │ │ │ └── WebAppManifestKtTest.kt │ │ │ │ │ ├── feature │ │ │ │ │ ├── ManifestUpdateFeatureTest.kt │ │ │ │ │ ├── WebAppActivityFeatureTest.kt │ │ │ │ │ ├── WebAppContentFeatureTest.kt │ │ │ │ │ ├── WebAppHideToolbarFeatureTest.kt │ │ │ │ │ └── WebAppSiteControlsFeatureTest.kt │ │ │ │ │ └── intent │ │ │ │ │ ├── TrustedWebActivityIntentProcessorTest.kt │ │ │ │ │ └── WebAppIntentProcessorTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── qr │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── qr │ │ │ │ │ │ ├── QrFeature.kt │ │ │ │ │ │ ├── QrFragment.kt │ │ │ │ │ │ └── views │ │ │ │ │ │ ├── AutoFitTextureView.kt │ │ │ │ │ │ └── CustomViewFinder.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable-hdpi │ │ │ │ │ └── qr_cam_focus.webp │ │ │ │ │ ├── drawable-ldpi │ │ │ │ │ └── qr_cam_focus.webp │ │ │ │ │ ├── drawable-mdpi │ │ │ │ │ └── qr_cam_focus.webp │ │ │ │ │ ├── drawable-xhdpi │ │ │ │ │ └── qr_cam_focus.webp │ │ │ │ │ ├── drawable-xxhdpi │ │ │ │ │ └── qr_cam_focus.webp │ │ │ │ │ ├── drawable-xxxhdpi │ │ │ │ │ └── qr_cam_focus.webp │ │ │ │ │ ├── layout │ │ │ │ │ └── fragment_layout.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mix │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── qr │ │ │ │ │ ├── QrFeatureTest.kt │ │ │ │ │ ├── QrFragmentTest.kt │ │ │ │ │ └── views │ │ │ │ │ ├── AutoFitTextureViewTest.kt │ │ │ │ │ └── CustomViewFinderTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── readerview │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ └── extensions │ │ │ │ │ │ └── readerview │ │ │ │ │ │ ├── manifest.template.json │ │ │ │ │ │ ├── readability │ │ │ │ │ │ ├── JSDOMParser-0.4.2.js │ │ │ │ │ │ ├── readability-0.4.2.js │ │ │ │ │ │ └── readability-readerable-0.4.2.js │ │ │ │ │ │ ├── readerview-background.js │ │ │ │ │ │ ├── readerview-content.js │ │ │ │ │ │ ├── readerview.css │ │ │ │ │ │ ├── readerview.html │ │ │ │ │ │ └── readerview.js │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── readerview │ │ │ │ │ │ ├── ReaderViewFeature.kt │ │ │ │ │ │ ├── ReaderViewMiddleware.kt │ │ │ │ │ │ ├── internal │ │ │ │ │ │ ├── ReaderViewConfig.kt │ │ │ │ │ │ ├── ReaderViewControlsInteractor.kt │ │ │ │ │ │ └── ReaderViewControlsPresenter.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ ├── ReaderViewControlsBar.kt │ │ │ │ │ │ └── ReaderViewControlsView.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ ├── fontsize_controls_text_selector.xml │ │ │ │ │ ├── radiobutton_color_scheme_dark_selector.xml │ │ │ │ │ ├── radiobutton_color_scheme_light_selector.xml │ │ │ │ │ ├── radiobutton_color_scheme_sepia_selector.xml │ │ │ │ │ └── radiobutton_selected_text_selector.xml │ │ │ │ │ ├── layout │ │ │ │ │ └── mozac_feature_readerview_view.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tok │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── attrs.xml │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── mozac_feature_readerview_strings.xml │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ ├── components │ │ │ │ │ └── feature │ │ │ │ │ │ └── readerview │ │ │ │ │ │ ├── ReaderViewFeatureTest.kt │ │ │ │ │ │ ├── ReaderViewMiddlewareTest.kt │ │ │ │ │ │ ├── internal │ │ │ │ │ │ ├── ReaderViewConfigTest.kt │ │ │ │ │ │ ├── ReaderViewControlsInteractorTest.kt │ │ │ │ │ │ └── ReaderViewControlsPresenterTest.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ └── ReaderViewControlsBarTest.kt │ │ │ │ │ └── ext │ │ │ │ │ └── context.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── recentlyclosed │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.recentlyclosed.db.RecentlyClosedTabsDatabase │ │ │ │ │ └── 1.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── recentlyclosed │ │ │ │ │ └── RecentlyClosedTabsStorageOnDeviceTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── recentlyclosed │ │ │ │ │ ├── RecentlyClosedMiddleware.kt │ │ │ │ │ ├── RecentlyClosedTabsStorage.kt │ │ │ │ │ └── db │ │ │ │ │ ├── RecentlyClosedTabDao.kt │ │ │ │ │ ├── RecentlyClosedTabEntity.kt │ │ │ │ │ └── RecentlyClosedTabsDatabase.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── recentlyclosed │ │ │ │ │ ├── RecentlyClosedMiddlewareTest.kt │ │ │ │ │ ├── RecentlyClosedTabDaoTest.kt │ │ │ │ │ └── RecentlyClosedTabsStorageTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── search │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ads │ │ │ │ │ │ │ ├── adsTelemetry.js │ │ │ │ │ │ │ └── manifest.template.json │ │ │ │ │ │ └── search │ │ │ │ │ │ │ ├── manifest.template.json │ │ │ │ │ │ │ └── searchTelemetry.js │ │ │ │ │ ├── search │ │ │ │ │ │ ├── list.json │ │ │ │ │ │ └── search_telemetry_v2.json │ │ │ │ │ └── searchplugins │ │ │ │ │ │ ├── amazon-au.xml │ │ │ │ │ │ ├── amazon-ca.xml │ │ │ │ │ │ ├── amazon-co-uk.xml │ │ │ │ │ │ ├── amazon-de.xml │ │ │ │ │ │ ├── amazon-es.xml │ │ │ │ │ │ ├── amazon-fr.xml │ │ │ │ │ │ ├── amazon-in.xml │ │ │ │ │ │ ├── amazon-it.xml │ │ │ │ │ │ ├── amazon-jp.xml │ │ │ │ │ │ ├── amazon-nl.xml │ │ │ │ │ │ ├── amazon-se.xml │ │ │ │ │ │ ├── amazondotcom.xml │ │ │ │ │ │ ├── azerdict.xml │ │ │ │ │ │ ├── baidu.xml │ │ │ │ │ │ ├── bing.xml │ │ │ │ │ │ ├── ceneje.xml │ │ │ │ │ │ ├── coccoc.xml │ │ │ │ │ │ ├── daum-kr.xml │ │ │ │ │ │ ├── ddg.xml │ │ │ │ │ │ ├── ebay-at.xml │ │ │ │ │ │ ├── ebay-au.xml │ │ │ │ │ │ ├── ebay-befr.xml │ │ │ │ │ │ ├── ebay-ca.xml │ │ │ │ │ │ ├── ebay-ch.xml │ │ │ │ │ │ ├── ebay-co-uk.xml │ │ │ │ │ │ ├── ebay-de.xml │ │ │ │ │ │ ├── ebay-es.xml │ │ │ │ │ │ ├── ebay-fr.xml │ │ │ │ │ │ ├── ebay-ie.xml │ │ │ │ │ │ ├── ebay-it.xml │ │ │ │ │ │ ├── ebay-nl.xml │ │ │ │ │ │ ├── ebay-pl.xml │ │ │ │ │ │ ├── ebay.xml │ │ │ │ │ │ ├── ecosia.xml │ │ │ │ │ │ ├── faclair-beag.xml │ │ │ │ │ │ ├── google-b-1-m.xml │ │ │ │ │ │ ├── google-b-m.xml │ │ │ │ │ │ ├── google-com-nocodes.xml │ │ │ │ │ │ ├── gulesider-mobile-NO.xml │ │ │ │ │ │ ├── leo_ende_de.xml │ │ │ │ │ │ ├── mapy-cz.xml │ │ │ │ │ │ ├── mercadolibre-ar.xml │ │ │ │ │ │ ├── mercadolibre-cl.xml │ │ │ │ │ │ ├── mercadolibre-mx.xml │ │ │ │ │ │ ├── odpiralni.xml │ │ │ │ │ │ ├── pazaruvaj.xml │ │ │ │ │ │ ├── prisjakt-sv-SE.xml │ │ │ │ │ │ ├── qwant.xml │ │ │ │ │ │ ├── rakuten.xml │ │ │ │ │ │ ├── reddit.xml │ │ │ │ │ │ ├── salidzinilv.xml │ │ │ │ │ │ ├── seznam-cz.xml │ │ │ │ │ │ ├── vatera.xml │ │ │ │ │ │ ├── wikipedia-NN.xml │ │ │ │ │ │ ├── wikipedia-NO.xml │ │ │ │ │ │ ├── wikipedia-an.xml │ │ │ │ │ │ ├── wikipedia-ar.xml │ │ │ │ │ │ ├── wikipedia-as.xml │ │ │ │ │ │ ├── wikipedia-ast.xml │ │ │ │ │ │ ├── wikipedia-az.xml │ │ │ │ │ │ ├── wikipedia-be.xml │ │ │ │ │ │ ├── wikipedia-bg.xml │ │ │ │ │ │ ├── wikipedia-bn.xml │ │ │ │ │ │ ├── wikipedia-br.xml │ │ │ │ │ │ ├── wikipedia-bs.xml │ │ │ │ │ │ ├── wikipedia-ca.xml │ │ │ │ │ │ ├── wikipedia-cy.xml │ │ │ │ │ │ ├── wikipedia-cz.xml │ │ │ │ │ │ ├── wikipedia-da.xml │ │ │ │ │ │ ├── wikipedia-de.xml │ │ │ │ │ │ ├── wikipedia-dsb.xml │ │ │ │ │ │ ├── wikipedia-el.xml │ │ │ │ │ │ ├── wikipedia-eo.xml │ │ │ │ │ │ ├── wikipedia-es.xml │ │ │ │ │ │ ├── wikipedia-et.xml │ │ │ │ │ │ ├── wikipedia-eu.xml │ │ │ │ │ │ ├── wikipedia-fa.xml │ │ │ │ │ │ ├── wikipedia-fi.xml │ │ │ │ │ │ ├── wikipedia-fr.xml │ │ │ │ │ │ ├── wikipedia-fy-NL.xml │ │ │ │ │ │ ├── wikipedia-ga-IE.xml │ │ │ │ │ │ ├── wikipedia-gd.xml │ │ │ │ │ │ ├── wikipedia-gl.xml │ │ │ │ │ │ ├── wikipedia-gn.xml │ │ │ │ │ │ ├── wikipedia-gu.xml │ │ │ │ │ │ ├── wikipedia-he.xml │ │ │ │ │ │ ├── wikipedia-hi.xml │ │ │ │ │ │ ├── wikipedia-hr.xml │ │ │ │ │ │ ├── wikipedia-hsb.xml │ │ │ │ │ │ ├── wikipedia-hu.xml │ │ │ │ │ │ ├── wikipedia-hy-AM.xml │ │ │ │ │ │ ├── wikipedia-ia.xml │ │ │ │ │ │ ├── wikipedia-id.xml │ │ │ │ │ │ ├── wikipedia-is.xml │ │ │ │ │ │ ├── wikipedia-it.xml │ │ │ │ │ │ ├── wikipedia-ja.xml │ │ │ │ │ │ ├── wikipedia-ka.xml │ │ │ │ │ │ ├── wikipedia-kab.xml │ │ │ │ │ │ ├── wikipedia-kk.xml │ │ │ │ │ │ ├── wikipedia-km.xml │ │ │ │ │ │ ├── wikipedia-kn.xml │ │ │ │ │ │ ├── wikipedia-lij.xml │ │ │ │ │ │ ├── wikipedia-lo.xml │ │ │ │ │ │ ├── wikipedia-lt.xml │ │ │ │ │ │ ├── wikipedia-ltg.xml │ │ │ │ │ │ ├── wikipedia-lv.xml │ │ │ │ │ │ ├── wikipedia-ml.xml │ │ │ │ │ │ ├── wikipedia-mr.xml │ │ │ │ │ │ ├── wikipedia-ms.xml │ │ │ │ │ │ ├── wikipedia-my.xml │ │ │ │ │ │ ├── wikipedia-ne.xml │ │ │ │ │ │ ├── wikipedia-nl.xml │ │ │ │ │ │ ├── wikipedia-oc.xml │ │ │ │ │ │ ├── wikipedia-or.xml │ │ │ │ │ │ ├── wikipedia-pa.xml │ │ │ │ │ │ ├── wikipedia-pl.xml │ │ │ │ │ │ ├── wikipedia-pt.xml │ │ │ │ │ │ ├── wikipedia-rm.xml │ │ │ │ │ │ ├── wikipedia-ro.xml │ │ │ │ │ │ ├── wikipedia-ru.xml │ │ │ │ │ │ ├── wikipedia-sk.xml │ │ │ │ │ │ ├── wikipedia-sl.xml │ │ │ │ │ │ ├── wikipedia-sq.xml │ │ │ │ │ │ ├── wikipedia-sr.xml │ │ │ │ │ │ ├── wikipedia-sv-SE.xml │ │ │ │ │ │ ├── wikipedia-ta.xml │ │ │ │ │ │ ├── wikipedia-te.xml │ │ │ │ │ │ ├── wikipedia-th.xml │ │ │ │ │ │ ├── wikipedia-tr.xml │ │ │ │ │ │ ├── wikipedia-uk.xml │ │ │ │ │ │ ├── wikipedia-ur.xml │ │ │ │ │ │ ├── wikipedia-uz.xml │ │ │ │ │ │ ├── wikipedia-vi.xml │ │ │ │ │ │ ├── wikipedia-wo.xml │ │ │ │ │ │ ├── wikipedia-zh-CN.xml │ │ │ │ │ │ ├── wikipedia-zh-TW.xml │ │ │ │ │ │ ├── wikipedia.xml │ │ │ │ │ │ ├── wiktionary-kn.xml │ │ │ │ │ │ ├── wiktionary-oc.xml │ │ │ │ │ │ ├── wiktionary-or.xml │ │ │ │ │ │ ├── wiktionary-ta.xml │ │ │ │ │ │ ├── wiktionary-te.xml │ │ │ │ │ │ ├── yahoo-jp-auctions.xml │ │ │ │ │ │ ├── yahoo-jp.xml │ │ │ │ │ │ ├── yandex-en.xml │ │ │ │ │ │ ├── yandex-ru.xml │ │ │ │ │ │ ├── yandex-tr.xml │ │ │ │ │ │ ├── yandex.by.xml │ │ │ │ │ │ ├── yandex.xml │ │ │ │ │ │ └── youtube.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── search │ │ │ │ │ │ ├── BrowserStoreSearchAdapter.kt │ │ │ │ │ │ ├── SearchAdapter.kt │ │ │ │ │ │ ├── SearchFeature.kt │ │ │ │ │ │ ├── SearchUseCases.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── BrowserStore.kt │ │ │ │ │ │ └── SearchEngine.kt │ │ │ │ │ │ ├── internal │ │ │ │ │ │ └── SearchUrlBuilder.kt │ │ │ │ │ │ ├── middleware │ │ │ │ │ │ ├── AdsTelemetryMiddleware.kt │ │ │ │ │ │ └── SearchMiddleware.kt │ │ │ │ │ │ ├── region │ │ │ │ │ │ ├── RegionManager.kt │ │ │ │ │ │ └── RegionMiddleware.kt │ │ │ │ │ │ ├── storage │ │ │ │ │ │ ├── BundledSearchEnginesStorage.kt │ │ │ │ │ │ ├── CustomSearchEnginesStorage.kt │ │ │ │ │ │ ├── SearchEngineReader.kt │ │ │ │ │ │ ├── SearchEngineWriter.kt │ │ │ │ │ │ └── SearchMetadataStorage.kt │ │ │ │ │ │ ├── suggestions │ │ │ │ │ │ ├── Parser.kt │ │ │ │ │ │ └── SearchSuggestionClient.kt │ │ │ │ │ │ ├── telemetry │ │ │ │ │ │ ├── BaseSearchTelemetry.kt │ │ │ │ │ │ ├── ExtensionInfo.kt │ │ │ │ │ │ ├── SearchProviderCookie.kt │ │ │ │ │ │ ├── SearchProviderModel.kt │ │ │ │ │ │ ├── SerpTelemetryRepository.kt │ │ │ │ │ │ ├── TrackKeyInfo.kt │ │ │ │ │ │ ├── Utils.kt │ │ │ │ │ │ ├── ads │ │ │ │ │ │ │ └── AdsTelemetry.kt │ │ │ │ │ │ └── incontent │ │ │ │ │ │ │ └── InContentTelemetry.kt │ │ │ │ │ │ └── widget │ │ │ │ │ │ ├── AppSearchWidgetProvider.kt │ │ │ │ │ │ └── BaseVoiceSearchActivity.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── mozac_rounded_search_widget_background.xml │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_search_widget_extra_small_v1.xml │ │ │ │ │ ├── mozac_search_widget_extra_small_v2.xml │ │ │ │ │ ├── mozac_search_widget_large.xml │ │ │ │ │ ├── mozac_search_widget_medium.xml │ │ │ │ │ ├── mozac_search_widget_small.xml │ │ │ │ │ └── mozac_search_widget_small_no_mic.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-night │ │ │ │ │ └── colors.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── dimens.xml │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── search │ │ │ │ │ ├── BrowserStoreSeachAdapterTest.kt │ │ │ │ │ ├── SearchFeatureTest.kt │ │ │ │ │ ├── SearchUseCasesTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── BrowserStoreKtTest.kt │ │ │ │ │ └── SearchEngineKtTest.kt │ │ │ │ │ ├── middleware │ │ │ │ │ ├── AdsTelemetryMiddlewareTest.kt │ │ │ │ │ └── SearchMiddlewareTest.kt │ │ │ │ │ ├── region │ │ │ │ │ ├── RegionManagerTest.kt │ │ │ │ │ └── RegionMiddlewareTest.kt │ │ │ │ │ ├── storage │ │ │ │ │ ├── BundledSearchEnginesStorageTest.kt │ │ │ │ │ ├── CustomSearchEngineStorageTest.kt │ │ │ │ │ ├── ParseSearchPluginsTest.kt │ │ │ │ │ ├── SearchEngineReaderTest.kt │ │ │ │ │ └── SearchEngineWriterTest.kt │ │ │ │ │ ├── suggestions │ │ │ │ │ ├── ParserTest.kt │ │ │ │ │ └── SearchSuggestionClientTest.kt │ │ │ │ │ ├── telemetry │ │ │ │ │ ├── BaseSearchTelemetryTest.kt │ │ │ │ │ ├── SearchProviderModelTest.kt │ │ │ │ │ ├── SerpTelemetryRepositoryTest.kt │ │ │ │ │ ├── ads │ │ │ │ │ │ └── AdsTelemetryTest.kt │ │ │ │ │ └── incontent │ │ │ │ │ │ └── InContentTelemetryTest.kt │ │ │ │ │ └── widget │ │ │ │ │ ├── AppSearchWidgetProviderTest.kt │ │ │ │ │ ├── BaseVoiceSearchActivityExtendedForTests.kt │ │ │ │ │ └── BaseVoiceSearchActivityTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── serviceworker │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── serviceworker │ │ │ │ │ └── ServiceWorkerSupport.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── serviceworker │ │ │ │ │ └── ServiceWorkerSupportTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── session │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── session │ │ │ │ │ ├── CoordinateScrollingFeature.kt │ │ │ │ │ ├── FullScreenFeature.kt │ │ │ │ │ ├── HistoryDelegate.kt │ │ │ │ │ ├── PictureInPictureFeature.kt │ │ │ │ │ ├── ScreenOrientationFeature.kt │ │ │ │ │ ├── SessionFeature.kt │ │ │ │ │ ├── SessionUseCases.kt │ │ │ │ │ ├── SettingsUseCases.kt │ │ │ │ │ ├── SwipeRefreshFeature.kt │ │ │ │ │ ├── TrackingProtectionUseCases.kt │ │ │ │ │ ├── engine │ │ │ │ │ └── EngineViewPresenter.kt │ │ │ │ │ └── middleware │ │ │ │ │ ├── LastAccessMiddleware.kt │ │ │ │ │ └── undo │ │ │ │ │ └── UndoMiddleware.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── session │ │ │ │ │ ├── CoordinateScrollingFeatureTest.kt │ │ │ │ │ ├── FullScreenFeatureTest.kt │ │ │ │ │ ├── HistoryDelegateTest.kt │ │ │ │ │ ├── PictureInPictureFeatureTest.kt │ │ │ │ │ ├── ScreenOrientationFeatureTest.kt │ │ │ │ │ ├── SessionFeatureTest.kt │ │ │ │ │ ├── SessionUseCasesTest.kt │ │ │ │ │ ├── SettingsUseCasesTest.kt │ │ │ │ │ ├── SwipeRefreshFeatureTest.kt │ │ │ │ │ ├── TrackingProtectionUseCasesTest.kt │ │ │ │ │ └── middleware │ │ │ │ │ ├── LastAccessMiddlewareTest.kt │ │ │ │ │ └── undo │ │ │ │ │ └── UndoMiddlewareTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── share │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.share.db.RecentAppsDatabase │ │ │ │ │ ├── 1.json │ │ │ │ │ └── 2.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── share │ │ │ │ │ └── RecentAppsDaoTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── share │ │ │ │ │ ├── RecentApp.kt │ │ │ │ │ ├── RecentAppsStorage.kt │ │ │ │ │ ├── adapter │ │ │ │ │ └── RecentAppAdapter.kt │ │ │ │ │ └── db │ │ │ │ │ ├── RecentAppEntity.kt │ │ │ │ │ ├── RecentAppsDao.kt │ │ │ │ │ └── RecentAppsDatabase.kt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── feature │ │ │ │ └── share │ │ │ │ └── RecentAppStorageTest.kt │ │ ├── sitepermissions │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.sitepermissions.db.SitePermissionsDatabase │ │ │ │ │ ├── 1.json │ │ │ │ │ ├── 2.json │ │ │ │ │ ├── 3.json │ │ │ │ │ ├── 4.json │ │ │ │ │ ├── 5.json │ │ │ │ │ ├── 6.json │ │ │ │ │ ├── 7.json │ │ │ │ │ └── 8.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── sitepermissions │ │ │ │ │ └── db │ │ │ │ │ ├── OnDeviceSitePermissionsStorageTest.kt │ │ │ │ │ └── SitePermissionsDaoTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── sitepermissions │ │ │ │ │ │ ├── OnDiskSitePermissionsStorage.kt │ │ │ │ │ │ ├── SitePermissionsDialogFragment.kt │ │ │ │ │ │ ├── SitePermissionsFacts.kt │ │ │ │ │ │ ├── SitePermissionsFeature.kt │ │ │ │ │ │ ├── SitePermissionsRules.kt │ │ │ │ │ │ └── db │ │ │ │ │ │ ├── SitePermissionsDao.kt │ │ │ │ │ │ ├── SitePermissionsDatabase.kt │ │ │ │ │ │ └── SitePermissionsEntity.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ └── mozac_site_permissions_prompt.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-or │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── sitepermissions │ │ │ │ │ ├── OnDiskSitePermissionsStorageTest.kt │ │ │ │ │ ├── SitePermissionsDialogFragmentTest.kt │ │ │ │ │ ├── SitePermissionsFactsTest.kt │ │ │ │ │ ├── SitePermissionsFeatureTest.kt │ │ │ │ │ ├── SitePermissionsRulesTest.kt │ │ │ │ │ ├── SitePermissionsTest.kt │ │ │ │ │ └── db │ │ │ │ │ ├── SitePermissionEntityTest.kt │ │ │ │ │ └── StatusConverterTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── syncedtabs │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── syncedtabs │ │ │ │ │ ├── ClientTabPair.kt │ │ │ │ │ ├── SyncedTabsAutocompleteProvider.kt │ │ │ │ │ ├── SyncedTabsFeature.kt │ │ │ │ │ ├── SyncedTabsStorageSuggestionProvider.kt │ │ │ │ │ ├── controller │ │ │ │ │ ├── DefaultController.kt │ │ │ │ │ └── SyncedTabsController.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── SyncedTabsStorage.kt │ │ │ │ │ ├── facts │ │ │ │ │ └── SyncedTabsFacts.kt │ │ │ │ │ ├── interactor │ │ │ │ │ ├── DefaultInteractor.kt │ │ │ │ │ └── SyncedTabsInteractor.kt │ │ │ │ │ ├── presenter │ │ │ │ │ ├── DefaultPresenter.kt │ │ │ │ │ └── SyncedTabsPresenter.kt │ │ │ │ │ ├── storage │ │ │ │ │ ├── SyncedTabsProvider.kt │ │ │ │ │ └── SyncedTabsStorage.kt │ │ │ │ │ └── view │ │ │ │ │ └── SyncedTabsView.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── syncedtabs │ │ │ │ │ ├── SyncedTabsAutocompleteProviderKtTest.kt │ │ │ │ │ ├── SyncedTabsFeatureTest.kt │ │ │ │ │ ├── SyncedTabsStorageSuggestionProviderTest.kt │ │ │ │ │ ├── controller │ │ │ │ │ └── DefaultControllerTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── SyncedTabsStorageKtTest.kt │ │ │ │ │ ├── facts │ │ │ │ │ └── SyncedTabsFactsTest.kt │ │ │ │ │ ├── helper │ │ │ │ │ └── SyncedTabsProvider.kt │ │ │ │ │ ├── interactor │ │ │ │ │ └── DefaultInteractorTest.kt │ │ │ │ │ ├── presenter │ │ │ │ │ └── DefaultPresenterTest.kt │ │ │ │ │ └── storage │ │ │ │ │ └── SyncedTabsStorageTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── tab-collections │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.tab.collections.db.TabCollectionDatabase │ │ │ │ │ └── 1.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── tab │ │ │ │ │ └── collections │ │ │ │ │ ├── TabCollectionStorageTest.kt │ │ │ │ │ └── db │ │ │ │ │ ├── TabCollectionDaoTest.kt │ │ │ │ │ └── TabDaoTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── tab │ │ │ │ │ └── collections │ │ │ │ │ ├── Tab.kt │ │ │ │ │ ├── TabCollection.kt │ │ │ │ │ ├── TabCollectionStorage.kt │ │ │ │ │ ├── adapter │ │ │ │ │ ├── TabAdapter.kt │ │ │ │ │ └── TabCollectionAdapter.kt │ │ │ │ │ ├── db │ │ │ │ │ ├── TabCollectionDao.kt │ │ │ │ │ ├── TabCollectionDatabase.kt │ │ │ │ │ ├── TabCollectionEntity.kt │ │ │ │ │ ├── TabCollectionWithTabs.kt │ │ │ │ │ ├── TabDao.kt │ │ │ │ │ └── TabEntity.kt │ │ │ │ │ └── ext │ │ │ │ │ └── TabsUseCases.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── tab │ │ │ │ │ └── collections │ │ │ │ │ └── ext │ │ │ │ │ └── TabsUseCasesKtTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── tabs │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── tabs │ │ │ │ │ │ ├── CustomTabsUseCases.kt │ │ │ │ │ │ ├── TabsUseCases.kt │ │ │ │ │ │ ├── WindowFeature.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── BrowserState.kt │ │ │ │ │ │ └── TabSessionState.kt │ │ │ │ │ │ ├── tabstray │ │ │ │ │ │ ├── Tab.kt │ │ │ │ │ │ ├── TabList.kt │ │ │ │ │ │ ├── Tabs.kt │ │ │ │ │ │ ├── TabsFeature.kt │ │ │ │ │ │ └── TabsTrayPresenter.kt │ │ │ │ │ │ └── toolbar │ │ │ │ │ │ ├── TabCounterToolbarButton.kt │ │ │ │ │ │ └── TabsToolbarFeature.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── tabs │ │ │ │ │ ├── CustomTabsUseCasesTest.kt │ │ │ │ │ ├── TabsUseCasesTest.kt │ │ │ │ │ ├── WindowFeatureTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── TabSessionStateTest.kt │ │ │ │ │ ├── tabstray │ │ │ │ │ ├── TabsFeatureTest.kt │ │ │ │ │ └── TabsTrayPresenterTest.kt │ │ │ │ │ └── toolbar │ │ │ │ │ ├── TabCounterToolbarButtonTest.kt │ │ │ │ │ └── TabsToolbarFeatureTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── toolbar │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── feature │ │ │ │ │ │ └── toolbar │ │ │ │ │ │ ├── ContainerToolbarAction.kt │ │ │ │ │ │ ├── ContainerToolbarFeature.kt │ │ │ │ │ │ ├── ToolbarAutocompleteFeature.kt │ │ │ │ │ │ ├── ToolbarBehaviorController.kt │ │ │ │ │ │ ├── ToolbarFeature.kt │ │ │ │ │ │ ├── ToolbarInteractor.kt │ │ │ │ │ │ ├── ToolbarPresenter.kt │ │ │ │ │ │ ├── WebExtensionToolbarAction.kt │ │ │ │ │ │ ├── WebExtensionToolbarFeature.kt │ │ │ │ │ │ └── internal │ │ │ │ │ │ └── URLRenderer.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_feature_toolbar_container_action_layout.xml │ │ │ │ │ └── mozac_feature_toolbar_web_extension_action_layout.xml │ │ │ │ │ └── values │ │ │ │ │ └── colors.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── toolbar │ │ │ │ │ ├── ContainerToolbarActionTest.kt │ │ │ │ │ ├── ContainerToolbarFeatureTest.kt │ │ │ │ │ ├── ToolbarAutocompleteFeatureTest.kt │ │ │ │ │ ├── ToolbarBehaviorControllerTest.kt │ │ │ │ │ ├── ToolbarFeatureTest.kt │ │ │ │ │ ├── ToolbarInteractorTest.kt │ │ │ │ │ ├── ToolbarPresenterTest.kt │ │ │ │ │ ├── WebExtensionToolbarFeatureTest.kt │ │ │ │ │ ├── WebExtensionToolbarTest.kt │ │ │ │ │ └── internal │ │ │ │ │ └── URLRendererTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── top-sites │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.feature.top.sites.db.TopSiteDatabase │ │ │ │ │ ├── 1.json │ │ │ │ │ ├── 2.json │ │ │ │ │ └── 3.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── top │ │ │ │ │ └── sites │ │ │ │ │ ├── OnDevicePinnedSitesStorageTest.kt │ │ │ │ │ └── db │ │ │ │ │ └── PinnedSiteDaoTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── top │ │ │ │ │ └── sites │ │ │ │ │ ├── DefaultTopSitesStorage.kt │ │ │ │ │ ├── PinnedSiteStorage.kt │ │ │ │ │ ├── TopSite.kt │ │ │ │ │ ├── TopSitesConfig.kt │ │ │ │ │ ├── TopSitesFeature.kt │ │ │ │ │ ├── TopSitesProvider.kt │ │ │ │ │ ├── TopSitesStorage.kt │ │ │ │ │ ├── TopSitesUseCases.kt │ │ │ │ │ ├── db │ │ │ │ │ ├── PinnedSiteDao.kt │ │ │ │ │ ├── PinnedSiteEntity.kt │ │ │ │ │ └── TopSiteDatabase.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── TopFrecentSiteInfo.kt │ │ │ │ │ └── TopSite.kt │ │ │ │ │ ├── facts │ │ │ │ │ └── TopSitesFacts.kt │ │ │ │ │ ├── presenter │ │ │ │ │ ├── DefaultTopSitesPresenter.kt │ │ │ │ │ └── TopSitesPresenter.kt │ │ │ │ │ └── view │ │ │ │ │ └── TopSitesView.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── top │ │ │ │ │ └── sites │ │ │ │ │ ├── DefaultTopSitesStorageTest.kt │ │ │ │ │ ├── PinnedSitesStorageTest.kt │ │ │ │ │ ├── TopSitesFeatureTest.kt │ │ │ │ │ ├── TopSitesUseCasesTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── TopSiteTest.kt │ │ │ │ │ ├── fact │ │ │ │ │ └── TopSitesFactsTest.kt │ │ │ │ │ └── presenter │ │ │ │ │ └── DefaultTopSitesPresenterTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── webauthn │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── webauthn │ │ │ │ │ └── WebAuthnFeature.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── webauthn │ │ │ │ │ └── WebAuthnFeatureTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── webcompat-reporter │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ └── extensions │ │ │ │ │ │ └── webcompat-reporter │ │ │ │ │ │ ├── .eslintrc.js │ │ │ │ │ │ ├── background.js │ │ │ │ │ │ ├── experimentalAPIs │ │ │ │ │ │ ├── actors │ │ │ │ │ │ │ └── tabExtrasActor.jsm │ │ │ │ │ │ ├── tabExtras.js │ │ │ │ │ │ └── tabExtras.json │ │ │ │ │ │ ├── icons │ │ │ │ │ │ └── lightbulb.svg │ │ │ │ │ │ └── manifest.json │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── webcompat │ │ │ │ │ └── reporter │ │ │ │ │ └── WebCompatReporterFeature.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── webcompat │ │ │ │ │ └── reporter │ │ │ │ │ └── WebCompatReporterFeatureTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── webcompat │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ └── extensions │ │ │ │ │ │ └── webcompat │ │ │ │ │ │ ├── about-compat │ │ │ │ │ │ ├── AboutCompat.sys.mjs │ │ │ │ │ │ ├── aboutCompat.css │ │ │ │ │ │ ├── aboutCompat.html │ │ │ │ │ │ ├── aboutCompat.js │ │ │ │ │ │ ├── aboutPage.js │ │ │ │ │ │ ├── aboutPage.json │ │ │ │ │ │ └── aboutPageProcessScript.js │ │ │ │ │ │ ├── data │ │ │ │ │ │ ├── injections.js │ │ │ │ │ │ ├── shims.js │ │ │ │ │ │ └── ua_overrides.js │ │ │ │ │ │ ├── experiment-apis │ │ │ │ │ │ ├── aboutConfigPrefs.js │ │ │ │ │ │ ├── aboutConfigPrefs.json │ │ │ │ │ │ ├── aboutConfigPrefsChild.js │ │ │ │ │ │ ├── appConstants.js │ │ │ │ │ │ ├── appConstants.json │ │ │ │ │ │ ├── matchPatterns.js │ │ │ │ │ │ ├── matchPatterns.json │ │ │ │ │ │ ├── systemManufacturer.js │ │ │ │ │ │ ├── systemManufacturer.json │ │ │ │ │ │ ├── trackingProtection.js │ │ │ │ │ │ └── trackingProtection.json │ │ │ │ │ │ ├── injections │ │ │ │ │ │ ├── css │ │ │ │ │ │ │ ├── bug0000000-testbed-css-injection.css │ │ │ │ │ │ │ ├── bug1575000-apply.lloydsbank.co.uk-radio-buttons-fix.css │ │ │ │ │ │ │ ├── bug1610344-directv.com.co-hide-unsupported-message.css │ │ │ │ │ │ │ ├── bug1644830-missingmail.usps.com-checkboxes-not-visible.css │ │ │ │ │ │ │ ├── bug1651917-teletrader.com.body-transform-origin.css │ │ │ │ │ │ │ ├── bug1653075-livescience.com-scrollbar-width.css │ │ │ │ │ │ │ ├── bug1654907-reactine.ca-hide-unsupported.css │ │ │ │ │ │ │ ├── bug1694470-myvidster.com-content-not-shown.css │ │ │ │ │ │ │ ├── bug1707795-office365-sheets-overscroll-disable.css │ │ │ │ │ │ │ ├── bug1712833-buskocchi.desuca.co.jp-fix-map-height.css │ │ │ │ │ │ │ ├── bug1741234-patient.alphalabs.ca-height-fix.css │ │ │ │ │ │ │ ├── bug1765947-veniceincoming.com-left-fix.css │ │ │ │ │ │ │ ├── bug1770962-coldwellbankerhomes.com-image-height.css │ │ │ │ │ │ │ ├── bug1774490-rainews.it-gallery-fix.css │ │ │ │ │ │ │ ├── bug1784141-aveeno.com-acuvue.com-unsupported.css │ │ │ │ │ │ │ ├── bug1784199-entrata-platform-unsupported.css │ │ │ │ │ │ │ ├── bug1819678-nppes.cms.hhs.gov-unsupported-banner.css │ │ │ │ │ │ │ ├── bug1829949-tomshardware.com-scrollbar-width.css │ │ │ │ │ │ │ ├── bug1830747-babbel.com-page-height.css │ │ │ │ │ │ │ ├── bug1830752-afisha.ru-slider-pointer-events.css │ │ │ │ │ │ │ ├── bug1830761-91mobiles.com-content-height.css │ │ │ │ │ │ │ ├── bug1830796-copyleaks.com-hide-unsupported.css │ │ │ │ │ │ │ ├── bug1830810-interceramic.com-hide-unsupported.css │ │ │ │ │ │ │ ├── bug1830813-page.onstove.com-hide-unsupported.css │ │ │ │ │ │ │ ├── bug1836103-autostar-novoross.ru-make-map-taller.css │ │ │ │ │ │ │ ├── bug1836105-cnn.com-fix-blank-pages-when-printing.css │ │ │ │ │ │ │ ├── bug1848711-vio.com-page-height.css │ │ │ │ │ │ │ ├── bug1848713-cleanrider.com-slider.css │ │ │ │ │ │ │ ├── bug1848849-theaa.com-printing-mode-fix.css │ │ │ │ │ │ │ ├── bug1849019-axa-assistance.pl-datepicker-fix.css │ │ │ │ │ │ │ ├── bug1849388-kucharkaprodceru.cz-scroll-fix.css │ │ │ │ │ │ │ ├── bug1868345-tvmovie.de-scroll-fix.css │ │ │ │ │ │ │ ├── bug1877346-offerup.com-infinite-scroll-fix.css │ │ │ │ │ │ │ └── bug1884842-foodora.cz-height-fix.css │ │ │ │ │ │ └── js │ │ │ │ │ │ │ ├── bug0000000-testbed-js-injection.js │ │ │ │ │ │ │ ├── bug1448747-fastclick-shim.js │ │ │ │ │ │ │ ├── bug1452707-window.controllers-shim-ib.absa.co.za.js │ │ │ │ │ │ │ ├── bug1457335-histography.io-ua-change.js │ │ │ │ │ │ │ ├── bug1472075-bankofamerica.com-ua-change.js │ │ │ │ │ │ │ ├── bug1579159-m.tailieu.vn-pdfjs-worker-disable.js │ │ │ │ │ │ │ ├── bug1722955-frontgate.com-ua-override.js │ │ │ │ │ │ │ ├── bug1724868-news.yahoo.co.jp-ua-override.js │ │ │ │ │ │ │ ├── bug1739489-draftjs-beforeinput.js │ │ │ │ │ │ │ ├── bug1769762-tiktok.com-plugins-shim.js │ │ │ │ │ │ │ ├── bug1774005-installtrigger-shim.js │ │ │ │ │ │ │ ├── bug1799968-www.samsung.com-appVersion-linux-fix.js │ │ │ │ │ │ │ ├── bug1799980-healow.com-infinite-loop-fix.js │ │ │ │ │ │ │ ├── bug1818818-fastclick-legacy-shim.js │ │ │ │ │ │ │ ├── bug1819450-cmbchina.com-ua-change.js │ │ │ │ │ │ │ ├── bug1819476-axisbank.com-webkitSpeechRecognition-shim.js │ │ │ │ │ │ │ ├── bug1819678-free4talk.com-window-chrome-shim.js │ │ │ │ │ │ │ ├── bug1830776-blueshieldca.com-unsupported.js │ │ │ │ │ │ │ ├── bug1831007-nintendo-window-OnetrustActiveGroups.js │ │ │ │ │ │ │ ├── bug1836157-thai-masszazs-niceScroll-disable.js │ │ │ │ │ │ │ ├── bug1842437-www.youtube.com-performance-now-precision.js │ │ │ │ │ │ │ ├── bug1849058-nicochannel.jp-picture-in-picture-shim.js │ │ │ │ │ │ │ ├── bug1855014-eksiseyler.com.js │ │ │ │ │ │ │ ├── bug1855071-www.meteoam.it.js │ │ │ │ │ │ │ ├── bug1859617-installtrigger-removal-shim.js │ │ │ │ │ │ │ └── bug1864564-esri-transfrom-names-shim.js │ │ │ │ │ │ ├── lib │ │ │ │ │ │ ├── about_compat_broker.js │ │ │ │ │ │ ├── custom_functions.js │ │ │ │ │ │ ├── injections.js │ │ │ │ │ │ ├── intervention_helpers.js │ │ │ │ │ │ ├── messaging_helper.js │ │ │ │ │ │ ├── module_shim.js │ │ │ │ │ │ ├── requestStorageAccess_helper.js │ │ │ │ │ │ ├── shim_messaging_helper.js │ │ │ │ │ │ ├── shims.js │ │ │ │ │ │ ├── ua_helpers.js │ │ │ │ │ │ └── ua_overrides.js │ │ │ │ │ │ ├── manifest.json │ │ │ │ │ │ ├── run.js │ │ │ │ │ │ └── shims │ │ │ │ │ │ ├── addthis-angular.js │ │ │ │ │ │ ├── adform.js │ │ │ │ │ │ ├── adnexus-ast.js │ │ │ │ │ │ ├── adnexus-prebid.js │ │ │ │ │ │ ├── adsafeprotected-ima.js │ │ │ │ │ │ ├── apstag.js │ │ │ │ │ │ ├── blogger.js │ │ │ │ │ │ ├── bloggerAccount.js │ │ │ │ │ │ ├── bmauth.js │ │ │ │ │ │ ├── branch.js │ │ │ │ │ │ ├── chartbeat.js │ │ │ │ │ │ ├── crave-ca.js │ │ │ │ │ │ ├── criteo.js │ │ │ │ │ │ ├── cxense.js │ │ │ │ │ │ ├── doubleverify.js │ │ │ │ │ │ ├── eluminate.js │ │ │ │ │ │ ├── empty-script.js │ │ │ │ │ │ ├── empty-shim.txt │ │ │ │ │ │ ├── everest.js │ │ │ │ │ │ ├── facebook-sdk.js │ │ │ │ │ │ ├── facebook.svg │ │ │ │ │ │ ├── fastclick.js │ │ │ │ │ │ ├── firebase.js │ │ │ │ │ │ ├── google-ads.js │ │ │ │ │ │ ├── google-analytics-and-tag-manager.js │ │ │ │ │ │ ├── google-analytics-ecommerce-plugin.js │ │ │ │ │ │ ├── google-analytics-legacy.js │ │ │ │ │ │ ├── google-ima.js │ │ │ │ │ │ ├── google-page-ad.js │ │ │ │ │ │ ├── google-publisher-tags.js │ │ │ │ │ │ ├── google-safeframe.html │ │ │ │ │ │ ├── history.js │ │ │ │ │ │ ├── iam.js │ │ │ │ │ │ ├── iaspet.js │ │ │ │ │ │ ├── instagram.js │ │ │ │ │ │ ├── kinja.js │ │ │ │ │ │ ├── live-test-shim.js │ │ │ │ │ │ ├── maxmind-geoip.js │ │ │ │ │ │ ├── microsoftLogin.js │ │ │ │ │ │ ├── microsoftVirtualAssistant.js │ │ │ │ │ │ ├── moat.js │ │ │ │ │ │ ├── mochitest-shim-1.js │ │ │ │ │ │ ├── mochitest-shim-2.js │ │ │ │ │ │ ├── mochitest-shim-3.js │ │ │ │ │ │ ├── nielsen.js │ │ │ │ │ │ ├── optimizely.js │ │ │ │ │ │ ├── play.svg │ │ │ │ │ │ ├── rambler-authenticator.js │ │ │ │ │ │ ├── rich-relevance.js │ │ │ │ │ │ ├── salesforce.js │ │ │ │ │ │ ├── spotify-embed.js │ │ │ │ │ │ ├── tracking-pixel.png │ │ │ │ │ │ ├── tsn-ca.js │ │ │ │ │ │ ├── vast2.xml │ │ │ │ │ │ ├── vast3.xml │ │ │ │ │ │ ├── vidible.js │ │ │ │ │ │ ├── vmad.xml │ │ │ │ │ │ └── webtrends.js │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── webcompat │ │ │ │ │ └── WebCompatFeature.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── webcompat │ │ │ │ │ └── WebCompatFeatureTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ └── webnotifications │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── feature │ │ │ │ │ └── webnotifications │ │ │ │ │ ├── NativeNotificationBridge.kt │ │ │ │ │ ├── WebNotificationFeature.kt │ │ │ │ │ └── WebNotificationIntentProcessor.kt │ │ │ └── res │ │ │ │ ├── values-am │ │ │ │ └── strings.xml │ │ │ │ ├── values-an │ │ │ │ └── strings.xml │ │ │ │ ├── values-ar │ │ │ │ └── strings.xml │ │ │ │ ├── values-ast │ │ │ │ └── strings.xml │ │ │ │ ├── values-az │ │ │ │ └── strings.xml │ │ │ │ ├── values-azb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ban │ │ │ │ └── strings.xml │ │ │ │ ├── values-be │ │ │ │ └── strings.xml │ │ │ │ ├── values-bg │ │ │ │ └── strings.xml │ │ │ │ ├── values-bn │ │ │ │ └── strings.xml │ │ │ │ ├── values-br │ │ │ │ └── strings.xml │ │ │ │ ├── values-bs │ │ │ │ └── strings.xml │ │ │ │ ├── values-ca │ │ │ │ └── strings.xml │ │ │ │ ├── values-cak │ │ │ │ └── strings.xml │ │ │ │ ├── values-ceb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ckb │ │ │ │ └── strings.xml │ │ │ │ ├── values-co │ │ │ │ └── strings.xml │ │ │ │ ├── values-cs │ │ │ │ └── strings.xml │ │ │ │ ├── values-cy │ │ │ │ └── strings.xml │ │ │ │ ├── values-da │ │ │ │ └── strings.xml │ │ │ │ ├── values-de │ │ │ │ └── strings.xml │ │ │ │ ├── values-dsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-el │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rCA │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rGB │ │ │ │ └── strings.xml │ │ │ │ ├── values-eo │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rAR │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rCL │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rES │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rMX │ │ │ │ └── strings.xml │ │ │ │ ├── values-es │ │ │ │ └── strings.xml │ │ │ │ ├── values-et │ │ │ │ └── strings.xml │ │ │ │ ├── values-eu │ │ │ │ └── strings.xml │ │ │ │ ├── values-fa │ │ │ │ └── strings.xml │ │ │ │ ├── values-ff │ │ │ │ └── strings.xml │ │ │ │ ├── values-fi │ │ │ │ └── strings.xml │ │ │ │ ├── values-fr │ │ │ │ └── strings.xml │ │ │ │ ├── values-fur │ │ │ │ └── strings.xml │ │ │ │ ├── values-fy-rNL │ │ │ │ └── strings.xml │ │ │ │ ├── values-gd │ │ │ │ └── strings.xml │ │ │ │ ├── values-gl │ │ │ │ └── strings.xml │ │ │ │ ├── values-gn │ │ │ │ └── strings.xml │ │ │ │ ├── values-gu-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hi-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hr │ │ │ │ └── strings.xml │ │ │ │ ├── values-hsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-hu │ │ │ │ └── strings.xml │ │ │ │ ├── values-hy-rAM │ │ │ │ └── strings.xml │ │ │ │ ├── values-ia │ │ │ │ └── strings.xml │ │ │ │ ├── values-in │ │ │ │ └── strings.xml │ │ │ │ ├── values-is │ │ │ │ └── strings.xml │ │ │ │ ├── values-it │ │ │ │ └── strings.xml │ │ │ │ ├── values-iw │ │ │ │ └── strings.xml │ │ │ │ ├── values-ja │ │ │ │ └── strings.xml │ │ │ │ ├── values-ka │ │ │ │ └── strings.xml │ │ │ │ ├── values-kaa │ │ │ │ └── strings.xml │ │ │ │ ├── values-kab │ │ │ │ └── strings.xml │ │ │ │ ├── values-kk │ │ │ │ └── strings.xml │ │ │ │ ├── values-kmr │ │ │ │ └── strings.xml │ │ │ │ ├── values-kn │ │ │ │ └── strings.xml │ │ │ │ ├── values-ko │ │ │ │ └── strings.xml │ │ │ │ ├── values-lo │ │ │ │ └── strings.xml │ │ │ │ ├── values-lt │ │ │ │ └── strings.xml │ │ │ │ ├── values-mr │ │ │ │ └── strings.xml │ │ │ │ ├── values-my │ │ │ │ └── strings.xml │ │ │ │ ├── values-nb-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-ne-rNP │ │ │ │ └── strings.xml │ │ │ │ ├── values-nl │ │ │ │ └── strings.xml │ │ │ │ ├── values-nn-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-oc │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rPK │ │ │ │ └── strings.xml │ │ │ │ ├── values-pl │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rBR │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rPT │ │ │ │ └── strings.xml │ │ │ │ ├── values-rm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ro │ │ │ │ └── strings.xml │ │ │ │ ├── values-ru │ │ │ │ └── strings.xml │ │ │ │ ├── values-sat │ │ │ │ └── strings.xml │ │ │ │ ├── values-sc │ │ │ │ └── strings.xml │ │ │ │ ├── values-si │ │ │ │ └── strings.xml │ │ │ │ ├── values-sk │ │ │ │ └── strings.xml │ │ │ │ ├── values-skr │ │ │ │ └── strings.xml │ │ │ │ ├── values-sl │ │ │ │ └── strings.xml │ │ │ │ ├── values-sq │ │ │ │ └── strings.xml │ │ │ │ ├── values-sr │ │ │ │ └── strings.xml │ │ │ │ ├── values-su │ │ │ │ └── strings.xml │ │ │ │ ├── values-sv-rSE │ │ │ │ └── strings.xml │ │ │ │ ├── values-ta │ │ │ │ └── strings.xml │ │ │ │ ├── values-te │ │ │ │ └── strings.xml │ │ │ │ ├── values-tg │ │ │ │ └── strings.xml │ │ │ │ ├── values-th │ │ │ │ └── strings.xml │ │ │ │ ├── values-tl │ │ │ │ └── strings.xml │ │ │ │ ├── values-tok │ │ │ │ └── strings.xml │ │ │ │ ├── values-tr │ │ │ │ └── strings.xml │ │ │ │ ├── values-trs │ │ │ │ └── strings.xml │ │ │ │ ├── values-tt │ │ │ │ └── strings.xml │ │ │ │ ├── values-tzm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ug │ │ │ │ └── strings.xml │ │ │ │ ├── values-uk │ │ │ │ └── strings.xml │ │ │ │ ├── values-ur │ │ │ │ └── strings.xml │ │ │ │ ├── values-uz │ │ │ │ └── strings.xml │ │ │ │ ├── values-vi │ │ │ │ └── strings.xml │ │ │ │ ├── values-yo │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rCN │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rTW │ │ │ │ └── strings.xml │ │ │ │ └── values │ │ │ │ └── strings.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── feature │ │ │ │ └── webnotifications │ │ │ │ ├── NativeNotificationBridgeTest.kt │ │ │ │ ├── WebNotificationFeatureTest.kt │ │ │ │ └── WebNotificationIntentProcessorTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ ├── lib │ │ ├── auth │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── auth │ │ │ │ │ ├── AuthenticationDelegate.kt │ │ │ │ │ ├── BiometricPromptAuth.kt │ │ │ │ │ └── BiometricUtils.kt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── lib │ │ │ │ └── auth │ │ │ │ ├── BiometricPromptAuthTest.kt │ │ │ │ └── BiometricUtilsTest.kt │ │ ├── crash-sentry │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── crash │ │ │ │ │ └── sentry │ │ │ │ │ ├── SentryService.kt │ │ │ │ │ └── eventprocessors │ │ │ │ │ ├── AddMechanismEventProcessor.kt │ │ │ │ │ └── RustCrashEventProcessor.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── crash │ │ │ │ │ └── sentry │ │ │ │ │ ├── SentryServiceTest.kt │ │ │ │ │ └── eventprocessors │ │ │ │ │ ├── AddMechanismEventProcessorTest.kt │ │ │ │ │ └── RustCrashEventProcessorTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── crash │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── images │ │ │ │ ├── crash-dialog.png │ │ │ │ └── crash-in-app.png │ │ │ ├── metrics.yaml │ │ │ ├── pings.yaml │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.lib.crash.db.CrashDatabase │ │ │ │ │ └── 1.json │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── lib │ │ │ │ │ │ └── crash │ │ │ │ │ │ ├── Crash.kt │ │ │ │ │ │ ├── CrashReporter.kt │ │ │ │ │ │ ├── db │ │ │ │ │ │ ├── CrashDao.kt │ │ │ │ │ │ ├── CrashDatabase.kt │ │ │ │ │ │ ├── CrashEntity.kt │ │ │ │ │ │ ├── CrashWithReports.kt │ │ │ │ │ │ └── ReportEntity.kt │ │ │ │ │ │ ├── handler │ │ │ │ │ │ ├── CrashHandlerService.kt │ │ │ │ │ │ └── ExceptionHandler.kt │ │ │ │ │ │ ├── notification │ │ │ │ │ │ └── CrashNotification.kt │ │ │ │ │ │ ├── prompt │ │ │ │ │ │ ├── CrashPrompt.kt │ │ │ │ │ │ └── CrashReporterActivity.kt │ │ │ │ │ │ ├── service │ │ │ │ │ │ ├── CrashReporterService.kt │ │ │ │ │ │ ├── CrashTelemetryService.kt │ │ │ │ │ │ ├── GleanCrashReporterService.kt │ │ │ │ │ │ ├── MozillaSocorroService.kt │ │ │ │ │ │ ├── SendCrashReportService.kt │ │ │ │ │ │ └── SendCrashTelemetryService.kt │ │ │ │ │ │ └── ui │ │ │ │ │ │ ├── AbstractCrashListActivity.kt │ │ │ │ │ │ ├── CrashListAdapter.kt │ │ │ │ │ │ └── CrashListFragment.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── mozac_lib_crash_notification.xml │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_lib_crash_crashlist.xml │ │ │ │ │ ├── mozac_lib_crash_crashreporter.xml │ │ │ │ │ └── mozac_lib_crash_item_crash.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hil │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── styles.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── crash │ │ │ │ │ ├── BreadcrumbTest.kt │ │ │ │ │ ├── CrashReporterTest.kt │ │ │ │ │ ├── CrashTest.kt │ │ │ │ │ ├── NativeCodeCrashTest.kt │ │ │ │ │ ├── UncaughtExceptionCrashTest.kt │ │ │ │ │ ├── handler │ │ │ │ │ ├── CrashHandlerServiceTest.kt │ │ │ │ │ └── ExceptionHandlerTest.kt │ │ │ │ │ ├── notification │ │ │ │ │ └── CrashNotificationTest.kt │ │ │ │ │ ├── prompt │ │ │ │ │ └── CrashReporterActivityTest.kt │ │ │ │ │ └── service │ │ │ │ │ ├── GleanCrashReporterServiceTest.kt │ │ │ │ │ ├── MozillaSocorroServiceTest.kt │ │ │ │ │ ├── SendCrashReportServiceTest.kt │ │ │ │ │ └── SendCrashTelemetryServiceTest.kt │ │ │ │ └── resources │ │ │ │ ├── BadTestExtrasFile │ │ │ │ ├── TestExtrasFile │ │ │ │ ├── TestLegacyExtrasFile │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── dataprotect │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── dataprotect │ │ │ │ │ ├── Keystore.kt │ │ │ │ │ ├── KeystoreException.kt │ │ │ │ │ ├── SecureAbove22Preferences.kt │ │ │ │ │ └── SecurePrefsReliabilityExperiment.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── dataprotect │ │ │ │ │ ├── KeystoreTest.kt │ │ │ │ │ ├── SecureAbove22PreferencesTest.kt │ │ │ │ │ └── SecurePrefsReliabilityExperimentTest.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── fetch-httpurlconnection │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── fetch │ │ │ │ │ └── httpurlconnection │ │ │ │ │ └── HttpURLConnectionClient.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── fetch │ │ │ │ │ └── httpurlconnection │ │ │ │ │ └── HttpUrlConnectionFetchTestCases.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── fetch-okhttp │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── fetch │ │ │ │ │ └── okhttp │ │ │ │ │ └── OkHttpClient.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── fetch │ │ │ │ │ └── okhttp │ │ │ │ │ └── OkHttpFetchTestCases.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── jexl │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── jexl │ │ │ │ │ ├── Jexl.kt │ │ │ │ │ ├── ast │ │ │ │ │ └── nodes.kt │ │ │ │ │ ├── evaluator │ │ │ │ │ ├── Evaluator.kt │ │ │ │ │ ├── EvaluatorHandlers.kt │ │ │ │ │ └── JexlContext.kt │ │ │ │ │ ├── ext │ │ │ │ │ └── JexlExtensions.kt │ │ │ │ │ ├── grammar │ │ │ │ │ └── Grammar.kt │ │ │ │ │ ├── lexer │ │ │ │ │ ├── Lexer.kt │ │ │ │ │ ├── LexerInput.kt │ │ │ │ │ └── Token.kt │ │ │ │ │ ├── parser │ │ │ │ │ ├── Parser.kt │ │ │ │ │ └── StateMachine.kt │ │ │ │ │ └── value │ │ │ │ │ └── JexlValue.kt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── lib │ │ │ │ └── jexl │ │ │ │ ├── JexlTest.kt │ │ │ │ ├── LanguageTest.kt │ │ │ │ ├── evaluator │ │ │ │ └── EvaluatorTest.kt │ │ │ │ ├── ext │ │ │ │ └── JexlExtensionsTest.kt │ │ │ │ ├── lexer │ │ │ │ └── LexerTest.kt │ │ │ │ ├── parser │ │ │ │ └── ParserTest.kt │ │ │ │ └── value │ │ │ │ └── JexlValueTest.kt │ │ ├── publicsuffixlist │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── assets │ │ │ │ │ └── publicsuffixes │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── publicsuffixlist │ │ │ │ │ ├── PublicSuffixList.kt │ │ │ │ │ ├── PublicSuffixListData.kt │ │ │ │ │ ├── PublicSuffixListLoader.kt │ │ │ │ │ └── ext │ │ │ │ │ └── ByteArray.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── publicsuffixlist │ │ │ │ │ └── PublicSuffixListTest.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── push-firebase │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── push │ │ │ │ │ └── firebase │ │ │ │ │ └── AbstractFirebasePushService.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── lib │ │ │ │ │ └── push │ │ │ │ │ └── firebase │ │ │ │ │ └── AbstractFirebasePushServiceTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ └── state │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── lib │ │ │ │ └── state │ │ │ │ └── ext │ │ │ │ └── ComposeExtensionsKtTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── lib │ │ │ │ └── state │ │ │ │ ├── Action.kt │ │ │ │ ├── DelicateAction.kt │ │ │ │ ├── Middleware.kt │ │ │ │ ├── Observer.kt │ │ │ │ ├── Reducer.kt │ │ │ │ ├── State.kt │ │ │ │ ├── Store.kt │ │ │ │ ├── ext │ │ │ │ ├── ComposeExtensions.kt │ │ │ │ ├── Fragment.kt │ │ │ │ ├── StoreExtensions.kt │ │ │ │ └── View.kt │ │ │ │ ├── helpers │ │ │ │ └── AbstractBinding.kt │ │ │ │ └── internal │ │ │ │ ├── ReducerChainBuilder.kt │ │ │ │ └── StoreThreadFactory.kt │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── lib │ │ │ │ └── state │ │ │ │ ├── StoreExceptionTest.kt │ │ │ │ ├── StoreTest.kt │ │ │ │ ├── ext │ │ │ │ ├── FragmentKtTest.kt │ │ │ │ ├── StoreExtensionsKtTest.kt │ │ │ │ └── ViewKtTest.kt │ │ │ │ └── helpers │ │ │ │ └── AbstractBindingTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ ├── service │ │ ├── contile │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── contile │ │ │ │ │ ├── ContileTopSitesProvider.kt │ │ │ │ │ ├── ContileTopSitesUpdater.kt │ │ │ │ │ ├── ContileTopSitesUpdaterWorker.kt │ │ │ │ │ └── ContileTopSitesUseCases.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── contile │ │ │ │ │ ├── ContileTopSitesProviderTest.kt │ │ │ │ │ ├── ContileTopSitesUpdaterTest.kt │ │ │ │ │ ├── ContileTopSitesUpdaterWorkerTest.kt │ │ │ │ │ └── ContileTopSitesUseCasesTest.kt │ │ │ │ └── resources │ │ │ │ ├── contile │ │ │ │ └── contile.json │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── digitalassetlinks │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── digitalassetlinks │ │ │ │ │ ├── AndroidAssetFinder.kt │ │ │ │ │ ├── AssetDescriptor.kt │ │ │ │ │ ├── Constants.kt │ │ │ │ │ ├── Relation.kt │ │ │ │ │ ├── RelationChecker.kt │ │ │ │ │ ├── Statement.kt │ │ │ │ │ ├── StatementListFetcher.kt │ │ │ │ │ ├── api │ │ │ │ │ ├── CheckAssetLinksResponse.kt │ │ │ │ │ ├── DigitalAssetLinksApi.kt │ │ │ │ │ └── ListStatementsResponse.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── Client.kt │ │ │ │ │ └── Response.kt │ │ │ │ │ └── local │ │ │ │ │ ├── StatementApi.kt │ │ │ │ │ └── StatementRelationChecker.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── digitalassetlinks │ │ │ │ │ ├── AndroidAssetFinderTest.kt │ │ │ │ │ ├── api │ │ │ │ │ └── DigitalAssetLinksApiTest.kt │ │ │ │ │ └── local │ │ │ │ │ ├── StatementApiTest.kt │ │ │ │ │ └── StatementRelationCheckerTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── firefox-accounts │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules-consumer.pro │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── fxa │ │ │ │ │ ├── AccountStorage.kt │ │ │ │ │ ├── Config.kt │ │ │ │ │ ├── Exceptions.kt │ │ │ │ │ ├── FirefoxAccount.kt │ │ │ │ │ ├── FxaDeviceConstellation.kt │ │ │ │ │ ├── FxaDeviceSettingsCache.kt │ │ │ │ │ ├── SyncAuthInfoCache.kt │ │ │ │ │ ├── SyncFacts.kt │ │ │ │ │ ├── Types.kt │ │ │ │ │ ├── Utils.kt │ │ │ │ │ ├── manager │ │ │ │ │ ├── AppServicesStateMachineChecker.kt │ │ │ │ │ ├── FxaAccountManager.kt │ │ │ │ │ ├── GlobalAccountManager.kt │ │ │ │ │ ├── State.kt │ │ │ │ │ ├── SyncEnginesStorage.kt │ │ │ │ │ └── ext │ │ │ │ │ │ └── FxaAccountManager.kt │ │ │ │ │ ├── store │ │ │ │ │ ├── SyncAction.kt │ │ │ │ │ ├── SyncState.kt │ │ │ │ │ ├── SyncStore.kt │ │ │ │ │ └── SyncStoreSupport.kt │ │ │ │ │ └── sync │ │ │ │ │ ├── SyncManager.kt │ │ │ │ │ ├── Types.kt │ │ │ │ │ └── WorkManagerSyncManager.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── fxa │ │ │ │ │ ├── AccountStorageTest.kt │ │ │ │ │ ├── FxaAccountManagerTest.kt │ │ │ │ │ ├── FxaDeviceConstellationTest.kt │ │ │ │ │ ├── FxaDeviceSettingsCacheTest.kt │ │ │ │ │ ├── SyncAuthInfoCacheTest.kt │ │ │ │ │ ├── UtilsKtTest.kt │ │ │ │ │ ├── manager │ │ │ │ │ ├── GlobalAccountManagerTest.kt │ │ │ │ │ ├── StateKtTest.kt │ │ │ │ │ ├── SyncEnginesStorageTest.kt │ │ │ │ │ └── ext │ │ │ │ │ │ └── FxaAccountManagerKtTest.kt │ │ │ │ │ ├── store │ │ │ │ │ └── SyncStoreSupportTest.kt │ │ │ │ │ └── sync │ │ │ │ │ ├── TypesTest.kt │ │ │ │ │ └── WorkManagerSyncManagerTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── glean │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── gradle.properties │ │ │ ├── proguard-rules.pro │ │ │ ├── scripts │ │ │ │ └── sdk_generator.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── glean │ │ │ │ │ ├── Glean.kt │ │ │ │ │ ├── config │ │ │ │ │ └── Configuration.kt │ │ │ │ │ ├── net │ │ │ │ │ └── ConceptFetchHttpUploader.kt │ │ │ │ │ ├── private │ │ │ │ │ └── MetricAliases.kt │ │ │ │ │ └── testing │ │ │ │ │ ├── ErrorType.kt │ │ │ │ │ ├── GleanTestLocalServer.kt │ │ │ │ │ └── GleanTestRule.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── glean │ │ │ │ │ ├── GleanFromJavaTest.java │ │ │ │ │ ├── GleanTest.kt │ │ │ │ │ └── net │ │ │ │ │ └── ConceptFetchHttpUploaderTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── location │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── location │ │ │ │ │ ├── LocationService.kt │ │ │ │ │ └── MozillaLocationService.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── location │ │ │ │ │ ├── LocationServiceTest.kt │ │ │ │ │ └── MozillaLocationServiceTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── nimbus │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── messaging.fml.yaml │ │ │ ├── metrics.yaml │ │ │ ├── proguard-rules-consumer.pro │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── service │ │ │ │ │ │ └── nimbus │ │ │ │ │ │ ├── Nimbus.kt │ │ │ │ │ │ ├── NimbusBuilder.kt │ │ │ │ │ │ ├── NimbusUtils.kt │ │ │ │ │ │ ├── messaging │ │ │ │ │ │ ├── JexlAttributeProvider.kt │ │ │ │ │ │ ├── Message.kt │ │ │ │ │ │ ├── MessageMetadataStorage.kt │ │ │ │ │ │ ├── MessageSurfaceId.kt │ │ │ │ │ │ ├── NimbusMessagingController.kt │ │ │ │ │ │ ├── NimbusMessagingControllerInterface.kt │ │ │ │ │ │ ├── NimbusMessagingStorage.kt │ │ │ │ │ │ └── OnDiskMessageMetadataStorage.kt │ │ │ │ │ │ └── ui │ │ │ │ │ │ ├── NimbusBranchAdapter.kt │ │ │ │ │ │ ├── NimbusBranchItemViewHolder.kt │ │ │ │ │ │ ├── NimbusBranchesAdapterDelegate.kt │ │ │ │ │ │ ├── NimbusExperimentAdapter.kt │ │ │ │ │ │ ├── NimbusExperimentItemViewHolder.kt │ │ │ │ │ │ └── NimbusExperimentsAdapterDelegate.kt │ │ │ │ └── res │ │ │ │ │ ├── layout │ │ │ │ │ ├── mozac_service_nimbus_branch_item.xml │ │ │ │ │ ├── mozac_service_nimbus_experiment_details.xml │ │ │ │ │ ├── mozac_service_nimbus_experiment_item.xml │ │ │ │ │ └── mozac_service_nimbus_experiments.xml │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── nimbus │ │ │ │ │ ├── NimbusTest.kt │ │ │ │ │ ├── messaging │ │ │ │ │ ├── NimbusMessagingControllerTest.kt │ │ │ │ │ ├── NimbusMessagingStorageTest.kt │ │ │ │ │ └── OnDiskMessageMetadataStorageTest.kt │ │ │ │ │ └── ui │ │ │ │ │ ├── NimbusBranchItemViewHolderTest.kt │ │ │ │ │ └── NimbusExperimentItemViewHolderTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── pocket │ │ │ ├── .gitignore │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── schemas │ │ │ │ └── mozilla.components.service.pocket.stories.db.PocketRecommendationsDatabase │ │ │ │ │ ├── 1.json │ │ │ │ │ ├── 2.json │ │ │ │ │ ├── 3.json │ │ │ │ │ └── 4.json │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── pocket │ │ │ │ │ └── stories │ │ │ │ │ └── db │ │ │ │ │ └── PocketRecommendationsDatabaseTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── service │ │ │ │ │ │ └── pocket │ │ │ │ │ │ ├── GlobalDependencyProvider.kt │ │ │ │ │ │ ├── Logger.kt │ │ │ │ │ │ ├── PocketStoriesConfig.kt │ │ │ │ │ │ ├── PocketStoriesService.kt │ │ │ │ │ │ ├── PocketStory.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── ConceptFetch.kt │ │ │ │ │ │ ├── Mappers.kt │ │ │ │ │ │ └── PocketStory.kt │ │ │ │ │ │ ├── spocs │ │ │ │ │ │ ├── SpocsRepository.kt │ │ │ │ │ │ ├── SpocsUseCases.kt │ │ │ │ │ │ ├── api │ │ │ │ │ │ │ ├── ApiSpoc.kt │ │ │ │ │ │ │ ├── SpocsEndpoint.kt │ │ │ │ │ │ │ ├── SpocsEndpointRaw.kt │ │ │ │ │ │ │ ├── SpocsJSONParser.kt │ │ │ │ │ │ │ └── SpocsProvider.kt │ │ │ │ │ │ └── db │ │ │ │ │ │ │ ├── SpocEntity.kt │ │ │ │ │ │ │ ├── SpocImpressionEntity.kt │ │ │ │ │ │ │ └── SpocsDao.kt │ │ │ │ │ │ ├── stories │ │ │ │ │ │ ├── PocketRecommendationsRepository.kt │ │ │ │ │ │ ├── PocketStoriesUseCases.kt │ │ │ │ │ │ ├── api │ │ │ │ │ │ │ ├── PocketApiStory.kt │ │ │ │ │ │ │ ├── PocketEndpoint.kt │ │ │ │ │ │ │ ├── PocketEndpointRaw.kt │ │ │ │ │ │ │ ├── PocketJSONParser.kt │ │ │ │ │ │ │ └── PocketResponse.kt │ │ │ │ │ │ └── db │ │ │ │ │ │ │ ├── PocketRecommendationsDao.kt │ │ │ │ │ │ │ ├── PocketRecommendationsDatabase.kt │ │ │ │ │ │ │ └── PocketStoryEntity.kt │ │ │ │ │ │ └── update │ │ │ │ │ │ ├── DeleteSpocsProfileWorker.kt │ │ │ │ │ │ ├── PocketStoriesRefreshScheduler.kt │ │ │ │ │ │ ├── RefreshPocketWorker.kt │ │ │ │ │ │ ├── RefreshSpocsWorker.kt │ │ │ │ │ │ └── SpocsRefreshScheduler.kt │ │ │ │ └── res │ │ │ │ │ └── values │ │ │ │ │ └── ids.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── pocket │ │ │ │ │ ├── GlobalDependencyProviderTest.kt │ │ │ │ │ ├── PocketStoriesConfigTest.kt │ │ │ │ │ ├── PocketStoriesServiceTest.kt │ │ │ │ │ ├── PocketStoryTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── ConceptFetchKtTest.kt │ │ │ │ │ ├── MappersKtTest.kt │ │ │ │ │ └── PocketStoryKtTest.kt │ │ │ │ │ ├── helpers │ │ │ │ │ ├── Assert.kt │ │ │ │ │ ├── MockResponses.kt │ │ │ │ │ └── PocketTestResources.kt │ │ │ │ │ ├── spocs │ │ │ │ │ ├── SpocsRepositoryTest.kt │ │ │ │ │ ├── SpocsUseCasesTest.kt │ │ │ │ │ ├── api │ │ │ │ │ │ ├── SpocsEndpointRawTest.kt │ │ │ │ │ │ ├── SpocsEndpointTest.kt │ │ │ │ │ │ └── SpocsJSONParserTest.kt │ │ │ │ │ └── db │ │ │ │ │ │ ├── SpocEntityTest.kt │ │ │ │ │ │ ├── SpocImpressionEntityTest.kt │ │ │ │ │ │ └── SpocsDaoTest.kt │ │ │ │ │ ├── stories │ │ │ │ │ ├── PocketRecommendationsRepositoryTest.kt │ │ │ │ │ ├── PocketStoriesUseCasesTest.kt │ │ │ │ │ ├── api │ │ │ │ │ │ ├── PocketApiStoryTest.kt │ │ │ │ │ │ ├── PocketEndpointRawTest.kt │ │ │ │ │ │ ├── PocketEndpointTest.kt │ │ │ │ │ │ ├── PocketJSONParserTest.kt │ │ │ │ │ │ └── PocketResponseTest.kt │ │ │ │ │ └── db │ │ │ │ │ │ ├── PocketRecommendationsDaoTest.kt │ │ │ │ │ │ └── PocketStoryEntityTest.kt │ │ │ │ │ └── update │ │ │ │ │ ├── DeleteSpocsProfileWorkerTest.kt │ │ │ │ │ ├── PocketStoriesRefreshSchedulerTest.kt │ │ │ │ │ ├── RefreshPocketWorkerTest.kt │ │ │ │ │ ├── RefreshSpocsWorkerTest.kt │ │ │ │ │ └── SpocsRefreshSchedulerTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ ├── pocket │ │ │ │ ├── sponsored_stories_response.json │ │ │ │ ├── stories_recommendations_response.json │ │ │ │ ├── story.json │ │ │ │ └── story_recommendation_response.json │ │ │ │ └── robolectric.properties │ │ ├── sync-autofill │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── sync │ │ │ │ │ └── autofill │ │ │ │ │ ├── AutofillCreditCardsAddressesStorage.kt │ │ │ │ │ ├── AutofillCrypto.kt │ │ │ │ │ ├── DefaultCreditCardValidationDelegate.kt │ │ │ │ │ ├── Errors.kt │ │ │ │ │ ├── GeckoCreditCardsAddressesStorageDelegate.kt │ │ │ │ │ └── Types.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── service │ │ │ │ │ └── sync │ │ │ │ │ └── autofill │ │ │ │ │ ├── AutofillCreditCardsAddressesStorageTest.kt │ │ │ │ │ ├── AutofillCryptoTest.kt │ │ │ │ │ ├── DefaultCreditCardValidationDelegateTest.kt │ │ │ │ │ └── GeckoCreditCardsAddressesStorageDelegateTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ └── sync-logins │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules-consumer.pro │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── service │ │ │ │ └── sync │ │ │ │ └── logins │ │ │ │ ├── DefaultLoginValidationDelegate.kt │ │ │ │ ├── GeckoLoginStorageDelegate.kt │ │ │ │ ├── LoginsCrypto.kt │ │ │ │ ├── SyncableLoginsStorage.kt │ │ │ │ └── Types.kt │ │ │ └── test │ │ │ └── resources │ │ │ └── robolectric.properties │ ├── support │ │ ├── android-test │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── lint.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── android │ │ │ │ │ └── test │ │ │ │ │ ├── Matchers.kt │ │ │ │ │ ├── espresso │ │ │ │ │ ├── ViewInteraction.kt │ │ │ │ │ └── matcher │ │ │ │ │ │ └── ViewMatchers.kt │ │ │ │ │ └── rules │ │ │ │ │ └── WebserverRule.kt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── support │ │ │ │ └── android │ │ │ │ └── test │ │ │ │ ├── MatchersTest.kt │ │ │ │ ├── espresso │ │ │ │ └── matcher │ │ │ │ │ └── ViewMatchersKtTest.kt │ │ │ │ └── helpers │ │ │ │ └── Assert.kt │ │ ├── base │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ ├── Build.kt │ │ │ │ │ │ └── support │ │ │ │ │ │ └── base │ │ │ │ │ │ ├── android │ │ │ │ │ │ ├── Clock.kt │ │ │ │ │ │ ├── NotificationsDelegate.kt │ │ │ │ │ │ └── Padding.kt │ │ │ │ │ │ ├── coroutines │ │ │ │ │ │ └── Dispatchers.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── NotificationManagerCompat.kt │ │ │ │ │ │ └── Throwable.kt │ │ │ │ │ │ ├── facts │ │ │ │ │ │ ├── Action.kt │ │ │ │ │ │ ├── Fact.kt │ │ │ │ │ │ ├── FactProcessor.kt │ │ │ │ │ │ ├── Facts.kt │ │ │ │ │ │ └── processor │ │ │ │ │ │ │ ├── CollectionProcessor.kt │ │ │ │ │ │ │ └── LogFactProcessor.kt │ │ │ │ │ │ ├── feature │ │ │ │ │ │ ├── ActivityResultHandler.kt │ │ │ │ │ │ ├── LifecycleAwareFeature.kt │ │ │ │ │ │ ├── PermissionsFeature.kt │ │ │ │ │ │ ├── UserInteractionHandler.kt │ │ │ │ │ │ └── ViewBoundFeatureWrapper.kt │ │ │ │ │ │ ├── ids │ │ │ │ │ │ ├── SharedIds.kt │ │ │ │ │ │ └── SharedIdsHelper.kt │ │ │ │ │ │ ├── log │ │ │ │ │ │ ├── Log.kt │ │ │ │ │ │ ├── logger │ │ │ │ │ │ │ └── Logger.kt │ │ │ │ │ │ └── sink │ │ │ │ │ │ │ ├── AndroidLogSink.kt │ │ │ │ │ │ │ ├── LogSink.kt │ │ │ │ │ │ │ └── TestModeLogSink.kt │ │ │ │ │ │ ├── observer │ │ │ │ │ │ ├── Consumable.kt │ │ │ │ │ │ ├── Observable.kt │ │ │ │ │ │ └── ObserverRegistry.kt │ │ │ │ │ │ ├── utils │ │ │ │ │ │ ├── LazyComponent.kt │ │ │ │ │ │ ├── NamedThreadFactory.kt │ │ │ │ │ │ └── SharedPreferencesCache.kt │ │ │ │ │ │ └── worker │ │ │ │ │ │ └── Frequency.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ ├── mozac_support_base_strings.xml │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ ├── BuildTest.kt │ │ │ │ │ └── support │ │ │ │ │ └── base │ │ │ │ │ ├── android │ │ │ │ │ └── PaddingTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── NotificationManagerCompatTest.kt │ │ │ │ │ └── ThrowableTest.kt │ │ │ │ │ ├── facts │ │ │ │ │ ├── FactProcessorTest.kt │ │ │ │ │ ├── FactTest.kt │ │ │ │ │ ├── FactsTest.kt │ │ │ │ │ └── processor │ │ │ │ │ │ └── LogFactProcessorTest.kt │ │ │ │ │ ├── feature │ │ │ │ │ └── ViewBoundFeatureWrapperTest.kt │ │ │ │ │ ├── log │ │ │ │ │ ├── LogTest.kt │ │ │ │ │ ├── fake │ │ │ │ │ │ └── FakeLogSink.kt │ │ │ │ │ ├── logger │ │ │ │ │ │ └── LoggerTest.kt │ │ │ │ │ └── sink │ │ │ │ │ │ └── AndroidLogSinkTest.kt │ │ │ │ │ ├── notification │ │ │ │ │ ├── SharedIdsHelperTest.kt │ │ │ │ │ └── SharedIdsTest.kt │ │ │ │ │ ├── observer │ │ │ │ │ ├── ConsumableTest.kt │ │ │ │ │ └── ObserverRegistryTest.kt │ │ │ │ │ └── utils │ │ │ │ │ ├── LazyComponentTest.kt │ │ │ │ │ ├── NamedThreadFactoryTest.kt │ │ │ │ │ └── SharedPreferencesCacheTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── images │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules-consumer.pro │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── images │ │ │ │ │ └── decoder │ │ │ │ │ └── OnDeviceAndroidImageDecoderTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── images │ │ │ │ │ ├── CancelOnDetach.kt │ │ │ │ │ ├── DesiredSize.kt │ │ │ │ │ ├── compose │ │ │ │ │ └── loader │ │ │ │ │ │ ├── ImageLoader.kt │ │ │ │ │ │ ├── ImageLoaderScope.kt │ │ │ │ │ │ └── ImageLoaderState.kt │ │ │ │ │ └── decoder │ │ │ │ │ ├── AndroidImageDecoder.kt │ │ │ │ │ └── ImageDecoder.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── images │ │ │ │ │ ├── CancelOnDetachTest.kt │ │ │ │ │ ├── DesiredSizeTest.kt │ │ │ │ │ └── decoder │ │ │ │ │ └── AndroidImageDecoderTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ ├── png │ │ │ │ └── mozac.png │ │ │ │ └── robolectric.properties │ │ ├── ktx │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── ktx │ │ │ │ │ ├── TestActivity.kt │ │ │ │ │ └── android │ │ │ │ │ ├── net │ │ │ │ │ └── OnDeviceUriKtTest.kt │ │ │ │ │ └── view │ │ │ │ │ └── WindowKtTest.kt │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── support │ │ │ │ │ │ └── ktx │ │ │ │ │ │ ├── android │ │ │ │ │ │ ├── arch │ │ │ │ │ │ │ └── lifecycle │ │ │ │ │ │ │ │ └── Lifecycle.kt │ │ │ │ │ │ ├── content │ │ │ │ │ │ │ ├── Context.kt │ │ │ │ │ │ │ ├── Intent.kt │ │ │ │ │ │ │ ├── SharedPreferences.kt │ │ │ │ │ │ │ ├── pm │ │ │ │ │ │ │ │ └── PackageManager.kt │ │ │ │ │ │ │ └── res │ │ │ │ │ │ │ │ ├── AssetManager.kt │ │ │ │ │ │ │ │ ├── Resources.kt │ │ │ │ │ │ │ │ └── Theme.kt │ │ │ │ │ │ ├── graphics │ │ │ │ │ │ │ └── Bitmap.kt │ │ │ │ │ │ ├── net │ │ │ │ │ │ │ └── Uri.kt │ │ │ │ │ │ ├── notification │ │ │ │ │ │ │ └── Notification.kt │ │ │ │ │ │ ├── org │ │ │ │ │ │ │ └── json │ │ │ │ │ │ │ │ ├── JSONArray.kt │ │ │ │ │ │ │ │ └── JSONObject.kt │ │ │ │ │ │ ├── os │ │ │ │ │ │ │ ├── Bundle.kt │ │ │ │ │ │ │ ├── StrictMode.kt │ │ │ │ │ │ │ └── Vibrator.kt │ │ │ │ │ │ ├── util │ │ │ │ │ │ │ ├── Base64.kt │ │ │ │ │ │ │ ├── DisplayMetrics.kt │ │ │ │ │ │ │ └── JsonReader.kt │ │ │ │ │ │ ├── view │ │ │ │ │ │ │ ├── Activity.kt │ │ │ │ │ │ │ ├── MotionEvent.kt │ │ │ │ │ │ │ ├── TextView.kt │ │ │ │ │ │ │ ├── View.kt │ │ │ │ │ │ │ └── Window.kt │ │ │ │ │ │ └── widget │ │ │ │ │ │ │ └── TextView.kt │ │ │ │ │ │ ├── java │ │ │ │ │ │ └── io │ │ │ │ │ │ │ └── File.kt │ │ │ │ │ │ ├── kotlin │ │ │ │ │ │ ├── ByteArray.kt │ │ │ │ │ │ ├── Char.kt │ │ │ │ │ │ ├── Collection.kt │ │ │ │ │ │ └── String.kt │ │ │ │ │ │ ├── kotlinx │ │ │ │ │ │ └── coroutines │ │ │ │ │ │ │ ├── Utils.kt │ │ │ │ │ │ │ └── flow │ │ │ │ │ │ │ └── Flow.kt │ │ │ │ │ │ └── util │ │ │ │ │ │ └── AtomicFile.kt │ │ │ │ └── res │ │ │ │ │ ├── values-am │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-an │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ar │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ast │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-az │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-azb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ban │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-be │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-br │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-bs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ca │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cak │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ceb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ckb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-co │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-cy │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-da │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-de │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-dsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-el │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rCA │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-en-rGB │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rAR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rCL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rES │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es-rMX │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-es │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-et │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-eu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ff │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-fy-rNL │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ga-rIE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gd │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-gu-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hi-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hsb │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hu │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-hy-rAM │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ia │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-in │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-is │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-it │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-iw │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ja │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ka │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kaa │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kab │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kmr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-kn │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ko │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lij │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-lt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ml │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-mr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-my │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nb-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ne-rNP │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-nn-rNO │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-oc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rIN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pa-rPK │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rBR │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-pt-rPT │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-rm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ro │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ru │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sat │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sc │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-si │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-skr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sq │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-su │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-sv-rSE │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ta │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-te │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tg │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-th │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tl │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tr │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-trs │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tt │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-tzm │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ug │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uk │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-ur │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-uz │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vec │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-vi │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-yo │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rCN │ │ │ │ │ └── strings.xml │ │ │ │ │ ├── values-zh-rTW │ │ │ │ │ └── strings.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── ktx │ │ │ │ │ ├── android │ │ │ │ │ ├── arch │ │ │ │ │ │ └── lifecycle │ │ │ │ │ │ │ └── LifecycleTest.kt │ │ │ │ │ ├── content │ │ │ │ │ │ ├── ContextKtTest.kt │ │ │ │ │ │ ├── ContextTest.kt │ │ │ │ │ │ ├── SharedPreferencesStringTest.kt │ │ │ │ │ │ ├── SharedPreferencesTest.kt │ │ │ │ │ │ ├── pm │ │ │ │ │ │ │ └── PackageManagerTest.kt │ │ │ │ │ │ └── res │ │ │ │ │ │ │ ├── AssetManagerTest.kt │ │ │ │ │ │ │ └── ResourcesTest.kt │ │ │ │ │ ├── graphics │ │ │ │ │ │ └── BitmapKtTest.kt │ │ │ │ │ ├── net │ │ │ │ │ │ └── UriTest.kt │ │ │ │ │ ├── org │ │ │ │ │ │ └── json │ │ │ │ │ │ │ ├── JSONArrayTest.kt │ │ │ │ │ │ │ └── JSONObjectTest.kt │ │ │ │ │ ├── os │ │ │ │ │ │ ├── BundleTest.kt │ │ │ │ │ │ ├── StrictModeTest.kt │ │ │ │ │ │ └── VibratorTest.kt │ │ │ │ │ ├── util │ │ │ │ │ │ ├── Base64Test.kt │ │ │ │ │ │ ├── DisplayMetricsTest.kt │ │ │ │ │ │ └── JsonReaderKtTest.kt │ │ │ │ │ ├── view │ │ │ │ │ │ ├── ActivityTest.kt │ │ │ │ │ │ ├── MotionEventKtTest.kt │ │ │ │ │ │ ├── TextViewTest.kt │ │ │ │ │ │ ├── ViewTest.kt │ │ │ │ │ │ └── WindowTest.kt │ │ │ │ │ └── widget │ │ │ │ │ │ └── TextViewTest.kt │ │ │ │ │ ├── java │ │ │ │ │ └── io │ │ │ │ │ │ └── FileKtTest.kt │ │ │ │ │ ├── kotlin │ │ │ │ │ ├── ByteArrayTest.kt │ │ │ │ │ ├── CollectionKtTest.kt │ │ │ │ │ └── StringTest.kt │ │ │ │ │ ├── kotlinx │ │ │ │ │ └── coroutines │ │ │ │ │ │ ├── UtilsKtTest.kt │ │ │ │ │ │ └── flow │ │ │ │ │ │ └── FlowKtTest.kt │ │ │ │ │ ├── notification │ │ │ │ │ └── NotificationTest.kt │ │ │ │ │ └── util │ │ │ │ │ ├── AtomicFileTest.kt │ │ │ │ │ └── DisplayMetricsTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── license │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── support │ │ │ │ │ │ └── license │ │ │ │ │ │ └── LibrariesListFragment.kt │ │ │ │ └── res │ │ │ │ │ └── layout │ │ │ │ │ └── fragment_libraries_list.xml │ │ │ │ └── test │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── locale │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── gradle.properties │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── locale │ │ │ │ │ ├── ActivityContextWrapper.kt │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ ├── LocaleAwareAppCompatActivity.kt │ │ │ │ │ ├── LocaleAwareApplication.kt │ │ │ │ │ ├── LocaleManager.kt │ │ │ │ │ ├── LocaleMiddleware.kt │ │ │ │ │ └── LocaleUseCases.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── locale │ │ │ │ │ ├── ActivityContextWrapperTest.kt │ │ │ │ │ ├── LocaleAwareAppCompatActivityTest.kt │ │ │ │ │ ├── LocaleManagerTest.kt │ │ │ │ │ ├── LocaleMiddlewareTest.kt │ │ │ │ │ └── LocaleUseCasesTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── remotesettings │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── remotesettings │ │ │ │ │ └── RemoteSettingsClient.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── remotesettings │ │ │ │ │ └── RemoteSettingsClientTest.kt │ │ │ │ └── resources │ │ │ │ ├── mockito-extensions │ │ │ │ └── org.mockito.plugins.MockMaker │ │ │ │ └── robolectric.properties │ │ ├── rusterrors │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules-consumer.pro │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── support │ │ │ │ └── rusterrors │ │ │ │ └── RustErrors.kt │ │ ├── rusthttp │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules-consumer.pro │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── support │ │ │ │ └── rusthttp │ │ │ │ └── RustHttpConfig.kt │ │ ├── rustlog │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules-consumer.pro │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── rustlog │ │ │ │ │ └── RustLog.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── rustlog │ │ │ │ │ └── RustLogTest.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ ├── test-appservices │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── AndroidManifest.xml │ │ ├── test-fakes │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── support │ │ │ │ └── test │ │ │ │ └── fakes │ │ │ │ ├── android │ │ │ │ ├── FakeContext.kt │ │ │ │ └── FakeSharedPreferences.kt │ │ │ │ └── engine │ │ │ │ ├── FakeEngine.kt │ │ │ │ ├── FakeEngineSessionState.kt │ │ │ │ └── FakeEngineView.kt │ │ ├── test-libstate │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── test │ │ │ │ │ ├── libstate │ │ │ │ │ └── ext │ │ │ │ │ │ └── Store.kt │ │ │ │ │ └── middleware │ │ │ │ │ └── CaptureActionsMiddleware.kt │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── support │ │ │ │ └── test │ │ │ │ └── libstate │ │ │ │ └── ext │ │ │ │ └── StoreTest.kt │ │ ├── test │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── lint.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── test │ │ │ │ │ ├── Expect.kt │ │ │ │ │ ├── KArgumentCaptor.kt │ │ │ │ │ ├── Matchers.kt │ │ │ │ │ ├── Mock.kt │ │ │ │ │ ├── ThrowProperty.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── Context.kt │ │ │ │ │ ├── Job.kt │ │ │ │ │ └── KProperty.kt │ │ │ │ │ ├── fakes │ │ │ │ │ └── FakeClock.kt │ │ │ │ │ ├── file │ │ │ │ │ └── Resources.kt │ │ │ │ │ ├── robolectric │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ ├── Fragments.kt │ │ │ │ │ ├── Permissions.kt │ │ │ │ │ └── shadow │ │ │ │ │ │ └── PixelCopyShadow.kt │ │ │ │ │ └── rule │ │ │ │ │ ├── Helpers.kt │ │ │ │ │ └── MainCoroutineRule.kt │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ ├── PermissionsTest.kt │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── test │ │ │ │ │ ├── ThrowPropertyTest.kt │ │ │ │ │ ├── file │ │ │ │ │ └── ResourcesTest.kt │ │ │ │ │ └── robolectric │ │ │ │ │ ├── ExtensionsTest.kt │ │ │ │ │ └── FragmentsTest.kt │ │ │ │ └── resources │ │ │ │ ├── example_file.txt │ │ │ │ └── robolectric.properties │ │ ├── utils │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── support │ │ │ │ │ │ ├── ktx │ │ │ │ │ │ └── util │ │ │ │ │ │ │ └── URLStringUtils.kt │ │ │ │ │ │ └── utils │ │ │ │ │ │ ├── BootUtils.kt │ │ │ │ │ │ ├── Browsers.kt │ │ │ │ │ │ ├── BrowsersCache.kt │ │ │ │ │ │ ├── ColorUtils.kt │ │ │ │ │ │ ├── CreditCardUtils.kt │ │ │ │ │ │ ├── DomainMatcher.kt │ │ │ │ │ │ ├── DownloadUtils.kt │ │ │ │ │ │ ├── DrawableUtils.kt │ │ │ │ │ │ ├── ManufacturerCodes.kt │ │ │ │ │ │ ├── PendingIntentUtils.kt │ │ │ │ │ │ ├── Performance.kt │ │ │ │ │ │ ├── RunWhenReadyQueue.kt │ │ │ │ │ │ ├── SafeBundle.kt │ │ │ │ │ │ ├── SafeIntent.kt │ │ │ │ │ │ ├── SafeUrl.kt │ │ │ │ │ │ ├── StatusBarUtils.kt │ │ │ │ │ │ ├── StorageUtils.kt │ │ │ │ │ │ ├── ThreadUtils.kt │ │ │ │ │ │ ├── TimePicker.kt │ │ │ │ │ │ ├── WebURLFinder.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── Bitmap.kt │ │ │ │ │ │ ├── Bundle.kt │ │ │ │ │ │ ├── Context.kt │ │ │ │ │ │ ├── Fragment.kt │ │ │ │ │ │ ├── Intent.kt │ │ │ │ │ │ ├── PackageManager.kt │ │ │ │ │ │ ├── Pair.kt │ │ │ │ │ │ ├── Service.kt │ │ │ │ │ │ ├── String.kt │ │ │ │ │ │ └── WindowInsetsCompat.kt │ │ │ │ │ │ └── intents.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ ├── ic_cc_logo_amex.xml │ │ │ │ │ ├── ic_cc_logo_diners.xml │ │ │ │ │ ├── ic_cc_logo_discover.xml │ │ │ │ │ ├── ic_cc_logo_jcb.xml │ │ │ │ │ ├── ic_cc_logo_mastercard.xml │ │ │ │ │ ├── ic_cc_logo_mir.xml │ │ │ │ │ ├── ic_cc_logo_unionpay.xml │ │ │ │ │ ├── ic_cc_logo_visa.xml │ │ │ │ │ └── ic_icon_credit_card_generic.xml │ │ │ │ │ └── values │ │ │ │ │ └── arrays.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── support │ │ │ │ │ └── utils │ │ │ │ │ ├── BootUtilsTest.kt │ │ │ │ │ ├── BrowsersCacheTest.kt │ │ │ │ │ ├── BrowsersTest.kt │ │ │ │ │ ├── BundleTest.kt │ │ │ │ │ ├── ColorUtilsTest.kt │ │ │ │ │ ├── CreditCardUtilsTest.kt │ │ │ │ │ ├── DomainMatcherTest.kt │ │ │ │ │ ├── DownloadUtilsTest.kt │ │ │ │ │ ├── ManufacturerCodesTest.kt │ │ │ │ │ ├── PendingIntentUtilsTest.kt │ │ │ │ │ ├── RunWhenReadyQueueTest.kt │ │ │ │ │ ├── SafeBundleTest.kt │ │ │ │ │ ├── SafeIntentTest.kt │ │ │ │ │ ├── SafeUrlTest.kt │ │ │ │ │ ├── StorageUtilsTest.kt │ │ │ │ │ ├── URLStringUtilsTest.kt │ │ │ │ │ ├── WebURLFinderTest.kt │ │ │ │ │ └── ext │ │ │ │ │ ├── BitmapTest.kt │ │ │ │ │ ├── PairKtTest.kt │ │ │ │ │ ├── StringTest.kt │ │ │ │ │ └── WindowInsetsCompatTest.kt │ │ │ │ └── resources │ │ │ │ └── robolectric.properties │ │ └── webextensions │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── support │ │ │ │ └── webextensions │ │ │ │ ├── ExtensionsProcessDisabledPromptObserver.kt │ │ │ │ ├── WebExtensionController.kt │ │ │ │ ├── WebExtensionPopupObserver.kt │ │ │ │ ├── WebExtensionSupport.kt │ │ │ │ └── facts │ │ │ │ └── WebExtensionFacts.kt │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── support │ │ │ │ └── webextensions │ │ │ │ ├── WebExtensionControllerTest.kt │ │ │ │ ├── WebExtensionPopupObserverTest.kt │ │ │ │ └── WebExtensionSupportTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ ├── tooling │ │ ├── detekt │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── kotlin │ │ │ │ │ └── mozilla │ │ │ │ │ │ └── components │ │ │ │ │ │ └── tooling │ │ │ │ │ │ └── detekt │ │ │ │ │ │ ├── MozillaRuleSetProvider.kt │ │ │ │ │ │ └── ProjectLicenseRule.kt │ │ │ │ └── resources │ │ │ │ │ └── META-INF │ │ │ │ │ └── services │ │ │ │ │ └── io.gitlab.arturbosch.detekt.api.RuleSetProvider │ │ │ │ └── test │ │ │ │ └── kotlin │ │ │ │ └── ProjectLicenseRuleTest.kt │ │ ├── fetch-tests │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── lint.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── tooling │ │ │ │ └── fetch │ │ │ │ └── tests │ │ │ │ └── FetchTestCases.kt │ │ └── lint │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── tooling │ │ │ │ └── lint │ │ │ │ ├── AndroidSrcXmlDetector.kt │ │ │ │ ├── ConceptFetchDetector.kt │ │ │ │ ├── FactCollectDetector.kt │ │ │ │ ├── ImageViewAndroidTintXmlDetector.kt │ │ │ │ ├── LintIssueRegistry.kt │ │ │ │ ├── LintLogChecks.kt │ │ │ │ ├── NotificationManagerChecks.kt │ │ │ │ └── TextViewAndroidSrcXmlDetector.kt │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── tooling │ │ │ │ └── lint │ │ │ │ ├── AndroidSrcXmlDetectorTest.kt │ │ │ │ ├── ConceptFetchDetectorTest.kt │ │ │ │ ├── FactCollectDetectorTest.kt │ │ │ │ ├── ImageViewAndroidTintXmlDetectorTest.kt │ │ │ │ ├── LintLogChecksTest.kt │ │ │ │ └── TextViewAndroidSrcXmlDetectorTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ └── ui │ │ ├── autocomplete │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── ui │ │ │ │ │ └── autocomplete │ │ │ │ │ └── InlineAutocompleteEditText.kt │ │ │ └── res │ │ │ │ └── values │ │ │ │ └── attrs.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── ui │ │ │ │ └── autocomplete │ │ │ │ └── InlineAutocompleteEditTextTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ │ ├── colors │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── ui │ │ │ │ └── colors │ │ │ │ └── PhotonColors.kt │ │ │ └── res │ │ │ └── values │ │ │ └── photon_colors.xml │ │ ├── fonts │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ └── res │ │ │ └── values │ │ │ └── roboto_fonts.xml │ │ ├── icons │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── assets │ │ │ ├── mozac_error_asleep.svg │ │ │ ├── mozac_error_confused.svg │ │ │ ├── mozac_error_eye_roll.svg │ │ │ ├── mozac_error_hourglass.svg │ │ │ ├── mozac_error_inspect.svg │ │ │ ├── mozac_error_lock.svg │ │ │ ├── mozac_error_no_internet.svg │ │ │ ├── mozac_error_question_file.svg │ │ │ ├── mozac_error_shred_file.svg │ │ │ ├── mozac_error_surprised.svg │ │ │ └── mozac_error_unplugged.svg │ │ │ └── res │ │ │ ├── drawable │ │ │ ├── mozac_ic_add_to_homescreen_24.xml │ │ │ ├── mozac_ic_append_up_24.xml │ │ │ ├── mozac_ic_arrow_clockwise_24.xml │ │ │ ├── mozac_ic_autoplay_slash_24.xml │ │ │ ├── mozac_ic_back_24.xml │ │ │ ├── mozac_ic_briefcase.xml │ │ │ ├── mozac_ic_broken_lock.xml │ │ │ ├── mozac_ic_camera_24.xml │ │ │ ├── mozac_ic_cart.xml │ │ │ ├── mozac_ic_checkmark_24.xml │ │ │ ├── mozac_ic_chevron_down_20.xml │ │ │ ├── mozac_ic_chevron_down_24.xml │ │ │ ├── mozac_ic_chevron_right_24.xml │ │ │ ├── mozac_ic_chevron_up_20.xml │ │ │ ├── mozac_ic_chevron_up_24.xml │ │ │ ├── mozac_ic_chill.xml │ │ │ ├── mozac_ic_circle.xml │ │ │ ├── mozac_ic_competitiveness_24.xml │ │ │ ├── mozac_ic_cookies_24.xml │ │ │ ├── mozac_ic_cross_20.xml │ │ │ ├── mozac_ic_cross_24.xml │ │ │ ├── mozac_ic_cross_circle_24.xml │ │ │ ├── mozac_ic_cross_circle_fill_24.xml │ │ │ ├── mozac_ic_data_clearance_24.xml │ │ │ ├── mozac_ic_delete_24.xml │ │ │ ├── mozac_ic_device_desktop_24.xml │ │ │ ├── mozac_ic_device_mobile_24.xml │ │ │ ├── mozac_ic_dollar.xml │ │ │ ├── mozac_ic_download_24.xml │ │ │ ├── mozac_ic_dropdown_arrow.xml │ │ │ ├── mozac_ic_ellipsis_vertical_24.xml │ │ │ ├── mozac_ic_extension_24.xml │ │ │ ├── mozac_ic_eye_24.xml │ │ │ ├── mozac_ic_eye_slash_24.xml │ │ │ ├── mozac_ic_fence.xml │ │ │ ├── mozac_ic_fingerprinter_24.xml │ │ │ ├── mozac_ic_font.xml │ │ │ ├── mozac_ic_food.xml │ │ │ ├── mozac_ic_forward_24.xml │ │ │ ├── mozac_ic_fruit.xml │ │ │ ├── mozac_ic_gift.xml │ │ │ ├── mozac_ic_globe_24.xml │ │ │ ├── mozac_ic_grid.xml │ │ │ ├── mozac_ic_help_circle_24.xml │ │ │ ├── mozac_ic_home_24.xml │ │ │ ├── mozac_ic_information_24.xml │ │ │ ├── mozac_ic_information_fill_24.xml │ │ │ ├── mozac_ic_link_24.xml │ │ │ ├── mozac_ic_location_24.xml │ │ │ ├── mozac_ic_lock_24.xml │ │ │ ├── mozac_ic_login_24.xml │ │ │ ├── mozac_ic_microphone_24.xml │ │ │ ├── mozac_ic_mozilla.xml │ │ │ ├── mozac_ic_notification_24.xml │ │ │ ├── mozac_ic_open_in.xml │ │ │ ├── mozac_ic_packaging_24.xml │ │ │ ├── mozac_ic_pet.xml │ │ │ ├── mozac_ic_pin_24.xml │ │ │ ├── mozac_ic_pin_fill_24.xml │ │ │ ├── mozac_ic_pin_filled.xml │ │ │ ├── mozac_ic_pin_slash_24.xml │ │ │ ├── mozac_ic_plus_24.xml │ │ │ ├── mozac_ic_preferences.xml │ │ │ ├── mozac_ic_price_24.xml │ │ │ ├── mozac_ic_private_mode_12.xml │ │ │ ├── mozac_ic_private_mode_24.xml │ │ │ ├── mozac_ic_private_mode_circle_fill_20.xml │ │ │ ├── mozac_ic_private_mode_circle_fill_48.xml │ │ │ ├── mozac_ic_quality_24.xml │ │ │ ├── mozac_ic_reader_view_24.xml │ │ │ ├── mozac_ic_reorder.xml │ │ │ ├── mozac_ic_rocket.xml │ │ │ ├── mozac_ic_rocket_filled.xml │ │ │ ├── mozac_ic_search_24.xml │ │ │ ├── mozac_ic_select_all.xml │ │ │ ├── mozac_ic_settings_24.xml │ │ │ ├── mozac_ic_share_android_24.xml │ │ │ ├── mozac_ic_shield_24.xml │ │ │ ├── mozac_ic_shield_slash_24.xml │ │ │ ├── mozac_ic_shipping_24.xml │ │ │ ├── mozac_ic_shopping_24.xml │ │ │ ├── mozac_ic_star_fill_20.xml │ │ │ ├── mozac_ic_star_one_half_fill_20.xml │ │ │ ├── mozac_ic_stop.xml │ │ │ ├── mozac_ic_storage_24.xml │ │ │ ├── mozac_ic_sync_24.xml │ │ │ ├── mozac_ic_tab.xml │ │ │ ├── mozac_ic_tab_new.xml │ │ │ ├── mozac_ic_translate_24.xml │ │ │ ├── mozac_ic_tree.xml │ │ │ ├── mozac_ic_vacation.xml │ │ │ ├── mozac_ic_warning_fill_24.xml │ │ │ └── mozac_ic_web_extension_default_icon.xml │ │ │ └── values │ │ │ ├── attrs.xml │ │ │ ├── colors.xml │ │ │ └── mozac_ui_icons_strings.xml │ │ ├── tabcounter │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── mozilla │ │ │ │ │ └── components │ │ │ │ │ └── ui │ │ │ │ │ └── tabcounter │ │ │ │ │ ├── TabCounter.kt │ │ │ │ │ └── TabCounterMenu.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── mozac_ui_tabcounter_bar.xml │ │ │ │ ├── mozac_ui_tabcounter_box.xml │ │ │ │ └── mozac_ui_tabcounter_round_rectangle_ripple.xml │ │ │ │ ├── layout │ │ │ │ └── mozac_ui_tabcounter_layout.xml │ │ │ │ ├── values-am │ │ │ │ └── strings.xml │ │ │ │ ├── values-ar │ │ │ │ └── strings.xml │ │ │ │ ├── values-ast │ │ │ │ └── strings.xml │ │ │ │ ├── values-azb │ │ │ │ └── strings.xml │ │ │ │ ├── values-be │ │ │ │ └── strings.xml │ │ │ │ ├── values-bg │ │ │ │ └── strings.xml │ │ │ │ ├── values-bn │ │ │ │ └── strings.xml │ │ │ │ ├── values-br │ │ │ │ └── strings.xml │ │ │ │ ├── values-bs │ │ │ │ └── strings.xml │ │ │ │ ├── values-ca │ │ │ │ └── strings.xml │ │ │ │ ├── values-cak │ │ │ │ └── strings.xml │ │ │ │ ├── values-ceb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ckb │ │ │ │ └── strings.xml │ │ │ │ ├── values-co │ │ │ │ └── strings.xml │ │ │ │ ├── values-cs │ │ │ │ └── strings.xml │ │ │ │ ├── values-cy │ │ │ │ └── strings.xml │ │ │ │ ├── values-da │ │ │ │ └── strings.xml │ │ │ │ ├── values-de │ │ │ │ └── strings.xml │ │ │ │ ├── values-dsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-el │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rCA │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rGB │ │ │ │ └── strings.xml │ │ │ │ ├── values-eo │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rAR │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rCL │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rES │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rMX │ │ │ │ └── strings.xml │ │ │ │ ├── values-es │ │ │ │ └── strings.xml │ │ │ │ ├── values-et │ │ │ │ └── strings.xml │ │ │ │ ├── values-eu │ │ │ │ └── strings.xml │ │ │ │ ├── values-fa │ │ │ │ └── strings.xml │ │ │ │ ├── values-ff │ │ │ │ └── strings.xml │ │ │ │ ├── values-fi │ │ │ │ └── strings.xml │ │ │ │ ├── values-fr │ │ │ │ └── strings.xml │ │ │ │ ├── values-fur │ │ │ │ └── strings.xml │ │ │ │ ├── values-fy-rNL │ │ │ │ └── strings.xml │ │ │ │ ├── values-gd │ │ │ │ └── strings.xml │ │ │ │ ├── values-gl │ │ │ │ └── strings.xml │ │ │ │ ├── values-gn │ │ │ │ └── strings.xml │ │ │ │ ├── values-hi-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hr │ │ │ │ └── strings.xml │ │ │ │ ├── values-hsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-hu │ │ │ │ └── strings.xml │ │ │ │ ├── values-hy-rAM │ │ │ │ └── strings.xml │ │ │ │ ├── values-ia │ │ │ │ └── strings.xml │ │ │ │ ├── values-in │ │ │ │ └── strings.xml │ │ │ │ ├── values-is │ │ │ │ └── strings.xml │ │ │ │ ├── values-it │ │ │ │ └── strings.xml │ │ │ │ ├── values-iw │ │ │ │ └── strings.xml │ │ │ │ ├── values-ja │ │ │ │ └── strings.xml │ │ │ │ ├── values-ka │ │ │ │ └── strings.xml │ │ │ │ ├── values-kaa │ │ │ │ └── strings.xml │ │ │ │ ├── values-kab │ │ │ │ └── strings.xml │ │ │ │ ├── values-kk │ │ │ │ └── strings.xml │ │ │ │ ├── values-kmr │ │ │ │ └── strings.xml │ │ │ │ ├── values-ko │ │ │ │ └── strings.xml │ │ │ │ ├── values-lo │ │ │ │ └── strings.xml │ │ │ │ ├── values-lt │ │ │ │ └── strings.xml │ │ │ │ ├── values-my │ │ │ │ └── strings.xml │ │ │ │ ├── values-nb-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-ne-rNP │ │ │ │ └── strings.xml │ │ │ │ ├── values-nl │ │ │ │ └── strings.xml │ │ │ │ ├── values-nn-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-oc │ │ │ │ └── strings.xml │ │ │ │ ├── values-or │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rPK │ │ │ │ └── strings.xml │ │ │ │ ├── values-pl │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rBR │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rPT │ │ │ │ └── strings.xml │ │ │ │ ├── values-rm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ro │ │ │ │ └── strings.xml │ │ │ │ ├── values-ru │ │ │ │ └── strings.xml │ │ │ │ ├── values-sat │ │ │ │ └── strings.xml │ │ │ │ ├── values-sc │ │ │ │ └── strings.xml │ │ │ │ ├── values-si │ │ │ │ └── strings.xml │ │ │ │ ├── values-sk │ │ │ │ └── strings.xml │ │ │ │ ├── values-skr │ │ │ │ └── strings.xml │ │ │ │ ├── values-sl │ │ │ │ └── strings.xml │ │ │ │ ├── values-sq │ │ │ │ └── strings.xml │ │ │ │ ├── values-sr │ │ │ │ └── strings.xml │ │ │ │ ├── values-su │ │ │ │ └── strings.xml │ │ │ │ ├── values-sv-rSE │ │ │ │ └── strings.xml │ │ │ │ ├── values-szl │ │ │ │ └── strings.xml │ │ │ │ ├── values-te │ │ │ │ └── strings.xml │ │ │ │ ├── values-tg │ │ │ │ └── strings.xml │ │ │ │ ├── values-th │ │ │ │ └── strings.xml │ │ │ │ ├── values-tl │ │ │ │ └── strings.xml │ │ │ │ ├── values-tr │ │ │ │ └── strings.xml │ │ │ │ ├── values-trs │ │ │ │ └── strings.xml │ │ │ │ ├── values-tt │ │ │ │ └── strings.xml │ │ │ │ ├── values-tzm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ug │ │ │ │ └── strings.xml │ │ │ │ ├── values-uk │ │ │ │ └── strings.xml │ │ │ │ ├── values-ur │ │ │ │ └── strings.xml │ │ │ │ ├── values-uz │ │ │ │ └── strings.xml │ │ │ │ ├── values-vi │ │ │ │ └── strings.xml │ │ │ │ ├── values-yo │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rCN │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rTW │ │ │ │ └── strings.xml │ │ │ │ └── values │ │ │ │ ├── attrs.xml │ │ │ │ ├── colors.xml │ │ │ │ ├── dimens.xml │ │ │ │ └── strings.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── ui │ │ │ │ └── tabcounter │ │ │ │ ├── TabCounterMenuTest.kt │ │ │ │ └── TabCounterTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ │ └── widgets │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── mozilla │ │ │ │ └── components │ │ │ │ └── ui │ │ │ │ └── widgets │ │ │ │ ├── Extentions.kt │ │ │ │ ├── SnackbarDelegate.kt │ │ │ │ ├── VerticalSwipeRefreshLayout.kt │ │ │ │ ├── WidgetSiteItemView.kt │ │ │ │ └── behavior │ │ │ │ ├── BrowserGestureDetector.kt │ │ │ │ ├── EngineViewClippingBehavior.kt │ │ │ │ ├── EngineViewScrollingBehavior.kt │ │ │ │ ├── ViewYTranslationStrategy.kt │ │ │ │ └── ViewYTranslator.kt │ │ └── res │ │ │ ├── drawable │ │ │ ├── mozac_widget_favicon_background.xml │ │ │ └── rounded_button_background.xml │ │ │ ├── layout │ │ │ └── mozac_widget_site_item.xml │ │ │ ├── values-am │ │ │ └── strings.xml │ │ │ ├── values-ar │ │ │ └── strings.xml │ │ │ ├── values-ast │ │ │ └── strings.xml │ │ │ ├── values-azb │ │ │ └── strings.xml │ │ │ ├── values-be │ │ │ └── strings.xml │ │ │ ├── values-bg │ │ │ └── strings.xml │ │ │ ├── values-br │ │ │ └── strings.xml │ │ │ ├── values-bs │ │ │ └── strings.xml │ │ │ ├── values-ca │ │ │ └── strings.xml │ │ │ ├── values-cak │ │ │ └── strings.xml │ │ │ ├── values-co │ │ │ └── strings.xml │ │ │ ├── values-cs │ │ │ └── strings.xml │ │ │ ├── values-cy │ │ │ └── strings.xml │ │ │ ├── values-da │ │ │ └── strings.xml │ │ │ ├── values-de │ │ │ └── strings.xml │ │ │ ├── values-dsb │ │ │ └── strings.xml │ │ │ ├── values-el │ │ │ └── strings.xml │ │ │ ├── values-en-rCA │ │ │ └── strings.xml │ │ │ ├── values-en-rGB │ │ │ └── strings.xml │ │ │ ├── values-eo │ │ │ └── strings.xml │ │ │ ├── values-es-rAR │ │ │ └── strings.xml │ │ │ ├── values-es-rCL │ │ │ └── strings.xml │ │ │ ├── values-es-rES │ │ │ └── strings.xml │ │ │ ├── values-es-rMX │ │ │ └── strings.xml │ │ │ ├── values-es │ │ │ └── strings.xml │ │ │ ├── values-et │ │ │ └── strings.xml │ │ │ ├── values-eu │ │ │ └── strings.xml │ │ │ ├── values-fa │ │ │ └── strings.xml │ │ │ ├── values-fi │ │ │ └── strings.xml │ │ │ ├── values-fr │ │ │ └── strings.xml │ │ │ ├── values-fur │ │ │ └── strings.xml │ │ │ ├── values-fy-rNL │ │ │ └── strings.xml │ │ │ ├── values-gd │ │ │ └── strings.xml │ │ │ ├── values-gl │ │ │ └── strings.xml │ │ │ ├── values-gn │ │ │ └── strings.xml │ │ │ ├── values-hr │ │ │ └── strings.xml │ │ │ ├── values-hsb │ │ │ └── strings.xml │ │ │ ├── values-hu │ │ │ └── strings.xml │ │ │ ├── values-hy-rAM │ │ │ └── strings.xml │ │ │ ├── values-ia │ │ │ └── strings.xml │ │ │ ├── values-in │ │ │ └── strings.xml │ │ │ ├── values-is │ │ │ └── strings.xml │ │ │ ├── values-it │ │ │ └── strings.xml │ │ │ ├── values-iw │ │ │ └── strings.xml │ │ │ ├── values-ja │ │ │ └── strings.xml │ │ │ ├── values-ka │ │ │ └── strings.xml │ │ │ ├── values-kaa │ │ │ └── strings.xml │ │ │ ├── values-kab │ │ │ └── strings.xml │ │ │ ├── values-kk │ │ │ └── strings.xml │ │ │ ├── values-kmr │ │ │ └── strings.xml │ │ │ ├── values-ko │ │ │ └── strings.xml │ │ │ ├── values-lo │ │ │ └── strings.xml │ │ │ ├── values-nb-rNO │ │ │ └── strings.xml │ │ │ ├── values-nl │ │ │ └── strings.xml │ │ │ ├── values-nn-rNO │ │ │ └── strings.xml │ │ │ ├── values-oc │ │ │ └── strings.xml │ │ │ ├── values-pa-rIN │ │ │ └── strings.xml │ │ │ ├── values-pa-rPK │ │ │ └── strings.xml │ │ │ ├── values-pl │ │ │ └── strings.xml │ │ │ ├── values-pt-rBR │ │ │ └── strings.xml │ │ │ ├── values-pt-rPT │ │ │ └── strings.xml │ │ │ ├── values-rm │ │ │ └── strings.xml │ │ │ ├── values-ro │ │ │ └── strings.xml │ │ │ ├── values-ru │ │ │ └── strings.xml │ │ │ ├── values-sat │ │ │ └── strings.xml │ │ │ ├── values-sc │ │ │ └── strings.xml │ │ │ ├── values-si │ │ │ └── strings.xml │ │ │ ├── values-sk │ │ │ └── strings.xml │ │ │ ├── values-skr │ │ │ └── strings.xml │ │ │ ├── values-sl │ │ │ └── strings.xml │ │ │ ├── values-sq │ │ │ └── strings.xml │ │ │ ├── values-sr │ │ │ └── strings.xml │ │ │ ├── values-su │ │ │ └── strings.xml │ │ │ ├── values-sv-rSE │ │ │ └── strings.xml │ │ │ ├── values-tg │ │ │ └── strings.xml │ │ │ ├── values-th │ │ │ └── strings.xml │ │ │ ├── values-tr │ │ │ └── strings.xml │ │ │ ├── values-trs │ │ │ └── strings.xml │ │ │ ├── values-tt │ │ │ └── strings.xml │ │ │ ├── values-ug │ │ │ └── strings.xml │ │ │ ├── values-uk │ │ │ └── strings.xml │ │ │ ├── values-vi │ │ │ └── strings.xml │ │ │ ├── values-zh-rCN │ │ │ └── strings.xml │ │ │ ├── values-zh-rTW │ │ │ └── strings.xml │ │ │ └── values │ │ │ ├── attrs.xml │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ ├── java │ │ └── mozilla │ │ │ └── components │ │ │ └── ui │ │ │ └── widgets │ │ │ ├── TestUtils.kt │ │ │ ├── VerticalSwipeRefreshLayoutTest.kt │ │ │ ├── WidgetSiteItemViewTest.kt │ │ │ └── behavior │ │ │ ├── BrowserGestureDetectorTest.kt │ │ │ ├── EngineViewClippingBehaviorTest.kt │ │ │ ├── EngineViewScrollingBehaviorTest.kt │ │ │ ├── TestUtils.kt │ │ │ ├── ViewYTranslationStrategyTest.kt │ │ │ └── ViewYTranslatorTest.kt │ │ └── resources │ │ ├── mockito-extensions │ │ └── org.mockito.plugins.MockMaker │ │ └── robolectric.properties ├── config │ ├── detekt-baseline.xml │ ├── detekt.yml │ ├── license.template │ └── pre-push-hook ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── ktlint-baseline.xml ├── l10n.toml ├── plugins │ ├── config │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── ConfigPlugin.kt │ ├── dependencies │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ ├── ApplicationServices.kt │ │ │ ├── DependenciesPlugin.kt │ │ │ ├── ExtraRepositories.kt │ │ │ └── Gecko.kt │ ├── github │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── GitHubPlugin.kt │ └── publicsuffixlist │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ └── main │ │ └── java │ │ └── PublicSuffixListPlugin.kt ├── publish.gradle ├── samples │ ├── browser │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ ├── assets │ │ │ │ └── index.html │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── browser │ │ │ │ └── SmokeTests.kt │ │ │ ├── gecko │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── browser │ │ │ │ └── Components.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── assets │ │ │ │ └── extensions │ │ │ │ │ ├── borderify │ │ │ │ │ ├── borderify.js │ │ │ │ │ └── manifest.template.json │ │ │ │ │ └── test │ │ │ │ │ ├── background.js │ │ │ │ │ ├── icon.png │ │ │ │ │ ├── manifest.template.json │ │ │ │ │ └── popup.html │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── samples │ │ │ │ │ └── browser │ │ │ │ │ ├── BaseBrowserFragment.kt │ │ │ │ │ ├── BrowserActivity.kt │ │ │ │ │ ├── BrowserFragment.kt │ │ │ │ │ ├── DefaultComponents.kt │ │ │ │ │ ├── ExternalAppBrowserActivity.kt │ │ │ │ │ ├── ExternalAppBrowserFragment.kt │ │ │ │ │ ├── IntentReceiverActivity.kt │ │ │ │ │ ├── SampleApplication.kt │ │ │ │ │ ├── TabsTrayFragment.kt │ │ │ │ │ ├── addons │ │ │ │ │ ├── AddonDetailsActivity.kt │ │ │ │ │ ├── AddonSettingsActivity.kt │ │ │ │ │ ├── AddonsActivity.kt │ │ │ │ │ ├── AddonsFragment.kt │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ ├── InstalledAddonDetailsActivity.kt │ │ │ │ │ ├── NotYetSupportedAddonActivity.kt │ │ │ │ │ ├── PermissionsDetailsActivity.kt │ │ │ │ │ └── WebExtensionActionPopupActivity.kt │ │ │ │ │ ├── autofill │ │ │ │ │ ├── AutofillConfirmActivity.kt │ │ │ │ │ ├── AutofillSearchActivity.kt │ │ │ │ │ ├── AutofillService.kt │ │ │ │ │ └── AutofillUnlockActivity.kt │ │ │ │ │ ├── awesomebar │ │ │ │ │ └── AwesomeBarWrapper.kt │ │ │ │ │ ├── customtabs │ │ │ │ │ └── CustomTabsService.kt │ │ │ │ │ ├── downloads │ │ │ │ │ └── DownloadService.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── Context.kt │ │ │ │ │ └── Fragment.kt │ │ │ │ │ ├── integration │ │ │ │ │ ├── ContextMenuIntegration.kt │ │ │ │ │ ├── FindInPageIntegration.kt │ │ │ │ │ └── ReaderViewIntegration.kt │ │ │ │ │ ├── media │ │ │ │ │ └── MediaSessionService.kt │ │ │ │ │ └── request │ │ │ │ │ └── SampleUrlEncodedRequestInterceptor.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── addon_textview_selector.xml │ │ │ │ ├── mozac_ic_extensions_black.xml │ │ │ │ └── mozac_ic_permissions.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_add_on_details.xml │ │ │ │ ├── activity_add_on_permissions.xml │ │ │ │ ├── activity_add_on_settings.xml │ │ │ │ ├── activity_installed_add_on_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ ├── fragment_add_on_settings.xml │ │ │ │ ├── fragment_add_ons.xml │ │ │ │ ├── fragment_browser.xml │ │ │ │ ├── fragment_not_yet_supported_addons.xml │ │ │ │ ├── fragment_tabstray.xml │ │ │ │ └── overlay_add_on_progress.xml │ │ │ │ ├── menu │ │ │ │ └── tabstray_menu.xml │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── ic_launcher_foreground.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── ic_launcher_foreground.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── ic_launcher_foreground.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── ic_launcher_foreground.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── ic_launcher_foreground.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ └── strings.xml │ │ │ │ └── xml │ │ │ │ ├── backup_rules.xml │ │ │ │ ├── data_extraction_rules.xml │ │ │ │ └── service_configuration.xml │ │ │ ├── servo │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── browser │ │ │ │ └── Components.kt │ │ │ └── system │ │ │ └── java │ │ │ └── org │ │ │ └── mozilla │ │ │ └── samples │ │ │ └── browser │ │ │ └── Components.kt │ ├── compose-browser │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── compose │ │ │ │ └── browser │ │ │ │ ├── BrowserApplication.kt │ │ │ │ ├── BrowserComposeActivity.kt │ │ │ │ ├── Components.kt │ │ │ │ ├── app │ │ │ │ ├── AppAction.kt │ │ │ │ ├── AppState.kt │ │ │ │ └── AppStore.kt │ │ │ │ ├── browser │ │ │ │ ├── BrowserScreen.kt │ │ │ │ ├── BrowserScreenAction.kt │ │ │ │ ├── BrowserScreenState.kt │ │ │ │ └── BrowserScreenStore.kt │ │ │ │ ├── ext │ │ │ │ └── Context.kt │ │ │ │ └── settings │ │ │ │ └── SettingsScreen.kt │ │ │ └── res │ │ │ ├── drawable │ │ │ ├── ic_launcher_background.xml │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values │ │ │ └── strings.xml │ │ │ └── xml │ │ │ └── data_extraction_rules.xml │ ├── crash │ │ ├── build.gradle │ │ ├── lint.xml │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-web.png │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── crash │ │ │ │ ├── CrashActivity.kt │ │ │ │ ├── CrashApplication.kt │ │ │ │ ├── CrashListActivity.kt │ │ │ │ └── CrashService.kt │ │ │ └── res │ │ │ ├── layout │ │ │ └── activity_crash.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_foreground.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values │ │ │ ├── ic_launcher_background.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ ├── dataprotect │ │ ├── build.gradle │ │ ├── lint.xml │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── dataprotect │ │ │ │ ├── Constants.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── ProtectedDataAdapter.kt │ │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ └── protecteddata_item.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ │ └── xml │ │ │ └── data_extraction_rules.xml │ ├── firefox-accounts │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle │ │ ├── gradle.properties │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── fxa │ │ │ │ ├── LoginFragment.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── SampleFxAEntryPoint.kt │ │ │ └── res │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ └── fragment_view.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── values │ │ │ └── strings.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ ├── glean │ │ ├── README.md │ │ ├── build.gradle │ │ ├── metrics.yaml │ │ ├── pings.yaml │ │ ├── proguard-rules.pro │ │ ├── samples-glean-library │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── metrics.yaml │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── glean │ │ │ │ └── library │ │ │ │ └── SamplesGleanLibrary.kt │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── glean │ │ │ │ ├── MainActivityTest.kt │ │ │ │ └── pings │ │ │ │ └── BaselinePingTest.kt │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── glean │ │ │ │ ├── GleanApplication.kt │ │ │ │ └── MainActivity.kt │ │ │ └── res │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── raw │ │ │ └── initial_experiments.json │ │ │ ├── values │ │ │ ├── endpoints.xml │ │ │ └── strings.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ ├── ios-sample │ │ ├── ios-sample.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ └── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── ios-sample │ │ │ ├── Assets.xcassets │ │ │ │ ├── AccentColor.colorset │ │ │ │ │ └── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ │ └── Contents.json │ │ │ ├── ContentView.swift │ │ │ ├── Info.plist │ │ │ ├── Preview Content │ │ │ │ └── Preview Assets.xcassets │ │ │ │ │ └── Contents.json │ │ │ └── ios_sampleApp.swift │ │ ├── ios-sampleTests │ │ │ ├── Info.plist │ │ │ └── ios_sampleTests.swift │ │ └── ios-sampleUITests │ │ │ ├── Info.plist │ │ │ └── ios_sampleUITests.swift │ ├── sync-logins │ │ ├── README.md │ │ ├── build.gradle │ │ ├── gradle.properties │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── sync │ │ │ │ └── logins │ │ │ │ ├── LoginFragment.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── SampleFxAEntryPoint.kt │ │ │ └── res │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ └── fragment_view.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── values │ │ │ └── strings.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ ├── sync │ │ ├── README.md │ │ ├── build.gradle │ │ ├── gradle.properties │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── samples │ │ │ │ └── sync │ │ │ │ ├── DeviceFragment.kt │ │ │ │ ├── DeviceRecyclerViewAdapter.kt │ │ │ │ ├── LoginFragment.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── SampleFxAEntryPoint.kt │ │ │ └── res │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ ├── fragment_device.xml │ │ │ ├── fragment_device_list.xml │ │ │ └── fragment_view.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── values │ │ │ ├── dimens.xml │ │ │ └── strings.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ └── toolbar │ │ ├── build.gradle │ │ ├── lint.xml │ │ ├── proguard-rules.pro │ │ └── src │ │ └── main │ │ ├── AndroidManifest.xml │ │ ├── ic_launcher-web.png │ │ ├── java │ │ └── org │ │ │ └── mozilla │ │ │ └── samples │ │ │ └── toolbar │ │ │ ├── SampleToolbarHelpers.kt │ │ │ └── ToolbarActivity.kt │ │ └── res │ │ ├── drawable │ │ ├── fenix_url_background.xml │ │ ├── focus_background.xml │ │ ├── sample_url_background.xml │ │ └── sample_url_progress.xml │ │ ├── layout │ │ ├── activity_toolbar.xml │ │ ├── focus_blocking_switch.xml │ │ └── item_toolbar_configuration.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── values │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── ic_launcher_background.xml │ │ └── strings.xml │ │ └── xml │ │ ├── backup_rules.xml │ │ └── data_extraction_rules.xml ├── settings.gradle ├── substitute-local-ac.gradle └── tools │ ├── list_compatible_dependency_versions.py │ ├── pre-push-recommended.sh │ └── test_list_compatible_dependency_versions.py ├── bors.toml ├── docs ├── .gitignore ├── 404.html ├── CNAME ├── Gemfile ├── Gemfile.lock ├── _archive │ ├── 2018-07-26-release-0.16.1.markdown │ ├── 2018-08-03-release-0.17.markdown │ ├── 2018-08-10-release-0.18.markdown │ ├── 2018-08-17-release-0.19.markdown │ ├── 2018-08-24-release-0.20.markdown │ ├── 2018-08-31-release-0.21.markdown │ ├── 2018-09-07-release-0.22.markdown │ ├── 2018-09-13-release-0.23.markdown │ ├── 2018-09-21-release-0.24.markdown │ └── 2018-09-26-release-0.25.markdown ├── _config.yml ├── _data │ └── authors.yml ├── _includes │ ├── footer.html │ ├── head.html │ ├── header.html │ └── post_detail.html ├── _layouts │ ├── home.html │ └── post.html ├── _posts │ ├── 2018-07-20-firefox-firetv-browser-session.markdown │ ├── 2018-07-30-firefox-notes-fxa.markdown │ ├── 2018-08-10-fretboard.md │ ├── 2018-11-05-creating-a-simple-browser.md │ ├── 2019-02-19-saving-state.md │ ├── 2019-05-23-deprecation.md │ ├── 2019-09-02-browser-state.md │ ├── 2020-05-28-engine-version-feature-flags.md │ └── 2021-07-05-whats-next.md ├── assets │ ├── fonts │ │ └── ZillaSlab-Bold.woff2 │ ├── images │ │ ├── blog │ │ │ ├── engine-architecture.png │ │ │ ├── progress-performance.png │ │ │ ├── session-bundles.png │ │ │ ├── simplified-engine-architecture.png │ │ │ ├── simplified-toolbar-architecture.png │ │ │ └── toolbar-architecture.png │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ └── rfc │ │ │ └── release-trains.png │ ├── js │ │ └── icon-js.js │ └── main.scss ├── blog.md ├── changelog.md ├── changelog_archive.md ├── components.md ├── contribute │ ├── app_services_upgrade.md │ ├── architecture.md │ ├── code_coverage.md │ ├── components_inside_app.md │ ├── deprecating.md │ ├── design_axioms.md │ ├── hosting_code_in_repository.md │ ├── merge_day.md │ ├── release_checklist.md │ ├── updating_tracking_protection_lists.md │ └── versioning.md ├── contributing.md ├── index.md ├── rfcs │ ├── 0000-template.md │ ├── 0001-rfc-process.md │ ├── 0002-browser-search-rewrite.md │ ├── 0003-concept-base-component.md │ ├── 0004-top-sites-feature.md │ ├── 0005-migrate-sitepermission-ac-store-geckoview-store.md │ ├── 0006-search-defaults.md │ ├── 0007-synchronized-releases.md │ ├── 0008-tab-groups.md │ ├── 0009-remove-interactors-and-controllers.md │ ├── 0010-add-state-based-navigation.md │ ├── 0011-decouple-home-activity-and-external-app-browser-activity.md │ ├── 0012-introduce-ui-store.md │ ├── 0013-rfc-process-updates.md │ └── README.md ├── shared │ ├── android │ │ ├── CONTRIBUTING.md │ │ ├── CONTRIBUTING_code.md │ │ ├── accessibility_guide.md │ │ ├── android_guide.md │ │ ├── automation.md │ │ ├── configure_java.md │ │ ├── device_testing.md │ │ ├── docker_guide.md │ │ ├── fretboard.md │ │ ├── images │ │ │ ├── double-nav.gif │ │ │ └── single-nav.gif │ │ ├── kotlin_guide.md │ │ ├── sprint_process.md │ │ ├── taskcluster_guide.md │ │ ├── testing.md │ │ ├── ui-testing.md │ │ ├── workmanager_faq.md │ │ └── writing_lint_rules.md │ ├── git_guide.md │ ├── im │ │ └── sentry_dsn_click.png │ ├── rfc │ │ └── wallpapers_v2_network_improvements.md │ ├── sentry_guide.md │ ├── uplift_guide.md │ └── versioning.md └── ui │ └── icons.md ├── fenix ├── .adjust_token ├── .buildconfig.yml ├── .editorconfig ├── .gitattributes ├── CODE_OF_CONDUCT.md ├── Gemfile ├── Jenkinsfile ├── README.md ├── SECURITY.md ├── app │ ├── .experimenter.yaml │ ├── .gitignore │ ├── benchmark.gradle │ ├── build.gradle │ ├── lint-baseline.xml │ ├── lint.xml │ ├── messaging-evergreen-messages.fml.yaml │ ├── messaging-fenix.fml.yaml │ ├── metrics.yaml │ ├── nimbus.fml.yaml │ ├── onboarding.fml.yaml │ ├── pbm.fml.yaml │ ├── pings.yaml │ ├── proguard-rules.pro │ ├── src │ │ ├── androidTest │ │ │ ├── assets │ │ │ │ ├── pages │ │ │ │ │ ├── addressForm.html │ │ │ │ │ ├── audioMediaPage.html │ │ │ │ │ ├── creditCardForm.html │ │ │ │ │ ├── cross-site-cookies.html │ │ │ │ │ ├── externalLinks.html │ │ │ │ │ ├── generic1.html │ │ │ │ │ ├── generic2.html │ │ │ │ │ ├── generic3.html │ │ │ │ │ ├── generic4.html │ │ │ │ │ ├── global_privacy_control.html │ │ │ │ │ ├── htmlControls.html │ │ │ │ │ ├── lorem-ipsum.html │ │ │ │ │ ├── mutedVideoPage.html │ │ │ │ │ ├── password.html │ │ │ │ │ ├── passwordsubmit.html │ │ │ │ │ ├── refresh.html │ │ │ │ │ ├── storage_check.html │ │ │ │ │ ├── storage_write.html │ │ │ │ │ ├── trackingPage.html │ │ │ │ │ └── videoMediaPage.html │ │ │ │ └── resources │ │ │ │ │ ├── TestTTC.ttc │ │ │ │ │ ├── TestTTF.ttf │ │ │ │ │ ├── TestTT_-LICENSE │ │ │ │ │ ├── audioSample.mp3 │ │ │ │ │ ├── clip.mp4 │ │ │ │ │ ├── pdfForm.pdf │ │ │ │ │ ├── rabbit.jpg │ │ │ │ │ └── trackingAPI.js │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── fenix │ │ │ │ │ ├── AppRequestInterceptor.kt │ │ │ │ │ ├── components │ │ │ │ │ ├── FontParserTest.kt │ │ │ │ │ └── FxaServer.kt │ │ │ │ │ ├── customannotations │ │ │ │ │ └── SmokeTest.kt │ │ │ │ │ ├── experimentintegration │ │ │ │ │ ├── GenericExperimentIntegrationTest.kt │ │ │ │ │ ├── Pipfile │ │ │ │ │ ├── Pipfile.lock │ │ │ │ │ ├── SurveyExperimentIntegrationTest.kt │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── conftest.py │ │ │ │ │ ├── generate_smoke_tests.py │ │ │ │ │ ├── gradlewbuild.py │ │ │ │ │ ├── launchSimScript.sh │ │ │ │ │ ├── models │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ └── models.py │ │ │ │ │ ├── pytest.ini │ │ │ │ │ ├── tests │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── test_generic_scenarios.py │ │ │ │ │ │ └── test_survey_messages.py │ │ │ │ │ └── variables.yaml │ │ │ │ │ ├── extensions │ │ │ │ │ └── ExtensionProcessTest.kt │ │ │ │ │ ├── glean │ │ │ │ │ └── BaselinePingTest.kt │ │ │ │ │ ├── helpers │ │ │ │ │ ├── AppAndSystemHelper.kt │ │ │ │ │ ├── Assert.kt │ │ │ │ │ ├── Constants.kt │ │ │ │ │ ├── DataGenerationHelper.kt │ │ │ │ │ ├── Experimentation.kt │ │ │ │ │ ├── FeatureSettingsHelper.kt │ │ │ │ │ ├── FeatureSettingsHelperDelegate.kt │ │ │ │ │ ├── HomeActivityTestRule.kt │ │ │ │ │ ├── IdlingResourceHelper.kt │ │ │ │ │ ├── MatcherHelper.kt │ │ │ │ │ ├── Matchers.kt │ │ │ │ │ ├── MockBrowserDataHelper.kt │ │ │ │ │ ├── MockLocationUpdatesRule.kt │ │ │ │ │ ├── MockWebServer.kt │ │ │ │ │ ├── RecyclerViewIdlingResource.kt │ │ │ │ │ ├── RetryTestRule.kt │ │ │ │ │ ├── SearchDispatcher.kt │ │ │ │ │ ├── SessionLoadedIdlingResource.kt │ │ │ │ │ ├── TestAssetHelper.kt │ │ │ │ │ ├── TestHelper.kt │ │ │ │ │ ├── TestSetup.kt │ │ │ │ │ ├── ViewVisibilityIdlingResource.kt │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── String.kt │ │ │ │ │ │ ├── ViewInteraction.kt │ │ │ │ │ │ └── WaitNotNull.kt │ │ │ │ │ ├── idlingresource │ │ │ │ │ │ ├── AddonsInstallingIdlingResource.kt │ │ │ │ │ │ ├── AddonsLoadingIdlingResource.kt │ │ │ │ │ │ ├── BottomSheetBehaviorStateIdlingResource.kt │ │ │ │ │ │ └── NetworkConnectionIdlingResource.kt │ │ │ │ │ └── matchers │ │ │ │ │ │ ├── BitmapDrawableMatcher.kt │ │ │ │ │ │ ├── BottomSheetBehaviorMatchers.kt │ │ │ │ │ │ └── RecyclerViewItemMatcher.kt │ │ │ │ │ ├── onboarding │ │ │ │ │ └── view │ │ │ │ │ │ └── OnboardingMapperTest.kt │ │ │ │ │ ├── perf │ │ │ │ │ ├── SampleBenchmark.kt │ │ │ │ │ └── StartupExcessiveResourceUseTest.kt │ │ │ │ │ ├── screenshots │ │ │ │ │ ├── ComposeMenuScreenShotTest.kt │ │ │ │ │ ├── DefaultHomeScreenTest.kt │ │ │ │ │ ├── MenuScreenShotTest.kt │ │ │ │ │ └── ScreenshotTest.java │ │ │ │ │ ├── syncintegration │ │ │ │ │ ├── Pipfile │ │ │ │ │ ├── Pipfile.lock │ │ │ │ │ ├── SyncIntegrationTest.kt │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── adbrun.py │ │ │ │ │ ├── conftest.py │ │ │ │ │ ├── gradlewbuild.py │ │ │ │ │ ├── launchSimScript.sh │ │ │ │ │ ├── pytest.ini │ │ │ │ │ ├── test_bookmark.js │ │ │ │ │ ├── test_bookmark_desktop.js │ │ │ │ │ ├── test_history.js │ │ │ │ │ ├── test_history_desktop.js │ │ │ │ │ ├── test_integration.py │ │ │ │ │ ├── test_logins.js │ │ │ │ │ └── tps.py │ │ │ │ │ └── ui │ │ │ │ │ ├── AddressAutofillTest.kt │ │ │ │ │ ├── BookmarksTest.kt │ │ │ │ │ ├── BrowsingErrorPagesTest.kt │ │ │ │ │ ├── CollectionTest.kt │ │ │ │ │ ├── ComposeBookmarksTest.kt │ │ │ │ │ ├── ComposeCollectionTest.kt │ │ │ │ │ ├── ComposeContextMenusTest.kt │ │ │ │ │ ├── ComposeHistoryTest.kt │ │ │ │ │ ├── ComposeHomeScreenTest.kt │ │ │ │ │ ├── ComposeMediaNotificationTest.kt │ │ │ │ │ ├── ComposeNavigationToolbarTest.kt │ │ │ │ │ ├── ComposeSearchTest.kt │ │ │ │ │ ├── ComposeSettingsDeleteBrowsingDataOnQuitTest.kt │ │ │ │ │ ├── ComposeSettingsDeleteBrowsingDataTest.kt │ │ │ │ │ ├── ComposeTabbedBrowsingTest.kt │ │ │ │ │ ├── ComposeTopSitesTest.kt │ │ │ │ │ ├── ContextMenusTest.kt │ │ │ │ │ ├── CookieBannerBlockerTest.kt │ │ │ │ │ ├── CrashReportingTest.kt │ │ │ │ │ ├── CreditCardAutofillTest.kt │ │ │ │ │ ├── CustomTabsTest.kt │ │ │ │ │ ├── DeepLinkTest.kt │ │ │ │ │ ├── DownloadFileTypesTest.kt │ │ │ │ │ ├── DownloadTest.kt │ │ │ │ │ ├── EnhancedTrackingProtectionTest.kt │ │ │ │ │ ├── FirefoxSuggestTest.kt │ │ │ │ │ ├── GlobalPrivacyControlTest.kt │ │ │ │ │ ├── HistoryTest.kt │ │ │ │ │ ├── HomeScreenTest.kt │ │ │ │ │ ├── LoginsTest.kt │ │ │ │ │ ├── MainMenuTest.kt │ │ │ │ │ ├── MediaNotificationTest.kt │ │ │ │ │ ├── ModifierTest.kt │ │ │ │ │ ├── NavigationToolbarTest.kt │ │ │ │ │ ├── NimbusEventTest.kt │ │ │ │ │ ├── NimbusMessagingHomescreenTest.kt │ │ │ │ │ ├── NimbusMessagingMessageTest.kt │ │ │ │ │ ├── NimbusMessagingNotificationTest.kt │ │ │ │ │ ├── NimbusMessagingTriggerTest.kt │ │ │ │ │ ├── NoNetworkAccessStartupTests.kt │ │ │ │ │ ├── OnboardingTest.kt │ │ │ │ │ ├── PDFViewerTest.kt │ │ │ │ │ ├── PocketTest.kt │ │ │ │ │ ├── PwaTest.kt │ │ │ │ │ ├── ReaderViewTest.kt │ │ │ │ │ ├── RecentlyClosedTabsTest.kt │ │ │ │ │ ├── SearchTest.kt │ │ │ │ │ ├── SettingsAboutTest.kt │ │ │ │ │ ├── SettingsAddonsTest.kt │ │ │ │ │ ├── SettingsAdvancedTest.kt │ │ │ │ │ ├── SettingsCustomizeTest.kt │ │ │ │ │ ├── SettingsDeleteBrowsingDataOnQuitTest.kt │ │ │ │ │ ├── SettingsDeleteBrowsingDataTest.kt │ │ │ │ │ ├── SettingsGeneralTest.kt │ │ │ │ │ ├── SettingsHTTPSOnlyModeTest.kt │ │ │ │ │ ├── SettingsHomepageTest.kt │ │ │ │ │ ├── SettingsPrivacyTest.kt │ │ │ │ │ ├── SettingsPrivateBrowsingTest.kt │ │ │ │ │ ├── SettingsSearchTest.kt │ │ │ │ │ ├── SettingsSitePermissionsTest.kt │ │ │ │ │ ├── SitePermissionsTest.kt │ │ │ │ │ ├── SponsoredShortcutsTest.kt │ │ │ │ │ ├── TabbedBrowsingTest.kt │ │ │ │ │ ├── TextSelectionTest.kt │ │ │ │ │ ├── TopSitesTest.kt │ │ │ │ │ ├── TotalCookieProtectionTest.kt │ │ │ │ │ ├── UpgradingUsersOnboardingTest.kt │ │ │ │ │ ├── WebControlsTest.kt │ │ │ │ │ ├── docs │ │ │ │ │ ├── assets.md │ │ │ │ │ └── channels.md │ │ │ │ │ ├── robots │ │ │ │ │ ├── AccountSettingsRobot.kt │ │ │ │ │ ├── AddToHomeScreenRobot.kt │ │ │ │ │ ├── BookmarksRobot.kt │ │ │ │ │ ├── BrowserRobot.kt │ │ │ │ │ ├── CollectionRobot.kt │ │ │ │ │ ├── ComposeTabDrawerRobot.kt │ │ │ │ │ ├── ComposeTopSitesRobot.kt │ │ │ │ │ ├── CustomTabRobot.kt │ │ │ │ │ ├── DeepLinkRobot.kt │ │ │ │ │ ├── DownloadRobot.kt │ │ │ │ │ ├── EnhancedTrackingProtectionRobot.kt │ │ │ │ │ ├── FindInPageRobot.kt │ │ │ │ │ ├── HistoryRobot.kt │ │ │ │ │ ├── HomeScreenRobot.kt │ │ │ │ │ ├── LibrarySubMenusMultipleSelectionToolbarRobot.kt │ │ │ │ │ ├── NavigationToolbarRobot.kt │ │ │ │ │ ├── NotificationRobot.kt │ │ │ │ │ ├── PwaRobot.kt │ │ │ │ │ ├── ReaderViewRobot.kt │ │ │ │ │ ├── RecentlyClosedTabsRobot.kt │ │ │ │ │ ├── SearchRobot.kt │ │ │ │ │ ├── SettingsRobot.kt │ │ │ │ │ ├── SettingsSubMenuAboutRobot.kt │ │ │ │ │ ├── SettingsSubMenuAccessibilityRobot.kt │ │ │ │ │ ├── SettingsSubMenuAddonsManagerAddonDetailedMenuRobot.kt │ │ │ │ │ ├── SettingsSubMenuAddonsManagerRobot.kt │ │ │ │ │ ├── SettingsSubMenuAutofillRobot.kt │ │ │ │ │ ├── SettingsSubMenuCustomizeRobot.kt │ │ │ │ │ ├── SettingsSubMenuDataCollectionRobot.kt │ │ │ │ │ ├── SettingsSubMenuDeleteBrowsingDataOnQuitRobot.kt │ │ │ │ │ ├── SettingsSubMenuDeleteBrowsingDataRobot.kt │ │ │ │ │ ├── SettingsSubMenuEnhancedTrackingProtectionExceptionsRobot.kt │ │ │ │ │ ├── SettingsSubMenuEnhancedTrackingProtectionRobot.kt │ │ │ │ │ ├── SettingsSubMenuExperimentsRobot.kt │ │ │ │ │ ├── SettingsSubMenuHomepageRobot.kt │ │ │ │ │ ├── SettingsSubMenuHttpsOnlyModeRobot.kt │ │ │ │ │ ├── SettingsSubMenuLanguageRobot.kt │ │ │ │ │ ├── SettingsSubMenuLoginsAndPasswordOptionsToSaveRobot.kt │ │ │ │ │ ├── SettingsSubMenuLoginsAndPasswordRobot.kt │ │ │ │ │ ├── SettingsSubMenuLoginsAndPasswordsSavedLoginsRobot.kt │ │ │ │ │ ├── SettingsSubMenuOpenLinksInAppsRobot.kt │ │ │ │ │ ├── SettingsSubMenuPrivateBrowsingRobot.kt │ │ │ │ │ ├── SettingsSubMenuSearchRobot.kt │ │ │ │ │ ├── SettingsSubMenuSetDefaultBrowserRobot.kt │ │ │ │ │ ├── SettingsSubMenuSitePermissionsCommonRobot.kt │ │ │ │ │ ├── SettingsSubMenuSitePermissionsExceptionsRobot.kt │ │ │ │ │ ├── SettingsSubMenuSitePermissionsRobot.kt │ │ │ │ │ ├── SettingsSubMenuTabsRobot.kt │ │ │ │ │ ├── SettingsTurnOnSyncRobot.kt │ │ │ │ │ ├── ShareOverlayRobot.kt │ │ │ │ │ ├── SitePermissionsRobot.kt │ │ │ │ │ ├── SiteSecurityRobot.kt │ │ │ │ │ ├── SyncSignInRobot.kt │ │ │ │ │ ├── SystemSettingsRobot.kt │ │ │ │ │ ├── TabDrawerRobot.kt │ │ │ │ │ ├── ThreeDotMenuBookmarksRobot.kt │ │ │ │ │ └── ThreeDotMenuMainRobot.kt │ │ │ │ │ └── util │ │ │ │ │ └── Strings.kt │ │ │ └── resources │ │ │ │ ├── email.txt │ │ │ │ └── password.txt │ │ ├── beta │ │ │ ├── AndroidManifest.xml │ │ │ └── res │ │ │ │ ├── drawable-hdpi │ │ │ │ ├── fenix_search_widget.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-mdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xxxhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable │ │ │ │ ├── animated_splash_screen.xml │ │ │ │ ├── ic_launcher_foreground.xml │ │ │ │ ├── ic_wordmark_logo.webp │ │ │ │ ├── ic_wordmark_text_normal.webp │ │ │ │ └── ic_wordmark_text_private.webp │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ └── static_strings.xml │ │ │ │ └── xml │ │ │ │ └── shortcuts.xml │ │ ├── debug │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-web.webp │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── fenix │ │ │ │ │ └── DebugFenixApplication.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── animated_splash_screen.xml │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── raw │ │ │ │ └── initial_experiments.json │ │ │ │ ├── values │ │ │ │ └── colors.xml │ │ │ │ └── xml │ │ │ │ └── shortcuts.xml │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── assets │ │ │ │ ├── highRiskErrorPages.js │ │ │ │ ├── high_risk_error_pages.html │ │ │ │ ├── high_risk_error_style.css │ │ │ │ ├── lowMediumErrorPages.js │ │ │ │ ├── low_and_medium_risk_error_pages.html │ │ │ │ ├── low_and_medium_risk_error_style.css │ │ │ │ ├── searchplugins │ │ │ │ │ ├── reddit.xml │ │ │ │ │ └── youtube.xml │ │ │ │ └── shared_error_style.css │ │ │ ├── ic_launcher-web.webp │ │ │ ├── ic_launcher_private-web.webp │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ ├── fenix │ │ │ │ │ ├── AppRequestInterceptor.kt │ │ │ │ │ ├── BrowserDirection.kt │ │ │ │ │ ├── Config.kt │ │ │ │ │ ├── FeatureFlags.kt │ │ │ │ │ ├── FenixApplication.kt │ │ │ │ │ ├── FenixLogSink.kt │ │ │ │ │ ├── GlobalDirections.kt │ │ │ │ │ ├── HomeActivity.kt │ │ │ │ │ ├── IntentReceiverActivity.kt │ │ │ │ │ ├── MozillaOnlineHomeActivity.kt │ │ │ │ │ ├── NavHostActivity.kt │ │ │ │ │ ├── OnBackLongPressedListener.kt │ │ │ │ │ ├── SecureFragment.kt │ │ │ │ │ ├── ServiceWorkerSupportFeature.kt │ │ │ │ │ ├── StartupFragment.kt │ │ │ │ │ ├── addons │ │ │ │ │ │ ├── AddonDetailsBindingDelegate.kt │ │ │ │ │ │ ├── AddonDetailsFragment.kt │ │ │ │ │ │ ├── AddonInternalSettingsFragment.kt │ │ │ │ │ │ ├── AddonPermissionDetailsBindingDelegate.kt │ │ │ │ │ │ ├── AddonPermissionsDetailsFragment.kt │ │ │ │ │ │ ├── AddonPopupBaseFragment.kt │ │ │ │ │ │ ├── AddonsManagementFragment.kt │ │ │ │ │ │ ├── AddonsManagementView.kt │ │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ │ ├── ExtensionsProcessDisabledBackgroundController.kt │ │ │ │ │ │ ├── ExtensionsProcessDisabledForegroundController.kt │ │ │ │ │ │ ├── InstalledAddonDetailsFragment.kt │ │ │ │ │ │ ├── NotYetSupportedAddonFragment.kt │ │ │ │ │ │ └── WebExtensionActionPopupFragment.kt │ │ │ │ │ ├── android │ │ │ │ │ │ ├── DefaultActivityLifecycleCallbacks.kt │ │ │ │ │ │ └── FenixDialogFragment.kt │ │ │ │ │ ├── autofill │ │ │ │ │ │ ├── AutofillConfirmActivity.kt │ │ │ │ │ │ ├── AutofillSearchActivity.kt │ │ │ │ │ │ ├── AutofillService.kt │ │ │ │ │ │ └── AutofillUnlockActivity.kt │ │ │ │ │ ├── bindings │ │ │ │ │ │ └── BrowserStoreBinding.kt │ │ │ │ │ ├── browser │ │ │ │ │ │ ├── BaseBrowserFragment.kt │ │ │ │ │ │ ├── BrowserAnimator.kt │ │ │ │ │ │ ├── BrowserFragment.kt │ │ │ │ │ │ ├── CustomTabContextMenuCandidate.kt │ │ │ │ │ │ ├── DownloadUtils.kt │ │ │ │ │ │ ├── FenixSnackbarDelegate.kt │ │ │ │ │ │ ├── OpenInAppOnboardingObserver.kt │ │ │ │ │ │ ├── StandardSnackbarErrorBinding.kt │ │ │ │ │ │ ├── SwipeGestureLayout.kt │ │ │ │ │ │ ├── TabPreview.kt │ │ │ │ │ │ ├── ToolbarGestureHandler.kt │ │ │ │ │ │ ├── TranslationsBinding.kt │ │ │ │ │ │ ├── browsingmode │ │ │ │ │ │ │ └── BrowsingModeManager.kt │ │ │ │ │ │ ├── infobanner │ │ │ │ │ │ │ ├── DynamicInfoBanner.kt │ │ │ │ │ │ │ ├── DynamicInfoBannerBehavior.kt │ │ │ │ │ │ │ └── InfoBanner.kt │ │ │ │ │ │ ├── readermode │ │ │ │ │ │ │ └── ReaderModeController.kt │ │ │ │ │ │ └── tabstrip │ │ │ │ │ │ │ ├── TabStrip.kt │ │ │ │ │ │ │ ├── TabStripCard.kt │ │ │ │ │ │ │ └── TabStripState.kt │ │ │ │ │ ├── collections │ │ │ │ │ │ ├── CollectionCreationBottomBarView.kt │ │ │ │ │ │ ├── CollectionCreationController.kt │ │ │ │ │ │ ├── CollectionCreationFragment.kt │ │ │ │ │ │ ├── CollectionCreationInteractor.kt │ │ │ │ │ │ ├── CollectionCreationStore.kt │ │ │ │ │ │ ├── CollectionCreationTabListAdapter.kt │ │ │ │ │ │ ├── CollectionCreationView.kt │ │ │ │ │ │ ├── CollectionsDialog.kt │ │ │ │ │ │ ├── CollectionsListAdapter.kt │ │ │ │ │ │ ├── SaveCollectionListAdapter.kt │ │ │ │ │ │ ├── Tab.kt │ │ │ │ │ │ └── TabDiffUtil.kt │ │ │ │ │ ├── components │ │ │ │ │ │ ├── AccountAbnormalities.kt │ │ │ │ │ │ ├── Analytics.kt │ │ │ │ │ │ ├── AppStore.kt │ │ │ │ │ │ ├── BackgroundServices.kt │ │ │ │ │ │ ├── ChangeDetectionMiddleware.kt │ │ │ │ │ │ ├── Components.kt │ │ │ │ │ │ ├── Core.kt │ │ │ │ │ │ ├── FenixSnackbar.kt │ │ │ │ │ │ ├── FenixSnackbarBehavior.kt │ │ │ │ │ │ ├── FindInPageIntegration.kt │ │ │ │ │ │ ├── FxSuggest.kt │ │ │ │ │ │ ├── FxaServer.kt │ │ │ │ │ │ ├── IntentProcessorType.kt │ │ │ │ │ │ ├── IntentProcessors.kt │ │ │ │ │ │ ├── NimbusComponents.kt │ │ │ │ │ │ ├── NotificationManager.kt │ │ │ │ │ │ ├── PerformanceComponent.kt │ │ │ │ │ │ ├── PermissionStorage.kt │ │ │ │ │ │ ├── PrivateShortcutCreateManager.kt │ │ │ │ │ │ ├── Push.kt │ │ │ │ │ │ ├── ReviewPromptController.kt │ │ │ │ │ │ ├── Services.kt │ │ │ │ │ │ ├── StoreProvider.kt │ │ │ │ │ │ ├── TabCollectionStorage.kt │ │ │ │ │ │ ├── TrackingProtectionPolicyFactory.kt │ │ │ │ │ │ ├── UrlRequestInterceptor.kt │ │ │ │ │ │ ├── UseCases.kt │ │ │ │ │ │ ├── accounts │ │ │ │ │ │ │ ├── FenixAccountManager.kt │ │ │ │ │ │ │ └── FenixFxAEntryPoint.kt │ │ │ │ │ │ ├── appstate │ │ │ │ │ │ │ ├── AppAction.kt │ │ │ │ │ │ │ ├── AppState.kt │ │ │ │ │ │ │ ├── AppStoreReducer.kt │ │ │ │ │ │ │ └── shopping │ │ │ │ │ │ │ │ ├── ShoppingState.kt │ │ │ │ │ │ │ │ └── ShoppingStateReducer.kt │ │ │ │ │ │ ├── bookmarks │ │ │ │ │ │ │ └── BookmarksUseCase.kt │ │ │ │ │ │ ├── history │ │ │ │ │ │ │ └── PagedHistoryProvider.kt │ │ │ │ │ │ ├── metrics │ │ │ │ │ │ │ ├── ActivationPing.kt │ │ │ │ │ │ │ ├── AdjustMetricsService.kt │ │ │ │ │ │ │ ├── BreadcrumbsRecorder.kt │ │ │ │ │ │ │ ├── Event.kt │ │ │ │ │ │ │ ├── FirstSessionPing.kt │ │ │ │ │ │ │ ├── GleanMetricsService.kt │ │ │ │ │ │ │ ├── GrowthDataWorker.kt │ │ │ │ │ │ │ ├── InstallReferrerMetricsService.kt │ │ │ │ │ │ │ ├── MetricController.kt │ │ │ │ │ │ │ ├── MetricsMiddleware.kt │ │ │ │ │ │ │ ├── MetricsService.kt │ │ │ │ │ │ │ ├── MetricsStorage.kt │ │ │ │ │ │ │ ├── MetricsUtils.kt │ │ │ │ │ │ │ ├── MozillaProductDetector.kt │ │ │ │ │ │ │ └── fonts │ │ │ │ │ │ │ │ ├── FontEnumerationWorker.kt │ │ │ │ │ │ │ │ └── FontParser.kt │ │ │ │ │ │ ├── search │ │ │ │ │ │ │ └── SearchMigration.kt │ │ │ │ │ │ ├── settings │ │ │ │ │ │ │ ├── CounterPreference.kt │ │ │ │ │ │ │ └── FeatureFlagPreference.kt │ │ │ │ │ │ └── toolbar │ │ │ │ │ │ │ ├── BrowserFragmentStore.kt │ │ │ │ │ │ │ ├── BrowserMenuSignIn.kt │ │ │ │ │ │ │ ├── BrowserToolbarCFRPresenter.kt │ │ │ │ │ │ │ ├── BrowserToolbarController.kt │ │ │ │ │ │ │ ├── BrowserToolbarMenuController.kt │ │ │ │ │ │ │ ├── BrowserToolbarView.kt │ │ │ │ │ │ │ ├── DefaultToolbarMenu.kt │ │ │ │ │ │ │ ├── FenixTabCounterMenu.kt │ │ │ │ │ │ │ ├── MenuPresenter.kt │ │ │ │ │ │ │ ├── RedesignToolbarFeature.kt │ │ │ │ │ │ │ ├── ToolbarIntegration.kt │ │ │ │ │ │ │ ├── ToolbarMenu.kt │ │ │ │ │ │ │ ├── ToolbarPosition.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ └── BrowserToolbarInteractor.kt │ │ │ │ │ │ │ └── navbar │ │ │ │ │ │ │ ├── BottomToolbarContainerView.kt │ │ │ │ │ │ │ ├── EngineViewClippingBehavior.kt │ │ │ │ │ │ │ ├── NavbarIntegration.kt │ │ │ │ │ │ │ └── NavigationBar.kt │ │ │ │ │ ├── compose │ │ │ │ │ │ ├── Banner.kt │ │ │ │ │ │ ├── BetaLabel.kt │ │ │ │ │ │ ├── BottomSheetHandle.kt │ │ │ │ │ │ ├── Chip.kt │ │ │ │ │ │ ├── ClickableSubstringLink.kt │ │ │ │ │ │ ├── ComposeUtils.kt │ │ │ │ │ │ ├── ComposeViewHolder.kt │ │ │ │ │ │ ├── Divider.kt │ │ │ │ │ │ ├── Favicon.kt │ │ │ │ │ │ ├── HorizontalFadingEdgeBox.kt │ │ │ │ │ │ ├── Image.kt │ │ │ │ │ │ ├── ImagesPlaceholder.kt │ │ │ │ │ │ ├── LazyListEagerFlingBehavior.kt │ │ │ │ │ │ ├── LinkText.kt │ │ │ │ │ │ ├── ListItemTabLarge.kt │ │ │ │ │ │ ├── ListItemTabLargePlaceholder.kt │ │ │ │ │ │ ├── LongPressIconButton.kt │ │ │ │ │ │ ├── Menu.kt │ │ │ │ │ │ ├── MessageCard.kt │ │ │ │ │ │ ├── PagerIndicator.kt │ │ │ │ │ │ ├── StaggeredHorizontalGrid.kt │ │ │ │ │ │ ├── String.kt │ │ │ │ │ │ ├── SwipeToDismiss.kt │ │ │ │ │ │ ├── SwitchWithLabel.kt │ │ │ │ │ │ ├── TabCounter.kt │ │ │ │ │ │ ├── TabSubtitleWithInterdot.kt │ │ │ │ │ │ ├── TabThumbnail.kt │ │ │ │ │ │ ├── ThumbnailCard.kt │ │ │ │ │ │ ├── ThumbnailImage.kt │ │ │ │ │ │ ├── annotation │ │ │ │ │ │ │ └── LightDarkPreview.kt │ │ │ │ │ │ ├── button │ │ │ │ │ │ │ ├── Button.kt │ │ │ │ │ │ │ ├── FloatingActionButton.kt │ │ │ │ │ │ │ ├── RadioButton.kt │ │ │ │ │ │ │ └── TextButton.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ │ ├── Int.kt │ │ │ │ │ │ │ └── Modifier.kt │ │ │ │ │ │ ├── home │ │ │ │ │ │ │ └── HomeSectionHeader.kt │ │ │ │ │ │ ├── list │ │ │ │ │ │ │ ├── ExpandableListHeader.kt │ │ │ │ │ │ │ └── ListItem.kt │ │ │ │ │ │ └── tabstray │ │ │ │ │ │ │ ├── DismissedTabBackground.kt │ │ │ │ │ │ │ ├── MediaImage.kt │ │ │ │ │ │ │ ├── TabGridItem.kt │ │ │ │ │ │ │ └── TabListItem.kt │ │ │ │ │ ├── crashes │ │ │ │ │ │ ├── CrashContentIntegration.kt │ │ │ │ │ │ ├── CrashContentView.kt │ │ │ │ │ │ ├── CrashFactCollector.kt │ │ │ │ │ │ ├── CrashListActivity.kt │ │ │ │ │ │ └── CrashReporterController.kt │ │ │ │ │ ├── customtabs │ │ │ │ │ │ ├── CustomTabToolbarIntegration.kt │ │ │ │ │ │ ├── CustomTabToolbarMenu.kt │ │ │ │ │ │ ├── CustomTabsIntegration.kt │ │ │ │ │ │ ├── CustomTabsService.kt │ │ │ │ │ │ ├── ExternalAppBrowserActivity.kt │ │ │ │ │ │ ├── ExternalAppBrowserFragment.kt │ │ │ │ │ │ ├── FennecWebAppIntentProcessor.kt │ │ │ │ │ │ ├── PoweredByNotification.kt │ │ │ │ │ │ └── WebAppSiteControlsBuilder.kt │ │ │ │ │ ├── datastore │ │ │ │ │ │ ├── DataStores.kt │ │ │ │ │ │ └── SelectedPocketStoriesCategorySerializer.kt │ │ │ │ │ ├── debugsettings │ │ │ │ │ │ ├── data │ │ │ │ │ │ │ └── DebugSettingsRepository.kt │ │ │ │ │ │ ├── navigation │ │ │ │ │ │ │ ├── DebugDrawerDestination.kt │ │ │ │ │ │ │ └── DebugDrawerRoute.kt │ │ │ │ │ │ ├── store │ │ │ │ │ │ │ ├── DebugDrawerAction.kt │ │ │ │ │ │ │ ├── DebugDrawerNavigationMiddleware.kt │ │ │ │ │ │ │ ├── DebugDrawerState.kt │ │ │ │ │ │ │ ├── DebugDrawerStore.kt │ │ │ │ │ │ │ └── DrawerStatus.kt │ │ │ │ │ │ ├── tabs │ │ │ │ │ │ │ └── TabTools.kt │ │ │ │ │ │ └── ui │ │ │ │ │ │ │ ├── DebugDrawer.kt │ │ │ │ │ │ │ ├── DebugDrawerHome.kt │ │ │ │ │ │ │ ├── DebugOverlay.kt │ │ │ │ │ │ │ └── FenixOverlay.kt │ │ │ │ │ ├── downloads │ │ │ │ │ │ ├── DownloadService.kt │ │ │ │ │ │ ├── DynamicDownloadDialog.kt │ │ │ │ │ │ ├── DynamicDownloadDialogBehavior.kt │ │ │ │ │ │ └── StartDownloadDialog.kt │ │ │ │ │ ├── exceptions │ │ │ │ │ │ ├── ExceptionsAdapter.kt │ │ │ │ │ │ ├── ExceptionsInteractor.kt │ │ │ │ │ │ ├── ExceptionsView.kt │ │ │ │ │ │ ├── login │ │ │ │ │ │ │ ├── ExceptionsFragmentStore.kt │ │ │ │ │ │ │ ├── LoginExceptionsAdapter.kt │ │ │ │ │ │ │ ├── LoginExceptionsFragment.kt │ │ │ │ │ │ │ ├── LoginExceptionsInteractor.kt │ │ │ │ │ │ │ └── LoginExceptionsView.kt │ │ │ │ │ │ ├── trackingprotection │ │ │ │ │ │ │ ├── ExceptionsFragmentStore.kt │ │ │ │ │ │ │ ├── TrackingProtectionExceptionsAdapter.kt │ │ │ │ │ │ │ ├── TrackingProtectionExceptionsFragment.kt │ │ │ │ │ │ │ ├── TrackingProtectionExceptionsInteractor.kt │ │ │ │ │ │ │ └── TrackingProtectionExceptionsView.kt │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ ├── ExceptionsDeleteButtonViewHolder.kt │ │ │ │ │ │ │ ├── ExceptionsHeaderViewHolder.kt │ │ │ │ │ │ │ └── ExceptionsListItemViewHolder.kt │ │ │ │ │ ├── experiments │ │ │ │ │ │ ├── NimbusSetup.kt │ │ │ │ │ │ ├── ResearchSurfaceDialogFragment.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ │ └── ResearchSurfaceSurvey.kt │ │ │ │ │ ├── ext │ │ │ │ │ │ ├── Activity.kt │ │ │ │ │ │ ├── AppState.kt │ │ │ │ │ │ ├── AtomicInteger.kt │ │ │ │ │ │ ├── Bitmap.kt │ │ │ │ │ │ ├── BookmarkNode.kt │ │ │ │ │ │ ├── BrowserIcons.kt │ │ │ │ │ │ ├── BrowserState.kt │ │ │ │ │ │ ├── Client.kt │ │ │ │ │ │ ├── Configuration.kt │ │ │ │ │ │ ├── ConnectivityManager.kt │ │ │ │ │ │ ├── Context.kt │ │ │ │ │ │ ├── Dialog.kt │ │ │ │ │ │ ├── DownloadItem.kt │ │ │ │ │ │ ├── Drawable.kt │ │ │ │ │ │ ├── EditText.kt │ │ │ │ │ │ ├── Fragment.kt │ │ │ │ │ │ ├── ImageButton.kt │ │ │ │ │ │ ├── List.kt │ │ │ │ │ │ ├── Log.kt │ │ │ │ │ │ ├── NavController.kt │ │ │ │ │ │ ├── RecentTabs.kt │ │ │ │ │ │ ├── SearchEngine.kt │ │ │ │ │ │ ├── SpannableString.kt │ │ │ │ │ │ ├── String.kt │ │ │ │ │ │ ├── TabCollection.kt │ │ │ │ │ │ ├── TextView.kt │ │ │ │ │ │ ├── Toolbar.kt │ │ │ │ │ │ ├── TopSite.kt │ │ │ │ │ │ ├── Uri.kt │ │ │ │ │ │ └── View.kt │ │ │ │ │ ├── extension │ │ │ │ │ │ └── WebExtensionPromptFeature.kt │ │ │ │ │ ├── gecko │ │ │ │ │ │ └── GeckoProvider.kt │ │ │ │ │ ├── historymetadata │ │ │ │ │ │ ├── HistoryMetadataMiddleware.kt │ │ │ │ │ │ └── HistoryMetadataService.kt │ │ │ │ │ ├── home │ │ │ │ │ │ ├── BottomSpacerViewHolder.kt │ │ │ │ │ │ ├── HomeFragment.kt │ │ │ │ │ │ ├── HomeMenu.kt │ │ │ │ │ │ ├── HomeMenuView.kt │ │ │ │ │ │ ├── HomeScreenViewModel.kt │ │ │ │ │ │ ├── PocketUpdatesMiddleware.kt │ │ │ │ │ │ ├── PrivateBrowsingButtonView.kt │ │ │ │ │ │ ├── SharedViewModel.kt │ │ │ │ │ │ ├── TabCounterView.kt │ │ │ │ │ │ ├── ToolbarView.kt │ │ │ │ │ │ ├── TopPlaceholderViewHolder.kt │ │ │ │ │ │ ├── blocklist │ │ │ │ │ │ │ ├── BlocklistHandler.kt │ │ │ │ │ │ │ └── BlocklistMiddleware.kt │ │ │ │ │ │ ├── collections │ │ │ │ │ │ │ ├── Collection.kt │ │ │ │ │ │ │ ├── CollectionItem.kt │ │ │ │ │ │ │ ├── CollectionViewHolder.kt │ │ │ │ │ │ │ └── TabInCollectionViewHolder.kt │ │ │ │ │ │ ├── intent │ │ │ │ │ │ │ ├── AssistIntentProcessor.kt │ │ │ │ │ │ │ ├── CrashReporterIntentProcessor.kt │ │ │ │ │ │ │ ├── FennecBookmarkShortcutsIntentProcessor.kt │ │ │ │ │ │ │ ├── HomeDeepLinkIntentProcessor.kt │ │ │ │ │ │ │ ├── HomeIntentProcessor.kt │ │ │ │ │ │ │ ├── OpenBrowserIntentProcessor.kt │ │ │ │ │ │ │ ├── OpenPasswordManagerIntentProcessor.kt │ │ │ │ │ │ │ ├── OpenSpecificTabIntentProcessor.kt │ │ │ │ │ │ │ ├── ReEngagementIntentProcessor.kt │ │ │ │ │ │ │ ├── SpeechProcessingIntentProcessor.kt │ │ │ │ │ │ │ └── StartSearchIntentProcessor.kt │ │ │ │ │ │ ├── mozonline │ │ │ │ │ │ │ ├── PrivacyContentDisplayActivity.kt │ │ │ │ │ │ │ ├── PrivacyContentDisplayHelper.kt │ │ │ │ │ │ │ └── PrivacyContentSpan.kt │ │ │ │ │ │ ├── pocket │ │ │ │ │ │ │ ├── PocketCategoriesViewHolder.kt │ │ │ │ │ │ │ ├── PocketRecommendationsHeaderViewHolder.kt │ │ │ │ │ │ │ ├── PocketRecommendedStoriesCategory.kt │ │ │ │ │ │ │ ├── PocketRecommendedStoriesSelectedCategory.kt │ │ │ │ │ │ │ ├── PocketStoriesComposables.kt │ │ │ │ │ │ │ ├── PocketStoriesController.kt │ │ │ │ │ │ │ ├── PocketStoriesInteractor.kt │ │ │ │ │ │ │ └── PocketStoriesViewHolder.kt │ │ │ │ │ │ ├── privatebrowsing │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ └── PrivateBrowsingController.kt │ │ │ │ │ │ │ └── interactor │ │ │ │ │ │ │ │ └── PrivateBrowsingInteractor.kt │ │ │ │ │ │ ├── recentbookmarks │ │ │ │ │ │ │ ├── RecentBookmarksFeature.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ └── RecentBookmarksController.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ └── RecentBookmarksInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── RecentBookmarks.kt │ │ │ │ │ │ │ │ ├── RecentBookmarksHeaderViewHolder.kt │ │ │ │ │ │ │ │ ├── RecentBookmarksMenuItem.kt │ │ │ │ │ │ │ │ └── RecentBookmarksViewHolder.kt │ │ │ │ │ │ ├── recentsyncedtabs │ │ │ │ │ │ │ ├── RecentSyncedTabFeature.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ └── RecentSyncedTabController.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ └── RecentSyncedTabInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── RecentSyncedTab.kt │ │ │ │ │ │ │ │ └── RecentSyncedTabViewHolder.kt │ │ │ │ │ │ ├── recenttabs │ │ │ │ │ │ │ ├── RecentTabsListFeature.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ └── RecentTabController.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ └── RecentTabInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── RecentTabMenuItem.kt │ │ │ │ │ │ │ │ ├── RecentTabViewHolder.kt │ │ │ │ │ │ │ │ ├── RecentTabs.kt │ │ │ │ │ │ │ │ └── RecentTabsHeaderViewHolder.kt │ │ │ │ │ │ ├── recentvisits │ │ │ │ │ │ │ ├── RecentVisitsFeature.kt │ │ │ │ │ │ │ ├── RecentlyVisitedItem.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ └── RecentVisitsController.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ └── RecentVisitsInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── RecentVisitMenuItem.kt │ │ │ │ │ │ │ │ ├── RecentVisitsHeaderViewHolder.kt │ │ │ │ │ │ │ │ ├── RecentlyVisited.kt │ │ │ │ │ │ │ │ └── RecentlyVisitedViewHolder.kt │ │ │ │ │ │ ├── sessioncontrol │ │ │ │ │ │ │ ├── SessionControlAdapter.kt │ │ │ │ │ │ │ ├── SessionControlController.kt │ │ │ │ │ │ │ ├── SessionControlInteractor.kt │ │ │ │ │ │ │ ├── SessionControlView.kt │ │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ │ ├── CollectionHeaderViewHolder.kt │ │ │ │ │ │ │ │ ├── CustomizeHomeButtonViewHolder.kt │ │ │ │ │ │ │ │ ├── FeltPrivacyInfoCard.kt │ │ │ │ │ │ │ │ ├── NoCollectionsMessageViewHolder.kt │ │ │ │ │ │ │ │ ├── PrivateBrowsingDescriptionViewHolder.kt │ │ │ │ │ │ │ │ └── onboarding │ │ │ │ │ │ │ │ └── MessageCardViewHolder.kt │ │ │ │ │ │ ├── toolbar │ │ │ │ │ │ │ ├── SearchSelectorBinding.kt │ │ │ │ │ │ │ ├── SearchSelectorMenuBinding.kt │ │ │ │ │ │ │ ├── ToolbarController.kt │ │ │ │ │ │ │ └── ToolbarInteractor.kt │ │ │ │ │ │ └── topsites │ │ │ │ │ │ │ ├── DefaultTopSitesView.kt │ │ │ │ │ │ │ ├── PagerIndicator.kt │ │ │ │ │ │ │ ├── TopSiteItemMenu.kt │ │ │ │ │ │ │ ├── TopSiteItemViewHolder.kt │ │ │ │ │ │ │ ├── TopSitePagerViewHolder.kt │ │ │ │ │ │ │ ├── TopSiteViewHolder.kt │ │ │ │ │ │ │ ├── TopSites.kt │ │ │ │ │ │ │ ├── TopSitesAdapter.kt │ │ │ │ │ │ │ ├── TopSitesPagerAdapter.kt │ │ │ │ │ │ │ ├── TopSitesTestTag.kt │ │ │ │ │ │ │ └── TopSitesViewHolder.kt │ │ │ │ │ ├── intent │ │ │ │ │ │ └── ExternalDeepLinkIntentProcessor.kt │ │ │ │ │ ├── library │ │ │ │ │ │ ├── LibraryPageFragment.kt │ │ │ │ │ │ ├── LibraryPageView.kt │ │ │ │ │ │ ├── LibrarySiteItemView.kt │ │ │ │ │ │ ├── bookmarks │ │ │ │ │ │ │ ├── BookmarkAdapter.kt │ │ │ │ │ │ │ ├── BookmarkController.kt │ │ │ │ │ │ │ ├── BookmarkDeselectNavigationListener.kt │ │ │ │ │ │ │ ├── BookmarkFragment.kt │ │ │ │ │ │ │ ├── BookmarkFragmentInteractor.kt │ │ │ │ │ │ │ ├── BookmarkFragmentStore.kt │ │ │ │ │ │ │ ├── BookmarkItemMenu.kt │ │ │ │ │ │ │ ├── BookmarkView.kt │ │ │ │ │ │ │ ├── BookmarksSharedViewModel.kt │ │ │ │ │ │ │ ├── DesktopFolders.kt │ │ │ │ │ │ │ ├── Utils.kt │ │ │ │ │ │ │ ├── addfolder │ │ │ │ │ │ │ │ └── AddBookmarkFolderFragment.kt │ │ │ │ │ │ │ ├── edit │ │ │ │ │ │ │ │ └── EditBookmarkFragment.kt │ │ │ │ │ │ │ ├── selectfolder │ │ │ │ │ │ │ │ ├── SelectBookmarkFolderAdapter.kt │ │ │ │ │ │ │ │ └── SelectBookmarkFolderFragment.kt │ │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ │ ├── BookmarkNodeViewHolder.kt │ │ │ │ │ │ │ │ └── BookmarkSeparatorViewHolder.kt │ │ │ │ │ │ ├── downloads │ │ │ │ │ │ │ ├── DownloadAdapter.kt │ │ │ │ │ │ │ ├── DownloadController.kt │ │ │ │ │ │ │ ├── DownloadFragment.kt │ │ │ │ │ │ │ ├── DownloadFragmentStore.kt │ │ │ │ │ │ │ ├── DownloadInteractor.kt │ │ │ │ │ │ │ ├── DownloadItemMenu.kt │ │ │ │ │ │ │ ├── DownloadView.kt │ │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ │ └── DownloadsListItemViewHolder.kt │ │ │ │ │ │ ├── history │ │ │ │ │ │ │ ├── HistoryAdapter.kt │ │ │ │ │ │ │ ├── HistoryDataSource.kt │ │ │ │ │ │ │ ├── HistoryFragment.kt │ │ │ │ │ │ │ ├── HistoryFragmentStore.kt │ │ │ │ │ │ │ ├── HistoryItemTimeGroup.kt │ │ │ │ │ │ │ ├── HistoryView.kt │ │ │ │ │ │ │ ├── PendingDeletionHistory.kt │ │ │ │ │ │ │ ├── RemoveTimeFrame.kt │ │ │ │ │ │ │ ├── state │ │ │ │ │ │ │ │ ├── HistoryNavigationMiddleware.kt │ │ │ │ │ │ │ │ ├── HistoryStorageMiddleware.kt │ │ │ │ │ │ │ │ ├── HistorySyncMiddleware.kt │ │ │ │ │ │ │ │ ├── HistoryTelemetryMiddleware.kt │ │ │ │ │ │ │ │ └── bindings │ │ │ │ │ │ │ │ │ ├── MenuBinding.kt │ │ │ │ │ │ │ │ │ └── PendingDeletionBinding.kt │ │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ │ └── HistoryListItemViewHolder.kt │ │ │ │ │ │ ├── historymetadata │ │ │ │ │ │ │ ├── HistoryMetadataGroupFragment.kt │ │ │ │ │ │ │ ├── HistoryMetadataGroupFragmentStore.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ └── HistoryMetadataGroupController.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ └── HistoryMetadataGroupInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── HistoryMetadataGroupAdapter.kt │ │ │ │ │ │ │ │ ├── HistoryMetadataGroupItemViewHolder.kt │ │ │ │ │ │ │ │ └── HistoryMetadataGroupView.kt │ │ │ │ │ │ └── recentlyclosed │ │ │ │ │ │ │ ├── RecentlyClosedAdapter.kt │ │ │ │ │ │ │ ├── RecentlyClosedController.kt │ │ │ │ │ │ │ ├── RecentlyClosedFragment.kt │ │ │ │ │ │ │ ├── RecentlyClosedFragmentInteractor.kt │ │ │ │ │ │ │ ├── RecentlyClosedFragmentStore.kt │ │ │ │ │ │ │ ├── RecentlyClosedFragmentView.kt │ │ │ │ │ │ │ └── RecentlyClosedItemViewHolder.kt │ │ │ │ │ ├── lifecycle │ │ │ │ │ │ └── StoreLifecycleObserver.kt │ │ │ │ │ ├── media │ │ │ │ │ │ └── MediaSessionService.kt │ │ │ │ │ ├── messaging │ │ │ │ │ │ ├── CustomAttributeProvider.kt │ │ │ │ │ │ ├── DefaultMessageController.kt │ │ │ │ │ │ ├── FenixMessageSurfaceId.kt │ │ │ │ │ │ ├── MessageController.kt │ │ │ │ │ │ ├── MessageNotificationWorker.kt │ │ │ │ │ │ ├── MessagingFeature.kt │ │ │ │ │ │ ├── MessagingState.kt │ │ │ │ │ │ └── state │ │ │ │ │ │ │ ├── MessagingMiddleware.kt │ │ │ │ │ │ │ └── MessagingReducer.kt │ │ │ │ │ ├── nimbus │ │ │ │ │ │ ├── NimbusBranchesFragment.kt │ │ │ │ │ │ ├── NimbusBranchesStore.kt │ │ │ │ │ │ ├── NimbusExperimentsFragment.kt │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ └── NimbusBranchesController.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ │ ├── NimbusBranchesView.kt │ │ │ │ │ │ │ └── NimbusExperiments.kt │ │ │ │ │ ├── onboarding │ │ │ │ │ │ ├── FenixOnboarding.kt │ │ │ │ │ │ ├── HomeCFRPresenter.kt │ │ │ │ │ │ ├── HomeOnboardingDialogFragment.kt │ │ │ │ │ │ ├── MarketingNotificationHelper.kt │ │ │ │ │ │ ├── OnboardingFragment.kt │ │ │ │ │ │ ├── OnboardingTelemetryRecorder.kt │ │ │ │ │ │ ├── ReEngagementNotificationWorker.kt │ │ │ │ │ │ ├── WallpaperOnboardingDialogFragment.kt │ │ │ │ │ │ ├── WidgetPinnedReceiver.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ │ ├── OnboardingMapper.kt │ │ │ │ │ │ │ ├── OnboardingPage.kt │ │ │ │ │ │ │ ├── OnboardingPageState.kt │ │ │ │ │ │ │ ├── OnboardingPageUiData.kt │ │ │ │ │ │ │ ├── OnboardingScreen.kt │ │ │ │ │ │ │ └── UpgradeOnboarding.kt │ │ │ │ │ ├── perf │ │ │ │ │ │ ├── AppStartReasonProvider.kt │ │ │ │ │ │ ├── ApplicationInitTimeContainer.kt │ │ │ │ │ │ ├── ColdStartupDurationTelemetry.kt │ │ │ │ │ │ ├── HomeActivityRootLinearLayout.kt │ │ │ │ │ │ ├── LazyMonitored.kt │ │ │ │ │ │ ├── MarkersActivityLifecycleCallbacks.kt │ │ │ │ │ │ ├── MarkersFragmentLifecycleCallbacks.kt │ │ │ │ │ │ ├── Performance.kt │ │ │ │ │ │ ├── PerformanceInflater.kt │ │ │ │ │ │ ├── ProfilerMarkerFactProcessor.kt │ │ │ │ │ │ ├── ProfilerMarkers.kt │ │ │ │ │ │ ├── ProfilerReusableComposable.kt │ │ │ │ │ │ ├── ProfilerStartDialogFragment.kt │ │ │ │ │ │ ├── ProfilerStopDialogFragment.kt │ │ │ │ │ │ ├── ProfilerUtils.kt │ │ │ │ │ │ ├── ProfilerViewModel.kt │ │ │ │ │ │ ├── RunBlockingCounter.kt │ │ │ │ │ │ ├── SearchDialogFragmentConstraintLayout.kt │ │ │ │ │ │ ├── StartupActivityLog.kt │ │ │ │ │ │ ├── StartupPathProvider.kt │ │ │ │ │ │ ├── StartupReportFullyDrawn.kt │ │ │ │ │ │ ├── StartupStateProvider.kt │ │ │ │ │ │ ├── StartupTimeline.kt │ │ │ │ │ │ ├── StartupTimelineStateMachine.kt │ │ │ │ │ │ ├── StartupTypeTelemetry.kt │ │ │ │ │ │ ├── StorageStatsMetrics.kt │ │ │ │ │ │ ├── StrictModeManager.kt │ │ │ │ │ │ ├── ThreadPenaltyDeathWithIgnoresListener.kt │ │ │ │ │ │ └── VisualCompletenessQueue.kt │ │ │ │ │ ├── push │ │ │ │ │ │ ├── FirebasePushService.kt │ │ │ │ │ │ ├── PushFxaIntegration.kt │ │ │ │ │ │ └── WebPushEngineIntegration.kt │ │ │ │ │ ├── search │ │ │ │ │ │ ├── SearchDialogController.kt │ │ │ │ │ │ ├── SearchDialogFragment.kt │ │ │ │ │ │ ├── SearchDialogInteractor.kt │ │ │ │ │ │ ├── SearchFragmentStore.kt │ │ │ │ │ │ ├── awesomebar │ │ │ │ │ │ │ ├── AwesomeBarInteractor.kt │ │ │ │ │ │ │ ├── AwesomeBarView.kt │ │ │ │ │ │ │ ├── AwesomeBarWrapper.kt │ │ │ │ │ │ │ └── ShortcutsSuggestionProvider.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ │ └── SearchEngine.kt │ │ │ │ │ │ └── toolbar │ │ │ │ │ │ │ ├── IncreasedTapAreaActionDecorator.kt │ │ │ │ │ │ │ ├── SearchSelector.kt │ │ │ │ │ │ │ ├── SearchSelectorController.kt │ │ │ │ │ │ │ ├── SearchSelectorInteractor.kt │ │ │ │ │ │ │ ├── SearchSelectorMenu.kt │ │ │ │ │ │ │ ├── SearchSelectorToolbarAction.kt │ │ │ │ │ │ │ └── ToolbarView.kt │ │ │ │ │ ├── selection │ │ │ │ │ │ ├── SelectionHolder.kt │ │ │ │ │ │ └── SelectionInteractor.kt │ │ │ │ │ ├── session │ │ │ │ │ │ ├── PerformanceActivityLifecycleCallbacks.kt │ │ │ │ │ │ ├── PrivateNotificationService.kt │ │ │ │ │ │ └── VisibilityLifecycleCallback.kt │ │ │ │ │ ├── settings │ │ │ │ │ │ ├── AccessibilityFragment.kt │ │ │ │ │ │ ├── CustomEtpCookiesOptionsDropDownListPreference.kt │ │ │ │ │ │ ├── CustomizationFragment.kt │ │ │ │ │ │ ├── DataChoicesFragment.kt │ │ │ │ │ │ ├── DefaultBrowserPreference.kt │ │ │ │ │ │ ├── DropDownListPreference.kt │ │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ │ ├── FenixSwitchPreference.kt │ │ │ │ │ │ ├── HomeSettingsFragment.kt │ │ │ │ │ │ ├── HttpsOnlyFragment.kt │ │ │ │ │ │ ├── OnSharedPreferenceChangeListener.kt │ │ │ │ │ │ ├── OpenLinksInAppsFragment.kt │ │ │ │ │ │ ├── PairFragment.kt │ │ │ │ │ │ ├── PhoneFeature.kt │ │ │ │ │ │ ├── PreferenceBackedRadioButton.kt │ │ │ │ │ │ ├── PrivateBrowsingFragment.kt │ │ │ │ │ │ ├── RadioButtonInfoPreference.kt │ │ │ │ │ │ ├── RadioButtonPreference.kt │ │ │ │ │ │ ├── SecretDebugSettingsFragment.kt │ │ │ │ │ │ ├── SecretSettingsFragment.kt │ │ │ │ │ │ ├── SettingsFragment.kt │ │ │ │ │ │ ├── SharedPreferenceUpdater.kt │ │ │ │ │ │ ├── SponsoredStoriesSettingsFragment.kt │ │ │ │ │ │ ├── StringSharedPreferenceUpdater.kt │ │ │ │ │ │ ├── SupportUtils.kt │ │ │ │ │ │ ├── SyncDebugFragment.kt │ │ │ │ │ │ ├── SyncPreference.kt │ │ │ │ │ │ ├── SyncPreferenceView.kt │ │ │ │ │ │ ├── TabsSettingsFragment.kt │ │ │ │ │ │ ├── TextPercentageSeekBarPreference.kt │ │ │ │ │ │ ├── TrackingProtectionFragment.kt │ │ │ │ │ │ ├── about │ │ │ │ │ │ │ ├── AboutFragment.kt │ │ │ │ │ │ │ ├── AboutItem.kt │ │ │ │ │ │ │ ├── AboutLibrariesFragment.kt │ │ │ │ │ │ │ ├── AboutPageAdapter.kt │ │ │ │ │ │ │ ├── SecretDebugMenuTrigger.kt │ │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ │ └── AboutItemViewHolder.kt │ │ │ │ │ │ ├── account │ │ │ │ │ │ │ ├── AccountAuthErrorPreference.kt │ │ │ │ │ │ │ ├── AccountPreference.kt │ │ │ │ │ │ │ ├── AccountProblemFragment.kt │ │ │ │ │ │ │ ├── AccountSettingsFragment.kt │ │ │ │ │ │ │ ├── AccountSettingsFragmentStore.kt │ │ │ │ │ │ │ ├── AccountSettingsInteractor.kt │ │ │ │ │ │ │ ├── AccountUiView.kt │ │ │ │ │ │ │ ├── AuthCustomTabActivity.kt │ │ │ │ │ │ │ ├── AuthIntentReceiverActivity.kt │ │ │ │ │ │ │ ├── DefaultSyncController.kt │ │ │ │ │ │ │ ├── DefaultSyncInteractor.kt │ │ │ │ │ │ │ ├── SignOutFragment.kt │ │ │ │ │ │ │ └── TurnOnSyncFragment.kt │ │ │ │ │ │ ├── address │ │ │ │ │ │ │ ├── AddressEditorFragment.kt │ │ │ │ │ │ │ ├── AddressManagementFragment.kt │ │ │ │ │ │ │ ├── AddressUtils.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ ├── AddressEditorController.kt │ │ │ │ │ │ │ │ └── AddressManagementController.kt │ │ │ │ │ │ │ ├── ext │ │ │ │ │ │ │ │ └── Address.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ ├── AddressEditorInteractor.kt │ │ │ │ │ │ │ │ └── AddressManagementInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── AddressEditorView.kt │ │ │ │ │ │ │ │ └── AddressList.kt │ │ │ │ │ │ ├── advanced │ │ │ │ │ │ │ ├── DefaultLocaleSettingsController.kt │ │ │ │ │ │ │ ├── LocaleAdapter.kt │ │ │ │ │ │ │ ├── LocaleManagerExtension.kt │ │ │ │ │ │ │ ├── LocaleSettingsFragment.kt │ │ │ │ │ │ │ ├── LocaleSettingsInteractor.kt │ │ │ │ │ │ │ ├── LocaleSettingsStore.kt │ │ │ │ │ │ │ ├── LocaleSettingsView.kt │ │ │ │ │ │ │ └── LocaleViewHolders.kt │ │ │ │ │ │ ├── autofill │ │ │ │ │ │ │ ├── AutofillFragmentStore.kt │ │ │ │ │ │ │ └── AutofillSettingFragment.kt │ │ │ │ │ │ ├── biometric │ │ │ │ │ │ │ ├── BiometricPromptFeature.kt │ │ │ │ │ │ │ ├── BiometricPromptPreferenceFragment.kt │ │ │ │ │ │ │ └── ext │ │ │ │ │ │ │ │ └── BiometricManager.kt │ │ │ │ │ │ ├── cookiebannerhandling │ │ │ │ │ │ │ └── CustomCBHSwitchPreference.kt │ │ │ │ │ │ ├── creditcards │ │ │ │ │ │ │ ├── CreditCardEditorFragment.kt │ │ │ │ │ │ │ ├── CreditCardEditorState.kt │ │ │ │ │ │ │ ├── CreditCardsManagementFragment.kt │ │ │ │ │ │ │ ├── String.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ ├── CreditCardEditorController.kt │ │ │ │ │ │ │ │ └── CreditCardsManagementController.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ ├── CreditCardEditorInteractor.kt │ │ │ │ │ │ │ │ └── CreditCardsManagementInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── CreditCardEditorView.kt │ │ │ │ │ │ │ │ ├── CreditCardItemViewHolder.kt │ │ │ │ │ │ │ │ ├── CreditCardsAdapter.kt │ │ │ │ │ │ │ │ └── CreditCardsManagementView.kt │ │ │ │ │ │ ├── deletebrowsingdata │ │ │ │ │ │ │ ├── DeleteAndQuit.kt │ │ │ │ │ │ │ ├── DeleteBrowsingDataController.kt │ │ │ │ │ │ │ ├── DeleteBrowsingDataFragment.kt │ │ │ │ │ │ │ ├── DeleteBrowsingDataItem.kt │ │ │ │ │ │ │ ├── DeleteBrowsingDataOnQuitFragment.kt │ │ │ │ │ │ │ └── DeleteBrowsingDataOnQuitType.kt │ │ │ │ │ │ ├── logins │ │ │ │ │ │ │ ├── LoginsFragmentStore.kt │ │ │ │ │ │ │ ├── PasswordRevealHelper.kt │ │ │ │ │ │ │ ├── SavedLoginsSortingStrategyMenu.kt │ │ │ │ │ │ │ ├── SortingStrategy.kt │ │ │ │ │ │ │ ├── controller │ │ │ │ │ │ │ │ ├── LoginsListController.kt │ │ │ │ │ │ │ │ └── SavedLoginsStorageController.kt │ │ │ │ │ │ │ ├── fragment │ │ │ │ │ │ │ │ ├── AddLoginFragment.kt │ │ │ │ │ │ │ │ ├── EditLoginFragment.kt │ │ │ │ │ │ │ │ ├── LoginDetailFragment.kt │ │ │ │ │ │ │ │ ├── SavedLoginsAuthFragment.kt │ │ │ │ │ │ │ │ ├── SavedLoginsFragment.kt │ │ │ │ │ │ │ │ └── SavedLoginsSettingFragment.kt │ │ │ │ │ │ │ ├── interactor │ │ │ │ │ │ │ │ ├── AddLoginInteractor.kt │ │ │ │ │ │ │ │ ├── EditLoginInteractor.kt │ │ │ │ │ │ │ │ ├── LoginDetailInteractor.kt │ │ │ │ │ │ │ │ └── SavedLoginsInteractor.kt │ │ │ │ │ │ │ └── view │ │ │ │ │ │ │ │ ├── LoginDetailsBindingDelegate.kt │ │ │ │ │ │ │ │ ├── LoginsAdapter.kt │ │ │ │ │ │ │ │ ├── LoginsListViewHolder.kt │ │ │ │ │ │ │ │ └── SavedLoginsListView.kt │ │ │ │ │ │ ├── quicksettings │ │ │ │ │ │ │ ├── ClearSiteDataView.kt │ │ │ │ │ │ │ ├── ConnectionDetailsController.kt │ │ │ │ │ │ │ ├── ConnectionDetailsInteractor.kt │ │ │ │ │ │ │ ├── ConnectionDetailsView.kt │ │ │ │ │ │ │ ├── ConnectionPanelDialogFragment.kt │ │ │ │ │ │ │ ├── QuickSettingsController.kt │ │ │ │ │ │ │ ├── QuickSettingsFragmentAction.kt │ │ │ │ │ │ │ ├── QuickSettingsFragmentReducer.kt │ │ │ │ │ │ │ ├── QuickSettingsFragmentState.kt │ │ │ │ │ │ │ ├── QuickSettingsFragmentStore.kt │ │ │ │ │ │ │ ├── QuickSettingsInteractor.kt │ │ │ │ │ │ │ ├── QuickSettingsSheetDialogFragment.kt │ │ │ │ │ │ │ ├── WebSiteInfoInteractor.kt │ │ │ │ │ │ │ ├── WebsiteInfoView.kt │ │ │ │ │ │ │ ├── WebsitePermissionsView.kt │ │ │ │ │ │ │ ├── ext │ │ │ │ │ │ │ │ └── PhoneFeatureExt.kt │ │ │ │ │ │ │ └── protections │ │ │ │ │ │ │ │ ├── ProtectionsInteractor.kt │ │ │ │ │ │ │ │ ├── ProtectionsView.kt │ │ │ │ │ │ │ │ └── cookiebanners │ │ │ │ │ │ │ │ ├── CookieBannerDetailsController.kt │ │ │ │ │ │ │ │ ├── CookieBannerDetailsInteractor.kt │ │ │ │ │ │ │ │ ├── CookieBannerHandlingDetailsView.kt │ │ │ │ │ │ │ │ ├── CookieBannerPanelDialogFragment.kt │ │ │ │ │ │ │ │ └── CookieBannersStorageExt.kt │ │ │ │ │ │ ├── search │ │ │ │ │ │ │ ├── DefaultSearchEngineFragment.kt │ │ │ │ │ │ │ ├── RadioSearchEngineListPreference.kt │ │ │ │ │ │ │ ├── SaveSearchEngineFragment.kt │ │ │ │ │ │ │ ├── SearchEngineFragment.kt │ │ │ │ │ │ │ ├── SearchEngineMenu.kt │ │ │ │ │ │ │ ├── SearchEngineShortcuts.kt │ │ │ │ │ │ │ ├── SearchShortcutsFragment.kt │ │ │ │ │ │ │ └── SearchStringValidator.kt │ │ │ │ │ │ ├── sitepermissions │ │ │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ │ │ ├── SitePermissionsDetailsExceptionsFragment.kt │ │ │ │ │ │ │ ├── SitePermissionsExceptionsFragment.kt │ │ │ │ │ │ │ ├── SitePermissionsFragment.kt │ │ │ │ │ │ │ ├── SitePermissionsManageExceptionsPhoneFeatureFragment.kt │ │ │ │ │ │ │ └── SitePermissionsManagePhoneFeatureFragment.kt │ │ │ │ │ │ ├── studies │ │ │ │ │ │ │ ├── CustomViewHolder.kt │ │ │ │ │ │ │ ├── StudiesAdapter.kt │ │ │ │ │ │ │ ├── StudiesAdapterDelegate.kt │ │ │ │ │ │ │ ├── StudiesFragment.kt │ │ │ │ │ │ │ ├── StudiesInteractor.kt │ │ │ │ │ │ │ └── StudiesView.kt │ │ │ │ │ │ └── wallpaper │ │ │ │ │ │ │ ├── Extensions.kt │ │ │ │ │ │ │ ├── WallpaperSettings.kt │ │ │ │ │ │ │ └── WallpaperSettingsFragment.kt │ │ │ │ │ ├── share │ │ │ │ │ │ ├── AddNewDeviceFragment.kt │ │ │ │ │ │ ├── PrintItem.kt │ │ │ │ │ │ ├── SaveToPDFInteractor.kt │ │ │ │ │ │ ├── SaveToPDFItem.kt │ │ │ │ │ │ ├── SaveToPDFMiddleware.kt │ │ │ │ │ │ ├── ShareCloseView.kt │ │ │ │ │ │ ├── ShareController.kt │ │ │ │ │ │ ├── ShareFragment.kt │ │ │ │ │ │ ├── ShareInteractor.kt │ │ │ │ │ │ ├── ShareToAccountDevicesView.kt │ │ │ │ │ │ ├── ShareToAppsSafeExtras.kt │ │ │ │ │ │ ├── ShareToAppsView.kt │ │ │ │ │ │ ├── ShareViewModel.kt │ │ │ │ │ │ ├── listadapters │ │ │ │ │ │ │ ├── AccountDevicesAdapter.kt │ │ │ │ │ │ │ ├── AppShareAdapter.kt │ │ │ │ │ │ │ └── ShareTabsAdapter.kt │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ ├── AccountDeviceViewHolder.kt │ │ │ │ │ │ │ └── AppViewHolder.kt │ │ │ │ │ ├── shopping │ │ │ │ │ │ ├── ReviewQualityCheckBottomSheetStateFeature.kt │ │ │ │ │ │ ├── ReviewQualityCheckFeature.kt │ │ │ │ │ │ ├── ReviewQualityCheckFragment.kt │ │ │ │ │ │ ├── ShoppingExperienceFeature.kt │ │ │ │ │ │ ├── di │ │ │ │ │ │ │ └── ReviewQualityCheckMiddlewareProvider.kt │ │ │ │ │ │ ├── middleware │ │ │ │ │ │ │ ├── EnumMapper.kt │ │ │ │ │ │ │ ├── GetReviewQualityCheckSumoUrl.kt │ │ │ │ │ │ │ ├── NetworkChecker.kt │ │ │ │ │ │ │ ├── ProductAnalysisMapper.kt │ │ │ │ │ │ │ ├── ProductRecommendationMapper.kt │ │ │ │ │ │ │ ├── Retry.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckNavigationMiddleware.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckNetworkMiddleware.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckPreferences.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckPreferencesMiddleware.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckService.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckTelemetryMiddleware.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckTelemetryService.kt │ │ │ │ │ │ │ └── ReviewQualityCheckVendorsService.kt │ │ │ │ │ │ ├── store │ │ │ │ │ │ │ ├── BottomSheetViewState.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckAction.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckMiddleware.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckState.kt │ │ │ │ │ │ │ └── ReviewQualityCheckStore.kt │ │ │ │ │ │ └── ui │ │ │ │ │ │ │ ├── NoAnalysis.kt │ │ │ │ │ │ │ ├── ProductAnalysis.kt │ │ │ │ │ │ │ ├── ProductAnalysisError.kt │ │ │ │ │ │ │ ├── ProductReviewLoading.kt │ │ │ │ │ │ │ ├── ProgressIndicator.kt │ │ │ │ │ │ │ ├── ReviewGrade.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckBottomSheet.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckCards.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckContextualOnboarding.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckFooter.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckInfoCard.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckScaffold.kt │ │ │ │ │ │ │ ├── ReviewQualityCheckSettingsCard.kt │ │ │ │ │ │ │ ├── ReviewQualityInfoCard.kt │ │ │ │ │ │ │ ├── StarRating.kt │ │ │ │ │ │ │ └── ext │ │ │ │ │ │ │ ├── HeadingResource.kt │ │ │ │ │ │ │ └── ProductVendor.kt │ │ │ │ │ ├── shortcut │ │ │ │ │ │ ├── CreateShortcutFragment.kt │ │ │ │ │ │ ├── NewTabShortcutIntentProcessor.kt │ │ │ │ │ │ ├── PasswordManagerIntentProcessor.kt │ │ │ │ │ │ ├── PwaOnboardingDialogFragment.kt │ │ │ │ │ │ └── PwaOnboardingObserver.kt │ │ │ │ │ ├── sync │ │ │ │ │ │ └── SyncedTabsIntegration.kt │ │ │ │ │ ├── tabhistory │ │ │ │ │ │ ├── TabHistoryAdapter.kt │ │ │ │ │ │ ├── TabHistoryController.kt │ │ │ │ │ │ ├── TabHistoryDialogFragment.kt │ │ │ │ │ │ ├── TabHistoryInteractor.kt │ │ │ │ │ │ ├── TabHistoryView.kt │ │ │ │ │ │ └── TabHistoryViewHolder.kt │ │ │ │ │ ├── tabstray │ │ │ │ │ │ ├── CloseOnLastTabBinding.kt │ │ │ │ │ │ ├── FloatingActionButtonBinding.kt │ │ │ │ │ │ ├── MenuIntegration.kt │ │ │ │ │ │ ├── NavigationInteractor.kt │ │ │ │ │ │ ├── SecureTabsTrayBinding.kt │ │ │ │ │ │ ├── SyncedTabsController.kt │ │ │ │ │ │ ├── SyncedTabsInteractor.kt │ │ │ │ │ │ ├── TabCounterBinding.kt │ │ │ │ │ │ ├── TabLayoutMediator.kt │ │ │ │ │ │ ├── TabSheetBehaviorManager.kt │ │ │ │ │ │ ├── TabsTray.kt │ │ │ │ │ │ ├── TabsTrayBanner.kt │ │ │ │ │ │ ├── TabsTrayController.kt │ │ │ │ │ │ ├── TabsTrayDialog.kt │ │ │ │ │ │ ├── TabsTrayFab.kt │ │ │ │ │ │ ├── TabsTrayFragment.kt │ │ │ │ │ │ ├── TabsTrayInactiveTabsOnboardingBinding.kt │ │ │ │ │ │ ├── TabsTrayInfoBannerBinding.kt │ │ │ │ │ │ ├── TabsTrayInteractor.kt │ │ │ │ │ │ ├── TabsTrayMenu.kt │ │ │ │ │ │ ├── TabsTrayMiddleware.kt │ │ │ │ │ │ ├── TabsTrayStore.kt │ │ │ │ │ │ ├── TabsTrayTabLayouts.kt │ │ │ │ │ │ ├── TabsTrayTestTag.kt │ │ │ │ │ │ ├── TrayPagerAdapter.kt │ │ │ │ │ │ ├── browser │ │ │ │ │ │ │ ├── AbstractBrowserTabViewHolder.kt │ │ │ │ │ │ │ ├── AbstractBrowserTrayList.kt │ │ │ │ │ │ │ ├── BlankDragShadowBuilder.kt │ │ │ │ │ │ │ ├── BrowserTabViewHolder.kt │ │ │ │ │ │ │ ├── BrowserTabsAdapter.kt │ │ │ │ │ │ │ ├── DraggableItemAnimator.kt │ │ │ │ │ │ │ ├── FeatureNameHolder.kt │ │ │ │ │ │ │ ├── InactiveTabViewHolder.kt │ │ │ │ │ │ │ ├── InactiveTabsAdapter.kt │ │ │ │ │ │ │ ├── InactiveTabsController.kt │ │ │ │ │ │ │ ├── InactiveTabsInteractor.kt │ │ │ │ │ │ │ ├── NormalBrowserTrayList.kt │ │ │ │ │ │ │ ├── NormalTabsBinding.kt │ │ │ │ │ │ │ ├── PrivateBrowserTrayList.kt │ │ │ │ │ │ │ ├── PrivateTabsBinding.kt │ │ │ │ │ │ │ ├── SelectedItemAdapterBinding.kt │ │ │ │ │ │ │ ├── SelectionBannerBinding.kt │ │ │ │ │ │ │ ├── SelectionHandleBinding.kt │ │ │ │ │ │ │ ├── SelectionMenu.kt │ │ │ │ │ │ │ ├── SelectionMenuIntegration.kt │ │ │ │ │ │ │ ├── SwipeToDeleteBinding.kt │ │ │ │ │ │ │ ├── TabDragData.kt │ │ │ │ │ │ │ ├── TabSorter.kt │ │ │ │ │ │ │ ├── TabsAdapter.kt │ │ │ │ │ │ │ ├── TabsTouchHelper.kt │ │ │ │ │ │ │ ├── TabsTrayFabController.kt │ │ │ │ │ │ │ ├── TabsTrayFabInteractor.kt │ │ │ │ │ │ │ └── compose │ │ │ │ │ │ │ │ ├── ComposeAbstractTabViewHolder.kt │ │ │ │ │ │ │ │ ├── ComposeGridViewHolder.kt │ │ │ │ │ │ │ │ ├── ComposeListViewHolder.kt │ │ │ │ │ │ │ │ ├── ReorderableGrid.kt │ │ │ │ │ │ │ │ └── ReorderableList.kt │ │ │ │ │ │ ├── ext │ │ │ │ │ │ │ ├── BrowserMenu.kt │ │ │ │ │ │ │ ├── BrowserStore.kt │ │ │ │ │ │ │ ├── ConcatAdapter.kt │ │ │ │ │ │ │ ├── Context.kt │ │ │ │ │ │ │ ├── DownloadState.kt │ │ │ │ │ │ │ ├── FenixSnackbar.kt │ │ │ │ │ │ │ ├── Long.kt │ │ │ │ │ │ │ ├── RecyclerViewAdapter.kt │ │ │ │ │ │ │ ├── SyncedDeviceTabs.kt │ │ │ │ │ │ │ ├── SyncedTabsViewErrorType.kt │ │ │ │ │ │ │ ├── TabLayout.kt │ │ │ │ │ │ │ ├── TabSelectors.kt │ │ │ │ │ │ │ ├── TabSessionState.kt │ │ │ │ │ │ │ └── TabsTrayState.kt │ │ │ │ │ │ ├── inactivetabs │ │ │ │ │ │ │ └── InactiveTabs.kt │ │ │ │ │ │ ├── syncedtabs │ │ │ │ │ │ │ ├── SyncButtonBinding.kt │ │ │ │ │ │ │ ├── SyncedTabs.kt │ │ │ │ │ │ │ ├── SyncedTabsIntegration.kt │ │ │ │ │ │ │ └── SyncedTabsListItem.kt │ │ │ │ │ │ └── viewholders │ │ │ │ │ │ │ ├── AbstractBrowserPageViewHolder.kt │ │ │ │ │ │ │ ├── AbstractPageViewHolder.kt │ │ │ │ │ │ │ ├── NormalBrowserPageViewHolder.kt │ │ │ │ │ │ │ ├── PrivateBrowserPageViewHolder.kt │ │ │ │ │ │ │ └── SyncedTabsPageViewHolder.kt │ │ │ │ │ ├── telemetry │ │ │ │ │ │ └── TelemetryMiddleware.kt │ │ │ │ │ ├── theme │ │ │ │ │ │ ├── FenixTypography.kt │ │ │ │ │ │ ├── FirefoxTheme.kt │ │ │ │ │ │ └── ThemeManager.kt │ │ │ │ │ ├── trackingprotection │ │ │ │ │ │ ├── ProtectionsStore.kt │ │ │ │ │ │ ├── SwitchWithDescription.kt │ │ │ │ │ │ ├── TrackerBuckets.kt │ │ │ │ │ │ ├── TrackingProtectionBlockingFragment.kt │ │ │ │ │ │ ├── TrackingProtectionCategoryItem.kt │ │ │ │ │ │ ├── TrackingProtectionMode.kt │ │ │ │ │ │ ├── TrackingProtectionPanelDialogFragment.kt │ │ │ │ │ │ ├── TrackingProtectionPanelInteractor.kt │ │ │ │ │ │ └── TrackingProtectionPanelView.kt │ │ │ │ │ ├── translations │ │ │ │ │ │ ├── DownloadIndicator.kt │ │ │ │ │ │ ├── TranslationOptionsDialog.kt │ │ │ │ │ │ ├── TranslationSettings.kt │ │ │ │ │ │ ├── TranslationSettingsFragment.kt │ │ │ │ │ │ ├── TranslationSwitchItem.kt │ │ │ │ │ │ ├── TranslationsBottomSheet.kt │ │ │ │ │ │ ├── TranslationsDialogBinding.kt │ │ │ │ │ │ ├── TranslationsDialogBottomSheet.kt │ │ │ │ │ │ ├── TranslationsDialogFragment.kt │ │ │ │ │ │ ├── TranslationsDialogMiddleware.kt │ │ │ │ │ │ ├── TranslationsDialogStore.kt │ │ │ │ │ │ ├── TranslationsFlowState.kt │ │ │ │ │ │ └── preferences │ │ │ │ │ │ │ ├── automatic │ │ │ │ │ │ │ ├── AutomaticTranslationItemPreference.kt │ │ │ │ │ │ │ ├── AutomaticTranslationOptionsPreference.kt │ │ │ │ │ │ │ ├── AutomaticTranslationOptionsPreferenceFragment.kt │ │ │ │ │ │ │ ├── AutomaticTranslationPreference.kt │ │ │ │ │ │ │ └── AutomaticTranslationPreferenceFragment.kt │ │ │ │ │ │ │ ├── downloadlanguages │ │ │ │ │ │ │ ├── DeleteLanguageFileDialog.kt │ │ │ │ │ │ │ ├── DownloadLanguageFileDialog.kt │ │ │ │ │ │ │ ├── DownloadLanguageItemPreference.kt │ │ │ │ │ │ │ ├── DownloadLanguagesFeature.kt │ │ │ │ │ │ │ ├── DownloadLanguagesPreference.kt │ │ │ │ │ │ │ ├── DownloadLanguagesPreferenceFragment.kt │ │ │ │ │ │ │ └── LanguageDialogPreferenceFragment.kt │ │ │ │ │ │ │ └── nevertranslatesite │ │ │ │ │ │ │ ├── NeverTranslateSiteDialogPreference.kt │ │ │ │ │ │ │ ├── NeverTranslateSiteDialogPreferenceFragment.kt │ │ │ │ │ │ │ ├── NeverTranslateSiteListItemPreference.kt │ │ │ │ │ │ │ ├── NeverTranslateSitePreference.kt │ │ │ │ │ │ │ └── NeverTranslateSitePreferenceFragment.kt │ │ │ │ │ ├── utils │ │ │ │ │ │ ├── AccessibilityGridLayoutManager.kt │ │ │ │ │ │ ├── ClearableEditText.kt │ │ │ │ │ │ ├── ClipboardHandler.kt │ │ │ │ │ │ ├── Colors.kt │ │ │ │ │ │ ├── IntentUtils.kt │ │ │ │ │ │ ├── LinkTextView.kt │ │ │ │ │ │ ├── LocaleUtils.kt │ │ │ │ │ │ ├── NotificationBase.kt │ │ │ │ │ │ ├── OnWifiChanged.java │ │ │ │ │ │ ├── Settings.kt │ │ │ │ │ │ ├── ToolbarPopupWindow.kt │ │ │ │ │ │ ├── Undo.kt │ │ │ │ │ │ └── view │ │ │ │ │ │ │ ├── GroupableRadioButton.kt │ │ │ │ │ │ │ ├── LifecycleViewProvider.kt │ │ │ │ │ │ │ └── ViewHolder.kt │ │ │ │ │ ├── wallpapers │ │ │ │ │ │ ├── LegacyWallpaperMigration.kt │ │ │ │ │ │ ├── Wallpaper.kt │ │ │ │ │ │ ├── WallpaperDownloader.kt │ │ │ │ │ │ ├── WallpaperFileManager.kt │ │ │ │ │ │ ├── WallpaperMetadataFetcher.kt │ │ │ │ │ │ ├── WallpaperOnboarding.kt │ │ │ │ │ │ ├── WallpaperState.kt │ │ │ │ │ │ └── WallpapersUseCases.kt │ │ │ │ │ ├── whatsnew │ │ │ │ │ │ ├── WhatsNew.kt │ │ │ │ │ │ ├── WhatsNewStorage.kt │ │ │ │ │ │ └── WhatsNewVersion.kt │ │ │ │ │ ├── widget │ │ │ │ │ │ └── VoiceSearchActivity.kt │ │ │ │ │ └── wifi │ │ │ │ │ │ ├── SitePermissionsWifiIntegration.kt │ │ │ │ │ │ └── WifiConnectionMonitor.kt │ │ │ │ │ └── gecko │ │ │ │ │ └── search │ │ │ │ │ └── SearchWidgetProvider.kt │ │ │ ├── proto │ │ │ │ └── selected_pocket_stories_categories.proto │ │ │ └── res │ │ │ │ ├── anim │ │ │ │ ├── fade_in.xml │ │ │ │ ├── fade_in_up.xml │ │ │ │ ├── fade_out.xml │ │ │ │ ├── fade_out_down.xml │ │ │ │ ├── slide_in_left.xml │ │ │ │ ├── slide_in_right.xml │ │ │ │ ├── slide_out_left.xml │ │ │ │ └── slide_out_right.xml │ │ │ │ ├── color │ │ │ │ ├── pager_dot.xml │ │ │ │ ├── readerview_private_button_color.xml │ │ │ │ ├── readerview_private_radio_color.xml │ │ │ │ ├── save_enabled_ic_color.xml │ │ │ │ ├── saved_login_clear_edit_text_tint.xml │ │ │ │ ├── secondary_state_list_text_color.xml │ │ │ │ ├── state_list_text_color.xml │ │ │ │ ├── tab_checkbox_tint.xml │ │ │ │ ├── tab_icon.xml │ │ │ │ └── text_on_color_state_list_text_color.xml │ │ │ │ ├── drawable-hdpi │ │ │ │ ├── fenix_error_1.webp │ │ │ │ ├── fenix_search_widget.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ ├── ic_logo_wordmark_private.webp │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-mdpi │ │ │ │ ├── fenix_error_1.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ ├── ic_logo_wordmark_private.webp │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-night-hdpi │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-night-mdpi │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-night-xhdpi │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-night-xxhdpi │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-night-xxxhdpi │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-night │ │ │ │ ├── ic_logo_wordmark_normal.xml │ │ │ │ └── onboarding_ctd_default_browser.xml │ │ │ │ ├── drawable-v23 │ │ │ │ └── splash_screen.xml │ │ │ │ ├── drawable-v26 │ │ │ │ ├── ic_launcher_private_background.xml │ │ │ │ ├── ic_launcher_private_foreground.xml │ │ │ │ ├── ic_static_password_shortcut.xml │ │ │ │ ├── ic_static_shortcut_private_tab.xml │ │ │ │ └── ic_static_shortcut_tab.xml │ │ │ │ ├── drawable-xhdpi │ │ │ │ ├── fenix_error_1.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ ├── ic_logo_wordmark_private.webp │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── fenix_error_1.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ ├── ic_logo_wordmark_private.webp │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable-xxxhdpi │ │ │ │ ├── fenix_error_1.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ ├── ic_logo_wordmark_private.webp │ │ │ │ ├── shopping_no_analysis.webp │ │ │ │ └── shopping_onboarding.webp │ │ │ │ ├── drawable │ │ │ │ ├── add_tabs_to_collection_background.xml │ │ │ │ ├── animated_splash_screen.xml │ │ │ │ ├── bottom_sheet_dialog_fragment_background.xml │ │ │ │ ├── button_background.xml │ │ │ │ ├── crash_reporter_button.xml │ │ │ │ ├── device_background.xml │ │ │ │ ├── dialog_background.xml │ │ │ │ ├── download_dialog_download_button_background.xml │ │ │ │ ├── empty_session_control_background.xml │ │ │ │ ├── etp_spinner_item_background.xml │ │ │ │ ├── favicon_background.xml │ │ │ │ ├── felt_private_home_background_gradient.xml │ │ │ │ ├── fenix_snackbar_background.xml │ │ │ │ ├── fenix_snackbar_error_background.xml │ │ │ │ ├── home_bottom_bar_background.xml │ │ │ │ ├── home_bottom_bar_background_top.xml │ │ │ │ ├── home_search_background.xml │ │ │ │ ├── ic_account.xml │ │ │ │ ├── ic_account_warning.xml │ │ │ │ ├── ic_add_on_private_browsing_label.xml │ │ │ │ ├── ic_addons_extensions.xml │ │ │ │ ├── ic_arrowhead_right.xml │ │ │ │ ├── ic_autoplay.xml │ │ │ │ ├── ic_autoplay_disabled.xml │ │ │ │ ├── ic_autoplay_enabled.xml │ │ │ │ ├── ic_back_button.xml │ │ │ │ ├── ic_baidu.webp │ │ │ │ ├── ic_bookmark_filled.xml │ │ │ │ ├── ic_bookmark_list.xml │ │ │ │ ├── ic_bookmark_outline.xml │ │ │ │ ├── ic_bookmarks_menu.xml │ │ │ │ ├── ic_bookmarks_search.xml │ │ │ │ ├── ic_camera.xml │ │ │ │ ├── ic_camera_disabled.xml │ │ │ │ ├── ic_camera_enabled.xml │ │ │ │ ├── ic_cfr_triangle.xml │ │ │ │ ├── ic_chevron.xml │ │ │ │ ├── ic_chevron_down.xml │ │ │ │ ├── ic_chevron_down_6.xml │ │ │ │ ├── ic_chevron_up.xml │ │ │ │ ├── ic_close.xml │ │ │ │ ├── ic_cookies.xml │ │ │ │ ├── ic_cookies_disabled.xml │ │ │ │ ├── ic_cookies_enabled.xml │ │ │ │ ├── ic_copy.xml │ │ │ │ ├── ic_customize.xml │ │ │ │ ├── ic_debug_transparent_fire_24.xml │ │ │ │ ├── ic_delete.xml │ │ │ │ ├── ic_desktop.xml │ │ │ │ ├── ic_download.xml │ │ │ │ ├── ic_edit.xml │ │ │ │ ├── ic_etp_artwork.xml │ │ │ │ ├── ic_fab_sync.xml │ │ │ │ ├── ic_file_type_apk.xml │ │ │ │ ├── ic_file_type_audio_note.xml │ │ │ │ ├── ic_file_type_default.xml │ │ │ │ ├── ic_file_type_document.xml │ │ │ │ ├── ic_file_type_image.xml │ │ │ │ ├── ic_file_type_video.xml │ │ │ │ ├── ic_file_type_zip.xml │ │ │ │ ├── ic_firefox.xml │ │ │ │ ├── ic_folder_icon.xml │ │ │ │ ├── ic_folder_new.xml │ │ │ │ ├── ic_fx_accounts_avatar.xml │ │ │ │ ├── ic_history.xml │ │ │ │ ├── ic_history_search.xml │ │ │ │ ├── ic_info.xml │ │ │ │ ├── ic_internet.xml │ │ │ │ ├── ic_jd.webp │ │ │ │ ├── ic_launcher_foreground.xml │ │ │ │ ├── ic_launcher_monochrome.xml │ │ │ │ ├── ic_link.xml │ │ │ │ ├── ic_link_disabled.xml │ │ │ │ ├── ic_link_enabled.xml │ │ │ │ ├── ic_location.xml │ │ │ │ ├── ic_location_disabled.xml │ │ │ │ ├── ic_location_enabled.xml │ │ │ │ ├── ic_lock.xml │ │ │ │ ├── ic_meituan.webp │ │ │ │ ├── ic_menu.xml │ │ │ │ ├── ic_microphone.xml │ │ │ │ ├── ic_microphone_disabled.xml │ │ │ │ ├── ic_microphone_enabled.xml │ │ │ │ ├── ic_multiple_tabs.xml │ │ │ │ ├── ic_new.xml │ │ │ │ ├── ic_new_pin.xml │ │ │ │ ├── ic_notification_permission.xml │ │ │ │ ├── ic_notifications.xml │ │ │ │ ├── ic_notifications_disabled.xml │ │ │ │ ├── ic_notifications_enabled.xml │ │ │ │ ├── ic_onboarding_key_features.xml │ │ │ │ ├── ic_onboarding_key_features_icons_only.xml │ │ │ │ ├── ic_onboarding_search_widget.xml │ │ │ │ ├── ic_onboarding_sync.xml │ │ │ │ ├── ic_onboarding_welcome.xml │ │ │ │ ├── ic_open_in_app.xml │ │ │ │ ├── ic_open_in_new.xml │ │ │ │ ├── ic_open_in_regular_tab.xml │ │ │ │ ├── ic_pdd.webp │ │ │ │ ├── ic_permission.xml │ │ │ │ ├── ic_pocket.xml │ │ │ │ ├── ic_print.xml │ │ │ │ ├── ic_private_browsing.xml │ │ │ │ ├── ic_qr.xml │ │ │ │ ├── ic_readermode.xml │ │ │ │ ├── ic_readermode_appearance.xml │ │ │ │ ├── ic_readermode_selected.xml │ │ │ │ ├── ic_scan.xml │ │ │ │ ├── ic_search.xml │ │ │ │ ├── ic_search_results_bookmarks.xml │ │ │ │ ├── ic_search_results_device_desktop.xml │ │ │ │ ├── ic_search_results_device_mobile.xml │ │ │ │ ├── ic_search_results_device_tablet.xml │ │ │ │ ├── ic_search_results_tab.xml │ │ │ │ ├── ic_search_with.xml │ │ │ │ ├── ic_share.xml │ │ │ │ ├── ic_share_clipboard.xml │ │ │ │ ├── ic_shopping_selected.xml │ │ │ │ ├── ic_sign_in.xml │ │ │ │ ├── ic_signed_out.xml │ │ │ │ ├── ic_static_lock.xml │ │ │ │ ├── ic_static_password_shortcut.xml │ │ │ │ ├── ic_static_shortcut_background.xml │ │ │ │ ├── ic_static_shortcut_private_tab.xml │ │ │ │ ├── ic_static_shortcut_private_tab_foreground.xml │ │ │ │ ├── ic_static_shortcut_tab.xml │ │ │ │ ├── ic_static_shortcut_tab_foreground.xml │ │ │ │ ├── ic_status_logo.xml │ │ │ │ ├── ic_storage.xml │ │ │ │ ├── ic_storage_disabled.xml │ │ │ │ ├── ic_storage_enabled.xml │ │ │ │ ├── ic_sync_disconnected.xml │ │ │ │ ├── ic_synced_tabs.xml │ │ │ │ ├── ic_tab_collection.xml │ │ │ │ ├── ic_tabs_search.xml │ │ │ │ ├── ic_tc.webp │ │ │ │ ├── ic_top_sites.xml │ │ │ │ ├── ic_tracking_protection_disabled.xml │ │ │ │ ├── ic_tracking_protection_enabled.xml │ │ │ │ ├── ic_whats_new.xml │ │ │ │ ├── ic_wordmark_logo.webp │ │ │ │ ├── ic_wordmark_text_normal.webp │ │ │ │ ├── ic_wordmark_text_private.webp │ │ │ │ ├── media_state_background.xml │ │ │ │ ├── media_state_pause.xml │ │ │ │ ├── media_state_play.xml │ │ │ │ ├── mozac_ic_broken_lock.xml │ │ │ │ ├── mozac_ic_extensions_black.xml │ │ │ │ ├── mozac_ic_warning_with_bottom_padding.xml │ │ │ │ ├── onboarding_ctd_default_browser.xml │ │ │ │ ├── onboarding_ctd_notification.xml │ │ │ │ ├── onboarding_ctd_sync.xml │ │ │ │ ├── onboarding_popup_shape.xml │ │ │ │ ├── pager_dot.xml │ │ │ │ ├── pocket_vector.xml │ │ │ │ ├── private_home_background_gradient.xml │ │ │ │ ├── private_home_bottom_bar_background_gradient.xml │ │ │ │ ├── private_home_bottom_bar_background_gradient_top.xml │ │ │ │ ├── progress_gradient.xml │ │ │ │ ├── recent_apps_background.xml │ │ │ │ ├── ripple_button.xml │ │ │ │ ├── ripple_button_dark.xml │ │ │ │ ├── rounded_all_corners.xml │ │ │ │ ├── rounded_grey_corners_transparent_center.xml │ │ │ │ ├── rounded_ripple.xml │ │ │ │ ├── rounded_search_widget_background.xml │ │ │ │ ├── search_old_url_background.xml │ │ │ │ ├── search_url_background.xml │ │ │ │ ├── sign_in_preference_background.xml │ │ │ │ ├── simple_dark_grey_gradient.xml │ │ │ │ ├── standard_snackbar_error_background.xml │ │ │ │ ├── swipe_delete_background.xml │ │ │ │ ├── tab_tray_grid_item_selected_border.xml │ │ │ │ ├── toolbar_background.xml │ │ │ │ └── toolbar_background_top.xml │ │ │ │ ├── layout │ │ │ │ ├── about_list_item.xml │ │ │ │ ├── account_auth_error_preference.xml │ │ │ │ ├── account_preference.xml │ │ │ │ ├── account_share_list_item.xml │ │ │ │ ├── activity_home.xml │ │ │ │ ├── activity_privacy_content_display.xml │ │ │ │ ├── add_new_collection_dialog.xml │ │ │ │ ├── amo_collection_override_dialog.xml │ │ │ │ ├── app_share_list_item.xml │ │ │ │ ├── bookmark_list_item.xml │ │ │ │ ├── bottom_spacer.xml │ │ │ │ ├── browser_toolbar_popup_window.xml │ │ │ │ ├── checkbox_item.xml │ │ │ │ ├── checkbox_left_preference.xml │ │ │ │ ├── checkbox_left_preference_etp.xml │ │ │ │ ├── checkbox_left_sub_preference.xml │ │ │ │ ├── collection_dialog_list_item.xml │ │ │ │ ├── collection_tab_list_row.xml │ │ │ │ ├── collections_list_item.xml │ │ │ │ ├── component_bookmark.xml │ │ │ │ ├── component_bottom_browser_toolbar.xml │ │ │ │ ├── component_browser_top_toolbar.xml │ │ │ │ ├── component_collection_creation.xml │ │ │ │ ├── component_collection_creation_name_collection.xml │ │ │ │ ├── component_collection_creation_select_collection.xml │ │ │ │ ├── component_cookie_banner_details_panel.xml │ │ │ │ ├── component_credit_cards.xml │ │ │ │ ├── component_downloads.xml │ │ │ │ ├── component_exceptions.xml │ │ │ │ ├── component_history.xml │ │ │ │ ├── component_history_metadata_group.xml │ │ │ │ ├── component_locale_settings.xml │ │ │ │ ├── component_permissions_blocked_by_android.xml │ │ │ │ ├── component_recently_closed.xml │ │ │ │ ├── component_saved_logins.xml │ │ │ │ ├── component_tabhistory.xml │ │ │ │ ├── component_tabstray2.xml │ │ │ │ ├── component_tabstray3.xml │ │ │ │ ├── component_tabstray3_fab.xml │ │ │ │ ├── component_tabstray_fab.xml │ │ │ │ ├── component_top_sites.xml │ │ │ │ ├── component_top_sites_pager.xml │ │ │ │ ├── component_tracking_protection_panel.xml │ │ │ │ ├── connection_details_website_info.xml │ │ │ │ ├── crash_extension_dialog.xml │ │ │ │ ├── credit_card_list_item.xml │ │ │ │ ├── delete_browsing_data_item.xml │ │ │ │ ├── delete_exceptions_button.xml │ │ │ │ ├── delete_history_time_range_dialog.xml │ │ │ │ ├── delete_logins_exceptions_button.xml │ │ │ │ ├── dialog_scrim.xml │ │ │ │ ├── download_dialog_layout.xml │ │ │ │ ├── download_list_item.xml │ │ │ │ ├── dropdown_preference_etp.xml │ │ │ │ ├── etp_dropdown_item.xml │ │ │ │ ├── exception_item.xml │ │ │ │ ├── exceptions_description.xml │ │ │ │ ├── fenix_snackbar.xml │ │ │ │ ├── fragment_about.xml │ │ │ │ ├── fragment_about_libraries.xml │ │ │ │ ├── fragment_add_login.xml │ │ │ │ ├── fragment_add_new_device.xml │ │ │ │ ├── fragment_add_on_details.xml │ │ │ │ ├── fragment_add_on_internal_settings.xml │ │ │ │ ├── fragment_add_on_permissions.xml │ │ │ │ ├── fragment_add_ons_management.xml │ │ │ │ ├── fragment_address_editor.xml │ │ │ │ ├── fragment_bookmark.xml │ │ │ │ ├── fragment_browser.xml │ │ │ │ ├── fragment_connection_details_dialog.xml │ │ │ │ ├── fragment_cookie_banner_handling_details_dialog.xml │ │ │ │ ├── fragment_create_collection.xml │ │ │ │ ├── fragment_create_shortcut.xml │ │ │ │ ├── fragment_credit_card_editor.xml │ │ │ │ ├── fragment_delete_browsing_data.xml │ │ │ │ ├── fragment_downloads.xml │ │ │ │ ├── fragment_edit_bookmark.xml │ │ │ │ ├── fragment_edit_login.xml │ │ │ │ ├── fragment_exceptions.xml │ │ │ │ ├── fragment_history.xml │ │ │ │ ├── fragment_history_metadata_group.xml │ │ │ │ ├── fragment_home.xml │ │ │ │ ├── fragment_installed_add_on_details.xml │ │ │ │ ├── fragment_locale_settings.xml │ │ │ │ ├── fragment_login_detail.xml │ │ │ │ ├── fragment_manage_site_permissions_exceptions_feature_phone.xml │ │ │ │ ├── fragment_manage_site_permissions_feature_phone.xml │ │ │ │ ├── fragment_not_yet_supported_addons.xml │ │ │ │ ├── fragment_pair.xml │ │ │ │ ├── fragment_pwa_onboarding.xml │ │ │ │ ├── fragment_quick_settings_dialog_sheet.xml │ │ │ │ ├── fragment_recently_closed_tabs.xml │ │ │ │ ├── fragment_save_search_engine.xml │ │ │ │ ├── fragment_saved_logins.xml │ │ │ │ ├── fragment_search_dialog.xml │ │ │ │ ├── fragment_search_shortcuts.xml │ │ │ │ ├── fragment_select_bookmark_folder.xml │ │ │ │ ├── fragment_share.xml │ │ │ │ ├── fragment_sign_out.xml │ │ │ │ ├── fragment_site_permissions_exceptions.xml │ │ │ │ ├── fragment_site_permissions_exceptions_item.xml │ │ │ │ ├── fragment_tab_history_dialog.xml │ │ │ │ ├── fragment_tab_tray_dialog.xml │ │ │ │ ├── fragment_tracking_protection.xml │ │ │ │ ├── fragment_tracking_protection_blocking.xml │ │ │ │ ├── fragment_turn_on_sync.xml │ │ │ │ ├── full_screen_notification_dialog.xml │ │ │ │ ├── history_list_item.xml │ │ │ │ ├── history_metadata_group_list_item.xml │ │ │ │ ├── info_banner.xml │ │ │ │ ├── layout_add_credit_card.xml │ │ │ │ ├── layout_add_login.xml │ │ │ │ ├── layout_clear_permission_button.xml │ │ │ │ ├── layout_percentage_seek_bar.xml │ │ │ │ ├── library_separator.xml │ │ │ │ ├── library_site_item.xml │ │ │ │ ├── locale_settings_item.xml │ │ │ │ ├── logins_item.xml │ │ │ │ ├── name_collection_dialog.xml │ │ │ │ ├── navigation_toolbar.xml │ │ │ │ ├── no_collections_message.xml │ │ │ │ ├── normal_browser_tray_list.xml │ │ │ │ ├── onboarding_inactive_tabs_cfr.xml │ │ │ │ ├── overlay_add_on_progress.xml │ │ │ │ ├── preference_cat_style.xml │ │ │ │ ├── preference_category_empty.xml │ │ │ │ ├── preference_category_no_icon_style.xml │ │ │ │ ├── preference_default_browser.xml │ │ │ │ ├── preference_divider.xml │ │ │ │ ├── preference_no_widget.xml │ │ │ │ ├── preference_search_add_engine.xml │ │ │ │ ├── preference_search_engine_chooser.xml │ │ │ │ ├── preference_sync.xml │ │ │ │ ├── preference_widget_radiobutton.xml │ │ │ │ ├── preference_widget_radiobutton_with_info.xml │ │ │ │ ├── preference_widget_switch_fenix_style.xml │ │ │ │ ├── private_browser_tray_list.xml │ │ │ │ ├── quicksetting_permission_spinner_dropdown.xml │ │ │ │ ├── quicksettings_clear_site_data.xml │ │ │ │ ├── quicksettings_permission_spinner_item.xml │ │ │ │ ├── quicksettings_permissions.xml │ │ │ │ ├── quicksettings_protections_panel.xml │ │ │ │ ├── quicksettings_website_info.xml │ │ │ │ ├── recently_closed_nav_item.xml │ │ │ │ ├── saved_logins_sort_items_toolbar_child.xml │ │ │ │ ├── search_engine_radio_button.xml │ │ │ │ ├── search_selector.xml │ │ │ │ ├── search_suggestions_hint.xml │ │ │ │ ├── search_widget_extra_small_v1.xml │ │ │ │ ├── search_widget_extra_small_v2.xml │ │ │ │ ├── search_widget_large.xml │ │ │ │ ├── search_widget_medium.xml │ │ │ │ ├── search_widget_small.xml │ │ │ │ ├── search_widget_small_no_mic.xml │ │ │ │ ├── settings_https_only.xml │ │ │ │ ├── settings_studies.xml │ │ │ │ ├── share_close.xml │ │ │ │ ├── share_tab_item.xml │ │ │ │ ├── share_to_account_devices.xml │ │ │ │ ├── share_to_apps.xml │ │ │ │ ├── sign_in_preference.xml │ │ │ │ ├── site_list_item.xml │ │ │ │ ├── start_download_dialog_layout.xml │ │ │ │ ├── studies_section_item.xml │ │ │ │ ├── study_item.xml │ │ │ │ ├── switch_with_description.xml │ │ │ │ ├── tab_preview.xml │ │ │ │ ├── tab_tray_grid_item.xml │ │ │ │ ├── tab_tray_item.xml │ │ │ │ ├── tabs_tray_tab_counter2.xml │ │ │ │ ├── tabstray_multiselect_items.xml │ │ │ │ ├── top_placeholder_item.xml │ │ │ │ ├── top_site_item.xml │ │ │ │ ├── top_sites_rename_dialog.xml │ │ │ │ ├── tracking_protection_category.xml │ │ │ │ ├── tracking_protection_learn_more_preference.xml │ │ │ │ └── view_crash_reporter.xml │ │ │ │ ├── menu │ │ │ │ ├── address_editor.xml │ │ │ │ ├── bookmarks_add_folder.xml │ │ │ │ ├── bookmarks_edit.xml │ │ │ │ ├── bookmarks_menu.xml │ │ │ │ ├── bookmarks_select_folder.xml │ │ │ │ ├── bookmarks_select_multi.xml │ │ │ │ ├── bookmarks_select_multi_not_item.xml │ │ │ │ ├── credit_card_editor.xml │ │ │ │ ├── download_select_multi.xml │ │ │ │ ├── history_menu.xml │ │ │ │ ├── history_select_multi.xml │ │ │ │ ├── languages_list.xml │ │ │ │ ├── library_menu.xml │ │ │ │ ├── login_list.xml │ │ │ │ ├── login_options_menu.xml │ │ │ │ └── login_save.xml │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ ├── ic_launcher_private.xml │ │ │ │ ├── ic_launcher_private_round.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ ├── ic_launcher_private.webp │ │ │ │ ├── ic_launcher_private_round.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ ├── ic_launcher_private.webp │ │ │ │ ├── ic_launcher_private_round.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ ├── ic_launcher_private.webp │ │ │ │ ├── ic_launcher_private_round.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ ├── ic_launcher_private.webp │ │ │ │ ├── ic_launcher_private_round.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ ├── ic_launcher_private.webp │ │ │ │ ├── ic_launcher_private_round.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── navigation │ │ │ │ └── nav_graph.xml │ │ │ │ ├── raw │ │ │ │ ├── initial_experiments.json │ │ │ │ └── keep.xml │ │ │ │ ├── values-am │ │ │ │ └── strings.xml │ │ │ │ ├── values-an │ │ │ │ └── strings.xml │ │ │ │ ├── values-ar │ │ │ │ └── strings.xml │ │ │ │ ├── values-ast │ │ │ │ └── strings.xml │ │ │ │ ├── values-az │ │ │ │ └── strings.xml │ │ │ │ ├── values-azb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ban │ │ │ │ └── strings.xml │ │ │ │ ├── values-be │ │ │ │ └── strings.xml │ │ │ │ ├── values-bg │ │ │ │ └── strings.xml │ │ │ │ ├── values-bn │ │ │ │ └── strings.xml │ │ │ │ ├── values-br │ │ │ │ └── strings.xml │ │ │ │ ├── values-bs │ │ │ │ └── strings.xml │ │ │ │ ├── values-ca │ │ │ │ └── strings.xml │ │ │ │ ├── values-cak │ │ │ │ └── strings.xml │ │ │ │ ├── values-ceb │ │ │ │ └── strings.xml │ │ │ │ ├── values-ckb │ │ │ │ └── strings.xml │ │ │ │ ├── values-co │ │ │ │ └── strings.xml │ │ │ │ ├── values-cs │ │ │ │ └── strings.xml │ │ │ │ ├── values-cy │ │ │ │ └── strings.xml │ │ │ │ ├── values-da │ │ │ │ └── strings.xml │ │ │ │ ├── values-de │ │ │ │ └── strings.xml │ │ │ │ ├── values-dsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-el │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rCA │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rGB │ │ │ │ └── strings.xml │ │ │ │ ├── values-eo │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rAR │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rCL │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rES │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rMX │ │ │ │ └── strings.xml │ │ │ │ ├── values-es │ │ │ │ └── strings.xml │ │ │ │ ├── values-et │ │ │ │ └── strings.xml │ │ │ │ ├── values-eu │ │ │ │ └── strings.xml │ │ │ │ ├── values-fa │ │ │ │ └── strings.xml │ │ │ │ ├── values-ff │ │ │ │ └── strings.xml │ │ │ │ ├── values-fi │ │ │ │ └── strings.xml │ │ │ │ ├── values-fr │ │ │ │ └── strings.xml │ │ │ │ ├── values-fur │ │ │ │ └── strings.xml │ │ │ │ ├── values-fy-rNL │ │ │ │ └── strings.xml │ │ │ │ ├── values-ga-rIE │ │ │ │ └── strings.xml │ │ │ │ ├── values-gd │ │ │ │ └── strings.xml │ │ │ │ ├── values-gl │ │ │ │ └── strings.xml │ │ │ │ ├── values-gn │ │ │ │ └── strings.xml │ │ │ │ ├── values-gu-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hi-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hil │ │ │ │ └── strings.xml │ │ │ │ ├── values-hr │ │ │ │ └── strings.xml │ │ │ │ ├── values-hsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-hu │ │ │ │ └── strings.xml │ │ │ │ ├── values-hy-rAM │ │ │ │ └── strings.xml │ │ │ │ ├── values-ia │ │ │ │ └── strings.xml │ │ │ │ ├── values-in │ │ │ │ └── strings.xml │ │ │ │ ├── values-is │ │ │ │ └── strings.xml │ │ │ │ ├── values-it │ │ │ │ └── strings.xml │ │ │ │ ├── values-iw │ │ │ │ └── strings.xml │ │ │ │ ├── values-ja │ │ │ │ └── strings.xml │ │ │ │ ├── values-ka │ │ │ │ └── strings.xml │ │ │ │ ├── values-kaa │ │ │ │ └── strings.xml │ │ │ │ ├── values-kab │ │ │ │ └── strings.xml │ │ │ │ ├── values-kk │ │ │ │ └── strings.xml │ │ │ │ ├── values-kmr │ │ │ │ └── strings.xml │ │ │ │ ├── values-kn │ │ │ │ └── strings.xml │ │ │ │ ├── values-ko │ │ │ │ └── strings.xml │ │ │ │ ├── values-kw │ │ │ │ └── strings.xml │ │ │ │ ├── values-ldrtl │ │ │ │ └── dimens.xml │ │ │ │ ├── values-lij │ │ │ │ └── strings.xml │ │ │ │ ├── values-lo │ │ │ │ └── strings.xml │ │ │ │ ├── values-lt │ │ │ │ └── strings.xml │ │ │ │ ├── values-ml │ │ │ │ └── strings.xml │ │ │ │ ├── values-mr │ │ │ │ └── strings.xml │ │ │ │ ├── values-my │ │ │ │ └── strings.xml │ │ │ │ ├── values-nb-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-ne-rNP │ │ │ │ └── strings.xml │ │ │ │ ├── values-night-v23 │ │ │ │ └── styles.xml │ │ │ │ ├── values-night-v27 │ │ │ │ └── styles.xml │ │ │ │ ├── values-night │ │ │ │ ├── bools.xml │ │ │ │ ├── colors.xml │ │ │ │ └── styles.xml │ │ │ │ ├── values-nl │ │ │ │ └── strings.xml │ │ │ │ ├── values-nn-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-oc │ │ │ │ └── strings.xml │ │ │ │ ├── values-or │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rPK │ │ │ │ └── strings.xml │ │ │ │ ├── values-pl │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rBR │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rPT │ │ │ │ └── strings.xml │ │ │ │ ├── values-rm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ro │ │ │ │ └── strings.xml │ │ │ │ ├── values-ru │ │ │ │ └── strings.xml │ │ │ │ ├── values-sat │ │ │ │ └── strings.xml │ │ │ │ ├── values-sc │ │ │ │ └── strings.xml │ │ │ │ ├── values-si │ │ │ │ └── strings.xml │ │ │ │ ├── values-sk │ │ │ │ └── strings.xml │ │ │ │ ├── values-skr │ │ │ │ └── strings.xml │ │ │ │ ├── values-sl │ │ │ │ └── strings.xml │ │ │ │ ├── values-sq │ │ │ │ └── strings.xml │ │ │ │ ├── values-sr │ │ │ │ └── strings.xml │ │ │ │ ├── values-su │ │ │ │ └── strings.xml │ │ │ │ ├── values-sv-rSE │ │ │ │ └── strings.xml │ │ │ │ ├── values-sw600dp │ │ │ │ ├── bools.xml │ │ │ │ └── dimens.xml │ │ │ │ ├── values-szl │ │ │ │ └── strings.xml │ │ │ │ ├── values-ta │ │ │ │ └── strings.xml │ │ │ │ ├── values-te │ │ │ │ └── strings.xml │ │ │ │ ├── values-tg │ │ │ │ └── strings.xml │ │ │ │ ├── values-th │ │ │ │ └── strings.xml │ │ │ │ ├── values-tl │ │ │ │ └── strings.xml │ │ │ │ ├── values-tok │ │ │ │ └── strings.xml │ │ │ │ ├── values-tr │ │ │ │ └── strings.xml │ │ │ │ ├── values-trs │ │ │ │ └── strings.xml │ │ │ │ ├── values-tt │ │ │ │ └── strings.xml │ │ │ │ ├── values-tzm │ │ │ │ └── strings.xml │ │ │ │ ├── values-ug │ │ │ │ └── strings.xml │ │ │ │ ├── values-uk │ │ │ │ └── strings.xml │ │ │ │ ├── values-ur │ │ │ │ └── strings.xml │ │ │ │ ├── values-uz │ │ │ │ └── strings.xml │ │ │ │ ├── values-v23 │ │ │ │ └── styles.xml │ │ │ │ ├── values-v24 │ │ │ │ └── styles.xml │ │ │ │ ├── values-v27 │ │ │ │ └── styles.xml │ │ │ │ ├── values-v28 │ │ │ │ └── bools.xml │ │ │ │ ├── values-v31 │ │ │ │ └── dimens.xml │ │ │ │ ├── values-vec │ │ │ │ └── strings.xml │ │ │ │ ├── values-vi │ │ │ │ └── strings.xml │ │ │ │ ├── values-yo │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rCN │ │ │ │ ├── mozonline_strings.xml │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rTW │ │ │ │ └── strings.xml │ │ │ │ ├── values │ │ │ │ ├── arrays.xml │ │ │ │ ├── attrs.xml │ │ │ │ ├── bools.xml │ │ │ │ ├── colors.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── integers.xml │ │ │ │ ├── mozonline_strings.xml │ │ │ │ ├── preference_keys.xml │ │ │ │ ├── static_strings.xml │ │ │ │ ├── strings.xml │ │ │ │ ├── styles.xml │ │ │ │ └── tags.xml │ │ │ │ └── xml │ │ │ │ ├── accessibility_preferences.xml │ │ │ │ ├── account_settings_preferences.xml │ │ │ │ ├── autofill_configuration.xml │ │ │ │ ├── autofill_preferences.xml │ │ │ │ ├── credit_cards_preferences.xml │ │ │ │ ├── customization_preferences.xml │ │ │ │ ├── data_choices_preferences.xml │ │ │ │ ├── default_search_engine_preferences.xml │ │ │ │ ├── delete_browsing_data_quit_preferences.xml │ │ │ │ ├── home_preferences.xml │ │ │ │ ├── logins_preferences.xml │ │ │ │ ├── open_links_in_apps_preferences.xml │ │ │ │ ├── preferences.xml │ │ │ │ ├── private_browsing_preferences.xml │ │ │ │ ├── save_logins_preferences.xml │ │ │ │ ├── search_settings_preferences.xml │ │ │ │ ├── search_widget_info.xml │ │ │ │ ├── searchable.xml │ │ │ │ ├── secret_settings_preferences.xml │ │ │ │ ├── shortcuts.xml │ │ │ │ ├── site_permissions_details_exceptions_preferences.xml │ │ │ │ ├── site_permissions_preferences.xml │ │ │ │ ├── sponsored_stories_settings.xml │ │ │ │ ├── sync_debug_preferences.xml │ │ │ │ ├── sync_problem.xml │ │ │ │ ├── tabs_preferences.xml │ │ │ │ └── tracking_protection_preferences.xml │ │ ├── nightly │ │ │ ├── AndroidManifest.xml │ │ │ ├── baselineProfiles │ │ │ │ └── baseline-prof.txt │ │ │ └── res │ │ │ │ ├── drawable-hdpi │ │ │ │ ├── fenix_search_widget.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-mdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xxxhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable │ │ │ │ ├── animated_splash_screen.xml │ │ │ │ ├── ic_launcher_foreground.xml │ │ │ │ ├── ic_wordmark_logo.webp │ │ │ │ ├── ic_wordmark_text_normal.webp │ │ │ │ └── ic_wordmark_text_private.webp │ │ │ │ ├── ic_launcher-web.webp │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ ├── dimens.xml │ │ │ │ └── static_strings.xml │ │ │ │ └── xml │ │ │ │ └── shortcuts.xml │ │ ├── release │ │ │ ├── AndroidManifest.xml │ │ │ └── res │ │ │ │ ├── drawable-hdpi │ │ │ │ ├── fenix_search_widget.webp │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-mdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable-xxxhdpi │ │ │ │ ├── ic_logo_wordmark_normal.webp │ │ │ │ └── ic_logo_wordmark_private.webp │ │ │ │ ├── drawable │ │ │ │ ├── animated_splash_screen.xml │ │ │ │ ├── ic_launcher_foreground.xml │ │ │ │ ├── ic_wordmark_logo.webp │ │ │ │ ├── ic_wordmark_text_normal.webp │ │ │ │ └── ic_wordmark_text_private.webp │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.webp │ │ │ │ └── ic_launcher_round.webp │ │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ └── static_strings.xml │ │ │ │ └── xml │ │ │ │ └── shortcuts.xml │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── fenix │ │ │ │ ├── AppRequestInterceptorTest.kt │ │ │ │ ├── FenixApplicationTest.kt │ │ │ │ ├── FenixLogSinkTest.kt │ │ │ │ ├── HomeActivityTest.kt │ │ │ │ ├── IntentReceiverActivityTest.kt │ │ │ │ ├── MockNavHostActivity.kt │ │ │ │ ├── ReleaseChannelTest.kt │ │ │ │ ├── ServiceWorkerSupportTest.kt │ │ │ │ ├── addons │ │ │ │ ├── AddonDetailsBindingDelegateTest.kt │ │ │ │ ├── AddonPermissionDetailsBindingDelegateTest.kt │ │ │ │ ├── AddonsManagementViewTest.kt │ │ │ │ ├── ExtensionsProcessDisabledBackgroundControllerTest.kt │ │ │ │ ├── ExtensionsProcessDisabledForegroundControllerTest.kt │ │ │ │ └── InstalledAddonDetailsFragmentTest.kt │ │ │ │ ├── bindings │ │ │ │ └── BrowserStoreBindingTest.kt │ │ │ │ ├── browser │ │ │ │ ├── BaseBrowserFragmentTest.kt │ │ │ │ ├── BrowserFragmentTest.kt │ │ │ │ ├── FenixSnackbarDelegateTest.kt │ │ │ │ ├── OpenInAppOnboardingObserverTest.kt │ │ │ │ ├── StandardSnackbarErrorBindingTest.kt │ │ │ │ ├── TranslationsBindingTest.kt │ │ │ │ ├── browsingmode │ │ │ │ │ ├── DefaultBrowsingModeManagerTest.kt │ │ │ │ │ └── SimpleBrowsingModeManager.kt │ │ │ │ ├── infobanner │ │ │ │ │ ├── DynamicInfoBannerBehaviorTest.kt │ │ │ │ │ └── DynamicInfoBannerTest.kt │ │ │ │ ├── readermode │ │ │ │ │ └── DefaultReaderModeControllerTest.kt │ │ │ │ └── tabstrip │ │ │ │ │ └── TabStripStateTest.kt │ │ │ │ ├── collections │ │ │ │ ├── CollectionCreationBottomBarViewTest.kt │ │ │ │ ├── CollectionCreationFragmentTest.kt │ │ │ │ ├── CollectionCreationStoreTest.kt │ │ │ │ ├── CollectionCreationTabListAdapterTest.kt │ │ │ │ ├── CollectionsListAdapterTest.kt │ │ │ │ ├── DefaultCollectionCreationControllerTest.kt │ │ │ │ ├── SaveCollectionListAdapterTest.kt │ │ │ │ └── TabDiffUtilTest.kt │ │ │ │ ├── components │ │ │ │ ├── AccountAbnormalitiesTest.kt │ │ │ │ ├── AppStoreTest.kt │ │ │ │ ├── BackgroundServicesTest.kt │ │ │ │ ├── ChangeDetectionMiddlewareTest.kt │ │ │ │ ├── FenixSnackbarBehaviorTest.kt │ │ │ │ ├── FindInPageIntegrationTest.kt │ │ │ │ ├── IntentProcessorTypeTest.kt │ │ │ │ ├── PermissionStorageTest.kt │ │ │ │ ├── PrivateShortcutCreateManagerTest.kt │ │ │ │ ├── ReviewPromptControllerTest.kt │ │ │ │ ├── StoreProviderTest.kt │ │ │ │ ├── TrackingProtectionPolicyFactoryTest.kt │ │ │ │ ├── UrlRequestInterceptorTest.kt │ │ │ │ ├── accounts │ │ │ │ │ └── FenixAccountManagerTest.kt │ │ │ │ ├── appstate │ │ │ │ │ ├── AppActionTest.kt │ │ │ │ │ ├── AppStoreReducerTest.kt │ │ │ │ │ ├── ShoppingActionTest.kt │ │ │ │ │ └── TabStripActionTest.kt │ │ │ │ ├── bookmarks │ │ │ │ │ └── BookmarksUseCaseTest.kt │ │ │ │ ├── history │ │ │ │ │ └── PagedHistoryProviderTest.kt │ │ │ │ ├── metrics │ │ │ │ │ ├── ActivationPingTest.kt │ │ │ │ │ ├── BreadcrumbRecorderTest.kt │ │ │ │ │ ├── DefaultMetricsStorageTest.kt │ │ │ │ │ ├── FirstSessionPingTest.kt │ │ │ │ │ ├── InstallReferrerMetricsServiceTest.kt │ │ │ │ │ ├── MetricControllerTest.kt │ │ │ │ │ ├── MetricsUtilsTest.kt │ │ │ │ │ └── MetricsUtilsTestRobolectric.kt │ │ │ │ ├── settings │ │ │ │ │ ├── CounterPreferenceTest.kt │ │ │ │ │ ├── FeatureFlagPreferenceTest.kt │ │ │ │ │ └── sitepermissions │ │ │ │ │ │ └── ExtensionsTest.kt │ │ │ │ └── toolbar │ │ │ │ │ ├── BrowserToolbarCFRPresenterTest.kt │ │ │ │ │ ├── BrowserToolbarViewTest.kt │ │ │ │ │ ├── DefaultBrowserToolbarControllerTest.kt │ │ │ │ │ ├── DefaultBrowserToolbarInteractorTest.kt │ │ │ │ │ ├── DefaultBrowserToolbarMenuControllerTest.kt │ │ │ │ │ ├── DefaultToolbarIntegrationTest.kt │ │ │ │ │ ├── EngineViewClippingBehaviorTest.kt │ │ │ │ │ ├── MenuPresenterTest.kt │ │ │ │ │ ├── NavbarIntegrationTest.kt │ │ │ │ │ └── TabCounterMenuTest.kt │ │ │ │ ├── compose │ │ │ │ ├── LinkTextTest.kt │ │ │ │ └── ext │ │ │ │ │ ├── IntTest.kt │ │ │ │ │ └── ModifierTest.kt │ │ │ │ ├── crashes │ │ │ │ ├── CrashContentIntegrationTest.kt │ │ │ │ ├── CrashContentViewTest.kt │ │ │ │ └── CrashReporterControllerTest.kt │ │ │ │ ├── customtabs │ │ │ │ ├── CustomTabToolbarMenuTest.kt │ │ │ │ ├── ExternalAppBrowserActivityTest.kt │ │ │ │ ├── FennecWebAppIntentProcessorTest.kt │ │ │ │ └── PoweredByNotificationTest.kt │ │ │ │ ├── debugsettings │ │ │ │ ├── DebugDrawerNavigationMiddlewareTest.kt │ │ │ │ ├── DebugDrawerStoreTest.kt │ │ │ │ └── DefaultDebugSettingsRepositoryTest.kt │ │ │ │ ├── downloads │ │ │ │ ├── DynamicDownloadDialogBehaviorTest.kt │ │ │ │ ├── DynamicDownloadDialogTest.kt │ │ │ │ ├── FirstPartyDownloadDialogTest.kt │ │ │ │ ├── StartDownloadDialogTest.kt │ │ │ │ └── ThirdPartyDownloadDialogTest.kt │ │ │ │ ├── exceptions │ │ │ │ ├── login │ │ │ │ │ ├── LoginExceptionFragmentStoreTest.kt │ │ │ │ │ ├── LoginExceptionsAdapterTest.kt │ │ │ │ │ ├── LoginExceptionsInteractorTest.kt │ │ │ │ │ └── LoginExceptionsViewTest.kt │ │ │ │ ├── trackingprotection │ │ │ │ │ ├── TrackingProtectionExceptionsAdapterTest.kt │ │ │ │ │ ├── TrackingProtectionExceptionsFragmentStoreTest.kt │ │ │ │ │ ├── TrackingProtectionExceptionsInteractorTest.kt │ │ │ │ │ └── TrackingProtectionExceptionsViewTest.kt │ │ │ │ └── viewholders │ │ │ │ │ ├── ExceptionsDeleteButtonViewHolderTest.kt │ │ │ │ │ ├── ExceptionsHeaderViewHolderTest.kt │ │ │ │ │ └── ExceptionsListItemViewHolderTest.kt │ │ │ │ ├── experiments │ │ │ │ └── NimbusSetupKtTest.kt │ │ │ │ ├── ext │ │ │ │ ├── ActivityTest.kt │ │ │ │ ├── AppStateTest.kt │ │ │ │ ├── AtomicIntegerTest.kt │ │ │ │ ├── BrowserIconsTest.kt │ │ │ │ ├── BrowserStateTest.kt │ │ │ │ ├── ConfigurationKtTest.kt │ │ │ │ ├── ConnectivityManagerTest.kt │ │ │ │ ├── ContextTest.kt │ │ │ │ ├── DownloadItemKtTest.kt │ │ │ │ ├── DrawableTest.kt │ │ │ │ ├── FragmentTest.kt │ │ │ │ ├── ImageButtonTest.kt │ │ │ │ ├── ListTest.kt │ │ │ │ ├── LogTest.kt │ │ │ │ ├── MockKMatcherScope.kt │ │ │ │ ├── NavControllerTest.kt │ │ │ │ ├── SearchEngineTest.kt │ │ │ │ ├── SharedPreferences.kt │ │ │ │ ├── StringTest.kt │ │ │ │ ├── TabCollectionTest.kt │ │ │ │ ├── TopSiteTest.kt │ │ │ │ ├── UriTest.kt │ │ │ │ └── ViewTest.kt │ │ │ │ ├── extension │ │ │ │ └── WebExtensionPromptFeatureTest.kt │ │ │ │ ├── helpers │ │ │ │ ├── FenixRobolectricTestApplication.kt │ │ │ │ ├── FenixRobolectricTestRunner.kt │ │ │ │ ├── LocaleTestRule.kt │ │ │ │ ├── MockkRetryTestRule.kt │ │ │ │ ├── StackTraces.kt │ │ │ │ └── perf │ │ │ │ │ └── TestStrictModeManager.kt │ │ │ │ ├── home │ │ │ │ ├── DefaultSessionControlControllerTest.kt │ │ │ │ ├── HomeFragmentTest.kt │ │ │ │ ├── HomeMenuViewTest.kt │ │ │ │ ├── PocketUpdatesMiddlewareTest.kt │ │ │ │ ├── PrivateBrowsingButtonViewTest.kt │ │ │ │ ├── RecentTabsListFeatureTest.kt │ │ │ │ ├── SessionControlInteractorTest.kt │ │ │ │ ├── TabCounterViewTest.kt │ │ │ │ ├── blocklist │ │ │ │ │ ├── BlocklistHandlerTest.kt │ │ │ │ │ └── BlocklistMiddlewareTest.kt │ │ │ │ ├── intent │ │ │ │ │ ├── AssistIntentProcessorTest.kt │ │ │ │ │ ├── CrashReporterIntentProcessorTest.kt │ │ │ │ │ ├── FennecBookmarkShortcutsIntentProcessorTest.kt │ │ │ │ │ ├── HomeDeepLinkIntentProcessorTest.kt │ │ │ │ │ ├── OpenBrowserIntentProcessorTest.kt │ │ │ │ │ ├── OpenPasswordManagerIntentProcessorTest.kt │ │ │ │ │ ├── OpenSpecificTabIntentProcessorTest.kt │ │ │ │ │ ├── ReEngagementIntentProcessorTest.kt │ │ │ │ │ ├── SpeechProcessingIntentProcessorTest.kt │ │ │ │ │ └── StartSearchIntentProcessorTest.kt │ │ │ │ ├── pocket │ │ │ │ │ └── DefaultPocketStoriesControllerTest.kt │ │ │ │ ├── privatebrowsing │ │ │ │ │ └── DefaultPrivateBrowsingControllerTest.kt │ │ │ │ ├── recentbookmarks │ │ │ │ │ ├── DefaultRecentBookmarksControllerTest.kt │ │ │ │ │ └── RecentBookmarksFeatureTest.kt │ │ │ │ ├── recentsyncedtabs │ │ │ │ │ ├── RecentSyncedTabFeatureTest.kt │ │ │ │ │ └── controller │ │ │ │ │ │ └── DefaultRecentSyncedTabControllerTest.kt │ │ │ │ ├── recenttabs │ │ │ │ │ └── controller │ │ │ │ │ │ └── RecentTabControllerTest.kt │ │ │ │ ├── recentvisits │ │ │ │ │ ├── HistoryMetadataMiddlewareTest.kt │ │ │ │ │ ├── HistoryMetadataServiceTest.kt │ │ │ │ │ ├── RecentVisitsFeatureTest.kt │ │ │ │ │ ├── controller │ │ │ │ │ │ └── RecentVisitsControllerTest.kt │ │ │ │ │ ├── interactor │ │ │ │ │ │ └── RecentVisitsInteractorTest.kt │ │ │ │ │ └── view │ │ │ │ │ │ └── RecentBookmarksViewHolderTest.kt │ │ │ │ ├── sessioncontrol │ │ │ │ │ ├── SessionControlAdapterTest.kt │ │ │ │ │ ├── SessionControlViewTest.kt │ │ │ │ │ └── viewholders │ │ │ │ │ │ └── NoCollectionsMessageViewHolderTest.kt │ │ │ │ ├── toolbar │ │ │ │ │ └── DefaultToolbarControllerTest.kt │ │ │ │ └── topsites │ │ │ │ │ ├── TopSiteItemViewHolderTest.kt │ │ │ │ │ ├── TopSiteViewHolderTest.kt │ │ │ │ │ ├── TopSitesAdapterTest.kt │ │ │ │ │ └── TopSitesPagerAdapterTest.kt │ │ │ │ ├── intent │ │ │ │ └── ExternalDeepLinkIntentProcessorTest.kt │ │ │ │ ├── library │ │ │ │ ├── bookmarks │ │ │ │ │ ├── BookmarkAdapterTest.kt │ │ │ │ │ ├── BookmarkControllerTest.kt │ │ │ │ │ ├── BookmarkDeselectNavigationListenerTest.kt │ │ │ │ │ ├── BookmarkFragmentInteractorTest.kt │ │ │ │ │ ├── BookmarkFragmentStoreTest.kt │ │ │ │ │ ├── BookmarkItemMenuTest.kt │ │ │ │ │ ├── DesktopFoldersTest.kt │ │ │ │ │ ├── UtilsKtTest.kt │ │ │ │ │ └── viewholders │ │ │ │ │ │ └── BookmarkNodeViewHolderTest.kt │ │ │ │ ├── downloads │ │ │ │ │ ├── DownloadAdapterTest.kt │ │ │ │ │ ├── DownloadControllerTest.kt │ │ │ │ │ ├── DownloadFragmentStoreTest.kt │ │ │ │ │ ├── DownloadFragmentTest.kt │ │ │ │ │ └── DownloadInteractorTest.kt │ │ │ │ ├── history │ │ │ │ │ ├── HistoryDataSourceTest.kt │ │ │ │ │ ├── HistoryFragmentStoreTest.kt │ │ │ │ │ ├── HistoryItemTimeGroupTest.kt │ │ │ │ │ ├── RemoveTimeFrameTest.kt │ │ │ │ │ └── state │ │ │ │ │ │ ├── HistoryNavigationMiddlewareTest.kt │ │ │ │ │ │ ├── HistoryStorageMiddlewareTest.kt │ │ │ │ │ │ ├── HistorySyncMiddlewareTest.kt │ │ │ │ │ │ ├── HistoryTelemetryMiddlewareTest.kt │ │ │ │ │ │ └── bindings │ │ │ │ │ │ └── MenuBindingTest.kt │ │ │ │ ├── historymetadata │ │ │ │ │ ├── HistoryMetadataGroupFragmentStoreTest.kt │ │ │ │ │ ├── controller │ │ │ │ │ │ └── HistoryMetadataGroupControllerTest.kt │ │ │ │ │ └── view │ │ │ │ │ │ └── HistoryMetadataGroupItemViewHolderTest.kt │ │ │ │ └── recentlyclosed │ │ │ │ │ ├── DefaultRecentlyClosedControllerTest.kt │ │ │ │ │ └── RecentlyClosedFragmentInteractorTest.kt │ │ │ │ ├── lifecycle │ │ │ │ └── StoreLifecycleObserverTest.kt │ │ │ │ ├── menu │ │ │ │ └── BrowserMenuSignInTest.kt │ │ │ │ ├── messaging │ │ │ │ ├── DefaultMessageControllerTest.kt │ │ │ │ ├── MessagingFeatureTest.kt │ │ │ │ └── state │ │ │ │ │ ├── MessagingMiddlewareTest.kt │ │ │ │ │ └── MessagingReducerTest.kt │ │ │ │ ├── nimbus │ │ │ │ ├── NimbusBranchesControllerTest.kt │ │ │ │ ├── NimbusBranchesStoreTest.kt │ │ │ │ └── NimbusSystemTest.kt │ │ │ │ ├── onboarding │ │ │ │ ├── FenixOnboardingTest.kt │ │ │ │ ├── ReEngagementNotificationWorkerTest.kt │ │ │ │ └── view │ │ │ │ │ ├── OnboardingMapperTest.kt │ │ │ │ │ └── OnboardingPageUiDataTest.kt │ │ │ │ ├── perf │ │ │ │ ├── PerformanceInflaterTest.kt │ │ │ │ ├── ProfilerMarkerFactProcessorTest.kt │ │ │ │ ├── RunBlockingCounterTest.kt │ │ │ │ ├── StartupActivityLogTest.kt │ │ │ │ ├── StartupPathProviderTest.kt │ │ │ │ ├── StartupReportFullyDrawnTest.kt │ │ │ │ ├── StartupStateProviderTest.kt │ │ │ │ ├── StartupTimelineStateMachineTest.kt │ │ │ │ ├── StartupTypeTelemetryTest.kt │ │ │ │ ├── StorageStatsMetricsTest.kt │ │ │ │ ├── StrictModeManagerTest.kt │ │ │ │ └── ThreadPenaltyDeathWithIgnoresListenerTest.kt │ │ │ │ ├── push │ │ │ │ └── WebPushEngineIntegrationTest.kt │ │ │ │ ├── search │ │ │ │ ├── SearchDialogControllerTest.kt │ │ │ │ ├── SearchDialogFragmentTest.kt │ │ │ │ ├── SearchDialogInteractorTest.kt │ │ │ │ ├── SearchFragmentStoreTest.kt │ │ │ │ ├── awesomebar │ │ │ │ │ ├── AwesomeBarViewTest.kt │ │ │ │ │ └── ShortcutsSuggestionProviderTest.kt │ │ │ │ └── toolbar │ │ │ │ │ ├── DefaultSearchSelectorControllerTest.kt │ │ │ │ │ ├── IncreasedTapAreaActionDecoratorTest.kt │ │ │ │ │ ├── SearchSelectorMenuTest.kt │ │ │ │ │ ├── SearchSelectorTest.kt │ │ │ │ │ ├── SearchSelectorToolbarActionTest.kt │ │ │ │ │ └── ToolbarViewTest.kt │ │ │ │ ├── session │ │ │ │ └── PrivateNotificationServiceTest.kt │ │ │ │ ├── settings │ │ │ │ ├── CustomEtpCookiesOptionsDropDownListPreferenceTest.kt │ │ │ │ ├── DropDownListPreferenceTest.kt │ │ │ │ ├── ExtensionsTest.kt │ │ │ │ ├── HomeSettingsFragmentTest.kt │ │ │ │ ├── OnSharedPreferenceChangeListenerTest.kt │ │ │ │ ├── PhoneFeatureTest.kt │ │ │ │ ├── PreferenceBackedRadioButtonTest.kt │ │ │ │ ├── SettingsFragmentTest.kt │ │ │ │ ├── SupportUtilsTest.kt │ │ │ │ ├── TrackingProtectionFragmentTest.kt │ │ │ │ ├── about │ │ │ │ │ ├── AboutLibrariesFragmentTest.kt │ │ │ │ │ ├── AboutPageAdapterTest.kt │ │ │ │ │ ├── SecretDebugMenuTriggerTest.kt │ │ │ │ │ └── viewholders │ │ │ │ │ │ └── AboutItemViewHolderTest.kt │ │ │ │ ├── account │ │ │ │ │ ├── AccountSettingsFragmentStoreTest.kt │ │ │ │ │ ├── AccountSettingsInteractorTest.kt │ │ │ │ │ ├── AuthCustomTabActivityTest.kt │ │ │ │ │ ├── DefaultSyncControllerTest.kt │ │ │ │ │ └── DefaultSyncInteractorTest.kt │ │ │ │ ├── address │ │ │ │ │ ├── AddressEditorViewTest.kt │ │ │ │ │ ├── controller │ │ │ │ │ │ ├── DefaultAddressEditorControllerTest.kt │ │ │ │ │ │ └── DefaultAddressManagementControllerTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ │ └── AddressTest.kt │ │ │ │ │ └── interactor │ │ │ │ │ │ ├── DefaultAddressEditorInteractorTest.kt │ │ │ │ │ │ └── DefaultAddressManagementInteractorTest.kt │ │ │ │ ├── advanced │ │ │ │ │ ├── BaseLocaleViewHolderTest.kt │ │ │ │ │ ├── LocaleManagerExtensionTest.kt │ │ │ │ │ ├── LocaleSettingsControllerTest.kt │ │ │ │ │ ├── LocaleSettingsInteractorTest.kt │ │ │ │ │ ├── LocaleSettingsStoreTest.kt │ │ │ │ │ └── LocaleViewHoldersTest.kt │ │ │ │ ├── autofill │ │ │ │ │ ├── AutofillFragmentStoreTest.kt │ │ │ │ │ └── AutofillSettingFragmentTest.kt │ │ │ │ ├── biometric │ │ │ │ │ ├── BiometricPromptFeatureTest.kt │ │ │ │ │ └── ext │ │ │ │ │ │ └── BiometricManagerKtTest.kt │ │ │ │ ├── creditcards │ │ │ │ │ ├── CreditCardEditorStateTest.kt │ │ │ │ │ ├── CreditCardEditorViewTest.kt │ │ │ │ │ ├── CreditCardItemViewHolderTest.kt │ │ │ │ │ ├── CreditCardsAdapterTest.kt │ │ │ │ │ ├── CreditCardsManagementViewTest.kt │ │ │ │ │ ├── DefaultCreditCardEditorControllerTest.kt │ │ │ │ │ ├── DefaultCreditCardEditorInteractorTest.kt │ │ │ │ │ ├── DefaultCreditCardsManagementControllerTest.kt │ │ │ │ │ ├── DefaultCreditCardsManagementInteractorTest.kt │ │ │ │ │ └── StringTest.kt │ │ │ │ ├── deletebrowsingdata │ │ │ │ │ ├── DefaultDeleteBrowsingDataControllerTest.kt │ │ │ │ │ └── DeleteAndQuitTest.kt │ │ │ │ ├── logins │ │ │ │ │ ├── AddLoginInteractorTest.kt │ │ │ │ │ ├── EditLoginInteractorTest.kt │ │ │ │ │ ├── LoginDetailInteractorTest.kt │ │ │ │ │ ├── LoginDetailViewTest.kt │ │ │ │ │ ├── LoginsFragmentStoreTest.kt │ │ │ │ │ ├── LoginsListControllerTest.kt │ │ │ │ │ ├── LoginsListViewHolderTest.kt │ │ │ │ │ ├── SavedLoginsInteractorTest.kt │ │ │ │ │ ├── SavedLoginsSortingStrategyMenuTest.kt │ │ │ │ │ ├── SavedLoginsStorageControllerTest.kt │ │ │ │ │ └── SyncPreferenceViewTest.kt │ │ │ │ ├── quicksettings │ │ │ │ │ ├── AutoplayValueTest.kt │ │ │ │ │ ├── ClearSiteDataViewTest.kt │ │ │ │ │ ├── ConnectionDetailsInteractorTest.kt │ │ │ │ │ ├── ConnectionDetailsViewTest.kt │ │ │ │ │ ├── DefaultConnectionDetailsControllerTest.kt │ │ │ │ │ ├── DefaultQuickSettingsControllerTest.kt │ │ │ │ │ ├── ProtectionsViewTest.kt │ │ │ │ │ ├── QuickSettingsFragmentReducerTest.kt │ │ │ │ │ ├── QuickSettingsFragmentStoreTest.kt │ │ │ │ │ ├── QuickSettingsInteractorTest.kt │ │ │ │ │ ├── QuickSettingsSheetDialogFragmentTest.kt │ │ │ │ │ ├── WebsiteInfoViewTest.kt │ │ │ │ │ ├── WebsitePermissionViewTest.kt │ │ │ │ │ ├── ext │ │ │ │ │ │ └── PhoneFeatureExtKtTest.kt │ │ │ │ │ └── protections │ │ │ │ │ │ └── cookiebanners │ │ │ │ │ │ ├── CookieBannerHandlingDetailsViewTest.kt │ │ │ │ │ │ ├── DefaultCookieBannerDetailsControllerTest.kt │ │ │ │ │ │ └── DefaultCookieBannerDetailsInteractorTest.kt │ │ │ │ ├── search │ │ │ │ │ ├── SearchEngineFragmentTest.kt │ │ │ │ │ └── SearchStringValidatorTest.kt │ │ │ │ ├── sitepermissions │ │ │ │ │ ├── SitePermissionsDetailsExceptionsFragmentTest.kt │ │ │ │ │ ├── SitePermissionsManageExceptionsPhoneFeatureFragmentTest.kt │ │ │ │ │ └── SitePermissionsWifiIntegrationTest.kt │ │ │ │ ├── studies │ │ │ │ │ ├── DefaultStudiesInteractorTest.kt │ │ │ │ │ ├── StudiesAdapterTest.kt │ │ │ │ │ └── StudiesViewTest.kt │ │ │ │ └── wallpaper │ │ │ │ │ └── ExtensionsTest.kt │ │ │ │ ├── share │ │ │ │ ├── SaveToPDFMiddlewareTest.kt │ │ │ │ ├── ShareCloseViewTest.kt │ │ │ │ ├── ShareControllerTest.kt │ │ │ │ ├── ShareInteractorTest.kt │ │ │ │ ├── ShareViewModelTest.kt │ │ │ │ ├── listadapters │ │ │ │ │ ├── AccountDevicesShareAdapterTest.kt │ │ │ │ │ └── AppShareAdapterTest.kt │ │ │ │ └── viewholders │ │ │ │ │ ├── AccountDeviceViewHolderTest.kt │ │ │ │ │ └── AppViewHolderTest.kt │ │ │ │ ├── shopping │ │ │ │ ├── ProductAnalysisTestData.kt │ │ │ │ ├── ProductRecommendationTestData.kt │ │ │ │ ├── ReviewQualityCheckBottomSheetStateFeatureTest.kt │ │ │ │ ├── ReviewQualityCheckFeatureTest.kt │ │ │ │ ├── fake │ │ │ │ │ ├── FakeNetworkChecker.kt │ │ │ │ │ ├── FakeReviewQualityCheckPreferences.kt │ │ │ │ │ ├── FakeReviewQualityCheckService.kt │ │ │ │ │ ├── FakeReviewQualityCheckTelemetryService.kt │ │ │ │ │ ├── FakeReviewQualityCheckVendorsService.kt │ │ │ │ │ └── FakeShoppingExperienceFeature.kt │ │ │ │ ├── middleware │ │ │ │ │ ├── DefaultReviewQualityCheckServiceTest.kt │ │ │ │ │ ├── DefaultReviewQualityCheckVendorsServiceTest.kt │ │ │ │ │ ├── EnumMapperTest.kt │ │ │ │ │ ├── ProductAnalysisMapperTest.kt │ │ │ │ │ ├── ProductRecommendationMapperTest.kt │ │ │ │ │ ├── RetryKtTest.kt │ │ │ │ │ ├── ReviewQualityCheckNavigationMiddlewareTest.kt │ │ │ │ │ └── ReviewQualityCheckTelemetryMiddlewareTest.kt │ │ │ │ ├── store │ │ │ │ │ ├── ReviewQualityCheckStateTest.kt │ │ │ │ │ └── ReviewQualityCheckStoreTest.kt │ │ │ │ └── ui │ │ │ │ │ └── StarRatingKtTest.kt │ │ │ │ ├── shortcut │ │ │ │ └── PwaOnboardingObserverTest.kt │ │ │ │ ├── sync │ │ │ │ ├── SyncedTabsIntegrationTest.kt │ │ │ │ └── ext │ │ │ │ │ └── SyncedDeviceTabsTest.kt │ │ │ │ ├── tabhistory │ │ │ │ ├── TabHistoryAdapterTest.kt │ │ │ │ ├── TabHistoryControllerTest.kt │ │ │ │ ├── TabHistoryInteractorTest.kt │ │ │ │ └── TabHistoryViewHolderTest.kt │ │ │ │ ├── tabstray │ │ │ │ ├── CloseOnLastTabBindingTest.kt │ │ │ │ ├── DefaultTabsTrayControllerTest.kt │ │ │ │ ├── DefaultTabsTrayInteractorTest.kt │ │ │ │ ├── FloatingActionButtonBindingTest.kt │ │ │ │ ├── MenuIntegrationTest.kt │ │ │ │ ├── NavigationInteractorTest.kt │ │ │ │ ├── SecureTabsTrayBindingTest.kt │ │ │ │ ├── TabCounterBindingTest.kt │ │ │ │ ├── TabLayoutMediatorTest.kt │ │ │ │ ├── TabLayoutObserverTest.kt │ │ │ │ ├── TabSheetBehaviorManagerTest.kt │ │ │ │ ├── TabsTrayDialogTest.kt │ │ │ │ ├── TabsTrayFragmentTest.kt │ │ │ │ ├── TabsTrayInfoBannerBindingTest.kt │ │ │ │ ├── TabsTrayMiddlewareTest.kt │ │ │ │ ├── TabsTrayStateTest.kt │ │ │ │ ├── TabsTrayStoreReducerTest.kt │ │ │ │ ├── TabsTrayStoreTest.kt │ │ │ │ ├── browser │ │ │ │ │ ├── AbstractBrowserTabViewHolderTest.kt │ │ │ │ │ ├── AbstractBrowserTrayListTest.kt │ │ │ │ │ ├── BrowserTabsAdapterTest.kt │ │ │ │ │ ├── NormalTabsBindingTest.kt │ │ │ │ │ ├── PrivateTabsBindingTest.kt │ │ │ │ │ ├── SelectedItemAdapterBindingTest.kt │ │ │ │ │ ├── SelectionMenuIntegrationTest.kt │ │ │ │ │ ├── SwipeToDeleteBindingTest.kt │ │ │ │ │ ├── TabSorterTest.kt │ │ │ │ │ └── TabsTouchHelperTest.kt │ │ │ │ ├── ext │ │ │ │ │ ├── BrowserStoreKtTest.kt │ │ │ │ │ ├── ContextKtTest.kt │ │ │ │ │ ├── FenixSnackbarKtTest.kt │ │ │ │ │ ├── LongKtTest.kt │ │ │ │ │ └── TabSessionStateKtTest.kt │ │ │ │ ├── syncedtabs │ │ │ │ │ ├── SyncButtonBindingTest.kt │ │ │ │ │ └── SyncedTabsViewErrorTypeTest.kt │ │ │ │ └── viewholders │ │ │ │ │ └── AbstractBrowserPageViewHolderTest.kt │ │ │ │ ├── telemetry │ │ │ │ └── TelemetryMiddlewareTest.kt │ │ │ │ ├── toolbar │ │ │ │ └── DefaultToolbarMenuTest.kt │ │ │ │ ├── trackingprotection │ │ │ │ ├── ProtectionsStoreTest.kt │ │ │ │ ├── TrackerBucketsTest.kt │ │ │ │ ├── TrackingProtectionBlockingFragmentTest.kt │ │ │ │ ├── TrackingProtectionPanelDialogFragmentTest.kt │ │ │ │ ├── TrackingProtectionPanelInteractorTest.kt │ │ │ │ └── TrackingProtectionPanelViewTest.kt │ │ │ │ ├── translations │ │ │ │ ├── TranslationsDialogBindingTest.kt │ │ │ │ ├── TranslationsDialogMiddlewareTest.kt │ │ │ │ ├── TranslationsDialogReducerTest.kt │ │ │ │ └── preferences │ │ │ │ │ └── downloadlanguages │ │ │ │ │ └── DownloadLanguagesFeatureTest.kt │ │ │ │ ├── utils │ │ │ │ ├── ClipboardHandlerTest.kt │ │ │ │ ├── LocaleUtilsTest.kt │ │ │ │ ├── SettingsTest.kt │ │ │ │ ├── ToolbarPopupWindowTest.kt │ │ │ │ └── view │ │ │ │ │ └── GroupableRadioButtonTest.kt │ │ │ │ ├── wallpapers │ │ │ │ ├── LegacyWallpaperMigrationTest.kt │ │ │ │ ├── WallpaperDownloaderTest.kt │ │ │ │ ├── WallpaperFileManagerTest.kt │ │ │ │ ├── WallpaperMetadataFetcherTest.kt │ │ │ │ ├── WallpaperTest.kt │ │ │ │ └── WallpapersUseCasesTest.kt │ │ │ │ ├── whatsnew │ │ │ │ ├── WhatsNewStorageTest.kt │ │ │ │ ├── WhatsNewTest.kt │ │ │ │ └── WhatsNewVersionTest.kt │ │ │ │ ├── widget │ │ │ │ ├── SearchWidgetProviderTest.kt │ │ │ │ └── VoiceSearchActivityTest.kt │ │ │ │ └── wifi │ │ │ │ └── WifiConnectionMonitorTest.kt │ │ │ └── resources │ │ │ ├── EdmStorageProviderBaseLogcat.txt │ │ │ ├── IdsControllerLogcat.txt │ │ │ ├── InstrumentationHooksLogcat.txt │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ └── tags.yaml ├── automation │ ├── releasetools │ │ └── PrintMentionedIssuesAndPrs.kts │ └── taskcluster │ │ ├── .codecov │ │ ├── androidTest │ │ ├── flank-arm-beta.yml │ │ ├── flank-arm-legacy-api-tests.yml │ │ ├── flank-arm-robo-test.yml │ │ ├── flank-arm-screenshots-tests.yml │ │ ├── flank-arm-start-test-robo.yml │ │ ├── flank-arm-start-test.yml │ │ ├── flank-arm64-v8a.yml │ │ ├── flank-x86.yml │ │ ├── parse-ui-test-fromfile.py │ │ ├── parse-ui-test.py │ │ ├── robo-test.sh │ │ └── ui-test.sh │ │ └── upload_coverage_report.sh ├── benchmark │ ├── build.gradle │ └── src │ │ └── main │ │ ├── AndroidManifest.xml │ │ └── java │ │ └── org │ │ └── mozilla │ │ └── fenix │ │ └── benchmark │ │ ├── BaselineProfilesStartupBenchmark.kt │ │ ├── StartupBenchmark.kt │ │ ├── baselineprofile │ │ └── StartupOnlyBaselineProfileGenerator.kt │ │ └── utils │ │ ├── Constants.kt │ │ └── MacroBenchmarkRule.kt ├── bors.toml ├── build.gradle ├── certificates │ ├── fenix_beta.pem │ ├── fenix_nightly.pem │ └── fenix_production.pem ├── codecov.yml ├── config │ ├── detekt.yml │ ├── license.template │ └── pre-push-recommended.sh ├── detekt-baseline.xml ├── docs │ ├── Acronym-dictionary.md │ ├── Addressing-a-performance-regression.md │ ├── Architecture-Decisions.md │ ├── Crash-Monitoring.md │ ├── Creating-a-release-branch.md │ ├── Data-Practices.md │ ├── Development-Test-Plan.md │ ├── Fennec-Migration.md │ ├── Firebase-Cloud-Messaging-for-WebPush.md │ ├── Firefox-for-Android-Team-Processes.md │ ├── Guide-to-merging-contributor-PRs.md │ ├── Home.md │ ├── Implementing-Telemetry.md │ ├── Implementing-a-Nimbus-Experiment.md │ ├── List-of-fenix-threads.md │ ├── Logging-Crash-Information.md │ ├── Metric-Feature-Tags.md │ ├── Secret-settings-debug-menu-instructions.md │ ├── Telemetry-implementation,-reviews,-renewals.md │ ├── Test-telemetry-pings.md │ ├── Working-with-Strings.md │ ├── adjust.md │ ├── architecture-overview.md │ ├── architectureexample │ │ ├── HistoryFragmentExample.kt │ │ ├── HistoryNavigationMiddlewareExample.kt │ │ ├── HistoryStorageMiddlewareExample.kt │ │ ├── HistoryStoreExample.kt │ │ └── HistoryTelemetryMiddlewareExample.kt │ ├── certificates.md │ ├── crash-reporting.md │ ├── experiments.md │ ├── l10nScreenshotsTests.md │ ├── manual-testing.md │ ├── metrics.md │ ├── release-checklist.md │ ├── substituting-local-gv.md │ ├── syncIntegrationTests.md │ └── telemetry.md ├── fastlane │ ├── Appfile │ └── Screengrabfile ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── ktlint-baseline.xml ├── l10n.toml ├── mozilla-detekt-rules │ ├── .gitignore │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── fenix │ │ │ │ └── detektrules │ │ │ │ ├── CustomRulesetConsoleReport.kt │ │ │ │ ├── CustomRulesetProvider.kt │ │ │ │ ├── MozillaCorrectUnitTestRunner.kt │ │ │ │ └── perf │ │ │ │ ├── MozillaBannedPropertyAccess.kt │ │ │ │ ├── MozillaRunBlockingCheck.kt │ │ │ │ ├── MozillaStrictModeSuppression.kt │ │ │ │ └── MozillaUseLazyMonitored.kt │ │ └── resources │ │ │ ├── META-INF │ │ │ └── services │ │ │ │ ├── io.gitlab.arturbosch.detekt.api.ConsoleReport │ │ │ │ └── io.gitlab.arturbosch.detekt.api.RuleSetProvider │ │ │ └── config.yml │ │ └── test │ │ └── java │ │ └── org │ │ └── mozilla │ │ └── fenix │ │ └── detektrules │ │ └── perf │ │ ├── MozillaBannedPropertyAccessTest.kt │ │ ├── MozillaStrictModeSuppressionTest.kt │ │ └── MozillaUseLazyMonitoredTest.kt ├── mozilla-lint-rules │ ├── .gitignore │ ├── build.gradle │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── mozilla │ │ │ └── fenix │ │ │ └── lintrules │ │ │ ├── AndroidSrcXmlDetector.kt │ │ │ ├── ButtonStyleXmlDetector.kt │ │ │ ├── ContextCompatDetector.kt │ │ │ ├── ImageViewAndroidTintXmlDetector.kt │ │ │ ├── LicenseCommentChecker.kt │ │ │ ├── LicenseDetector.kt │ │ │ ├── LintIssueRegistry.kt │ │ │ ├── TextViewAndroidSrcXmlDetector.kt │ │ │ └── perf │ │ │ └── ConstraintLayoutPerfDetector.kt │ │ └── test │ │ └── java │ │ └── org │ │ └── mozilla │ │ └── fenix │ │ └── lintrules │ │ ├── ContextCompatDetectorTest.kt │ │ ├── LicenseDetectorTest.kt │ │ └── perf │ │ └── ConstraintLayoutPerfDetectorTest.kt ├── plugins │ ├── apksize │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── ApkSizePlugin.kt │ └── fenixdependencies │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ └── main │ │ └── java │ │ └── FenixDependenciesPlugin.kt ├── settings.gradle └── tools │ ├── .gitignore │ ├── data_renewal_generate.py │ ├── data_renewal_request.py │ ├── run_benchmark.py │ ├── setup-startup-profiling.py │ ├── setup.cfg │ └── update-glean-tags.py ├── focus-android ├── .buildconfig.yml ├── .editorconfig ├── CODEOWNERS ├── CONTRIBUTING.md ├── README.md ├── Screengrabfile ├── app │ ├── .experimenter.yaml │ ├── .gitignore │ ├── build.gradle │ ├── lint-baseline.xml │ ├── lint.xml │ ├── metrics.yaml │ ├── nimbus.fml.yaml │ ├── pings.yaml │ ├── proguard-rules.pro │ ├── src │ │ ├── androidTest │ │ │ ├── assets │ │ │ │ ├── audioPage.html │ │ │ │ ├── cross-site-cookies.html │ │ │ │ ├── download.jpg │ │ │ │ ├── etpPages │ │ │ │ │ ├── adsTrackers.html │ │ │ │ │ ├── analyticsTrackers.html │ │ │ │ │ ├── otherTrackers.html │ │ │ │ │ └── socialTrackers.html │ │ │ │ ├── genericPage.html │ │ │ │ ├── global_privacy_control.html │ │ │ │ ├── htmlControls.html │ │ │ │ ├── image_test.html │ │ │ │ ├── mutedVideoPage.html │ │ │ │ ├── rabbit.jpg │ │ │ │ ├── resources │ │ │ │ │ ├── audioSample.mp3 │ │ │ │ │ └── clip.mp4 │ │ │ │ ├── same-site-cookies.html │ │ │ │ ├── service-worker.js │ │ │ │ ├── storage_check.html │ │ │ │ ├── storage_start.html │ │ │ │ ├── tab1.html │ │ │ │ ├── tab2.html │ │ │ │ ├── tab3.html │ │ │ │ ├── test.html │ │ │ │ └── videoPage.html │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── focus │ │ │ │ ├── activity │ │ │ │ ├── AddToHomescreenTest.kt │ │ │ │ ├── ContextMenusTest.kt │ │ │ │ ├── CustomTabTest.kt │ │ │ │ ├── DownloadFileTest.kt │ │ │ │ ├── EnhancedTrackingProtectionSettingsTest.kt │ │ │ │ ├── EraseBrowsingDataTest.kt │ │ │ │ ├── ErrorPagesTest.kt │ │ │ │ ├── FirstRunTest.kt │ │ │ │ ├── MediaPlaybackTest.kt │ │ │ │ ├── MozillaSupportPagesTest.kt │ │ │ │ ├── MultitaskingTest.kt │ │ │ │ ├── OldFirstRunTest.kt │ │ │ │ ├── OpenInExternalBrowserDialogueTest.kt │ │ │ │ ├── SafeBrowsingTest.kt │ │ │ │ ├── SearchTest.kt │ │ │ │ ├── SettingsAdvancedTest.kt │ │ │ │ ├── SettingsGeneralTest.kt │ │ │ │ ├── SettingsPrivacyTest.kt │ │ │ │ ├── SettingsTest.kt │ │ │ │ ├── ShortcutsTest.kt │ │ │ │ ├── SitePermissionsTest.kt │ │ │ │ ├── SwitchContextTest.kt │ │ │ │ ├── ThreeDotMainMenuTest.kt │ │ │ │ ├── URLAutocompleteTest.kt │ │ │ │ ├── WebControlsTest.kt │ │ │ │ └── robots │ │ │ │ │ ├── AddToHomeScreenRobot.kt │ │ │ │ │ ├── BrowserRobot.kt │ │ │ │ │ ├── CustomTabRobot.kt │ │ │ │ │ ├── DownloadRobot.kt │ │ │ │ │ ├── HomeScreenRobot.kt │ │ │ │ │ ├── NotificationRobot.kt │ │ │ │ │ ├── SearchRobot.kt │ │ │ │ │ ├── SettingsAdvancedMenuRobot.kt │ │ │ │ │ ├── SettingsGeneralMenuRobot.kt │ │ │ │ │ ├── SettingsMozillaMenuRobot.kt │ │ │ │ │ ├── SettingsPrivacyMenuRobot.kt │ │ │ │ │ ├── SettingsRobot.kt │ │ │ │ │ ├── SettingsSearchMenuRobot.kt │ │ │ │ │ ├── SettingsSitePermissionsRobot.kt │ │ │ │ │ ├── SiteSecurityInfoSheetRobot.kt │ │ │ │ │ ├── TabsTrayRobot.kt │ │ │ │ │ └── ThreeDotMainMenuRobot.kt │ │ │ │ ├── helpers │ │ │ │ ├── Constants.kt │ │ │ │ ├── DeleteFilesHelper.kt │ │ │ │ ├── EspressoHelper.kt │ │ │ │ ├── FeatureSettingsHelper.kt │ │ │ │ ├── HostScreencapScreenshotStrategy.java │ │ │ │ ├── MainActivityTestRule.kt │ │ │ │ ├── MockLocationUpdatesRule.kt │ │ │ │ ├── MockWebServerHelper.kt │ │ │ │ ├── RetryTestRule.kt │ │ │ │ ├── StringsHelper.kt │ │ │ │ ├── TestAssetHelper.kt │ │ │ │ ├── TestHelper.kt │ │ │ │ └── ext │ │ │ │ │ └── WaitNotNull.kt │ │ │ │ ├── idlingResources │ │ │ │ ├── RecyclerViewIdlingResource.kt │ │ │ │ └── SessionLoadedIdlingResource.kt │ │ │ │ ├── privacy │ │ │ │ ├── GlobalPrivacyControlTest.kt │ │ │ │ └── LocalSessionStorageTest.kt │ │ │ │ ├── screenshots │ │ │ │ ├── AllowListScreenshots.java │ │ │ │ ├── BrowserScreenScreenshots.java │ │ │ │ ├── ErrorPagesScreenshots.java │ │ │ │ ├── FirstRunScreenshots.kt │ │ │ │ ├── HomeScreenScreenshots.kt │ │ │ │ ├── NotificationScreenshots.java │ │ │ │ ├── ScreenshotTest.java │ │ │ │ └── SettingsScreenshots.kt │ │ │ │ └── testAnnotations │ │ │ │ └── SmokeTest.kt │ │ ├── beta │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_splash_screen.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_splash_screen.png │ │ │ │ └── values-night │ │ │ │ └── colors.xml │ │ ├── debug │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── focus │ │ │ │ │ ├── DebugFocusApplication.kt │ │ │ │ │ ├── utils │ │ │ │ │ └── AdjustHelper.java │ │ │ │ │ └── web │ │ │ │ │ └── Config.kt │ │ │ └── res │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ └── ic_launcher.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_foreground.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_foreground.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_foreground.png │ │ │ │ └── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_foreground.png │ │ ├── focusBeta │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── focus │ │ │ │ │ └── utils │ │ │ │ │ └── AdjustHelper.java │ │ │ └── res │ │ │ │ ├── drawable-land │ │ │ │ └── dark_background.xml │ │ │ │ ├── drawable-v24 │ │ │ │ ├── ic_launcher_foreground.xml │ │ │ │ └── icon_foreground.xml │ │ │ │ ├── drawable │ │ │ │ ├── dark_background.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── onboarding_logo.xml │ │ │ │ └── wordmark2.xml │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── values │ │ │ │ └── app.xml │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── focusDebug │ │ │ └── res │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── focusNightly │ │ │ └── res │ │ │ │ ├── values │ │ │ │ └── app.xml │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── focusRelease │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── focus │ │ │ │ │ ├── utils │ │ │ │ │ └── AdjustHelper.java │ │ │ │ │ └── web │ │ │ │ │ └── Config.kt │ │ │ └── res │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── klar │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── background_gradient_dark.xml │ │ │ │ └── wordmark2.xml │ │ │ │ └── values │ │ │ │ └── app.xml │ │ ├── klarBeta │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── focus │ │ │ │ │ └── utils │ │ │ │ │ └── AdjustHelper.java │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── onboarding_logo.xml │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── klarDebug │ │ │ └── res │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── klarNightly │ │ │ ├── drawable-v24 │ │ │ │ └── icon_foreground.xml │ │ │ ├── drawable │ │ │ │ ├── background_gradient_dark.xml │ │ │ │ ├── icon_background.xml │ │ │ │ └── toolbar_url_background.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ └── res │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── klarRelease │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── focus │ │ │ │ │ ├── utils │ │ │ │ │ └── AdjustHelper.java │ │ │ │ │ └── web │ │ │ │ │ └── Config.kt │ │ │ └── res │ │ │ │ └── xml-v25 │ │ │ │ └── shortcuts.xml │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── assets │ │ │ │ ├── error_style.css │ │ │ │ └── style.css │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── focus │ │ │ │ │ ├── Components.kt │ │ │ │ │ ├── FocusApplication.kt │ │ │ │ │ ├── activity │ │ │ │ │ ├── CrashListActivity.kt │ │ │ │ │ ├── CustomTabActivity.kt │ │ │ │ │ ├── EraseAndOpenShortcutActivity.kt │ │ │ │ │ ├── EraseShortcutActivity.kt │ │ │ │ │ ├── InstallFirefoxActivity.kt │ │ │ │ │ ├── IntentReceiverActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── TextActionActivity.kt │ │ │ │ │ ├── animation │ │ │ │ │ └── TransitionDrawableGroup.kt │ │ │ │ │ ├── appreview │ │ │ │ │ ├── AppReviewStep.kt │ │ │ │ │ └── AppReviewUtils.kt │ │ │ │ │ ├── autocomplete │ │ │ │ │ ├── AutocompleteAddFragment.kt │ │ │ │ │ ├── AutocompleteCustomDomainsPreference.kt │ │ │ │ │ ├── AutocompleteDefaultDomainsPreference.kt │ │ │ │ │ ├── AutocompleteDomainFormatter.kt │ │ │ │ │ ├── AutocompleteListFragment.kt │ │ │ │ │ ├── AutocompleteRemoveFragment.kt │ │ │ │ │ └── AutocompleteSettingsFragment.kt │ │ │ │ │ ├── biometrics │ │ │ │ │ ├── BiometricAuthenticationFragment.kt │ │ │ │ │ ├── BiometricAuthenticationFragmentCompose.kt │ │ │ │ │ └── LockObserver.kt │ │ │ │ │ ├── browser │ │ │ │ │ ├── BlockedTrackersMiddleware.kt │ │ │ │ │ ├── LocalizedContent.kt │ │ │ │ │ └── integration │ │ │ │ │ │ ├── BrowserMenuController.kt │ │ │ │ │ │ ├── BrowserToolbarIntegration.kt │ │ │ │ │ │ ├── FindInPageIntegration.kt │ │ │ │ │ │ ├── FullScreenIntegration.kt │ │ │ │ │ │ └── NavigationButtonsIntegration.kt │ │ │ │ │ ├── cfr │ │ │ │ │ └── CfrMiddleware.kt │ │ │ │ │ ├── components │ │ │ │ │ └── EngineProvider.kt │ │ │ │ │ ├── contextmenu │ │ │ │ │ └── ContextMenuCandidates.kt │ │ │ │ │ ├── cookiebanner │ │ │ │ │ ├── CookieBannerFragment.kt │ │ │ │ │ ├── CookieBannerOption.kt │ │ │ │ │ └── CookieBannerRejectAllPreference.kt │ │ │ │ │ ├── cookiebannerreducer │ │ │ │ │ ├── CookieBannerExceptionDetailsSwitch.kt │ │ │ │ │ ├── CookieBannerReducerDetailsPanel.kt │ │ │ │ │ ├── CookieBannerReducerItem.kt │ │ │ │ │ ├── CookieBannerReducerMiddleware.kt │ │ │ │ │ ├── CookieBannerReducerStatus.kt │ │ │ │ │ ├── CookieBannerReducerStore.kt │ │ │ │ │ └── DefaultCookieBannerReducerInteractor.kt │ │ │ │ │ ├── customtabs │ │ │ │ │ └── CustomTabsService.kt │ │ │ │ │ ├── downloads │ │ │ │ │ └── DownloadService.kt │ │ │ │ │ ├── engine │ │ │ │ │ ├── AppContentInterceptor.kt │ │ │ │ │ ├── ClientWrapper.kt │ │ │ │ │ ├── EngineSharedPreferencesListener.kt │ │ │ │ │ └── SanityCheckMiddleware.kt │ │ │ │ │ ├── exceptions │ │ │ │ │ ├── ExceptionsListFragment.kt │ │ │ │ │ └── ExceptionsRemoveFragment.kt │ │ │ │ │ ├── experiments │ │ │ │ │ └── NimbusSetup.kt │ │ │ │ │ ├── ext │ │ │ │ │ ├── Activity.kt │ │ │ │ │ ├── AndroidViewModel.kt │ │ │ │ │ ├── BrowserStore.kt │ │ │ │ │ ├── BrowserToolbar.kt │ │ │ │ │ ├── ContentState.kt │ │ │ │ │ ├── Context.kt │ │ │ │ │ ├── Fragment.kt │ │ │ │ │ ├── PreferenceFragmentCompat.kt │ │ │ │ │ ├── SessionState.kt │ │ │ │ │ ├── String.kt │ │ │ │ │ └── Uri.kt │ │ │ │ │ ├── firstrun │ │ │ │ │ ├── FirstrunCardView.kt │ │ │ │ │ └── FirstrunPagerAdapter.kt │ │ │ │ │ ├── fragment │ │ │ │ │ ├── AddToHomescreenDialogFragment.kt │ │ │ │ │ ├── BaseFragment.kt │ │ │ │ │ ├── BrowserFragment.kt │ │ │ │ │ ├── CrashReporterFragment.kt │ │ │ │ │ ├── FirstrunFragment.kt │ │ │ │ │ ├── UrlInputFragment.kt │ │ │ │ │ ├── about │ │ │ │ │ │ ├── AboutFragment.kt │ │ │ │ │ │ └── SecretSettingsUnlocker.kt │ │ │ │ │ └── onboarding │ │ │ │ │ │ ├── OnboardingController.kt │ │ │ │ │ │ ├── OnboardingFirstFragment.kt │ │ │ │ │ │ ├── OnboardingFirstScreenCompose.kt │ │ │ │ │ │ ├── OnboardingInteractor.kt │ │ │ │ │ │ ├── OnboardingSecondFragment.kt │ │ │ │ │ │ ├── OnboardingSecondScreenCompose.kt │ │ │ │ │ │ ├── OnboardingStep.kt │ │ │ │ │ │ └── OnboardingStorage.kt │ │ │ │ │ ├── input │ │ │ │ │ └── InputToolbarIntegration.kt │ │ │ │ │ ├── locale │ │ │ │ │ ├── LocaleManager.kt │ │ │ │ │ ├── Locales.kt │ │ │ │ │ └── screen │ │ │ │ │ │ ├── DefaultLanguageScreenInteractor.kt │ │ │ │ │ │ ├── Language.kt │ │ │ │ │ │ ├── LanguageFragment.kt │ │ │ │ │ │ ├── LanguageListItem.kt │ │ │ │ │ │ ├── LanguageMiddleware.kt │ │ │ │ │ │ ├── LanguageScreenStore.kt │ │ │ │ │ │ ├── LanguageStorage.kt │ │ │ │ │ │ ├── LocaleDescriptor.kt │ │ │ │ │ │ └── LocaleFragmentCompose.kt │ │ │ │ │ ├── media │ │ │ │ │ └── MediaSessionService.kt │ │ │ │ │ ├── menu │ │ │ │ │ ├── ToolbarMenu.kt │ │ │ │ │ ├── browser │ │ │ │ │ │ ├── CustomTabMenu.kt │ │ │ │ │ │ └── DefaultBrowserMenu.kt │ │ │ │ │ └── home │ │ │ │ │ │ ├── HomeMenu.kt │ │ │ │ │ │ └── HomeMenuItem.kt │ │ │ │ │ ├── navigation │ │ │ │ │ ├── MainActivityNavigation.kt │ │ │ │ │ ├── Navigator.kt │ │ │ │ │ └── StoreLink.kt │ │ │ │ │ ├── open │ │ │ │ │ ├── AppAdapter.kt │ │ │ │ │ ├── AppViewHolder.kt │ │ │ │ │ ├── InstallBannerViewHolder.kt │ │ │ │ │ └── OpenWithFragment.kt │ │ │ │ │ ├── perf │ │ │ │ │ └── Performance.kt │ │ │ │ │ ├── search │ │ │ │ │ ├── ManualAddSearchEnginePreference.kt │ │ │ │ │ ├── MultiselectSearchEngineListPreference.kt │ │ │ │ │ ├── RadioSearchEngineListPreference.kt │ │ │ │ │ ├── SearchEngineListPreference.kt │ │ │ │ │ ├── SearchEnginePreference.kt │ │ │ │ │ ├── SearchFilterMiddleware.kt │ │ │ │ │ └── SearchMigration.kt │ │ │ │ │ ├── searchsuggestions │ │ │ │ │ ├── SearchSuggestionsPreferences.kt │ │ │ │ │ ├── SearchSuggestionsViewModel.kt │ │ │ │ │ └── ui │ │ │ │ │ │ ├── SearchOverlay.kt │ │ │ │ │ │ ├── SearchSuggestionsFragment.kt │ │ │ │ │ │ └── SearchSuggestionsPreference.kt │ │ │ │ │ ├── searchwidget │ │ │ │ │ ├── ExternalIntentNavigation.kt │ │ │ │ │ ├── PromoteSearchWidgetDialogCompose.kt │ │ │ │ │ ├── SearchWidgetProvider.kt │ │ │ │ │ ├── SearchWidgetUtils.kt │ │ │ │ │ └── VoiceSearchActivity.kt │ │ │ │ │ ├── session │ │ │ │ │ ├── IntentProcessor.kt │ │ │ │ │ ├── PrivateNotificationFeature.kt │ │ │ │ │ ├── SessionNotificationService.kt │ │ │ │ │ ├── VisibilityLifeCycleCallback.kt │ │ │ │ │ └── ui │ │ │ │ │ │ ├── TabViewHolder.kt │ │ │ │ │ │ ├── TabsAdapter.kt │ │ │ │ │ │ └── TabsPopup.kt │ │ │ │ │ ├── settings │ │ │ │ │ ├── AboutLibrariesFragment.kt │ │ │ │ │ ├── BaseComposeFragment.kt │ │ │ │ │ ├── BaseSettingsFragment.kt │ │ │ │ │ ├── BaseSettingsLikeFragment.kt │ │ │ │ │ ├── GeneralSettingsFragment.kt │ │ │ │ │ ├── HttpsOnlyModePreference.kt │ │ │ │ │ ├── InstalledSearchEnginesSettingsFragment.kt │ │ │ │ │ ├── LearnMoreSwitchPreference.kt │ │ │ │ │ ├── ManualAddSearchEngineSettingsFragment.kt │ │ │ │ │ ├── MozillaSettingsFragment.kt │ │ │ │ │ ├── RadioButtonPreference.kt │ │ │ │ │ ├── RemoveSearchEnginesSettingsFragment.kt │ │ │ │ │ ├── SafeBrowsingSwitchPreference.kt │ │ │ │ │ ├── SearchSettingsFragment.kt │ │ │ │ │ ├── SettingsFragment.kt │ │ │ │ │ ├── StatePreference.kt │ │ │ │ │ ├── advanced │ │ │ │ │ │ ├── AdvancedSettingsFragment.kt │ │ │ │ │ │ ├── SecretSettingsFragment.kt │ │ │ │ │ │ └── SharedPreferenceUpdater.kt │ │ │ │ │ ├── permissions │ │ │ │ │ │ ├── SitePermissionOption.kt │ │ │ │ │ │ ├── SitePermissionsFragment.kt │ │ │ │ │ │ └── permissionoptions │ │ │ │ │ │ │ ├── DefaultSitePermissionOptionsScreenInteractor.kt │ │ │ │ │ │ │ ├── HardwarePermissionCheckFeature.kt │ │ │ │ │ │ │ ├── SitePermission.kt │ │ │ │ │ │ │ ├── SitePermissionOptionListItem.kt │ │ │ │ │ │ │ ├── SitePermissionOptionsFragment.kt │ │ │ │ │ │ │ ├── SitePermissionOptionsFragmentCompose.kt │ │ │ │ │ │ │ ├── SitePermissionOptionsScreenStore.kt │ │ │ │ │ │ │ ├── SitePermissionOptionsStorage.kt │ │ │ │ │ │ │ └── SitePermissionOptionsStorageMiddleware.kt │ │ │ │ │ └── privacy │ │ │ │ │ │ ├── ConnectionDetailsPanel.kt │ │ │ │ │ │ ├── PreferenceSwitch.kt │ │ │ │ │ │ ├── PreferenceToolTipCompose.kt │ │ │ │ │ │ ├── PrivacySecuritySettingsFragment.kt │ │ │ │ │ │ ├── TrackingProtectionPanel.kt │ │ │ │ │ │ └── studies │ │ │ │ │ │ ├── StudiesAdapter.kt │ │ │ │ │ │ ├── StudiesFragment.kt │ │ │ │ │ │ ├── StudiesListItem.kt │ │ │ │ │ │ ├── StudiesRecyclerView.kt │ │ │ │ │ │ ├── StudiesViewHolder.kt │ │ │ │ │ │ └── StudiesViewModel.kt │ │ │ │ │ ├── shortcut │ │ │ │ │ ├── HomeScreen.kt │ │ │ │ │ └── IconGenerator.kt │ │ │ │ │ ├── state │ │ │ │ │ ├── AppAction.kt │ │ │ │ │ ├── AppReducer.kt │ │ │ │ │ ├── AppState.kt │ │ │ │ │ └── AppStore.kt │ │ │ │ │ ├── telemetry │ │ │ │ │ ├── ActivationPing.kt │ │ │ │ │ ├── BrowsersCache.kt │ │ │ │ │ ├── FactsProcessor.kt │ │ │ │ │ ├── FenixProductDetector.kt │ │ │ │ │ ├── GleanMetricsService.kt │ │ │ │ │ ├── MetricsService.kt │ │ │ │ │ ├── ProfilerMarkerFactProcessor.kt │ │ │ │ │ ├── TelemetryMiddleware.kt │ │ │ │ │ └── startuptelemetry │ │ │ │ │ │ ├── AppStartReasonProvider.kt │ │ │ │ │ │ ├── DefaultActivityLifecycleCallbacks.kt │ │ │ │ │ │ ├── StartupActivityLog.kt │ │ │ │ │ │ ├── StartupPathProvider.kt │ │ │ │ │ │ ├── StartupStateProvider.kt │ │ │ │ │ │ └── StartupTypeTelemetry.kt │ │ │ │ │ ├── theme │ │ │ │ │ └── Theme.kt │ │ │ │ │ ├── topsites │ │ │ │ │ ├── DefaultTopSitesStorage.kt │ │ │ │ │ ├── DefaultTopSitesView.kt │ │ │ │ │ ├── RenameTopSiteDialog.kt │ │ │ │ │ ├── TopSites.kt │ │ │ │ │ └── TopSitesOverlay.kt │ │ │ │ │ ├── ui │ │ │ │ │ ├── dialog │ │ │ │ │ │ └── FocusDialog.kt │ │ │ │ │ ├── menu │ │ │ │ │ │ ├── CustomDropdownMenu.kt │ │ │ │ │ │ └── MenuItem.kt │ │ │ │ │ └── theme │ │ │ │ │ │ ├── FocusColors.kt │ │ │ │ │ │ ├── FocusDimensions.kt │ │ │ │ │ │ ├── FocusTheme.kt │ │ │ │ │ │ └── FocusTypography.kt │ │ │ │ │ ├── utils │ │ │ │ │ ├── AppConstants.kt │ │ │ │ │ ├── ClickableSubstringLink.kt │ │ │ │ │ ├── Features.kt │ │ │ │ │ ├── FocusSnackbar.kt │ │ │ │ │ ├── FocusSnackbarDelegate.kt │ │ │ │ │ ├── HtmlLoader.kt │ │ │ │ │ ├── IntentUtils.kt │ │ │ │ │ ├── OneShotOnPreDrawListener.kt │ │ │ │ │ ├── SearchUtils.kt │ │ │ │ │ ├── Settings.kt │ │ │ │ │ ├── SupportUtils.kt │ │ │ │ │ └── ViewUtils.kt │ │ │ │ │ └── widget │ │ │ │ │ ├── AboutPreference.kt │ │ │ │ │ ├── CookiesPreference.kt │ │ │ │ │ ├── DefaultBrowserPreference.kt │ │ │ │ │ ├── LocaleListPreference.java │ │ │ │ │ ├── MozillaPreference.kt │ │ │ │ │ ├── ResizableKeyboardCoordinatorLayout.kt │ │ │ │ │ ├── ResizableKeyboardLinearLayout.kt │ │ │ │ │ ├── ResizableKeyboardViewDelegate.kt │ │ │ │ │ ├── SwitchWithDescription.kt │ │ │ │ │ └── TelemetrySwitchPreference.kt │ │ │ └── res │ │ │ │ ├── anim │ │ │ │ ├── erase_animation.xml │ │ │ │ ├── fab_reveal.xml │ │ │ │ ├── fade_in.xml │ │ │ │ └── fade_out.xml │ │ │ │ ├── color │ │ │ │ ├── preference_title_text.xml │ │ │ │ └── selected_search_engine_state.xml │ │ │ │ ├── drawable-hdpi │ │ │ │ ├── focus_search_widget.png │ │ │ │ ├── focus_search_widget_promote_dialog.png │ │ │ │ ├── focus_snackbar_background.xml │ │ │ │ ├── onboarding_img1.png │ │ │ │ ├── onboarding_img2.png │ │ │ │ ├── onboarding_img3.png │ │ │ │ └── onboarding_img4.png │ │ │ │ ├── drawable-land-night │ │ │ │ └── home_background.xml │ │ │ │ ├── drawable-land │ │ │ │ ├── dark_background.xml │ │ │ │ └── home_background.xml │ │ │ │ ├── drawable-night-hdpi │ │ │ │ ├── focus_search_widget.png │ │ │ │ └── focus_search_widget_promote_dialog.png │ │ │ │ ├── drawable-night │ │ │ │ └── home_background.xml │ │ │ │ ├── drawable-nodpi │ │ │ │ └── ic_homescreen_shape.png │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_splash_screen.xml │ │ │ │ ├── drawable-xhdpi │ │ │ │ ├── onboarding_img1.png │ │ │ │ ├── onboarding_img2.png │ │ │ │ ├── onboarding_img3.png │ │ │ │ └── onboarding_img4.png │ │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── onboarding_img1.png │ │ │ │ ├── onboarding_img2.png │ │ │ │ ├── onboarding_img3.png │ │ │ │ └── onboarding_img4.png │ │ │ │ ├── drawable │ │ │ │ ├── background_gradient.xml │ │ │ │ ├── background_install_banner.xml │ │ │ │ ├── background_list_item_current_session.xml │ │ │ │ ├── background_list_item_session.xml │ │ │ │ ├── background_open_in_item.xml │ │ │ │ ├── background_search_suggestion_section.xml │ │ │ │ ├── background_snackbar.xml │ │ │ │ ├── context_menu_navigation_view_background.xml │ │ │ │ ├── dark_background.xml │ │ │ │ ├── dialog_background.xml │ │ │ │ ├── dialog_warning_background.xml │ │ │ │ ├── find_in_page_background.xml │ │ │ │ ├── firstrun_button_background.xml │ │ │ │ ├── foreground_list_item_erase.xml │ │ │ │ ├── highlight_dot.xml │ │ │ │ ├── home_background.xml │ │ │ │ ├── ic_arrowhead_down.xml │ │ │ │ ├── ic_arrowhead_up.xml │ │ │ │ ├── ic_autoplay_enabled.xml │ │ │ │ ├── ic_back_button.xml │ │ │ │ ├── ic_camera_enabled.xml │ │ │ │ ├── ic_check.xml │ │ │ │ ├── ic_cookies_disable.xml │ │ │ │ ├── ic_developer.xml │ │ │ │ ├── ic_download.xml │ │ │ │ ├── ic_error_session_crashed.xml │ │ │ │ ├── ic_favorite.xml │ │ │ │ ├── ic_fingerprint.xml │ │ │ │ ├── ic_firefox.xml │ │ │ │ ├── ic_info.xml │ │ │ │ ├── ic_internet.xml │ │ │ │ ├── ic_language.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── ic_launcher_foreground.xml │ │ │ │ ├── ic_link.xml │ │ │ │ ├── ic_menu.xml │ │ │ │ ├── ic_mozilla.xml │ │ │ │ ├── ic_notification.xml │ │ │ │ ├── ic_reorder.xml │ │ │ │ ├── ic_shortcut_erase.xml │ │ │ │ ├── ic_splash_screen.png │ │ │ │ ├── ic_tab_new.xml │ │ │ │ ├── indicator_onboarding.xml │ │ │ │ ├── indicator_onboarding_default.xml │ │ │ │ ├── indicator_onboarding_selected.xml │ │ │ │ ├── menu_item_dark_background.xml │ │ │ │ ├── mozac_ic_broken_lock.xml │ │ │ │ ├── onboarding_logo.xml │ │ │ │ ├── onboarding_second_screen_icon.png │ │ │ │ ├── photon_progressbar.xml │ │ │ │ ├── preference_foreground_disabled.xml │ │ │ │ ├── preference_multiselect_search_engine_foreground.xml │ │ │ │ ├── scrollbar_thumb.xml │ │ │ │ ├── tab_number_border.xml │ │ │ │ ├── toolbar_url_background.xml │ │ │ │ ├── top_rounded_corners_bottom_sheet_background.xml │ │ │ │ ├── urlbar_background.xml │ │ │ │ └── wordmark2.xml │ │ │ │ ├── font │ │ │ │ ├── metropolis.xml │ │ │ │ ├── metropolis_black.ttf │ │ │ │ ├── metropolis_blackitalic.ttf │ │ │ │ ├── metropolis_bold.ttf │ │ │ │ ├── metropolis_bolditalic.ttf │ │ │ │ ├── metropolis_extrabold.ttf │ │ │ │ ├── metropolis_extrabolditalic.ttf │ │ │ │ ├── metropolis_extralighitalic.ttf │ │ │ │ ├── metropolis_extralight.ttf │ │ │ │ ├── metropolis_light.ttf │ │ │ │ ├── metropolis_lightitalic.ttf │ │ │ │ ├── metropolis_medium.ttf │ │ │ │ ├── metropolis_mediumitalic.ttf │ │ │ │ ├── metropolis_regular.ttf │ │ │ │ ├── metropolis_regularitalic.ttf │ │ │ │ ├── metropolis_semibold.ttf │ │ │ │ ├── metropolis_semibolditalic.ttf │ │ │ │ ├── metropolis_thin.ttf │ │ │ │ └── metropolis_thinitalic.ttf │ │ │ │ ├── layout │ │ │ │ ├── active_study_item.xml │ │ │ │ ├── activity_customtab.xml │ │ │ │ ├── activity_info.xml │ │ │ │ ├── activity_main.xml │ │ │ │ ├── connection_details.xml │ │ │ │ ├── cookie_banner_reducer_details.xml │ │ │ │ ├── cookies_preference.xml │ │ │ │ ├── custom_tab_menu_item.xml │ │ │ │ ├── dialog_add_to_homescreen2.xml │ │ │ │ ├── dialog_full_screen_notification.xml │ │ │ │ ├── dialog_tracking_protection_sheet.xml │ │ │ │ ├── firstrun_page.xml │ │ │ │ ├── focus_preference.xml │ │ │ │ ├── focus_preference_category_no_title.xml │ │ │ │ ├── focus_preference_compose_layout.xml │ │ │ │ ├── focus_preference_left_checkbox.xml │ │ │ │ ├── focus_preference_new_tab.xml │ │ │ │ ├── focus_preference_no_icon.xml │ │ │ │ ├── focus_snackbar.xml │ │ │ │ ├── fragment_about.xml │ │ │ │ ├── fragment_about_libraries.xml │ │ │ │ ├── fragment_autocomplete_add_domain.xml │ │ │ │ ├── fragment_autocomplete_customdomains.xml │ │ │ │ ├── fragment_browser.xml │ │ │ │ ├── fragment_crash_reporter.xml │ │ │ │ ├── fragment_exceptions_domains.xml │ │ │ │ ├── fragment_firstrun.xml │ │ │ │ ├── fragment_info.xml │ │ │ │ ├── fragment_open_with.xml │ │ │ │ ├── fragment_search_suggestions.xml │ │ │ │ ├── fragment_settings.xml │ │ │ │ ├── fragment_studies.xml │ │ │ │ ├── fragment_urlinput.xml │ │ │ │ ├── item_add_custom_domain.xml │ │ │ │ ├── item_app.xml │ │ │ │ ├── item_custom_domain.xml │ │ │ │ ├── item_indicator_menu_button.xml │ │ │ │ ├── item_install_banner.xml │ │ │ │ ├── item_session.xml │ │ │ │ ├── menu_item.xml │ │ │ │ ├── menu_navigation.xml │ │ │ │ ├── popup_tabs.xml │ │ │ │ ├── preference_default_browser.xml │ │ │ │ ├── preference_manual_add_search_engine.xml │ │ │ │ ├── preference_radio_button.xml │ │ │ │ ├── preference_screen_header_layout.xml │ │ │ │ ├── preference_search_engine_chooser.xml │ │ │ │ ├── preference_section_header_layout.xml │ │ │ │ ├── preference_switch_learn_more.xml │ │ │ │ ├── search_engine_checkbox_button.xml │ │ │ │ ├── search_engine_radio_button.xml │ │ │ │ ├── studies_section_item.xml │ │ │ │ ├── switch_with_description.xml │ │ │ │ └── toolbar.xml │ │ │ │ ├── menu │ │ │ │ ├── menu_autocomplete_add.xml │ │ │ │ ├── menu_autocomplete_list.xml │ │ │ │ ├── menu_autocomplete_remove.xml │ │ │ │ ├── menu_exceptions_list.xml │ │ │ │ ├── menu_remove_search_engines.xml │ │ │ │ ├── menu_search_engine_manual_add.xml │ │ │ │ └── menu_search_engines.xml │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ └── ic_launcher.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── raw │ │ │ │ ├── about.html │ │ │ │ ├── gpl.html │ │ │ │ ├── initial_experiments.json │ │ │ │ ├── licenses.html │ │ │ │ └── rights.html │ │ │ │ ├── transition │ │ │ │ └── firstrun_exit.xml │ │ │ │ ├── values-ace │ │ │ │ └── strings.xml │ │ │ │ ├── values-af │ │ │ │ └── strings.xml │ │ │ │ ├── values-am │ │ │ │ └── strings.xml │ │ │ │ ├── values-an │ │ │ │ └── strings.xml │ │ │ │ ├── values-anp │ │ │ │ └── strings.xml │ │ │ │ ├── values-ar │ │ │ │ └── strings.xml │ │ │ │ ├── values-ast │ │ │ │ └── strings.xml │ │ │ │ ├── values-ay │ │ │ │ └── strings.xml │ │ │ │ ├── values-az │ │ │ │ └── strings.xml │ │ │ │ ├── values-be │ │ │ │ └── strings.xml │ │ │ │ ├── values-bg │ │ │ │ └── strings.xml │ │ │ │ ├── values-bn │ │ │ │ └── strings.xml │ │ │ │ ├── values-bo │ │ │ │ └── strings.xml │ │ │ │ ├── values-bs │ │ │ │ └── strings.xml │ │ │ │ ├── values-ca │ │ │ │ └── strings.xml │ │ │ │ ├── values-cak │ │ │ │ └── strings.xml │ │ │ │ ├── values-co │ │ │ │ └── strings.xml │ │ │ │ ├── values-cs │ │ │ │ └── strings.xml │ │ │ │ ├── values-cy │ │ │ │ └── strings.xml │ │ │ │ ├── values-da │ │ │ │ └── strings.xml │ │ │ │ ├── values-de │ │ │ │ └── strings.xml │ │ │ │ ├── values-dsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-el │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rCA │ │ │ │ └── strings.xml │ │ │ │ ├── values-en-rGB │ │ │ │ └── strings.xml │ │ │ │ ├── values-eo │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rAR │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rCL │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rES │ │ │ │ └── strings.xml │ │ │ │ ├── values-es-rMX │ │ │ │ └── strings.xml │ │ │ │ ├── values-et │ │ │ │ └── strings.xml │ │ │ │ ├── values-eu │ │ │ │ └── strings.xml │ │ │ │ ├── values-fa │ │ │ │ └── strings.xml │ │ │ │ ├── values-fi │ │ │ │ └── strings.xml │ │ │ │ ├── values-fr │ │ │ │ └── strings.xml │ │ │ │ ├── values-fur │ │ │ │ └── strings.xml │ │ │ │ ├── values-fy-rNL │ │ │ │ └── strings.xml │ │ │ │ ├── values-ga-rIE │ │ │ │ └── strings.xml │ │ │ │ ├── values-gl │ │ │ │ └── strings.xml │ │ │ │ ├── values-gu-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hi-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-hr │ │ │ │ └── strings.xml │ │ │ │ ├── values-hsb │ │ │ │ └── strings.xml │ │ │ │ ├── values-hu │ │ │ │ └── strings.xml │ │ │ │ ├── values-hus │ │ │ │ └── strings.xml │ │ │ │ ├── values-hy-rAM │ │ │ │ └── strings.xml │ │ │ │ ├── values-ia │ │ │ │ └── strings.xml │ │ │ │ ├── values-in │ │ │ │ └── strings.xml │ │ │ │ ├── values-is │ │ │ │ └── strings.xml │ │ │ │ ├── values-it │ │ │ │ └── strings.xml │ │ │ │ ├── values-iw │ │ │ │ └── strings.xml │ │ │ │ ├── values-ixl │ │ │ │ └── strings.xml │ │ │ │ ├── values-ja │ │ │ │ └── strings.xml │ │ │ │ ├── values-jv │ │ │ │ └── strings.xml │ │ │ │ ├── values-ka │ │ │ │ └── strings.xml │ │ │ │ ├── values-kaa │ │ │ │ └── strings.xml │ │ │ │ ├── values-kab │ │ │ │ └── strings.xml │ │ │ │ ├── values-kk │ │ │ │ └── strings.xml │ │ │ │ ├── values-ko │ │ │ │ └── strings.xml │ │ │ │ ├── values-kw │ │ │ │ └── strings.xml │ │ │ │ ├── values-lo │ │ │ │ └── strings.xml │ │ │ │ ├── values-lt │ │ │ │ └── strings.xml │ │ │ │ ├── values-meh │ │ │ │ └── strings.xml │ │ │ │ ├── values-mix │ │ │ │ └── strings.xml │ │ │ │ ├── values-mr │ │ │ │ └── strings.xml │ │ │ │ ├── values-ms │ │ │ │ └── strings.xml │ │ │ │ ├── values-my │ │ │ │ └── strings.xml │ │ │ │ ├── values-nb-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-ne-rNP │ │ │ │ └── strings.xml │ │ │ │ ├── values-night │ │ │ │ └── colors.xml │ │ │ │ ├── values-nl │ │ │ │ └── strings.xml │ │ │ │ ├── values-nn-rNO │ │ │ │ └── strings.xml │ │ │ │ ├── values-nv │ │ │ │ └── strings.xml │ │ │ │ ├── values-oc │ │ │ │ └── strings.xml │ │ │ │ ├── values-pa-rIN │ │ │ │ └── strings.xml │ │ │ │ ├── values-pai │ │ │ │ └── strings.xml │ │ │ │ ├── values-pl │ │ │ │ └── strings.xml │ │ │ │ ├── values-ppl │ │ │ │ └── strings.xml │ │ │ │ ├── values-pt-rBR │ │ │ │ └── strings.xml │ │ │ │ ├── values-quc │ │ │ │ └── strings.xml │ │ │ │ ├── values-quy │ │ │ │ └── strings.xml │ │ │ │ ├── values-ro │ │ │ │ └── strings.xml │ │ │ │ ├── values-ru │ │ │ │ └── strings.xml │ │ │ │ ├── values-si │ │ │ │ └── strings.xml │ │ │ │ ├── values-sk │ │ │ │ └── strings.xml │ │ │ │ ├── values-skr │ │ │ │ └── strings.xml │ │ │ │ ├── values-sl │ │ │ │ └── strings.xml │ │ │ │ ├── values-sn │ │ │ │ └── strings.xml │ │ │ │ ├── values-sq │ │ │ │ └── strings.xml │ │ │ │ ├── values-sr │ │ │ │ └── strings.xml │ │ │ │ ├── values-su │ │ │ │ └── strings.xml │ │ │ │ ├── values-sv-rSE │ │ │ │ └── strings.xml │ │ │ │ ├── values-sw480dp │ │ │ │ └── dimens.xml │ │ │ │ ├── values-sw600dp │ │ │ │ └── dimens.xml │ │ │ │ ├── values-ta │ │ │ │ └── strings.xml │ │ │ │ ├── values-te │ │ │ │ └── strings.xml │ │ │ │ ├── values-tg │ │ │ │ └── strings.xml │ │ │ │ ├── values-th │ │ │ │ └── strings.xml │ │ │ │ ├── values-tr │ │ │ │ └── strings.xml │ │ │ │ ├── values-trs │ │ │ │ └── strings.xml │ │ │ │ ├── values-tsz │ │ │ │ └── strings.xml │ │ │ │ ├── values-tt │ │ │ │ └── strings.xml │ │ │ │ ├── values-uk │ │ │ │ └── strings.xml │ │ │ │ ├── values-ur │ │ │ │ └── strings.xml │ │ │ │ ├── values-vi │ │ │ │ └── strings.xml │ │ │ │ ├── values-wo │ │ │ │ └── strings.xml │ │ │ │ ├── values-yua │ │ │ │ └── strings.xml │ │ │ │ ├── values-zam │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rCN │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rHK │ │ │ │ └── strings.xml │ │ │ │ ├── values-zh-rTW │ │ │ │ └── strings.xml │ │ │ │ ├── values │ │ │ │ ├── app.xml │ │ │ │ ├── attrs.xml │ │ │ │ ├── colors.xml │ │ │ │ ├── configuration.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── fonts.xml │ │ │ │ ├── ids.xml │ │ │ │ ├── preference_keys.xml │ │ │ │ ├── static_strings.xml │ │ │ │ ├── strings.xml │ │ │ │ ├── strings_references.xml │ │ │ │ └── styles.xml │ │ │ │ └── xml │ │ │ │ ├── advanced_settings.xml │ │ │ │ ├── autocomplete.xml │ │ │ │ ├── cookie_banner_settings.xml │ │ │ │ ├── experiments_settings.xml │ │ │ │ ├── general_settings.xml │ │ │ │ ├── manual_add_search_engine.xml │ │ │ │ ├── mozilla_settings.xml │ │ │ │ ├── privacy_security_settings.xml │ │ │ │ ├── provider_paths.xml │ │ │ │ ├── remove_search_engines.xml │ │ │ │ ├── search_engine_settings.xml │ │ │ │ ├── search_settings.xml │ │ │ │ ├── search_widget_info.xml │ │ │ │ ├── secret_settings.xml │ │ │ │ ├── settings.xml │ │ │ │ └── site_permissions.xml │ │ ├── nightly │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── mozilla │ │ │ │ │ └── focus │ │ │ │ │ ├── utils │ │ │ │ │ └── AdjustHelper.java │ │ │ │ │ └── web │ │ │ │ │ └── Config.kt │ │ │ └── res │ │ │ │ ├── drawable-land │ │ │ │ └── dark_background.xml │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_splash_screen.xml │ │ │ │ ├── drawable │ │ │ │ ├── dark_background.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── ic_launcher_foreground.xml │ │ │ │ ├── ic_splash_screen.png │ │ │ │ ├── onboarding_logo.xml │ │ │ │ └── wordmark2.xml │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ └── ic_launcher.xml │ │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ │ └── values-night │ │ │ │ └── colors.xml │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── mozilla │ │ │ │ └── focus │ │ │ │ ├── TestFocusApplication.kt │ │ │ │ ├── animation │ │ │ │ └── TransitionDrawableGroupTest.java │ │ │ │ ├── biometrics │ │ │ │ └── BiometricAuthenticationFragmentTest.kt │ │ │ │ ├── browser │ │ │ │ └── integration │ │ │ │ │ ├── BrowserToolbarIntegrationTest.kt │ │ │ │ │ ├── FindInPageIntegrationTest.kt │ │ │ │ │ ├── FullScreenIntegrationTest.kt │ │ │ │ │ └── InputToolbarIntegrationTest.kt │ │ │ │ ├── cfr │ │ │ │ └── CfrMiddlewareTest.kt │ │ │ │ ├── contextmenu │ │ │ │ └── ContextMenuCandidatesTest.kt │ │ │ │ ├── experiments │ │ │ │ └── NimbusSetupTest.kt │ │ │ │ ├── ext │ │ │ │ ├── BrowserToolbarTest.kt │ │ │ │ ├── StringTest.kt │ │ │ │ └── UriTest.kt │ │ │ │ ├── locale │ │ │ │ └── LocalesTest.kt │ │ │ │ ├── menu │ │ │ │ └── BrowserMenuControllerTest.kt │ │ │ │ ├── onboarding │ │ │ │ ├── OnboardingControllerTest.kt │ │ │ │ └── OnboardingStorageTest.kt │ │ │ │ ├── searchsuggestions │ │ │ │ └── SearchSuggestionsViewModelTest.kt │ │ │ │ ├── searchwidget │ │ │ │ ├── ExternalIntentNavigationTest.kt │ │ │ │ └── SearchWidgetProviderTest.kt │ │ │ │ ├── settings │ │ │ │ └── SearchEngineValidationTest.kt │ │ │ │ ├── shortcut │ │ │ │ ├── HomeScreenTest.kt │ │ │ │ └── IconGeneratorTest.kt │ │ │ │ ├── sitepermissions │ │ │ │ ├── SitePermissionOptionsStorageTest.kt │ │ │ │ ├── SitePermissionOptionsStoreTest.kt │ │ │ │ └── SitePermissionsFragmentTest.kt │ │ │ │ ├── telemetry │ │ │ │ ├── GleanMetricsServiceTest.kt │ │ │ │ ├── ProfilerMarkerFactProcessorTest.kt │ │ │ │ ├── StartupActivityLogTest.kt │ │ │ │ ├── StartupPathProviderTest.kt │ │ │ │ ├── StartupStateProviderTest.kt │ │ │ │ └── StartupTypeTelemetryTest.kt │ │ │ │ ├── topsites │ │ │ │ └── DefaultTopSitesStorageTest.kt │ │ │ │ └── utils │ │ │ │ ├── IntentUtilsTest.kt │ │ │ │ └── SupportUtilsTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ └── tags.yaml ├── automation │ └── taskcluster │ │ └── androidTest │ │ ├── flank-arm-beta.yml │ │ ├── flank-arm-start-test-robo.yml │ │ ├── flank-arm-start-test.yml │ │ ├── flank-arm64-v8a.yml │ │ ├── flank-x86.yml │ │ ├── parse-ui-test-fromfile.py │ │ ├── parse-ui-test.py │ │ ├── robo-test.sh │ │ └── ui-test.sh ├── build.gradle ├── codecov.yml ├── docs │ ├── Adjust-Usage.md │ ├── Architecture-Decisions.md │ ├── Battery-Debugging.md │ ├── Content-blocking.md │ ├── Crash-Reporting-with-Sentry.md │ ├── Development-Custom-GeckoView.md │ ├── Feature-&-Issue-workflow.md │ ├── GeckoView-(In-Progress).md │ ├── Home.md │ ├── Homescreen-Tips.md │ ├── Multisession-architecture.md │ ├── Recommended-pre-push-hook.md │ ├── Release-Process.md │ ├── Release-tracks.md │ ├── Removing-strings.md │ ├── Sprint-Process.md │ ├── Telemetry.md │ ├── UI-Test.md │ └── l10n-Screenshot-Generation.md ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── l10n.toml ├── plugins │ └── focusdependencies │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ └── main │ │ └── java │ │ └── FocusDependenciesPlugin.kt ├── quality │ ├── checkstyle.xml │ ├── detekt-baseline.xml │ ├── detekt.yml │ ├── license.template │ ├── pmd-rules.xml │ ├── pre-push-recommended.sh │ └── spotbugs-exclude.xml ├── settings.gradle └── tools │ ├── data_renewal_generate.py │ ├── data_renewal_request.py │ ├── docker │ ├── Dockerfile │ └── licenses │ │ ├── android-sdk-license │ │ └── android-sdk-preview-license │ ├── gradle │ └── versionCode.gradle │ └── update-glean-tags.py ├── monorepo-migration ├── convert-to-hg.sh ├── data │ ├── message-expressions.txt │ └── repo-numbers.json ├── filter-repo.py ├── generate-replace-message-expressions.py ├── generate-repo-numbers.py └── sync-fenix.sh ├── shared-settings.gradle ├── taskcluster ├── android_taskgraph │ ├── __init__.py │ ├── build_config.py │ ├── gradle.py │ ├── job.py │ ├── loader │ │ └── build_config.py │ ├── manifests │ │ └── apk_releases.yml │ ├── parameters.py │ ├── release_promotion.py │ ├── release_type.py │ ├── routes.py │ ├── target_tasks.py │ ├── transforms │ │ ├── __init__.py │ │ ├── beetmover.py │ │ ├── beetmover_android_app.py │ │ ├── browsertime.py │ │ ├── build_android_app.py │ │ ├── build_components.py │ │ ├── chunk.py │ │ ├── complete.py │ │ ├── external_gradle_dependencies.py │ │ ├── github_release.py │ │ ├── gradle_optimization.py │ │ ├── mark_as_shipped.py │ │ ├── notify.py │ │ ├── post_dummy.py │ │ ├── push_android_app.py │ │ ├── release_deps.py │ │ ├── release_started.py │ │ ├── signing.py │ │ ├── signing_android_app.py │ │ ├── test.py │ │ ├── treeherder.py │ │ ├── trigger_nightly.py │ │ ├── ui_tests.py │ │ ├── upstream_artifacts.py │ │ └── version_bump.py │ ├── util │ │ ├── __init__.py │ │ ├── group_by.py │ │ └── scriptworker.py │ └── worker_types.py ├── ci │ ├── beetmover-android-app │ │ └── kind.yml │ ├── beetmover │ │ └── kind.yml │ ├── browsertime │ │ └── kind.yml │ ├── build-apk │ │ └── kind.yml │ ├── build-bundle │ │ └── kind.yml │ ├── build-components │ │ └── kind.yml │ ├── build-samples-browser │ │ └── kind.yml │ ├── complete │ │ └── kind.yml │ ├── config.yml │ ├── docker-image │ │ └── kind.yml │ ├── external-gradle-dependencies │ │ └── kind.yml │ ├── fetch │ │ └── kind.yml │ ├── geckoview │ │ └── kind.yml │ ├── github-release-apks │ │ └── kind.yml │ ├── github-release-components │ │ └── kind.yml │ ├── lint │ │ ├── buildconfig.yml │ │ ├── compare-locales.yml │ │ ├── detekt.yml │ │ ├── kind.yml │ │ ├── ktlint.yml │ │ └── lint.yml │ ├── mark-as-shipped │ │ └── kind.yml │ ├── post-beetmover │ │ └── kind.yml │ ├── post-signing │ │ └── kind.yml │ ├── push-bundle │ │ └── kind.yml │ ├── release-notify-promote │ │ └── kind.yml │ ├── release-notify-push │ │ └── kind.yml │ ├── release-notify-ship │ │ └── kind.yml │ ├── release-notify-started │ │ └── kind.yml │ ├── release-notify-testrail │ │ └── kind.yml │ ├── signing-apk │ │ └── kind.yml │ ├── signing-bundle │ │ └── kind.yml │ ├── signing │ │ └── kind.yml │ ├── startup-test │ │ └── kind.yml │ ├── test-apk │ │ └── kind.yml │ ├── test-components │ │ └── kind.yml │ ├── toolchain │ │ ├── android.yml │ │ ├── gecko-derived.yml │ │ └── kind.yml │ ├── trigger-nightly │ │ └── kind.yml │ ├── ui-test-apk │ │ └── kind.yml │ └── version-bump │ │ └── kind.yml ├── docker │ ├── android-build │ │ └── Dockerfile │ ├── base │ │ └── Dockerfile │ └── ui-tests │ │ └── Dockerfile ├── requirements.in ├── requirements.txt ├── scripts │ ├── are_dependencies_completed.py │ ├── get-secret.py │ ├── lib │ │ ├── testrail_api.py │ │ ├── testrail_conn.py │ │ └── testrail_utils.py │ ├── lint │ │ ├── is_buildconfig_yml_up_to_date.py │ │ ├── requirements.in │ │ ├── requirements.txt │ │ └── update_buildconfig_from_gradle.py │ ├── slack_notifier.py │ ├── testrail_main.py │ ├── tests │ │ └── test-lab.py │ ├── toolchain │ │ ├── external-gradle-dependencies.sh │ │ ├── external-gradle-dependencies │ │ │ ├── after.sh │ │ │ ├── before.sh │ │ │ └── nexus.xml │ │ └── repack-android-sdk-linux.sh │ └── write-dummy-secret.py └── test │ └── params │ ├── fork-cron-nightly.yml │ ├── fork-promote-beta.yml │ ├── fork-push.yml │ ├── main-repo-cron-nightly.yml │ ├── main-repo-promote-beta.yml │ ├── main-repo-promote-release.yml │ ├── main-repo-pull-request-untrusted.yml │ ├── main-repo-pull-request.yml │ ├── main-repo-push-beta.yml │ ├── main-repo-push-bors-try.yml │ ├── main-repo-push-main.yml │ ├── main-repo-ship-beta.yml │ └── main-repo-ship-release.yml └── version.txt /.cron.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.cron.yml -------------------------------------------------------------------------------- /.git-blame-ignore-revs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.git-blame-ignore-revs -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/ISSUE_TEMPLATE/config.yml -------------------------------------------------------------------------------- /.github/SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/SECURITY.md -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/ac-update-geckoview.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/workflows/ac-update-geckoview.yml -------------------------------------------------------------------------------- /.github/workflows/bugzilla-format.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/workflows/bugzilla-format.yml -------------------------------------------------------------------------------- /.github/workflows/bugzilla-linker.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/workflows/bugzilla-linker.yml -------------------------------------------------------------------------------- /.github/workflows/glean-probe-scraper.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/workflows/glean-probe-scraper.yml -------------------------------------------------------------------------------- /.github/workflows/pull-request-labeler.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.github/workflows/pull-request-labeler.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.gitignore -------------------------------------------------------------------------------- /.mergify.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.mergify.yml -------------------------------------------------------------------------------- /.taskcluster.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/.taskcluster.yml -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/CODEOWNERS -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/README.md -------------------------------------------------------------------------------- /android-components/.buildconfig.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/.buildconfig.yml -------------------------------------------------------------------------------- /android-components/.config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/.config.yml -------------------------------------------------------------------------------- /android-components/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/.editorconfig -------------------------------------------------------------------------------- /android-components/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/.gitattributes -------------------------------------------------------------------------------- /android-components/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/CHANGELOG.md -------------------------------------------------------------------------------- /android-components/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/README.md -------------------------------------------------------------------------------- /android-components/android-lint.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/android-lint.gradle -------------------------------------------------------------------------------- /android-components/automation/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/automation/taskcluster/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/build.gradle -------------------------------------------------------------------------------- /android-components/components/browser/domains/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/engine-gecko/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/engine-system/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/errorpages/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/icons/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | -------------------------------------------------------------------------------- /android-components/components/browser/icons/src/test/resources/misc/test.txt: -------------------------------------------------------------------------------- 1 | Hello World! -------------------------------------------------------------------------------- /android-components/components/browser/icons/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/menu/lint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/browser/menu/lint.xml -------------------------------------------------------------------------------- /android-components/components/browser/menu/src/test/resources/mockito-extensions/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/menu/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/menu2/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/browser/storage-sync/src/test/resources/databases/populated-v39.db-wal: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/components/browser/storage-sync/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /android-components/components/compose/cfr/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/compose/cfr/README.md -------------------------------------------------------------------------------- /android-components/components/compose/engine/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/compose/tabstray/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/concept/base/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/concept/engine/src/test/resources/manifests/invalid_json.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": 12345 3 | } -------------------------------------------------------------------------------- /android-components/components/concept/engine/src/test/resources/manifests/invalid_missing_name.json: -------------------------------------------------------------------------------- 1 | { 2 | "start_url": "https://example.com" 3 | } 4 | -------------------------------------------------------------------------------- /android-components/components/concept/engine/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/concept/fetch/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/concept/push/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/concept/toolbar/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/accounts-push/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/accounts/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | -------------------------------------------------------------------------------- /android-components/components/feature/accounts/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/addons/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/app-links/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/autofill/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/awesomebar/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/containers/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/contextmenu/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/customtabs/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/downloads/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/findinpage/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/fxsuggest/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/intent/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/media/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/privatemode/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/prompts/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/push/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/pwa/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/feature/pwa/README.md -------------------------------------------------------------------------------- /android-components/components/feature/pwa/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/qr/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/feature/qr/README.md -------------------------------------------------------------------------------- /android-components/components/feature/qr/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/readerview/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | -------------------------------------------------------------------------------- /android-components/components/feature/readerview/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/recentlyclosed/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/search/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | -------------------------------------------------------------------------------- /android-components/components/feature/search/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/serviceworker/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/session/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/sitepermissions/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/syncedtabs/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/tab-collections/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/tabs/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/toolbar/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/top-sites/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/webauthn/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/webcompat-reporter/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/webcompat/src/main/assets/extensions/webcompat/shims/empty-shim.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/components/feature/webcompat/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/feature/webnotifications/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/auth/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/lib/auth/build.gradle -------------------------------------------------------------------------------- /android-components/components/lib/crash-sentry/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/crash/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/lib/crash/README.md -------------------------------------------------------------------------------- /android-components/components/lib/crash/pings.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/lib/crash/pings.yaml -------------------------------------------------------------------------------- /android-components/components/lib/crash/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/dataprotect/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/fetch-httpurlconnection/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/fetch-okhttp/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/jexl/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/lib/jexl/README.md -------------------------------------------------------------------------------- /android-components/components/lib/jexl/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/lib/jexl/build.gradle -------------------------------------------------------------------------------- /android-components/components/lib/publicsuffixlist/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/push-firebase/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/lib/state/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/lib/state/README.md -------------------------------------------------------------------------------- /android-components/components/lib/state/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/contile/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/digitalassetlinks/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline 2 | -------------------------------------------------------------------------------- /android-components/components/service/digitalassetlinks/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/firefox-accounts/proguard-rules-consumer.pro: -------------------------------------------------------------------------------- 1 | # ProGuard rules for consumers of this library. 2 | -------------------------------------------------------------------------------- /android-components/components/service/firefox-accounts/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline 2 | -------------------------------------------------------------------------------- /android-components/components/service/firefox-accounts/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/glean/gradle.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/components/service/glean/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline 2 | -------------------------------------------------------------------------------- /android-components/components/service/glean/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/location/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /android-components/components/service/location/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline 2 | -------------------------------------------------------------------------------- /android-components/components/service/location/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/nimbus/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /android-components/components/service/nimbus/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline 2 | -------------------------------------------------------------------------------- /android-components/components/service/nimbus/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/pocket/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/sync-autofill/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /android-components/components/service/sync-autofill/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/service/sync-logins/proguard-rules-consumer.pro: -------------------------------------------------------------------------------- 1 | # ProGuard rules for consumers of this library. 2 | -------------------------------------------------------------------------------- /android-components/components/service/sync-logins/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/base/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/images/proguard-rules-consumer.pro: -------------------------------------------------------------------------------- 1 | # ProGuard rules for consumers of this library. 2 | -------------------------------------------------------------------------------- /android-components/components/support/images/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/ktx/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/support/ktx/README.md -------------------------------------------------------------------------------- /android-components/components/support/ktx/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/license/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 -------------------------------------------------------------------------------- /android-components/components/support/locale/gradle.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/components/support/locale/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/remotesettings/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/rusterrors/proguard-rules-consumer.pro: -------------------------------------------------------------------------------- 1 | # ProGuard rules for consumers of this library. 2 | -------------------------------------------------------------------------------- /android-components/components/support/rusthttp/proguard-rules-consumer.pro: -------------------------------------------------------------------------------- 1 | # ProGuard rules for consumers of this library. 2 | -------------------------------------------------------------------------------- /android-components/components/support/rustlog/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/components/support/rustlog/proguard-rules-consumer.pro: -------------------------------------------------------------------------------- 1 | # ProGuard rules for consumers of this library. 2 | -------------------------------------------------------------------------------- /android-components/components/support/rustlog/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/test/lint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/support/test/lint.xml -------------------------------------------------------------------------------- /android-components/components/support/test/src/test/resources/example_file.txt: -------------------------------------------------------------------------------- 1 | 42 -------------------------------------------------------------------------------- /android-components/components/support/test/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/utils/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/support/webextensions/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/ui/autocomplete/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/ui/colors/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/ui/colors/README.md -------------------------------------------------------------------------------- /android-components/components/ui/fonts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/ui/fonts/README.md -------------------------------------------------------------------------------- /android-components/components/ui/fonts/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/ui/fonts/build.gradle -------------------------------------------------------------------------------- /android-components/components/ui/icons/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/ui/icons/README.md -------------------------------------------------------------------------------- /android-components/components/ui/icons/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/ui/icons/build.gradle -------------------------------------------------------------------------------- /android-components/components/ui/tabcounter/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /android-components/components/ui/tabcounter/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/components/ui/widgets/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/components/ui/widgets/README.md -------------------------------------------------------------------------------- /android-components/components/ui/widgets/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 2 | -------------------------------------------------------------------------------- /android-components/config/detekt-baseline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/config/detekt-baseline.xml -------------------------------------------------------------------------------- /android-components/config/detekt.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/config/detekt.yml -------------------------------------------------------------------------------- /android-components/config/license.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/config/license.template -------------------------------------------------------------------------------- /android-components/config/pre-push-hook: -------------------------------------------------------------------------------- 1 | ./gradlew detekt ktlint 2 | 3 | -------------------------------------------------------------------------------- /android-components/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/gradle.properties -------------------------------------------------------------------------------- /android-components/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/gradlew -------------------------------------------------------------------------------- /android-components/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/gradlew.bat -------------------------------------------------------------------------------- /android-components/ktlint-baseline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/ktlint-baseline.xml -------------------------------------------------------------------------------- /android-components/l10n.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/l10n.toml -------------------------------------------------------------------------------- /android-components/plugins/config/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/plugins/config/build.gradle -------------------------------------------------------------------------------- /android-components/plugins/config/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/plugins/config/settings.gradle -------------------------------------------------------------------------------- /android-components/plugins/github/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/plugins/github/build.gradle -------------------------------------------------------------------------------- /android-components/plugins/github/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/plugins/github/settings.gradle -------------------------------------------------------------------------------- /android-components/publish.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/publish.gradle -------------------------------------------------------------------------------- /android-components/samples/browser/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | manifest.json 3 | -------------------------------------------------------------------------------- /android-components/samples/browser/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/browser/README.md -------------------------------------------------------------------------------- /android-components/samples/browser/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/browser/build.gradle -------------------------------------------------------------------------------- /android-components/samples/compose-browser/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | manifest.json 3 | -------------------------------------------------------------------------------- /android-components/samples/crash/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/crash/build.gradle -------------------------------------------------------------------------------- /android-components/samples/crash/lint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/crash/lint.xml -------------------------------------------------------------------------------- /android-components/samples/crash/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/crash/proguard-rules.pro -------------------------------------------------------------------------------- /android-components/samples/dataprotect/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/dataprotect/build.gradle -------------------------------------------------------------------------------- /android-components/samples/dataprotect/lint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/dataprotect/lint.xml -------------------------------------------------------------------------------- /android-components/samples/firefox-accounts/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /android-components/samples/firefox-accounts/gradle.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/samples/glean/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/glean/README.md -------------------------------------------------------------------------------- /android-components/samples/glean/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/glean/build.gradle -------------------------------------------------------------------------------- /android-components/samples/glean/metrics.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/glean/metrics.yaml -------------------------------------------------------------------------------- /android-components/samples/glean/pings.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/glean/pings.yaml -------------------------------------------------------------------------------- /android-components/samples/glean/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/glean/proguard-rules.pro -------------------------------------------------------------------------------- /android-components/samples/sync-logins/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/sync-logins/README.md -------------------------------------------------------------------------------- /android-components/samples/sync-logins/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/sync-logins/build.gradle -------------------------------------------------------------------------------- /android-components/samples/sync-logins/gradle.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/samples/sync/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/sync/README.md -------------------------------------------------------------------------------- /android-components/samples/sync/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/sync/build.gradle -------------------------------------------------------------------------------- /android-components/samples/sync/gradle.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /android-components/samples/sync/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/sync/proguard-rules.pro -------------------------------------------------------------------------------- /android-components/samples/toolbar/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/toolbar/build.gradle -------------------------------------------------------------------------------- /android-components/samples/toolbar/lint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/samples/toolbar/lint.xml -------------------------------------------------------------------------------- /android-components/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/settings.gradle -------------------------------------------------------------------------------- /android-components/substitute-local-ac.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/substitute-local-ac.gradle -------------------------------------------------------------------------------- /android-components/tools/pre-push-recommended.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/android-components/tools/pre-push-recommended.sh -------------------------------------------------------------------------------- /bors.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/bors.toml -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | _site 2 | .sass-cache 3 | .jekyll-metadata 4 | -------------------------------------------------------------------------------- /docs/404.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/404.html -------------------------------------------------------------------------------- /docs/CNAME: -------------------------------------------------------------------------------- 1 | mozac.org -------------------------------------------------------------------------------- /docs/Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/Gemfile -------------------------------------------------------------------------------- /docs/Gemfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/Gemfile.lock -------------------------------------------------------------------------------- /docs/_archive/2018-07-26-release-0.16.1.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-07-26-release-0.16.1.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-08-03-release-0.17.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-08-03-release-0.17.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-08-10-release-0.18.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-08-10-release-0.18.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-08-17-release-0.19.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-08-17-release-0.19.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-08-24-release-0.20.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-08-24-release-0.20.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-08-31-release-0.21.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-08-31-release-0.21.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-09-07-release-0.22.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-09-07-release-0.22.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-09-13-release-0.23.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-09-13-release-0.23.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-09-21-release-0.24.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-09-21-release-0.24.markdown -------------------------------------------------------------------------------- /docs/_archive/2018-09-26-release-0.25.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_archive/2018-09-26-release-0.25.markdown -------------------------------------------------------------------------------- /docs/_config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_config.yml -------------------------------------------------------------------------------- /docs/_data/authors.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_data/authors.yml -------------------------------------------------------------------------------- /docs/_includes/footer.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_includes/footer.html -------------------------------------------------------------------------------- /docs/_includes/head.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_includes/head.html -------------------------------------------------------------------------------- /docs/_includes/header.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_includes/header.html -------------------------------------------------------------------------------- /docs/_includes/post_detail.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_includes/post_detail.html -------------------------------------------------------------------------------- /docs/_layouts/home.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_layouts/home.html -------------------------------------------------------------------------------- /docs/_layouts/post.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_layouts/post.html -------------------------------------------------------------------------------- /docs/_posts/2018-07-30-firefox-notes-fxa.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_posts/2018-07-30-firefox-notes-fxa.markdown -------------------------------------------------------------------------------- /docs/_posts/2018-08-10-fretboard.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_posts/2018-08-10-fretboard.md -------------------------------------------------------------------------------- /docs/_posts/2018-11-05-creating-a-simple-browser.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_posts/2018-11-05-creating-a-simple-browser.md -------------------------------------------------------------------------------- /docs/_posts/2019-02-19-saving-state.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_posts/2019-02-19-saving-state.md -------------------------------------------------------------------------------- /docs/_posts/2019-05-23-deprecation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_posts/2019-05-23-deprecation.md -------------------------------------------------------------------------------- /docs/_posts/2019-09-02-browser-state.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_posts/2019-09-02-browser-state.md -------------------------------------------------------------------------------- /docs/_posts/2021-07-05-whats-next.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/_posts/2021-07-05-whats-next.md -------------------------------------------------------------------------------- /docs/assets/fonts/ZillaSlab-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/fonts/ZillaSlab-Bold.woff2 -------------------------------------------------------------------------------- /docs/assets/images/blog/engine-architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/images/blog/engine-architecture.png -------------------------------------------------------------------------------- /docs/assets/images/blog/progress-performance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/images/blog/progress-performance.png -------------------------------------------------------------------------------- /docs/assets/images/blog/session-bundles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/images/blog/session-bundles.png -------------------------------------------------------------------------------- /docs/assets/images/blog/toolbar-architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/images/blog/toolbar-architecture.png -------------------------------------------------------------------------------- /docs/assets/images/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/images/favicon-16x16.png -------------------------------------------------------------------------------- /docs/assets/images/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/images/favicon-32x32.png -------------------------------------------------------------------------------- /docs/assets/images/rfc/release-trains.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/images/rfc/release-trains.png -------------------------------------------------------------------------------- /docs/assets/js/icon-js.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/js/icon-js.js -------------------------------------------------------------------------------- /docs/assets/main.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/assets/main.scss -------------------------------------------------------------------------------- /docs/blog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/blog.md -------------------------------------------------------------------------------- /docs/changelog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/changelog.md -------------------------------------------------------------------------------- /docs/changelog_archive.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/changelog_archive.md -------------------------------------------------------------------------------- /docs/components.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/components.md -------------------------------------------------------------------------------- /docs/contribute/app_services_upgrade.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/app_services_upgrade.md -------------------------------------------------------------------------------- /docs/contribute/architecture.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/architecture.md -------------------------------------------------------------------------------- /docs/contribute/code_coverage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/code_coverage.md -------------------------------------------------------------------------------- /docs/contribute/components_inside_app.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/components_inside_app.md -------------------------------------------------------------------------------- /docs/contribute/deprecating.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/deprecating.md -------------------------------------------------------------------------------- /docs/contribute/design_axioms.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/design_axioms.md -------------------------------------------------------------------------------- /docs/contribute/hosting_code_in_repository.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/hosting_code_in_repository.md -------------------------------------------------------------------------------- /docs/contribute/merge_day.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/merge_day.md -------------------------------------------------------------------------------- /docs/contribute/release_checklist.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/release_checklist.md -------------------------------------------------------------------------------- /docs/contribute/versioning.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contribute/versioning.md -------------------------------------------------------------------------------- /docs/contributing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/contributing.md -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/rfcs/0000-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0000-template.md -------------------------------------------------------------------------------- /docs/rfcs/0001-rfc-process.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0001-rfc-process.md -------------------------------------------------------------------------------- /docs/rfcs/0002-browser-search-rewrite.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0002-browser-search-rewrite.md -------------------------------------------------------------------------------- /docs/rfcs/0003-concept-base-component.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0003-concept-base-component.md -------------------------------------------------------------------------------- /docs/rfcs/0004-top-sites-feature.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0004-top-sites-feature.md -------------------------------------------------------------------------------- /docs/rfcs/0006-search-defaults.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0006-search-defaults.md -------------------------------------------------------------------------------- /docs/rfcs/0007-synchronized-releases.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0007-synchronized-releases.md -------------------------------------------------------------------------------- /docs/rfcs/0008-tab-groups.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0008-tab-groups.md -------------------------------------------------------------------------------- /docs/rfcs/0010-add-state-based-navigation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0010-add-state-based-navigation.md -------------------------------------------------------------------------------- /docs/rfcs/0012-introduce-ui-store.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0012-introduce-ui-store.md -------------------------------------------------------------------------------- /docs/rfcs/0013-rfc-process-updates.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/0013-rfc-process-updates.md -------------------------------------------------------------------------------- /docs/rfcs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/rfcs/README.md -------------------------------------------------------------------------------- /docs/shared/android/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/shared/android/CONTRIBUTING_code.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/CONTRIBUTING_code.md -------------------------------------------------------------------------------- /docs/shared/android/accessibility_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/accessibility_guide.md -------------------------------------------------------------------------------- /docs/shared/android/android_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/android_guide.md -------------------------------------------------------------------------------- /docs/shared/android/automation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/automation.md -------------------------------------------------------------------------------- /docs/shared/android/configure_java.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/configure_java.md -------------------------------------------------------------------------------- /docs/shared/android/device_testing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/device_testing.md -------------------------------------------------------------------------------- /docs/shared/android/docker_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/docker_guide.md -------------------------------------------------------------------------------- /docs/shared/android/fretboard.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/fretboard.md -------------------------------------------------------------------------------- /docs/shared/android/images/double-nav.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/images/double-nav.gif -------------------------------------------------------------------------------- /docs/shared/android/images/single-nav.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/images/single-nav.gif -------------------------------------------------------------------------------- /docs/shared/android/kotlin_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/kotlin_guide.md -------------------------------------------------------------------------------- /docs/shared/android/sprint_process.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/sprint_process.md -------------------------------------------------------------------------------- /docs/shared/android/taskcluster_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/taskcluster_guide.md -------------------------------------------------------------------------------- /docs/shared/android/testing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/testing.md -------------------------------------------------------------------------------- /docs/shared/android/ui-testing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/ui-testing.md -------------------------------------------------------------------------------- /docs/shared/android/workmanager_faq.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/workmanager_faq.md -------------------------------------------------------------------------------- /docs/shared/android/writing_lint_rules.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/android/writing_lint_rules.md -------------------------------------------------------------------------------- /docs/shared/git_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/git_guide.md -------------------------------------------------------------------------------- /docs/shared/im/sentry_dsn_click.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/im/sentry_dsn_click.png -------------------------------------------------------------------------------- /docs/shared/sentry_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/sentry_guide.md -------------------------------------------------------------------------------- /docs/shared/uplift_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/uplift_guide.md -------------------------------------------------------------------------------- /docs/shared/versioning.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/shared/versioning.md -------------------------------------------------------------------------------- /docs/ui/icons.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/docs/ui/icons.md -------------------------------------------------------------------------------- /fenix/.adjust_token: -------------------------------------------------------------------------------- 1 | -- -------------------------------------------------------------------------------- /fenix/.buildconfig.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/.buildconfig.yml -------------------------------------------------------------------------------- /fenix/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/.editorconfig -------------------------------------------------------------------------------- /fenix/.gitattributes: -------------------------------------------------------------------------------- 1 | CHANGELOG.md merge=union 2 | -------------------------------------------------------------------------------- /fenix/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /fenix/Gemfile: -------------------------------------------------------------------------------- 1 | source "https://rubygems.org" 2 | 3 | gem "fastlane" 4 | -------------------------------------------------------------------------------- /fenix/Jenkinsfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/Jenkinsfile -------------------------------------------------------------------------------- /fenix/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/README.md -------------------------------------------------------------------------------- /fenix/SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/SECURITY.md -------------------------------------------------------------------------------- /fenix/app/.experimenter.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/.experimenter.yaml -------------------------------------------------------------------------------- /fenix/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /fenix/app/benchmark.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/benchmark.gradle -------------------------------------------------------------------------------- /fenix/app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/build.gradle -------------------------------------------------------------------------------- /fenix/app/lint-baseline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/lint-baseline.xml -------------------------------------------------------------------------------- /fenix/app/lint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/lint.xml -------------------------------------------------------------------------------- /fenix/app/messaging-evergreen-messages.fml.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/messaging-evergreen-messages.fml.yaml -------------------------------------------------------------------------------- /fenix/app/messaging-fenix.fml.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/messaging-fenix.fml.yaml -------------------------------------------------------------------------------- /fenix/app/metrics.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/metrics.yaml -------------------------------------------------------------------------------- /fenix/app/nimbus.fml.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/nimbus.fml.yaml -------------------------------------------------------------------------------- /fenix/app/onboarding.fml.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/onboarding.fml.yaml -------------------------------------------------------------------------------- /fenix/app/pbm.fml.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/pbm.fml.yaml -------------------------------------------------------------------------------- /fenix/app/pings.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/pings.yaml -------------------------------------------------------------------------------- /fenix/app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/proguard-rules.pro -------------------------------------------------------------------------------- /fenix/app/src/androidTest/assets/pages/refresh.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/androidTest/assets/pages/refresh.html -------------------------------------------------------------------------------- /fenix/app/src/androidTest/assets/resources/clip.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/androidTest/assets/resources/clip.mp4 -------------------------------------------------------------------------------- /fenix/app/src/androidTest/java/org/mozilla/fenix/experimentintegration/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fenix/app/src/androidTest/java/org/mozilla/fenix/experimentintegration/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fenix/app/src/androidTest/java/org/mozilla/fenix/syncintegration/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fenix/app/src/androidTest/resources/email.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fenix/app/src/androidTest/resources/password.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fenix/app/src/beta/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/beta/AndroidManifest.xml -------------------------------------------------------------------------------- /fenix/app/src/beta/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /fenix/app/src/beta/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /fenix/app/src/beta/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/beta/res/values/colors.xml -------------------------------------------------------------------------------- /fenix/app/src/beta/res/values/static_strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/beta/res/values/static_strings.xml -------------------------------------------------------------------------------- /fenix/app/src/beta/res/xml/shortcuts.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/beta/res/xml/shortcuts.xml -------------------------------------------------------------------------------- /fenix/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/debug/AndroidManifest.xml -------------------------------------------------------------------------------- /fenix/app/src/debug/ic_launcher-web.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/debug/ic_launcher-web.webp -------------------------------------------------------------------------------- /fenix/app/src/debug/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/debug/res/values/colors.xml -------------------------------------------------------------------------------- /fenix/app/src/debug/res/xml/shortcuts.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/debug/res/xml/shortcuts.xml -------------------------------------------------------------------------------- /fenix/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /fenix/app/src/main/assets/highRiskErrorPages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/assets/highRiskErrorPages.js -------------------------------------------------------------------------------- /fenix/app/src/main/assets/high_risk_error_style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/assets/high_risk_error_style.css -------------------------------------------------------------------------------- /fenix/app/src/main/assets/lowMediumErrorPages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/assets/lowMediumErrorPages.js -------------------------------------------------------------------------------- /fenix/app/src/main/assets/searchplugins/reddit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/assets/searchplugins/reddit.xml -------------------------------------------------------------------------------- /fenix/app/src/main/assets/searchplugins/youtube.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/assets/searchplugins/youtube.xml -------------------------------------------------------------------------------- /fenix/app/src/main/assets/shared_error_style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/assets/shared_error_style.css -------------------------------------------------------------------------------- /fenix/app/src/main/ic_launcher-web.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/ic_launcher-web.webp -------------------------------------------------------------------------------- /fenix/app/src/main/ic_launcher_private-web.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/ic_launcher_private-web.webp -------------------------------------------------------------------------------- /fenix/app/src/main/java/org/mozilla/fenix/Config.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/java/org/mozilla/fenix/Config.kt -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/fade_in.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/fade_in.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/fade_in_up.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/fade_in_up.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/fade_out.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/fade_out.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/fade_out_down.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/fade_out_down.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/slide_in_left.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/slide_in_left.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/slide_in_right.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/slide_in_right.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/slide_out_left.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/slide_out_left.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/anim/slide_out_right.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/anim/slide_out_right.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/color/pager_dot.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/color/pager_dot.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/color/tab_checkbox_tint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/color/tab_checkbox_tint.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/color/tab_icon.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/color/tab_icon.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_account.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_account.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_autoplay.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_autoplay.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_back_button.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_back_button.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_baidu.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_baidu.webp -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_camera.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_camera.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_cfr_triangle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_cfr_triangle.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_chevron.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_chevron.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_chevron_down.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_chevron_down.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_chevron_up.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_chevron_up.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_close.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_close.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_cookies.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_cookies.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_copy.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_copy.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_customize.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_customize.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_delete.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_delete.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_desktop.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_desktop.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_download.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_download.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_edit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_edit.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_etp_artwork.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_etp_artwork.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_fab_sync.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_fab_sync.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_firefox.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_firefox.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_folder_icon.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_folder_icon.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_folder_new.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_folder_new.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_history.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_history.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_info.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_info.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_internet.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_internet.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_jd.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_jd.webp -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_link.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_link.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_link_enabled.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_link_enabled.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_location.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_location.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_lock.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_lock.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_meituan.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_meituan.webp -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_menu.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_menu.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_microphone.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_microphone.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_new.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_new.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_new_pin.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_new_pin.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_open_in_app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_open_in_app.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_open_in_new.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_open_in_new.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_pdd.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_pdd.webp -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_permission.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_permission.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_pocket.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_pocket.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_print.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_print.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_qr.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_qr.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_readermode.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_readermode.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_scan.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_scan.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_search.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_search.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_search_with.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_search_with.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_share.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_share.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_sign_in.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_sign_in.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_storage.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_storage.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_tc.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_tc.webp -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_top_sites.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_top_sites.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/ic_whats_new.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/ic_whats_new.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/drawable/pager_dot.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/drawable/pager_dot.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/activity_home.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/activity_home.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/bottom_spacer.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/bottom_spacer.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/checkbox_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/checkbox_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/dialog_scrim.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/dialog_scrim.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/exception_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/exception_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/fenix_snackbar.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/fenix_snackbar.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/fragment_about.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/fragment_about.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/fragment_home.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/fragment_home.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/fragment_pair.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/fragment_pair.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/fragment_share.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/fragment_share.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/info_banner.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/info_banner.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/logins_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/logins_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/share_close.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/share_close.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/share_tab_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/share_tab_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/share_to_apps.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/share_to_apps.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/site_list_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/site_list_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/study_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/study_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/tab_preview.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/tab_preview.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/tab_tray_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/tab_tray_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/layout/top_site_item.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/layout/top_site_item.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/address_editor.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/address_editor.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/bookmarks_edit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/bookmarks_edit.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/bookmarks_menu.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/bookmarks_menu.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/history_menu.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/history_menu.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/languages_list.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/languages_list.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/library_menu.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/library_menu.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/login_list.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/login_list.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/menu/login_save.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/menu/login_save.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/navigation/nav_graph.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/navigation/nav_graph.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/raw/keep.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/raw/keep.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-am/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-am/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-an/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-an/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ar/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ar/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ast/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ast/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-az/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-az/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-azb/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-azb/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ban/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ban/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-be/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-be/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-bg/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-bg/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-bn/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-bn/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-br/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-br/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-bs/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-bs/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ca/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ca/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-cak/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-cak/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ceb/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ceb/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ckb/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ckb/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-co/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-co/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-cs/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-cs/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-cy/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-cy/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-da/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-da/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-de/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-de/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-dsb/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-dsb/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-el/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-el/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-en-rCA/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-en-rCA/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-en-rGB/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-en-rGB/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-eo/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-eo/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-es-rAR/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-es-rAR/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-es-rCL/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-es-rCL/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-es-rES/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-es-rES/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-es-rMX/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-es-rMX/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-es/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-es/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-et/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-et/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-eu/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-eu/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-fa/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-fa/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ff/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ff/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-fi/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-fi/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-fr/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-fr/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-fur/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-fur/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-fy-rNL/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-fy-rNL/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ga-rIE/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ga-rIE/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-gd/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-gd/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-gl/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-gl/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-gn/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-gn/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-gu-rIN/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-gu-rIN/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-hi-rIN/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-hi-rIN/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-hil/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-hil/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-hr/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-hr/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-hsb/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-hsb/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-hu/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-hu/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-hy-rAM/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-hy-rAM/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ia/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ia/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-in/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-in/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-is/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-is/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-it/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-it/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-iw/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-iw/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ja/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ja/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ka/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ka/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-kaa/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-kaa/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-kab/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-kab/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-kk/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-kk/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-kmr/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-kmr/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-kn/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-kn/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ko/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ko/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-kw/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-kw/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ldrtl/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ldrtl/dimens.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-lij/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-lij/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-lo/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-lo/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-lt/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-lt/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ml/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ml/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-mr/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-mr/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-my/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-my/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-nb-rNO/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-nb-rNO/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ne-rNP/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ne-rNP/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-night/bools.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-night/bools.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-night/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-night/colors.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-night/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-night/styles.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-nl/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-nl/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-nn-rNO/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-nn-rNO/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-oc/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-oc/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-or/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-or/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-pa-rIN/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-pa-rIN/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-pa-rPK/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-pa-rPK/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-pl/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-pl/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-pt-rBR/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-pt-rBR/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-pt-rPT/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-pt-rPT/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-rm/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-rm/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ro/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ro/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ru/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ru/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sat/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sat/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sc/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sc/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-si/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-si/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sk/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sk/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-skr/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-skr/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sl/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sl/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sq/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sq/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sr/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sr/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-su/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-su/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sv-rSE/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sv-rSE/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sw600dp/bools.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sw600dp/bools.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-sw600dp/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-sw600dp/dimens.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-szl/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-szl/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ta/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ta/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-te/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-te/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-tg/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-tg/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-th/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-th/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-tl/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-tl/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-tok/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-tok/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-tr/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-tr/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-trs/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-trs/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-tt/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-tt/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-tzm/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-tzm/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ug/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ug/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-uk/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-uk/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-ur/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-ur/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-uz/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-uz/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-v23/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-v23/styles.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-v24/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-v24/styles.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-v27/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-v27/styles.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-v28/bools.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-v28/bools.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-v31/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-v31/dimens.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-vec/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-vec/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-vi/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-vi/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-yo/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-yo/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-zh-rCN/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-zh-rCN/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values-zh-rTW/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values-zh-rTW/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/arrays.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/arrays.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/attrs.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/bools.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/bools.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/integers.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/integers.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/static_strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/static_strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/values/tags.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/values/tags.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/xml/home_preferences.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/xml/home_preferences.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/xml/preferences.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/xml/preferences.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/xml/searchable.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/xml/searchable.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/xml/shortcuts.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/xml/shortcuts.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/xml/sync_problem.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/xml/sync_problem.xml -------------------------------------------------------------------------------- /fenix/app/src/main/res/xml/tabs_preferences.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/main/res/xml/tabs_preferences.xml -------------------------------------------------------------------------------- /fenix/app/src/nightly/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/nightly/AndroidManifest.xml -------------------------------------------------------------------------------- /fenix/app/src/nightly/res/ic_launcher-web.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/nightly/res/ic_launcher-web.webp -------------------------------------------------------------------------------- /fenix/app/src/nightly/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/nightly/res/values/colors.xml -------------------------------------------------------------------------------- /fenix/app/src/nightly/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/nightly/res/values/dimens.xml -------------------------------------------------------------------------------- /fenix/app/src/nightly/res/xml/shortcuts.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/nightly/res/xml/shortcuts.xml -------------------------------------------------------------------------------- /fenix/app/src/release/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/release/AndroidManifest.xml -------------------------------------------------------------------------------- /fenix/app/src/release/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/release/res/values/colors.xml -------------------------------------------------------------------------------- /fenix/app/src/release/res/xml/shortcuts.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/src/release/res/xml/shortcuts.xml -------------------------------------------------------------------------------- /fenix/app/tags.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/app/tags.yaml -------------------------------------------------------------------------------- /fenix/automation/taskcluster/.codecov: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/automation/taskcluster/.codecov -------------------------------------------------------------------------------- /fenix/benchmark/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/benchmark/build.gradle -------------------------------------------------------------------------------- /fenix/benchmark/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/benchmark/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /fenix/bors.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/bors.toml -------------------------------------------------------------------------------- /fenix/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/build.gradle -------------------------------------------------------------------------------- /fenix/certificates/fenix_beta.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/certificates/fenix_beta.pem -------------------------------------------------------------------------------- /fenix/certificates/fenix_nightly.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/certificates/fenix_nightly.pem -------------------------------------------------------------------------------- /fenix/certificates/fenix_production.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/certificates/fenix_production.pem -------------------------------------------------------------------------------- /fenix/codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/codecov.yml -------------------------------------------------------------------------------- /fenix/config/detekt.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/config/detekt.yml -------------------------------------------------------------------------------- /fenix/config/license.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/config/license.template -------------------------------------------------------------------------------- /fenix/config/pre-push-recommended.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/config/pre-push-recommended.sh -------------------------------------------------------------------------------- /fenix/detekt-baseline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/detekt-baseline.xml -------------------------------------------------------------------------------- /fenix/docs/Acronym-dictionary.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Acronym-dictionary.md -------------------------------------------------------------------------------- /fenix/docs/Architecture-Decisions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Architecture-Decisions.md -------------------------------------------------------------------------------- /fenix/docs/Crash-Monitoring.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Crash-Monitoring.md -------------------------------------------------------------------------------- /fenix/docs/Creating-a-release-branch.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Creating-a-release-branch.md -------------------------------------------------------------------------------- /fenix/docs/Data-Practices.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Data-Practices.md -------------------------------------------------------------------------------- /fenix/docs/Development-Test-Plan.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Development-Test-Plan.md -------------------------------------------------------------------------------- /fenix/docs/Fennec-Migration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Fennec-Migration.md -------------------------------------------------------------------------------- /fenix/docs/Firefox-for-Android-Team-Processes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Firefox-for-Android-Team-Processes.md -------------------------------------------------------------------------------- /fenix/docs/Guide-to-merging-contributor-PRs.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Guide-to-merging-contributor-PRs.md -------------------------------------------------------------------------------- /fenix/docs/Home.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Home.md -------------------------------------------------------------------------------- /fenix/docs/Implementing-Telemetry.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Implementing-Telemetry.md -------------------------------------------------------------------------------- /fenix/docs/Implementing-a-Nimbus-Experiment.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Implementing-a-Nimbus-Experiment.md -------------------------------------------------------------------------------- /fenix/docs/List-of-fenix-threads.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/List-of-fenix-threads.md -------------------------------------------------------------------------------- /fenix/docs/Logging-Crash-Information.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Logging-Crash-Information.md -------------------------------------------------------------------------------- /fenix/docs/Metric-Feature-Tags.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Metric-Feature-Tags.md -------------------------------------------------------------------------------- /fenix/docs/Test-telemetry-pings.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Test-telemetry-pings.md -------------------------------------------------------------------------------- /fenix/docs/Working-with-Strings.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/Working-with-Strings.md -------------------------------------------------------------------------------- /fenix/docs/adjust.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/adjust.md -------------------------------------------------------------------------------- /fenix/docs/architecture-overview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/architecture-overview.md -------------------------------------------------------------------------------- /fenix/docs/certificates.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/certificates.md -------------------------------------------------------------------------------- /fenix/docs/crash-reporting.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/crash-reporting.md -------------------------------------------------------------------------------- /fenix/docs/experiments.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/experiments.md -------------------------------------------------------------------------------- /fenix/docs/l10nScreenshotsTests.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/l10nScreenshotsTests.md -------------------------------------------------------------------------------- /fenix/docs/manual-testing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/manual-testing.md -------------------------------------------------------------------------------- /fenix/docs/metrics.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/metrics.md -------------------------------------------------------------------------------- /fenix/docs/release-checklist.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/release-checklist.md -------------------------------------------------------------------------------- /fenix/docs/substituting-local-gv.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/substituting-local-gv.md -------------------------------------------------------------------------------- /fenix/docs/syncIntegrationTests.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/syncIntegrationTests.md -------------------------------------------------------------------------------- /fenix/docs/telemetry.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/docs/telemetry.md -------------------------------------------------------------------------------- /fenix/fastlane/Appfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/fastlane/Appfile -------------------------------------------------------------------------------- /fenix/fastlane/Screengrabfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/fastlane/Screengrabfile -------------------------------------------------------------------------------- /fenix/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/gradle.properties -------------------------------------------------------------------------------- /fenix/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /fenix/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /fenix/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/gradlew -------------------------------------------------------------------------------- /fenix/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/gradlew.bat -------------------------------------------------------------------------------- /fenix/ktlint-baseline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/ktlint-baseline.xml -------------------------------------------------------------------------------- /fenix/l10n.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/l10n.toml -------------------------------------------------------------------------------- /fenix/mozilla-detekt-rules/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /fenix/mozilla-detekt-rules/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/mozilla-detekt-rules/build.gradle -------------------------------------------------------------------------------- /fenix/mozilla-lint-rules/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /fenix/mozilla-lint-rules/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/mozilla-lint-rules/build.gradle -------------------------------------------------------------------------------- /fenix/plugins/apksize/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/plugins/apksize/build.gradle -------------------------------------------------------------------------------- /fenix/plugins/apksize/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/plugins/apksize/settings.gradle -------------------------------------------------------------------------------- /fenix/plugins/fenixdependencies/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/plugins/fenixdependencies/build.gradle -------------------------------------------------------------------------------- /fenix/plugins/fenixdependencies/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/plugins/fenixdependencies/settings.gradle -------------------------------------------------------------------------------- /fenix/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/settings.gradle -------------------------------------------------------------------------------- /fenix/tools/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/tools/.gitignore -------------------------------------------------------------------------------- /fenix/tools/data_renewal_generate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/tools/data_renewal_generate.py -------------------------------------------------------------------------------- /fenix/tools/data_renewal_request.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/tools/data_renewal_request.py -------------------------------------------------------------------------------- /fenix/tools/run_benchmark.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/tools/run_benchmark.py -------------------------------------------------------------------------------- /fenix/tools/setup-startup-profiling.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/tools/setup-startup-profiling.py -------------------------------------------------------------------------------- /fenix/tools/setup.cfg: -------------------------------------------------------------------------------- 1 | [pycodestyle] 2 | max-line-length = 120 3 | -------------------------------------------------------------------------------- /fenix/tools/update-glean-tags.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/fenix/tools/update-glean-tags.py -------------------------------------------------------------------------------- /focus-android/.buildconfig.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/.buildconfig.yml -------------------------------------------------------------------------------- /focus-android/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/.editorconfig -------------------------------------------------------------------------------- /focus-android/CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/CODEOWNERS -------------------------------------------------------------------------------- /focus-android/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/CONTRIBUTING.md -------------------------------------------------------------------------------- /focus-android/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/README.md -------------------------------------------------------------------------------- /focus-android/Screengrabfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/Screengrabfile -------------------------------------------------------------------------------- /focus-android/app/.experimenter.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/.experimenter.yaml -------------------------------------------------------------------------------- /focus-android/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | 3 | src/main/java/org/mozilla/focus/generated/ 4 | -------------------------------------------------------------------------------- /focus-android/app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/build.gradle -------------------------------------------------------------------------------- /focus-android/app/lint-baseline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/lint-baseline.xml -------------------------------------------------------------------------------- /focus-android/app/lint.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/lint.xml -------------------------------------------------------------------------------- /focus-android/app/metrics.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/metrics.yaml -------------------------------------------------------------------------------- /focus-android/app/nimbus.fml.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/nimbus.fml.yaml -------------------------------------------------------------------------------- /focus-android/app/pings.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/pings.yaml -------------------------------------------------------------------------------- /focus-android/app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/proguard-rules.pro -------------------------------------------------------------------------------- /focus-android/app/src/androidTest/assets/service-worker.js: -------------------------------------------------------------------------------- 1 | // Just some token we are looking for on disk 2 | const KANGAROO = true; 3 | -------------------------------------------------------------------------------- /focus-android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/debug/AndroidManifest.xml -------------------------------------------------------------------------------- /focus-android/app/src/klar/res/values/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/klar/res/values/app.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/assets/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/assets/style.css -------------------------------------------------------------------------------- /focus-android/app/src/main/java/org/mozilla/focus/widget/LocaleListPreference.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /focus-android/app/src/main/res/anim/fade_in.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/anim/fade_in.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/anim/fade_out.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/anim/fade_out.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/raw/about.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/raw/about.html -------------------------------------------------------------------------------- /focus-android/app/src/main/res/raw/gpl.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/raw/gpl.html -------------------------------------------------------------------------------- /focus-android/app/src/main/res/raw/initial_experiments.json: -------------------------------------------------------------------------------- 1 | { 2 | "data": [] 3 | } 4 | -------------------------------------------------------------------------------- /focus-android/app/src/main/res/raw/licenses.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/raw/licenses.html -------------------------------------------------------------------------------- /focus-android/app/src/main/res/raw/rights.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/raw/rights.html -------------------------------------------------------------------------------- /focus-android/app/src/main/res/values/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/values/app.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/values/attrs.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/values/fonts.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/values/fonts.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/values/ids.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/values/ids.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /focus-android/app/src/main/res/xml/settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/src/main/res/xml/settings.xml -------------------------------------------------------------------------------- /focus-android/app/tags.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/app/tags.yaml -------------------------------------------------------------------------------- /focus-android/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/build.gradle -------------------------------------------------------------------------------- /focus-android/codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/codecov.yml -------------------------------------------------------------------------------- /focus-android/docs/Adjust-Usage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Adjust-Usage.md -------------------------------------------------------------------------------- /focus-android/docs/Architecture-Decisions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Architecture-Decisions.md -------------------------------------------------------------------------------- /focus-android/docs/Battery-Debugging.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Battery-Debugging.md -------------------------------------------------------------------------------- /focus-android/docs/Content-blocking.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Content-blocking.md -------------------------------------------------------------------------------- /focus-android/docs/Feature-&-Issue-workflow.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Feature-&-Issue-workflow.md -------------------------------------------------------------------------------- /focus-android/docs/GeckoView-(In-Progress).md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/GeckoView-(In-Progress).md -------------------------------------------------------------------------------- /focus-android/docs/Home.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Home.md -------------------------------------------------------------------------------- /focus-android/docs/Homescreen-Tips.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Homescreen-Tips.md -------------------------------------------------------------------------------- /focus-android/docs/Multisession-architecture.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Multisession-architecture.md -------------------------------------------------------------------------------- /focus-android/docs/Recommended-pre-push-hook.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Recommended-pre-push-hook.md -------------------------------------------------------------------------------- /focus-android/docs/Release-Process.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Release-Process.md -------------------------------------------------------------------------------- /focus-android/docs/Release-tracks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Release-tracks.md -------------------------------------------------------------------------------- /focus-android/docs/Removing-strings.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Removing-strings.md -------------------------------------------------------------------------------- /focus-android/docs/Sprint-Process.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Sprint-Process.md -------------------------------------------------------------------------------- /focus-android/docs/Telemetry.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/Telemetry.md -------------------------------------------------------------------------------- /focus-android/docs/UI-Test.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/UI-Test.md -------------------------------------------------------------------------------- /focus-android/docs/l10n-Screenshot-Generation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/docs/l10n-Screenshot-Generation.md -------------------------------------------------------------------------------- /focus-android/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/gradle.properties -------------------------------------------------------------------------------- /focus-android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /focus-android/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/gradlew -------------------------------------------------------------------------------- /focus-android/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/gradlew.bat -------------------------------------------------------------------------------- /focus-android/l10n.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/l10n.toml -------------------------------------------------------------------------------- /focus-android/quality/checkstyle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/quality/checkstyle.xml -------------------------------------------------------------------------------- /focus-android/quality/detekt-baseline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/quality/detekt-baseline.xml -------------------------------------------------------------------------------- /focus-android/quality/detekt.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/quality/detekt.yml -------------------------------------------------------------------------------- /focus-android/quality/license.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/quality/license.template -------------------------------------------------------------------------------- /focus-android/quality/pmd-rules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/quality/pmd-rules.xml -------------------------------------------------------------------------------- /focus-android/quality/pre-push-recommended.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/quality/pre-push-recommended.sh -------------------------------------------------------------------------------- /focus-android/quality/spotbugs-exclude.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/quality/spotbugs-exclude.xml -------------------------------------------------------------------------------- /focus-android/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/settings.gradle -------------------------------------------------------------------------------- /focus-android/tools/data_renewal_generate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/tools/data_renewal_generate.py -------------------------------------------------------------------------------- /focus-android/tools/data_renewal_request.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/tools/data_renewal_request.py -------------------------------------------------------------------------------- /focus-android/tools/docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/tools/docker/Dockerfile -------------------------------------------------------------------------------- /focus-android/tools/docker/licenses/android-sdk-license: -------------------------------------------------------------------------------- 1 | 2 | 8933bad161af4178b1185d1a37fbf41ea5269c55 3 | -------------------------------------------------------------------------------- /focus-android/tools/docker/licenses/android-sdk-preview-license: -------------------------------------------------------------------------------- 1 | 2 | 84831b9409646a918e30573bab4c9c91346d8abd 3 | -------------------------------------------------------------------------------- /focus-android/tools/gradle/versionCode.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/tools/gradle/versionCode.gradle -------------------------------------------------------------------------------- /focus-android/tools/update-glean-tags.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/focus-android/tools/update-glean-tags.py -------------------------------------------------------------------------------- /monorepo-migration/convert-to-hg.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/monorepo-migration/convert-to-hg.sh -------------------------------------------------------------------------------- /monorepo-migration/data/message-expressions.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/monorepo-migration/data/message-expressions.txt -------------------------------------------------------------------------------- /monorepo-migration/data/repo-numbers.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/monorepo-migration/data/repo-numbers.json -------------------------------------------------------------------------------- /monorepo-migration/filter-repo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/monorepo-migration/filter-repo.py -------------------------------------------------------------------------------- /monorepo-migration/generate-repo-numbers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/monorepo-migration/generate-repo-numbers.py -------------------------------------------------------------------------------- /monorepo-migration/sync-fenix.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/monorepo-migration/sync-fenix.sh -------------------------------------------------------------------------------- /shared-settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/shared-settings.gradle -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/__init__.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/build_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/build_config.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/gradle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/gradle.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/job.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/job.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/parameters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/parameters.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/release_type.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/release_type.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/routes.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/target_tasks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/target_tasks.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/transforms/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/transforms/test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/transforms/test.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/util/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/util/group_by.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/util/group_by.py -------------------------------------------------------------------------------- /taskcluster/android_taskgraph/worker_types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/android_taskgraph/worker_types.py -------------------------------------------------------------------------------- /taskcluster/ci/beetmover-android-app/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/beetmover-android-app/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/beetmover/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/beetmover/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/browsertime/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/browsertime/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/build-apk/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/build-apk/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/build-bundle/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/build-bundle/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/build-components/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/build-components/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/build-samples-browser/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/build-samples-browser/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/complete/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/complete/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/config.yml -------------------------------------------------------------------------------- /taskcluster/ci/docker-image/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/docker-image/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/fetch/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/fetch/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/geckoview/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/geckoview/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/github-release-apks/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/github-release-apks/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/lint/buildconfig.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/lint/buildconfig.yml -------------------------------------------------------------------------------- /taskcluster/ci/lint/compare-locales.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/lint/compare-locales.yml -------------------------------------------------------------------------------- /taskcluster/ci/lint/detekt.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/lint/detekt.yml -------------------------------------------------------------------------------- /taskcluster/ci/lint/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/lint/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/lint/ktlint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/lint/ktlint.yml -------------------------------------------------------------------------------- /taskcluster/ci/lint/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/lint/lint.yml -------------------------------------------------------------------------------- /taskcluster/ci/mark-as-shipped/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/mark-as-shipped/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/post-beetmover/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/post-beetmover/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/post-signing/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/post-signing/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/push-bundle/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/push-bundle/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/release-notify-promote/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/release-notify-promote/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/release-notify-push/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/release-notify-push/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/release-notify-ship/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/release-notify-ship/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/release-notify-started/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/release-notify-started/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/release-notify-testrail/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/release-notify-testrail/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/signing-apk/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/signing-apk/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/signing-bundle/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/signing-bundle/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/signing/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/signing/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/startup-test/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/startup-test/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/test-apk/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/test-apk/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/test-components/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/test-components/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/toolchain/android.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/toolchain/android.yml -------------------------------------------------------------------------------- /taskcluster/ci/toolchain/gecko-derived.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/toolchain/gecko-derived.yml -------------------------------------------------------------------------------- /taskcluster/ci/toolchain/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/toolchain/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/trigger-nightly/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/trigger-nightly/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/ui-test-apk/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/ui-test-apk/kind.yml -------------------------------------------------------------------------------- /taskcluster/ci/version-bump/kind.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/ci/version-bump/kind.yml -------------------------------------------------------------------------------- /taskcluster/docker/android-build/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/docker/android-build/Dockerfile -------------------------------------------------------------------------------- /taskcluster/docker/base/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/docker/base/Dockerfile -------------------------------------------------------------------------------- /taskcluster/docker/ui-tests/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/docker/ui-tests/Dockerfile -------------------------------------------------------------------------------- /taskcluster/requirements.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/requirements.in -------------------------------------------------------------------------------- /taskcluster/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/requirements.txt -------------------------------------------------------------------------------- /taskcluster/scripts/get-secret.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/get-secret.py -------------------------------------------------------------------------------- /taskcluster/scripts/lib/testrail_api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/lib/testrail_api.py -------------------------------------------------------------------------------- /taskcluster/scripts/lib/testrail_conn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/lib/testrail_conn.py -------------------------------------------------------------------------------- /taskcluster/scripts/lib/testrail_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/lib/testrail_utils.py -------------------------------------------------------------------------------- /taskcluster/scripts/lint/requirements.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/lint/requirements.in -------------------------------------------------------------------------------- /taskcluster/scripts/lint/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/lint/requirements.txt -------------------------------------------------------------------------------- /taskcluster/scripts/slack_notifier.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/slack_notifier.py -------------------------------------------------------------------------------- /taskcluster/scripts/testrail_main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/testrail_main.py -------------------------------------------------------------------------------- /taskcluster/scripts/tests/test-lab.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/tests/test-lab.py -------------------------------------------------------------------------------- /taskcluster/scripts/write-dummy-secret.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/scripts/write-dummy-secret.py -------------------------------------------------------------------------------- /taskcluster/test/params/fork-cron-nightly.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/test/params/fork-cron-nightly.yml -------------------------------------------------------------------------------- /taskcluster/test/params/fork-promote-beta.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/test/params/fork-promote-beta.yml -------------------------------------------------------------------------------- /taskcluster/test/params/fork-push.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/test/params/fork-push.yml -------------------------------------------------------------------------------- /taskcluster/test/params/main-repo-push-beta.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/test/params/main-repo-push-beta.yml -------------------------------------------------------------------------------- /taskcluster/test/params/main-repo-push-main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/test/params/main-repo-push-main.yml -------------------------------------------------------------------------------- /taskcluster/test/params/main-repo-ship-beta.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mozilla-mobile/firefox-android/HEAD/taskcluster/test/params/main-repo-ship-beta.yml -------------------------------------------------------------------------------- /version.txt: -------------------------------------------------------------------------------- 1 | 125.0a1 2 | --------------------------------------------------------------------------------