summaryrefslogtreecommitdiffstats
path: root/mobile/android/android-components/components/feature/findinpage
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-15 03:34:50 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-15 03:34:50 +0000
commitdef92d1b8e9d373e2f6f27c366d578d97d8960c6 (patch)
tree2ef34b9ad8bb9a9220e05d60352558b15f513894 /mobile/android/android-components/components/feature/findinpage
parentAdding debian version 125.0.3-1. (diff)
downloadfirefox-def92d1b8e9d373e2f6f27c366d578d97d8960c6.tar.xz
firefox-def92d1b8e9d373e2f6f27c366d578d97d8960c6.zip
Merging upstream version 126.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'mobile/android/android-components/components/feature/findinpage')
-rw-r--r--mobile/android/android-components/components/feature/findinpage/README.md84
-rw-r--r--mobile/android/android-components/components/feature/findinpage/build.gradle48
-rw-r--r--mobile/android/android-components/components/feature/findinpage/proguard-rules.pro21
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/AndroidManifest.xml4
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/FindInPageFeature.kt75
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/facts/FindInPageFacts.kt46
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPageInteractor.kt75
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPagePresenter.kt57
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageBar.kt260
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageView.kt54
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/layout/mozac_feature_findinpage_view.xml83
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-am/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-an/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ar/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ast/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-az/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-azb/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-be/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-bg/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-bn/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-br/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-bs/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ca/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-cak/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ceb/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ckb/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-co/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-cs/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-cy/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-da/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-de/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-dsb/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-el/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rCA/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rGB/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-eo/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rAR/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rCL/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rES/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rMX/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-es/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-et/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-eu/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-fa/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ff/strings.xml21
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-fi/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-fr/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-fur/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-fy-rNL/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ga-rIE/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-gd/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-gl/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-gn/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-gu-rIN/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-hi-rIN/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-hr/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-hsb/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-hu/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-hy-rAM/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ia/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-in/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-is/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-it/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-iw/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ja/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ka/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-kaa/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-kab/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-kk/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-kmr/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-kn/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ko/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-lij/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-lo/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-lt/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-mix/strings.xml8
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ml/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-mr/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-my/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-nb-rNO/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ne-rNP/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-nl/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-nn-rNO/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-oc/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-or/strings.xml7
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rIN/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rPK/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-pl/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rBR/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rPT/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-rm/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ro/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ru/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-sat/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-sc/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-si/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-sk/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-skr/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-sl/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-sq/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-sr/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-su/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-sv-rSE/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ta/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-te/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-tg/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-th/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-tl/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-tr/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-trs/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-tt/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-tzm/strings.xml21
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ug/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-uk/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-ur/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-uz/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-vec/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-vi/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-yo/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rCN/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rTW/strings.xml24
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values/attrs.xml15
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values/dimens.xml12
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values/strings.xml27
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/main/res/values/style.xml12
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/FindInPageFeatureTest.kt130
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPageInteractorTest.kt211
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPagePresenterTest.kt117
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/view/FindInPageBarTest.kt170
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker2
-rw-r--r--mobile/android/android-components/components/feature/findinpage/src/test/resources/robolectric.properties1
131 files changed, 4105 insertions, 0 deletions
diff --git a/mobile/android/android-components/components/feature/findinpage/README.md b/mobile/android/android-components/components/feature/findinpage/README.md
new file mode 100644
index 0000000000..b80b81b073
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/README.md
@@ -0,0 +1,84 @@
+# [Android Components](../../../README.md) > Feature > Find In Page
+
+A feature that provides [Find in Page functionality](https://support.mozilla.org/en-US/kb/search-contents-current-page-text-or-links).
+
+## Usage
+
+### Setting up the dependency
+
+Use Gradle to download the library from [maven.mozilla.org](https://maven.mozilla.org/) ([Setup repository](../../../README.md#maven-repository)):
+
+```Groovy
+implementation "org.mozilla.components:feature-findinpage:{latest-version}"
+```
+
+### Adding feature to application
+
+To use this feature you have to do two things:
+
+**1. Add the `FindInPageBar` widget to you layout:**
+
+```xml
+<mozilla.components.feature.findinpage.view.FindInPageBar
+ android:id="@+id/find_in_page"
+ android:layout_width="match_parent"
+ android:background="#FFFFFFFF"
+ android:elevation="10dp"
+ android:layout_height="56dp"
+ android:padding="4dp" />
+```
+
+These are the properties that you can customize of this widget.
+```xml
+<attr name="findInPageQueryTextColor" format="reference|color"/>
+<attr name="findInPageQueryHintTextColor" format="reference|color"/>
+<attr name="findInPageQueryTextSize" format="dimension"/>
+<attr name="findInPageResultCountTextColor" format="reference|color"/>
+<attr name="findInPageResultCountTextSize" format="dimension"/>
+<attr name="findInPageButtonsTint" format="reference|color"/>
+<attr name="findInPageNoMatchesTextColor" format="reference|color"/>
+```
+
+**2. Add the `FindInPageFeature` to your activity/fragment:**
+
+```kotlin
+val findInPageBar = layout.findViewById<FindInPageBar>(R.id.find_in_page)
+
+val findInPageFeature = FindInPageFeature(
+ sessionManager,
+ findInPageView
+) {
+ // Optional: Handle clicking of "close" button.
+}
+
+lifecycle.addObservers(findInPageFeature)
+
+// To show "Find in Page" results for a `Session`:
+findInPageFeature.bind(session)
+```
+
+🦊 A practical example of using feature find in page can be found in [Sample Browser](https://github.com/mozilla-mobile/android-components/tree/main/samples/browser).
+
+## Facts
+
+This component emits the following [Facts](../../support/base/README.md#Facts):
+
+| Action | Item | Extras | Description |
+|--------|----------|---------------|-----------------------------------------------------|
+| CLICK | previous | | The user clicked the previous result button. |
+| CLICK | next | | The user clicked the next result button. |
+| CLICK | close | | The user clicked the close button. |
+| COMMIT | input | `inputExtras` | The user committed a query to be found on the page. |
+
+
+#### `inputExtras`
+
+| Key | Type | Value |
+|-------|--------|-----------------------------|
+| value | String | The query that was searched |
+
+## License
+
+ This Source Code Form is subject to the terms of the Mozilla Public
+ License, v. 2.0. If a copy of the MPL was not distributed with this
+ file, You can obtain one at http://mozilla.org/MPL/2.0/
diff --git a/mobile/android/android-components/components/feature/findinpage/build.gradle b/mobile/android/android-components/components/feature/findinpage/build.gradle
new file mode 100644
index 0000000000..7abc2177d8
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/build.gradle
@@ -0,0 +1,48 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
+
+apply plugin: 'com.android.library'
+apply plugin: 'kotlin-android'
+
+android {
+ defaultConfig {
+ minSdkVersion config.minSdkVersion
+ compileSdk config.compileSdkVersion
+ targetSdkVersion config.targetSdkVersion
+ }
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ }
+ }
+
+ namespace 'mozilla.components.feature.findinpage'
+}
+
+tasks.withType(KotlinCompile).configureEach {
+ kotlinOptions.freeCompilerArgs += "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
+}
+
+dependencies {
+ implementation project(':browser-state')
+ implementation project(':concept-engine')
+ implementation project(':support-ktx')
+ implementation project(':ui-icons')
+
+ implementation ComponentsDependencies.androidx_constraintlayout
+
+ testImplementation ComponentsDependencies.androidx_test_core
+ testImplementation ComponentsDependencies.androidx_test_junit
+ testImplementation ComponentsDependencies.testing_coroutines
+ testImplementation ComponentsDependencies.testing_robolectric
+ testImplementation project(':support-test')
+}
+
+apply from: '../../../android-lint.gradle'
+apply from: '../../../publish.gradle'
+ext.configurePublish(config.componentsGroupId, archivesBaseName, project.ext.description)
diff --git a/mobile/android/android-components/components/feature/findinpage/proguard-rules.pro b/mobile/android/android-components/components/feature/findinpage/proguard-rules.pro
new file mode 100644
index 0000000000..f1b424510d
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/proguard-rules.pro
@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/AndroidManifest.xml b/mobile/android/android-components/components/feature/findinpage/src/main/AndroidManifest.xml
new file mode 100644
index 0000000000..e16cda1d34
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/AndroidManifest.xml
@@ -0,0 +1,4 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<manifest />
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/FindInPageFeature.kt b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/FindInPageFeature.kt
new file mode 100644
index 0000000000..707748db8c
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/FindInPageFeature.kt
@@ -0,0 +1,75 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage
+
+import androidx.annotation.VisibleForTesting
+import mozilla.components.browser.state.state.SessionState
+import mozilla.components.browser.state.store.BrowserStore
+import mozilla.components.concept.engine.EngineView
+import mozilla.components.feature.findinpage.internal.FindInPageInteractor
+import mozilla.components.feature.findinpage.internal.FindInPagePresenter
+import mozilla.components.feature.findinpage.view.FindInPageView
+import mozilla.components.support.base.feature.LifecycleAwareFeature
+import mozilla.components.support.base.feature.UserInteractionHandler
+
+/**
+ * Feature implementation that will keep a [FindInPageView] in sync with a bound [SessionState].
+ */
+class FindInPageFeature(
+ store: BrowserStore,
+ view: FindInPageView,
+ engineView: EngineView,
+ private val onClose: (() -> Unit)? = null,
+) : LifecycleAwareFeature, UserInteractionHandler {
+ @VisibleForTesting internal var presenter = FindInPagePresenter(store, view)
+
+ @VisibleForTesting internal var interactor = FindInPageInteractor(this, view, engineView)
+
+ private var session: SessionState? = null
+
+ override fun start() {
+ presenter.start()
+ interactor.start()
+ }
+
+ override fun stop() {
+ presenter.stop()
+ interactor.stop()
+ }
+
+ /**
+ * Binds this feature to the given [SessionState]. Until unbound the [FindInPageView] will be
+ * updated presenting the current "Find in Page" state.
+ */
+ fun bind(session: SessionState) {
+ this.session = session
+
+ presenter.bind(session)
+ interactor.bind(session)
+ }
+
+ /**
+ * Returns true if the back button press was handled and the feature unbound from a session.
+ */
+ override fun onBackPressed(): Boolean {
+ return if (session != null) {
+ unbind()
+ true
+ } else {
+ false
+ }
+ }
+
+ /**
+ * Unbinds the feature from a previously bound [SessionState]. The [FindInPageView] will be
+ * cleared and not be updated to present the "Find in Page" state anymore.
+ */
+ fun unbind() {
+ session = null
+ presenter.unbind()
+ interactor.unbind()
+ onClose?.invoke()
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/facts/FindInPageFacts.kt b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/facts/FindInPageFacts.kt
new file mode 100644
index 0000000000..9865ebdc3c
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/facts/FindInPageFacts.kt
@@ -0,0 +1,46 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.facts
+
+import mozilla.components.support.base.Component
+import mozilla.components.support.base.facts.Action
+import mozilla.components.support.base.facts.Fact
+import mozilla.components.support.base.facts.collect
+
+/**
+ * Facts emitted for telemetry related to [FindInPageFeature]
+ */
+class FindInPageFacts {
+ /**
+ * Items that specify which portion of the [FindInPageFeature] was interacted with
+ */
+ object Items {
+ const val PREVIOUS = "previous"
+ const val NEXT = "next"
+ const val CLOSE = "close"
+ const val INPUT = "input"
+ }
+}
+
+private fun emitFindInPageFact(
+ action: Action,
+ item: String,
+ value: String? = null,
+ metadata: Map<String, Any>? = null,
+) {
+ Fact(
+ Component.FEATURE_FINDINPAGE,
+ action,
+ item,
+ value,
+ metadata,
+ ).collect()
+}
+
+internal fun emitCloseFact() = emitFindInPageFact(Action.CLICK, FindInPageFacts.Items.CLOSE)
+internal fun emitNextFact() = emitFindInPageFact(Action.CLICK, FindInPageFacts.Items.NEXT)
+internal fun emitPreviousFact() = emitFindInPageFact(Action.CLICK, FindInPageFacts.Items.PREVIOUS)
+internal fun emitCommitFact(value: String) =
+ emitFindInPageFact(Action.COMMIT, FindInPageFacts.Items.INPUT, value)
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPageInteractor.kt b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPageInteractor.kt
new file mode 100644
index 0000000000..b89b1c1baf
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPageInteractor.kt
@@ -0,0 +1,75 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.internal
+
+import mozilla.components.browser.state.state.SessionState
+import mozilla.components.concept.engine.EngineSession
+import mozilla.components.concept.engine.EngineView
+import mozilla.components.feature.findinpage.FindInPageFeature
+import mozilla.components.feature.findinpage.facts.emitCloseFact
+import mozilla.components.feature.findinpage.facts.emitCommitFact
+import mozilla.components.feature.findinpage.facts.emitNextFact
+import mozilla.components.feature.findinpage.facts.emitPreviousFact
+import mozilla.components.feature.findinpage.view.FindInPageView
+import mozilla.components.support.ktx.android.view.hideKeyboard
+
+/**
+ * Interactor that implements [FindInPageView.Listener] and notifies the engine or feature about actions the user
+ * performed (e.g. "find next result").
+ */
+internal class FindInPageInteractor(
+ private val feature: FindInPageFeature,
+ private val view: FindInPageView,
+ private val engineView: EngineView?,
+) : FindInPageView.Listener {
+ private var engineSession: EngineSession? = null
+
+ fun start() {
+ view.listener = this
+ }
+
+ fun stop() {
+ view.listener = null
+ }
+
+ fun bind(session: SessionState) {
+ engineSession = session.engineState.engineSession
+ }
+
+ override fun onPreviousResult() {
+ engineSession?.findNext(forward = false)
+ engineView?.asView()?.clearFocus()
+ view.asView().hideKeyboard()
+ emitPreviousFact()
+ }
+
+ override fun onNextResult() {
+ engineSession?.findNext(forward = true)
+ engineView?.asView()?.clearFocus()
+ view.asView().hideKeyboard()
+ emitNextFact()
+ }
+
+ override fun onClose() {
+ // We pass this event up to the feature. The feature is responsible for unbinding its sub components and
+ // potentially notifying other dependencies.
+ feature.unbind()
+ emitCloseFact()
+ }
+
+ fun unbind() {
+ engineSession?.clearFindMatches()
+ engineSession = null
+ }
+
+ override fun onFindAll(query: String) {
+ engineSession?.findAll(query)
+ emitCommitFact(query)
+ }
+
+ override fun onClearMatches() {
+ engineSession?.clearFindMatches()
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPagePresenter.kt b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPagePresenter.kt
new file mode 100644
index 0000000000..04d76f8d9b
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/internal/FindInPagePresenter.kt
@@ -0,0 +1,57 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.internal
+
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.cancel
+import kotlinx.coroutines.flow.distinctUntilChangedBy
+import kotlinx.coroutines.flow.mapNotNull
+import mozilla.components.browser.state.selector.findTabOrCustomTab
+import mozilla.components.browser.state.state.SessionState
+import mozilla.components.browser.state.store.BrowserStore
+import mozilla.components.feature.findinpage.view.FindInPageView
+import mozilla.components.lib.state.ext.flowScoped
+
+/**
+ * Presenter that will observe [SessionState] changes and update the view whenever
+ * a find result was added.
+ */
+internal class FindInPagePresenter(
+ private val store: BrowserStore,
+ private val view: FindInPageView,
+) {
+ @Volatile
+ internal var session: SessionState? = null
+
+ private var scope: CoroutineScope? = null
+
+ fun start() {
+ scope = store.flowScoped { flow ->
+ flow.mapNotNull { state -> session?.let { state.findTabOrCustomTab(it.id) } }
+ .distinctUntilChangedBy { it.content.findResults }
+ .collect {
+ val results = it.content.findResults
+ if (results.isNotEmpty()) {
+ view.displayResult(results.last())
+ }
+ }
+ }
+ }
+
+ fun stop() {
+ scope?.cancel()
+ }
+
+ fun bind(session: SessionState) {
+ this.session = session
+ view.private = session.content.private
+ view.focus()
+ }
+
+ fun unbind() {
+ view.clear()
+ this.session = null
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageBar.kt b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageBar.kt
new file mode 100644
index 0000000000..5b82cb4c83
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageBar.kt
@@ -0,0 +1,260 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.view
+
+import android.content.Context
+import android.content.res.ColorStateList
+import android.text.Editable
+import android.text.TextWatcher
+import android.util.AttributeSet
+import android.util.TypedValue.COMPLEX_UNIT_PX
+import android.widget.EditText
+import android.widget.TextView
+import androidx.annotation.VisibleForTesting
+import androidx.appcompat.widget.AppCompatImageButton
+import androidx.constraintlayout.widget.ConstraintLayout
+import androidx.core.view.inputmethod.EditorInfoCompat
+import mozilla.components.browser.state.state.content.FindResultState
+import mozilla.components.feature.findinpage.R
+import mozilla.components.support.ktx.android.view.hideKeyboard
+import mozilla.components.support.ktx.android.view.showKeyboard
+
+private const val DEFAULT_VALUE = 0
+
+/**
+ * A customizable "Find in page" bar implementing [FindInPageView].
+ */
+class FindInPageBar @JvmOverloads constructor(
+ context: Context,
+ attrs: AttributeSet? = null,
+ defStyleAttr: Int = 0,
+) : ConstraintLayout(context, attrs, defStyleAttr), FindInPageView {
+ private val styling: FindInPageBarStyling = createStyling(context, attrs, defStyleAttr)
+
+ @VisibleForTesting
+ internal val queryEditText: EditText
+
+ @VisibleForTesting
+ internal val resultsCountTextView: TextView
+
+ @VisibleForTesting
+ internal val resultFormat: String =
+ context.getString(R.string.mozac_feature_findindpage_result)
+
+ @VisibleForTesting
+ internal val accessibilityFormat: String =
+ context.getString(R.string.mozac_feature_findindpage_accessibility_result)
+
+ override var listener: FindInPageView.Listener? = null
+
+ /**
+ * Sets/gets private mode.
+ *
+ * In private mode the IME should not update any personalized data such as typing history and personalized language
+ * model based on what the user typed.
+ */
+ override var private: Boolean
+ get() = (queryEditText.imeOptions and EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING) != 0
+ set(value) {
+ queryEditText.imeOptions = if (value) {
+ queryEditText.imeOptions or EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING
+ } else {
+ queryEditText.imeOptions and (EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING.inv())
+ }
+ }
+
+ init {
+ inflate(getContext(), R.layout.mozac_feature_findinpage_view, this)
+
+ queryEditText = findViewById(R.id.find_in_page_query_text)
+ resultsCountTextView = findViewById(R.id.find_in_page_result_text)
+
+ bindQueryEditText()
+ bindResultsCountView()
+ bindPreviousButton()
+ bindNextButton()
+ bindCloseButton()
+ }
+
+ internal fun onQueryChange(newQuery: String) {
+ if (newQuery.isNotBlank()) {
+ listener?.onFindAll(newQuery)
+ } else {
+ resultsCountTextView.text = ""
+ listener?.onClearMatches()
+ }
+ }
+
+ override fun focus() {
+ queryEditText.showKeyboard()
+ }
+
+ override fun clear() {
+ queryEditText.text = null
+ queryEditText.clearFocus()
+ resultsCountTextView.text = null
+ resultsCountTextView.contentDescription = null
+ }
+
+ override fun displayResult(result: FindResultState) {
+ with(result) {
+ val ordinal = if (numberOfMatches > 0) activeMatchOrdinal + 1 else activeMatchOrdinal
+ resultsCountTextView.text = String.format(resultFormat, ordinal, numberOfMatches)
+ resultsCountTextView.setTextColorIfNotDefaultValue(
+ if (numberOfMatches > 0) styling.resultCountTextColor else styling.resultNoMatchesTextColor,
+ )
+ val accessibilityLabel = String.format(accessibilityFormat, ordinal, numberOfMatches)
+ resultsCountTextView.contentDescription = accessibilityLabel
+ announceForAccessibility(accessibilityLabel)
+ }
+ }
+
+ private fun createStyling(
+ context: Context,
+ attrs: AttributeSet?,
+ defStyleAttr: Int,
+ ): FindInPageBarStyling {
+ val attr = context.obtainStyledAttributes(attrs, R.styleable.FindInPageBar, defStyleAttr, 0)
+
+ with(attr) {
+ return FindInPageBarStyling(
+ getColor(
+ R.styleable.FindInPageBar_findInPageQueryTextColor,
+ DEFAULT_VALUE,
+ ),
+ getColor(
+ R.styleable.FindInPageBar_findInPageQueryHintTextColor,
+ DEFAULT_VALUE,
+ ),
+ getDimensionPixelSize(
+ R.styleable.FindInPageBar_findInPageQueryTextSize,
+ DEFAULT_VALUE,
+ ),
+ getColor(
+ R.styleable.FindInPageBar_findInPageResultCountTextColor,
+ DEFAULT_VALUE,
+ ),
+ getColor(
+ R.styleable.FindInPageBar_findInPageNoMatchesTextColor,
+ DEFAULT_VALUE,
+ ),
+ getDimensionPixelSize(
+ R.styleable.FindInPageBar_findInPageResultCountTextSize,
+ DEFAULT_VALUE,
+ ),
+ getColorStateList(R.styleable.FindInPageBar_findInPageButtonsTint),
+ ).also { recycle() }
+ }
+ }
+
+ private fun bindNextButton() {
+ val nextButton = findViewById<AppCompatImageButton>(R.id.find_in_page_next_btn)
+ nextButton.setIconTintIfNotDefaultValue(styling.buttonsTint)
+ nextButton.setOnClickListener {
+ if (queryEditText.text.isNotEmpty()) {
+ listener?.onNextResult()
+ }
+ }
+ }
+
+ private fun bindPreviousButton() {
+ val previousButton = findViewById<AppCompatImageButton>(R.id.find_in_page_prev_btn)
+ previousButton.setIconTintIfNotDefaultValue(styling.buttonsTint)
+ previousButton.setOnClickListener {
+ if (queryEditText.text.isNotEmpty()) {
+ listener?.onPreviousResult()
+ }
+ }
+ }
+
+ private fun bindCloseButton() {
+ val closeButton = findViewById<AppCompatImageButton>(R.id.find_in_page_close_btn)
+ closeButton.setIconTintIfNotDefaultValue(styling.buttonsTint)
+ closeButton.setOnClickListener {
+ clear()
+ listener?.onClose()
+ }
+ }
+
+ private fun bindResultsCountView() {
+ resultsCountTextView.setTextSizeIfNotDefaultValue(styling.resultCountTextSize)
+ resultsCountTextView.setTextColorIfNotDefaultValue(styling.resultCountTextColor)
+ }
+
+ @VisibleForTesting
+ internal fun bindQueryEditText() {
+ with(queryEditText) {
+ setTextSizeIfNotDefaultValue(styling.queryTextSize)
+ setTextColorIfNotDefaultValue(styling.queryTextColor)
+ setHintTextColorIfNotDefaultValue(styling.queryHintTextColor)
+
+ addTextChangedListener(
+ object : TextWatcher {
+ override fun afterTextChanged(s: Editable?) = Unit
+ override fun beforeTextChanged(
+ s: CharSequence?,
+ start: Int,
+ count: Int,
+ after: Int,
+ ) = Unit
+
+ override fun onTextChanged(
+ newCharacter: CharSequence?,
+ start: Int,
+ before: Int,
+ count: Int,
+ ) {
+ val newQuery = newCharacter?.toString() ?: return
+ onQueryChange(newQuery)
+ }
+ },
+ )
+
+ onFocusChangeListener = OnFocusChangeListener { _, hasFocus ->
+ if (!hasFocus) {
+ this@FindInPageBar.hideKeyboard()
+ }
+ }
+ }
+ }
+
+ @VisibleForTesting
+ internal fun hideKeyboard() {
+ queryEditText.hideKeyboard()
+ }
+}
+
+internal data class FindInPageBarStyling(
+ val queryTextColor: Int,
+ val queryHintTextColor: Int,
+ val queryTextSize: Int,
+ val resultCountTextColor: Int,
+ val resultNoMatchesTextColor: Int,
+ val resultCountTextSize: Int,
+ val buttonsTint: ColorStateList?,
+)
+
+private fun TextView.setTextSizeIfNotDefaultValue(newValue: Int) {
+ if (newValue != DEFAULT_VALUE) {
+ setTextSize(COMPLEX_UNIT_PX, newValue.toFloat())
+ }
+}
+
+private fun TextView.setTextColorIfNotDefaultValue(newValue: Int) {
+ if (newValue != DEFAULT_VALUE) {
+ setTextColor(newValue)
+ }
+}
+
+private fun TextView.setHintTextColorIfNotDefaultValue(newValue: Int) {
+ if (newValue != DEFAULT_VALUE) {
+ setHintTextColor(newValue)
+ }
+}
+
+private fun AppCompatImageButton.setIconTintIfNotDefaultValue(newValue: ColorStateList?) {
+ val safeValue = newValue ?: return
+ imageTintList = safeValue
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageView.kt b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageView.kt
new file mode 100644
index 0000000000..d95ad753ea
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/java/mozilla/components/feature/findinpage/view/FindInPageView.kt
@@ -0,0 +1,54 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.view
+
+import android.view.View
+import mozilla.components.browser.state.state.content.FindResultState
+
+/**
+ * An interface for views that can display "find in page" results and related UI controls.
+ */
+interface FindInPageView {
+ /**
+ * Listener to be invoked after the user performs certain actions (e.g. "find next result").
+ */
+ var listener: Listener?
+
+ /**
+ * Sets/gets private mode.
+ *
+ * In private mode the IME should not update any personalized data such as typing history and personalized language
+ * model based on what the user typed.
+ */
+ var private: Boolean
+
+ /**
+ * Displays the given [FindResultState] state in the view.
+ */
+ fun displayResult(result: FindResultState)
+
+ /**
+ * Requests focus for the input element the user can type their query into.
+ */
+ fun focus()
+
+ /**
+ * Clears the UI state.
+ */
+ fun clear()
+
+ /**
+ * Casts this [FindInPageView] interface to an actual Android [View] object.
+ */
+ fun asView(): View = (this as View)
+
+ interface Listener {
+ fun onPreviousResult()
+ fun onNextResult()
+ fun onClose()
+ fun onFindAll(query: String)
+ fun onClearMatches()
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/layout/mozac_feature_findinpage_view.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/layout/mozac_feature_findinpage_view.xml
new file mode 100644
index 0000000000..83ff8d43ef
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/layout/mozac_feature_findinpage_view.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<merge
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="48dp"
+ android:clickable="false"
+ android:focusable="false"
+ android:focusableInTouchMode="false"
+ tools:background="#ffffffff"
+ tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout">
+
+ <EditText
+ android:id="@+id/find_in_page_query_text"
+ android:layout_width="0dp"
+ android:layout_height="match_parent"
+ android:layout_marginStart="@dimen/mozac_feature_findinpage_query_marginStart"
+ android:background="#00000000"
+ android:ems="10"
+ android:gravity="center_vertical"
+ android:hint="@string/mozac_feature_findindpage_input"
+ android:accessibilityHeading="true"
+ android:importantForAccessibility="yes"
+ android:clickable="true"
+ android:focusable="true"
+ android:focusableInTouchMode="true"
+ android:inputType="textNoSuggestions"
+ android:lines="1"
+ android:maxLines="1"
+ android:textSize="@dimen/mozac_feature_findinpage_query_text_size"
+ app:layout_constraintEnd_toStartOf="@id/find_in_page_result_text"
+ app:layout_constraintStart_toStartOf="parent"
+ android:importantForAutofill="no"
+ tools:ignore="UnusedAttribute"/>
+
+ <TextView
+ android:id="@+id/find_in_page_result_text"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginEnd="@dimen/mozac_feature_findinpage_result_count_margin_end"
+ android:layout_marginStart="@dimen/mozac_feature_findinpage_result_count_margin_start"
+ android:textSize="@dimen/mozac_feature_findinpage_result_count_text_size"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toStartOf="@id/find_in_page_prev_btn"
+ app:layout_constraintStart_toEndOf="@+id/find_in_page_query_text"
+ app:layout_constraintTop_toTopOf="parent"
+ tools:text="10/20"/>
+
+ <androidx.appcompat.widget.AppCompatImageButton
+ android:id="@+id/find_in_page_prev_btn"
+ style="@style/Mozac.Feature.FindInPage.Buttons"
+ android:contentDescription="@string/mozac_feature_findindpage_previous_result"
+ app:srcCompat="@drawable/mozac_ic_chevron_up_24"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toStartOf="@id/find_in_page_next_btn"
+ app:layout_constraintStart_toEndOf="@+id/find_in_page_result_text"
+ app:layout_constraintTop_toTopOf="parent"/>
+
+ <androidx.appcompat.widget.AppCompatImageButton
+ android:id="@+id/find_in_page_next_btn"
+ style="@style/Mozac.Feature.FindInPage.Buttons"
+ android:contentDescription="@string/mozac_feature_findindpage_next_result"
+ app:srcCompat="@drawable/mozac_ic_chevron_down_24"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toStartOf="@id/find_in_page_close_btn"
+ app:layout_constraintStart_toEndOf="@+id/find_in_page_prev_btn"
+ app:layout_constraintTop_toTopOf="parent"/>
+
+ <androidx.appcompat.widget.AppCompatImageButton
+ android:id="@+id/find_in_page_close_btn"
+ style="@style/Mozac.Feature.FindInPage.Buttons"
+ android:contentDescription="@string/mozac_feature_findindpage_dismiss"
+ app:srcCompat="@drawable/mozac_ic_cross_24"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toEndOf="@+id/find_in_page_next_btn"
+ app:layout_constraintTop_toTopOf="parent"/>
+</merge>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-am/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-am/strings.xml
new file mode 100644
index 0000000000..5750feb0f3
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-am/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">በገጽ ውስጥ ያግኙ</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d ከ%2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">የሚቀጥለውን ውጤት ያግኙ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ያለፈውን ውጤት ያግኙ</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">በገጽ ውስጥ ማግኘትን አሰናብት</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-an/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-an/strings.xml
new file mode 100644
index 0000000000..960c77e7aa
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-an/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Mirar en a pachina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Trobar lo resultau siguient</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Trobar lo resultau anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Deixar de mirar en a pachina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ar/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ar/strings.xml
new file mode 100644
index 0000000000..62ebe1f4b8
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ar/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ابحث في الصفحة</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/‏%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d من أصل %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ابحث عن النتيجة التالية</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ابحث عن النتيجة السابقة</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">أخفِ لوحة البحث في الصفحة</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ast/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ast/strings.xml
new file mode 100644
index 0000000000..e305c362d7
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ast/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Atopar…</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Atopar el resultáu siguiente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Atopar el resultáu anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Dexar d\'atopar</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-az/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-az/strings.xml
new file mode 100644
index 0000000000..498b313e36
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-az/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Səhifədə tap</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d nəticədən %1$d dənəsi</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Sonrakı nəticəni tap</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Əvvəlki nəticəni tap</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Səhifədə axtarışı qapat</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-azb/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-azb/strings.xml
new file mode 100644
index 0000000000..2657899814
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-azb/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">صفحه‌ده تاپین</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d سونوچدان %1$d سونوچ</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">سونراکی سونوچو تاپ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">اؤنجه‌کی سونوچو تاپ</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">صفحه‌ده تاپماغی باغلا</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-be/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-be/strings.xml
new file mode 100644
index 0000000000..d39c00e59a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-be/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Знайсці на старонцы</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d з %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Знайсці наступны вынік</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Знайсці папярэдні вынік</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Прыбраць пошук на старонцы</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bg/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bg/strings.xml
new file mode 100644
index 0000000000..c44b85be8b
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bg/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Търсене в страницата</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d от %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Отиване към следващото съвпадение</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Отиване към предишното съвпадение</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Затваряне на търсенето в страницата</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bn/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bn/strings.xml
new file mode 100644
index 0000000000..df6d0d1192
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">পাতায় অনুসন্ধান করুন</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d এর মধ্যে %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">পরবর্তী ফলাফল খুঁজুন</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">পূর্ববর্তী ফলাফল খুঁজুন</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">পাতায় অনুসন্ধান বাদ দিন</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-br/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-br/strings.xml
new file mode 100644
index 0000000000..070b7974cf
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-br/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Kavout er bajennad</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d eus %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Klask an disocʼh da-heul</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Klask an disocʼh kent</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Argas “Klask er bajenn”</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bs/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bs/strings.xml
new file mode 100644
index 0000000000..de75977111
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-bs/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Pronađi na stranici</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d od %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Pronađi sljedeći rezultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Pronađi prethodni rezultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Odbaci pronalazak na stranici</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ca/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ca/strings.xml
new file mode 100644
index 0000000000..c3f09aa5a2
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ca/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Cerca a la pàgina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Cerca el següent resultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Cerca el resultat anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Tanca la cerca a la pàgina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cak/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cak/strings.xml
new file mode 100644
index 0000000000..c36c2623ba
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cak/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Tikanöx pa ruxaq</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d richin %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Tikanöx ri jun chik nilitäj</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Tikanöx ri jun ilitajnäq kan</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Titz\'apïx nikanöx pa ruxaq</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ceb/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ceb/strings.xml
new file mode 100644
index 0000000000..f8e6ed2c5e
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ceb/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Pangita-a sa page</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d gawas sa %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Pangita-a ang sunod nga resulta</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Pangitaa ang niaging resulta</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Undanga ang pagpangita sulod sa page</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ckb/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ckb/strings.xml
new file mode 100644
index 0000000000..3418614502
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ckb/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">لە ناو پەڕگە بگەڕێ</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d لە %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ئەنجامی داهاتوو بدۆزرەوە</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ئەنجامی پێشوو بدۆزرەوە</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">گەڕان لە پەڕە پشتگوێبخە</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-co/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-co/strings.xml
new file mode 100644
index 0000000000..d82fe936e3
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-co/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Circà in a pagina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d nant’à %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Truvà u risultatu seguente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Truvà u risultatu precedente</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Chjode a ricerca in a pagina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cs/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cs/strings.xml
new file mode 100644
index 0000000000..f03ea22250
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cs/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Najít na stránce</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d z %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Najít další</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Najít předchozí</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Ukončit hledání na stránce</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cy/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cy/strings.xml
new file mode 100644
index 0000000000..7015c6119f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-cy/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Canfod ar y dudalen</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d o %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Canfod y canlyniad nesaf</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Canfod y canlyniad blaenorol</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Cau’r canfod ar y dudalen</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-da/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-da/strings.xml
new file mode 100644
index 0000000000..736d31828f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-da/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Find på siden</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d af %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Find næste</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Find forrige</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Deaktiver find på siden</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-de/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-de/strings.xml
new file mode 100644
index 0000000000..0fda394ed8
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-de/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Seite durchsuchen</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d von %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Nächstes Ergebnis suchen</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Vorheriges Ergebnis suchen</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">&quot;Seite durchsuchen&quot; deaktivieren</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-dsb/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-dsb/strings.xml
new file mode 100644
index 0000000000..5033e7e4cc
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-dsb/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Na boku pytaś</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d z %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Pśiducy wuslědk namakaś</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Pjerwjejšny wuslědk namakaś</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Na boku pytaś znjemóžniś</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-el/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-el/strings.xml
new file mode 100644
index 0000000000..0db1373049
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-el/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Εύρεση στη σελίδα</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d από %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Εύρεση επόμενου αποτελέσματος</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Εύρεση προηγούμενου αποτελέσματος</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Απόρριψη εύρεσης στη σελίδα</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rCA/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rCA/strings.xml
new file mode 100644
index 0000000000..d1ab7e1e4a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rCA/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Find in page</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d out of %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Find next result</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Find previous result</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Dismiss find in page</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rGB/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000000..d1ab7e1e4a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-en-rGB/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Find in page</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d out of %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Find next result</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Find previous result</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Dismiss find in page</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-eo/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-eo/strings.xml
new file mode 100644
index 0000000000..7ebfac0962
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-eo/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Serĉi en paĝo</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d el %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Trovi venontan rezulton</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Trovi antaŭan rezulton</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Fermi serĉon en paĝo</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rAR/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rAR/strings.xml
new file mode 100644
index 0000000000..77b5b926a6
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rAR/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Buscar en la página</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Buscar resultado siguiente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Buscar resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Descartar la búsqueda en la página</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rCL/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rCL/strings.xml
new file mode 100644
index 0000000000..dd4e856d62
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rCL/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Buscar en la página</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Buscar el siguiente resultado</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Buscar el resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Cerrar búsqueda en la página</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rES/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rES/strings.xml
new file mode 100644
index 0000000000..92a062a88f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rES/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Buscar en la página</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Buscar resultado siguiente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Buscar resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Descartar buscar en página</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rMX/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rMX/strings.xml
new file mode 100644
index 0000000000..92a062a88f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es-rMX/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Buscar en la página</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Buscar resultado siguiente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Buscar resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Descartar buscar en página</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es/strings.xml
new file mode 100644
index 0000000000..92a062a88f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-es/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Buscar en la página</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Buscar resultado siguiente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Buscar resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Descartar buscar en página</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-et/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-et/strings.xml
new file mode 100644
index 0000000000..5f1cefee0a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-et/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Otsi lehelt</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">tulemus %1$d, kokku %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Leia järgmine tulemus</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Leia eelmine tulemus</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Katkesta otsimine</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-eu/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-eu/strings.xml
new file mode 100644
index 0000000000..99aa6f857a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-eu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Bilatu orrian</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%2$d/%1$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d(e)tik %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Bilatu hurrengo emaitza</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Bilatu aurreko emaitza</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Baztertu orrian bilatzea</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fa/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fa/strings.xml
new file mode 100644
index 0000000000..0d677e2196
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fa/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">پیدا کردن در صفحه</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d از %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">پیدا کردن نتیجه بعدی</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">پیدا کردن نتیجه قبلی</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">رد کردن پیدا کردن در این صفحه</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ff/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ff/strings.xml
new file mode 100644
index 0000000000..63914ba92d
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ff/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Yiytu e Hello</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d e nder %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Yiytu njeñtudi paandi</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Yiytu njeñtudi njawtundi</string>
+
+ </resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fi/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fi/strings.xml
new file mode 100644
index 0000000000..c5df85a447
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fi/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Etsi sivulta</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">Osuma %1$d yhteensä %2$d osumasta</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Etsi seuraava osuma</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Etsi edellinen osuma</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Sulje Etsi sivulta -toiminto</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fr/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fr/strings.xml
new file mode 100644
index 0000000000..5532d185ab
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Rechercher dans la page</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d sur %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Trouver le résultat suivant</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Trouver le résultat précédent</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Fermer la recherche dans la page</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fur/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fur/strings.xml
new file mode 100644
index 0000000000..519f93b5a7
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fur/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Cjate te pagjine</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d di %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Cjate risultât sucessîf</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Cjate risultât precedent</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Siere cjate te pagjine</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fy-rNL/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fy-rNL/strings.xml
new file mode 100644
index 0000000000..097876432b
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-fy-rNL/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Sykje op side</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d fan %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Folgjende resultaat fine</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Foarige resultaat fine</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Sykje op side slute</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ga-rIE/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ga-rIE/strings.xml
new file mode 100644
index 0000000000..a603113b5a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ga-rIE/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Aimsigh sa leathanach</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d as %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">An chéad toradh eile</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">An toradh roimhe seo</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Dún “Aimsigh sa leathanach”</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gd/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gd/strings.xml
new file mode 100644
index 0000000000..25f126ee4b
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gd/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Lorg air an duilleag</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d à %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Lorg an ath-thoradh</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Lorg an toradh roimhe</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Leig seachad an gleus “Lorg san duilleag”</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gl/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gl/strings.xml
new file mode 100644
index 0000000000..7765be1901
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Atopar na páxina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Atopar o resultado seguinte</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Atopar o resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Pechar a busca</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gn/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gn/strings.xml
new file mode 100644
index 0000000000..ca9df85c78
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Eheka kuatiaroguépe</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d %2$d rehegua</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Eheka ambue oikopyréva</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Eheka oikopyre mboyveguáva</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Eheja kuatiaroguépe jeheka</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gu-rIN/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gu-rIN/strings.xml
new file mode 100644
index 0000000000..b688a3d0a9
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-gu-rIN/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">પૃષ્ઠમાં શોધો</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d માંથી %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">આગામી પરિણામ શોધો</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">અગાઉના પરિણામ શોધો</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">પૃષ્ઠમાં શોધો કાઢી નાખો</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hi-rIN/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hi-rIN/strings.xml
new file mode 100644
index 0000000000..bd186e7442
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hi-rIN/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">पृष्ठ मे ढूंढें</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d में से %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">अगला परिणाम खोजें</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">पिछला परिणाम खोजें</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">पृष्ठ में ढूंढें हटाएं</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hr/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hr/strings.xml
new file mode 100644
index 0000000000..2a9cfda09d
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Pronađi na stranici</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d od %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Pronađi sljedeći rezultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Pronađi prethodni rezultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Odbaci „pronađi na stranici”</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hsb/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hsb/strings.xml
new file mode 100644
index 0000000000..94253a5a04
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hsb/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Na stronje pytać</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d z %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Přichodny wuslědk namakać</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Předchadny wuslědk namakać</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Na stronje pytać znjemóžnić</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hu/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hu/strings.xml
new file mode 100644
index 0000000000..f67cab9870
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Keresés az oldalon</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d ennyiből: %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Következő találat</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Előző találat</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Kereső elrejtése</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hy-rAM/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hy-rAM/strings.xml
new file mode 100644
index 0000000000..fbafa4d274
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-hy-rAM/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Գտնել էջում</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d-ը %2$d-ից</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Գտնել հաջորդ արդյունքը</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Գտնել նախորդ արդյունքը</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Բաց թողնել գտնելը էջում</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ia/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ia/strings.xml
new file mode 100644
index 0000000000..065c0e9b5d
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ia/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Cercar in le pagina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Trovar le resultato successive</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Trovar le resultato previe</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Dimitter le recerca in le pagina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-in/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-in/strings.xml
new file mode 100644
index 0000000000..e410fae139
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-in/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Temukan di laman</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d dari %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Temukan hasil selanjutnya</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Temukan hasil sebelumnya</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Tutup pencarian di laman</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-is/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-is/strings.xml
new file mode 100644
index 0000000000..9bfda06840
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-is/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Finna á síðu</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d af %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Finna næstu niðurstöðu</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Finna fyrri niðurstöðu</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Slepptu leit á síðu</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-it/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-it/strings.xml
new file mode 100644
index 0000000000..33160a15f6
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-it/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Trova nella pagina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d di %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Risultato successivo</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Risultato precedente</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Chiudi trova nella pagina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-iw/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-iw/strings.xml
new file mode 100644
index 0000000000..013ad1eb80
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-iw/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">חיפוש בדף</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d מתוך %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">חיפוש התוצאה הבאה</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">חיפוש התוצאה הקודמת</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">סגירת החיפוש בדף</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ja/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ja/strings.xml
new file mode 100644
index 0000000000..aa0a233005
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ja/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ページ内検索</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d 件中 %1$d 件目</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">次の結果を検索</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">前の結果を検索</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ページ内検索を閉じる</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ka/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ka/strings.xml
new file mode 100644
index 0000000000..0284f99e79
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ka/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">პოვნა გვერდზე</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d შედეგი %2$d-დან</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">მომდევნო შედეგი</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">წინა შედეგი</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ძიების გაუქმება</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kaa/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kaa/strings.xml
new file mode 100644
index 0000000000..b527b8ae2d
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kaa/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Betten tabıw</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d dan %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Keyingi nátiyjeni tabıw</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Aldınǵı nátiyjeni tabıw</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Betten izlewdi alıp taslaw</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kab/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kab/strings.xml
new file mode 100644
index 0000000000..9350559d46
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kab/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Nadi deg usebter</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d ɣef %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Af-d agmuḍ d-iteddun</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">af-d agmuḍ yezrin</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Mdel anadi deg usebter</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kk/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kk/strings.xml
new file mode 100644
index 0000000000..4e8b1c5016
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Беттен табу</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d ішінен %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Келесі нәтижені табу</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Алдыңғы нәтижені табу</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Беттен іздеуді алып тастау</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kmr/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kmr/strings.xml
new file mode 100644
index 0000000000..98973f1386
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kmr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Di rûpelê de bibîne</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">Ji %2$d encaman %1$d encam</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Encama pêş bibîne</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Encama paş bibîne</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">’Di rûpelê de bibîne’yê bigire</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kn/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kn/strings.xml
new file mode 100644
index 0000000000..02bfacacad
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-kn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ಪುಟದಲ್ಲಿ ಹುಡುಕು</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d ರಲ್ಲಿ %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ಮುಂದಿನ ಫಲಿತಾಂಶವನ್ನು ಹುಡುಕಿ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ಹಿಂದಿನ ಫಲಿತಾಂಶವನ್ನು ಹುಡುಕಿ</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ಪುಟದಲ್ಲಿನ ಹುಡುಕು ವಜಾಗೊಳಿಸಿ</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ko/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ko/strings.xml
new file mode 100644
index 0000000000..346b282a5e
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ko/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">페이지에서 찾기</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d 중 %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">다음 결과 찾기</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">이전 결과 찾기</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">페이지에서 찾기 닫기</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lij/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lij/strings.xml
new file mode 100644
index 0000000000..3229463a47
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lij/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Treuva inta pagina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Pròscimo exito</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Exito primma</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Særa treuva inta pagina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lo/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lo/strings.xml
new file mode 100644
index 0000000000..3a5b2a31fa
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lo/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ຄົ້ນຫາໃນຫນ້ານີ້</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d ບໍ່ຢູ່ໃນ %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ຄົ້ນຫາຜົນລັບຕໍ່ໄປ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ຄົ້ນຫາຜົນລັບກ່ອນໜ້ານີ້</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ຍົກເລີກການຄົ້ນຫາໃນໜ້າ</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lt/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lt/strings.xml
new file mode 100644
index 0000000000..a5c87dda81
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-lt/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Rasti tinklalapyje</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d iš %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Rasti tolesnį</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Rasti ankstesnį</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Paslėpti radimo funkcijas</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-mix/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-mix/strings.xml
new file mode 100644
index 0000000000..10b36bbe05
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-mix/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ </resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ml/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ml/strings.xml
new file mode 100644
index 0000000000..069c01fa4a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ml/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">പേജിൽ കണ്ടെത്തുക</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d -ൽ %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">അടുത്ത ഫലം കണ്ടെത്തുക</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">മുമ്പത്തെ ഫലം കണ്ടെത്തുക</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">പേജിലെ തിരച്ചില്‍ നിര്‍ത്തുക</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-mr/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-mr/strings.xml
new file mode 100644
index 0000000000..c39d158501
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-mr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">पृष्ठामध्ये शोधा</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d पैकी %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">पुढील परिणाम शोधा</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">मागील परिणाम शोधा</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">पृष्ठामध्ये शोधणे रद्द करा</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-my/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-my/strings.xml
new file mode 100644
index 0000000000..e7fb0b7bcf
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-my/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">စာမျက်နှာထဲတွင် ရှာပါ</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d / %2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d ရဲ့ %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">နောက်ထပ်ရလဒ် ရှာပါ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ယခင်ရလဒ်ကိုရှာပါ</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">စာမျက်နှာတွင် ရှာဖွေမှု ဖယ်ထုတ်ပါ</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nb-rNO/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nb-rNO/strings.xml
new file mode 100644
index 0000000000..9c042e6c44
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nb-rNO/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Søk på siden</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d av %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Søk etter neste</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Søk etter forrige</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Lukk søk på siden</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ne-rNP/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ne-rNP/strings.xml
new file mode 100644
index 0000000000..1952db3089
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ne-rNP/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">यो पृष्ठमा खोज्नुहोस्</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d मध्ये %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">अर्को परिणाम खोज्नुहोस्</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">पहिलाको परिणाम खोज्नुहोस्</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">पृष्ठमा फेला पार्नुहोस् लाई खारेज गर्नुहोस्</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nl/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nl/strings.xml
new file mode 100644
index 0000000000..ae5167e85a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Zoeken op pagina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d van %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Volgende resultaat vinden</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Vorige resultaat vinden</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Zoeken op pagina sluiten</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nn-rNO/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nn-rNO/strings.xml
new file mode 100644
index 0000000000..444d4bec05
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-nn-rNO/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Søk på sida</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d av %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Søk etter neste</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Søk etter førre</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Lat att søk på sida</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-oc/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-oc/strings.xml
new file mode 100644
index 0000000000..2278f50a02
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-oc/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Recercar dins la pagina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d sus %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Trobar lo resultat seguent</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Trobar lo resultat precedent</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Quitar la recèrca dins la pagina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-or/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-or/strings.xml
new file mode 100644
index 0000000000..64b9dc5446
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-or/strings.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ପୃଷ୍ଠାରେ ଖୋଜି ପାଆନ୍ତୁ</string>
+
+ </resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rIN/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rIN/strings.xml
new file mode 100644
index 0000000000..f3a34b18fe
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rIN/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ਸਫ਼ੇ ‘ਚ ਲੱਭੋ</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d ‘ਚੋਂ %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ਅਗਲਾ ਨਤੀਜਾ ਲੱਭੋ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ਪਿਛਲਾ ਨਤੀਜਾ ਲੱਭੋ</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ਸਫ਼ੇ ‘ਚ ਲੱਭਣ ਨੂੰ ਖ਼ਾਰਜ ਕਰੋ</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rPK/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rPK/strings.xml
new file mode 100644
index 0000000000..fec0a430f2
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pa-rPK/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">صفحے چ لبھو</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d چوں %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">اگلا نتیجہ لبھو</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">پچھلا نتیجہ لبھو</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">لبھݨ والے نوں بند کرو</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pl/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pl/strings.xml
new file mode 100644
index 0000000000..752d58673b
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Znajdź na stronie</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d z %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Znajdź następny wynik</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Znajdź poprzedni wynik</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Zamknij wyszukiwanie na stronie</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rBR/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rBR/strings.xml
new file mode 100644
index 0000000000..0aef22c5ea
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rBR/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Procurar na página</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Próximo resultado</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Descartar procurar na página</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rPT/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rPT/strings.xml
new file mode 100644
index 0000000000..2682a96e90
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-pt-rPT/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Localizar na página</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Localizar próximo resultado</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Localizar resultado anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Dispensar localizar na página</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-rm/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-rm/strings.xml
new file mode 100644
index 0000000000..a601d0c651
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-rm/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Tschertgar en la pagina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d da %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Tschertgar il proxim resultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Tschertgar il resultat precedent</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Serrar la tschertga en la pagina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ro/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ro/strings.xml
new file mode 100644
index 0000000000..75f54041ea
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ro/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Caută în pagină</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d din %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Mergi la rezultatul următor</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Mergi la rezultatul anterior</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Înlătură căutarea în pagină</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ru/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ru/strings.xml
new file mode 100644
index 0000000000..20ffd0c271
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ru/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Найти на странице</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d из %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Найти следующее совпадение</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Найти предыдущее совпадение</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Убрать поиск на странице</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sat/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sat/strings.xml
new file mode 100644
index 0000000000..0f52aca21e
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sat/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ᱥᱟᱦᱴᱟ ᱨᱮ ᱯᱟᱱᱛᱮ ᱢᱮ</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d ᱠᱷᱚᱱ %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ᱤᱱᱟᱹ ᱛᱟᱭᱚᱢᱟᱜ ᱠᱩᱲᱟᱹᱭ ᱧᱟᱢ ᱢᱮ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ᱞᱟᱦᱟ ᱛᱮᱭᱟᱜ ᱠᱩᱲᱟᱹᱭ ᱧᱟᱢ ᱢᱮ</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ᱥᱟᱦᱴᱟ ᱨᱮ ᱧᱟᱢ ᱚᱰᱚᱠ ᱵᱟᱫ ᱢᱮ</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sc/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sc/strings.xml
new file mode 100644
index 0000000000..f468db0d23
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sc/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Chirca in sa pàgina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Agata su resurtadu imbeniente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Agata su resurtadu pretzedente</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Serra sa chirca in sa pàgina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-si/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-si/strings.xml
new file mode 100644
index 0000000000..a98e3e906d
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-si/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">පිටුවේ සොයන්න</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d / %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ඊළඟ ප්‍රතිඵලය සොයන්න</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">කලින් ප්‍රතිඵලය සොයන්න</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">පිටුවේ සෙවීම ඉවතලන්න</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sk/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sk/strings.xml
new file mode 100644
index 0000000000..78f0cb8334
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Hľadať na stránke</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d z %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Nájsť ďalší výsledok</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Nájsť predchádzajúci výsledok</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Zavrieť hľadanie na stránke</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-skr/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-skr/strings.xml
new file mode 100644
index 0000000000..8a7e68969c
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-skr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ورقے وچ لبھو</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d وچوں %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">اڳلا نتیجہ لبھو</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">پچھلا نتیجہ لبھو</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ورقے وچ لبھݨ کوں فارغ کرو</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sl/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sl/strings.xml
new file mode 100644
index 0000000000..1613c99504
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Najdi na strani</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d od %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Najdi naslednji zadetek</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Najdi prejšnji zadetek</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Končaj iskanje na strani</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sq/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sq/strings.xml
new file mode 100644
index 0000000000..01fc4117bb
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sq/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Gjej në faqe</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d nga %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Gjej përfundimin pasues</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Gjej përfundimin e mëparshëm</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Hidhe tej gjetjen në faqe</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sr/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sr/strings.xml
new file mode 100644
index 0000000000..16e39af338
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Нађи на страници</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d од %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Нађи следећи резултат</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Нађи претходни резултат</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Одбаци претрагу на страници</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-su/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-su/strings.xml
new file mode 100644
index 0000000000..04334577ae
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-su/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Téangan dina Kaca</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d ti %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Téang hasil séjén</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Téang hasil saméméhna</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Tutup téangan dina kaca</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sv-rSE/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sv-rSE/strings.xml
new file mode 100644
index 0000000000..164444ffd9
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-sv-rSE/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Hitta på sidan</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d av %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Hitta nästa resultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Hitta föregående resultat</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Ignorera hitta på sidan</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ta/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ta/strings.xml
new file mode 100644
index 0000000000..1871ba84d7
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ta/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">பக்கத்தில் தேடுக</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d இல் %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">அடுத்த முடிவைக் கண்டறியவும்</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">முந்தைய முடிவைக் கண்டறியவும்</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">பக்கத்தில் கண்டுபிடியை இரத்து செய்</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-te/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-te/strings.xml
new file mode 100644
index 0000000000..20b03731fc
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-te/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">పేజీలో వెతకండి</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$dలో %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">తదుపరి ఫలితాన్ని కనుగొనండి</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">మునుపటి ఫలితాన్ని కనుగొనండి</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">పేజీలో వెతకడాన్ని రద్దుచేయి</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tg/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tg/strings.xml
new file mode 100644
index 0000000000..2f688579da
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tg/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Ҷустуҷӯ дар саҳифа</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d аз %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Ҷустуҷӯи натиҷаи навбатӣ</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Ҷустуҷӯи натиҷаи қаблӣ</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Қатъ кардани ҷустуҷӯ дар саҳифа</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-th/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-th/strings.xml
new file mode 100644
index 0000000000..3271f76250
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-th/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">ค้นหาในหน้า</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d จาก %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">ค้นหาผลลัพธ์ถัดไป</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ค้นหาผลลัพธ์ก่อนหน้า</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">ยกเลิกการค้นหาในหน้า</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tl/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tl/strings.xml
new file mode 100644
index 0000000000..5e34f0396f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Hanapin sa pahina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d ng %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Susunod na resulta</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Nakaraang resulta</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Iwaksi ang hanapin sa pahina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tr/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tr/strings.xml
new file mode 100644
index 0000000000..5bb0565cc0
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Sayfada bul</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d sonuçtan %1$d sonuç</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Sonraki sonucu bul</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Önceki sonucu bul</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Sayfa bulmayı kapat</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-trs/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-trs/strings.xml
new file mode 100644
index 0000000000..77fb837bdc
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-trs/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Nānà\'uì\' riña ñanj</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d sa %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Nānà\'uì\' riña sa \'na\'a</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Nānà\'uì\' riña sa gâchin</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Sī nana\'uî\'t riña pâjina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tt/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tt/strings.xml
new file mode 100644
index 0000000000..7e92ed1736
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tt/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Биттән табу</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%2$d нәтиҗәдән %1$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Алдагы нәтиҗәне табу</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Арттагы нәтиҗәне табу</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Биттән эзләүне тәмамлау</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tzm/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tzm/strings.xml
new file mode 100644
index 0000000000..f978dd7a9f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-tzm/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Af g tesna</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d nger %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Af tanaṭṭuft-dd yuckan</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Ttu arezzu g tasna</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ug/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ug/strings.xml
new file mode 100644
index 0000000000..ccb8fc98ef
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ug/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">بەت ئىچىدىن ئىزدەش</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">كېيىنكى نەتىجىنى ئىزدە</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">ئالدىنقى نەتىجىنى ئىزدە</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">بەتتىن ئىزدەشنى ياپ</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-uk/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-uk/strings.xml
new file mode 100644
index 0000000000..c44a6b3707
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-uk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Знайти на сторінці</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d з %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Знайти наступний результат</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Знайти попередній результат</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Відхилити пошук на сторінці</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ur/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ur/strings.xml
new file mode 100644
index 0000000000..ff2a687815
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-ur/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">صفحہ میں ڈھونڈیں</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d میں سے %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">اگلا نتیجہ تلاش کریں</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">پچھلا نتیجہ تلاش کریں</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">صفحہ میں تلاش کوبرخاست کریں</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-uz/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-uz/strings.xml
new file mode 100644
index 0000000000..b325a8669b
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-uz/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Sahifadan topish</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Keyingi natijani topish</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Oldingi natijani topish</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Sahifadan topishni olib tashlash</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-vec/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-vec/strings.xml
new file mode 100644
index 0000000000..5fd86f6c75
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-vec/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Cata ne ƚa pàgina</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d out de %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Risultato seguente</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Risultato presedente</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Sara su cata ne ƚa pàgina</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-vi/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-vi/strings.xml
new file mode 100644
index 0000000000..a4a42e5a86
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-vi/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Tìm trong trang</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d trong số %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Tìm kiếm kết quả tiếp theo</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Tìm kiếm kết quả trước đó</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Bỏ qua tìm kiếm trong trang</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-yo/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-yo/strings.xml
new file mode 100644
index 0000000000..1437377ae9
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-yo/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Wa ní orí ojú-ìwé</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d//%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d nínú un %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Wá àbájáde tó kàn</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Wá àbájáde tó sáájú</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Kọ àwárí inú ojú-ìwé</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rCN/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000000..0e1ea6c31f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rCN/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">在页面中查找</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">第 %1$d 项,共 %2$d 项</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">查找下一个结果</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">查找上一个结果</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">关闭页内查找</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rTW/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000000..ec4301ba78
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values-zh-rTW/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">在頁面中搜尋</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">第 %1$d 筆,共 %2$d 筆</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">尋找下一筆</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">尋找上一筆</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">關閉頁面搜尋</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values/attrs.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/attrs.xml
new file mode 100644
index 0000000000..874658ab63
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/attrs.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<resources>
+ <declare-styleable name="FindInPageBar">
+ <attr name="findInPageQueryTextColor" format="reference|color"/>
+ <attr name="findInPageQueryHintTextColor" format="reference|color"/>
+ <attr name="findInPageQueryTextSize" format="dimension"/>
+ <attr name="findInPageResultCountTextColor" format="reference|color"/>
+ <attr name="findInPageNoMatchesTextColor" format="reference|color"/>
+ <attr name="findInPageResultCountTextSize" format="dimension"/>
+ <attr name="findInPageButtonsTint" format="reference|color"/>
+ </declare-styleable>
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values/dimens.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/dimens.xml
new file mode 100644
index 0000000000..de7128169a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/dimens.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<resources>
+ <dimen name="mozac_feature_findinpage_query_text_size">16sp</dimen>
+ <dimen name="mozac_feature_findinpage_query_marginStart">16dp</dimen>
+
+ <dimen name="mozac_feature_findinpage_result_count_text_size">12sp</dimen>
+ <dimen name="mozac_feature_findinpage_result_count_margin_end">16dp</dimen>
+ <dimen name="mozac_feature_findinpage_result_count_margin_start">16dp</dimen>
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values/strings.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/strings.xml
new file mode 100644
index 0000000000..a3444ffe05
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/strings.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<resources xmlns:tools="http://schemas.android.com/tools">
+
+ <!-- Watermark/Hint for the find in page input field. -->
+ <string name="mozac_feature_findindpage_input">Find in page</string>
+
+ <!-- String to show the number of results found in the page and the
+ position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_result">%1$d/%2$d</string>
+
+ <!-- String to be read by the accessibility service presenting the number of results found in the page
+ and the position the user is at. The first argument is the position, the second argument is the total. -->
+ <string name="mozac_feature_findindpage_accessibility_result" tools:ignore="PluralsCandidate">%1$d out of %2$d</string>
+
+ <!-- String to be read by the accessibility service when focusing the next result button. -->
+ <string name="mozac_feature_findindpage_next_result">Find next result</string>
+
+ <!-- String to be read by the accessibility service when focusing the previous result button. -->
+ <string name="mozac_feature_findindpage_previous_result">Find previous result</string>
+
+ <!-- String to be read by the accessibility service when focusing the dismiss button in the "find in page" UI. -->
+ <string name="mozac_feature_findindpage_dismiss">Dismiss find in page</string>
+
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/main/res/values/style.xml b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/style.xml
new file mode 100644
index 0000000000..13a2fe1f9a
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/main/res/values/style.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<resources>
+ <style name="Mozac.Feature.FindInPage.Buttons" parent="">
+ <item name="android:layout_width">48dp</item>
+ <item name="android:layout_height">48dp</item>
+ <item name="android:background">?android:attr/selectableItemBackgroundBorderless</item>
+ <item name="tint">#ff000000</item>
+ </style>
+</resources>
diff --git a/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/FindInPageFeatureTest.kt b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/FindInPageFeatureTest.kt
new file mode 100644
index 0000000000..ab6c82bb2f
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/FindInPageFeatureTest.kt
@@ -0,0 +1,130 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage
+
+import mozilla.components.browser.state.state.SessionState
+import mozilla.components.feature.findinpage.internal.FindInPageInteractor
+import mozilla.components.feature.findinpage.internal.FindInPagePresenter
+import mozilla.components.support.test.mock
+import org.junit.Assert.assertFalse
+import org.junit.Assert.assertTrue
+import org.junit.Test
+import org.mockito.Mockito.never
+import org.mockito.Mockito.spy
+import org.mockito.Mockito.verify
+
+class FindInPageFeatureTest {
+
+ @Test
+ fun `start is forwarded to presenter and interactor`() {
+ val presenter: FindInPagePresenter = mock()
+ val interactor: FindInPageInteractor = mock()
+
+ val feature = FindInPageFeature(mock(), mock(), mock())
+ feature.presenter = presenter
+ feature.interactor = interactor
+
+ feature.start()
+
+ verify(presenter).start()
+ verify(interactor).start()
+ }
+
+ @Test
+ fun `stop is forwarded to presenter and interactor`() {
+ val presenter: FindInPagePresenter = mock()
+ val interactor: FindInPageInteractor = mock()
+
+ val feature = FindInPageFeature(mock(), mock(), mock())
+ feature.presenter = presenter
+ feature.interactor = interactor
+
+ feature.stop()
+
+ verify(presenter).stop()
+ verify(interactor).stop()
+ }
+
+ @Test
+ fun `bind is forwarded to presenter and interactor`() {
+ val presenter: FindInPagePresenter = mock()
+ val interactor: FindInPageInteractor = mock()
+
+ val feature = FindInPageFeature(mock(), mock(), mock())
+ feature.presenter = presenter
+ feature.interactor = interactor
+
+ val session: SessionState = mock()
+ feature.bind(session)
+
+ verify(presenter).bind(session)
+ verify(interactor).bind(session)
+ }
+
+ @Test
+ fun `onBackPressed unbinds if bound to session`() {
+ val presenter: FindInPagePresenter = mock()
+ val interactor: FindInPageInteractor = mock()
+
+ val feature = spy(FindInPageFeature(mock(), mock(), mock()))
+ feature.presenter = presenter
+ feature.interactor = interactor
+
+ val session: SessionState = mock()
+ feature.bind(session)
+
+ assertTrue(feature.onBackPressed())
+
+ verify(feature).unbind()
+ }
+
+ @Test
+ fun `onBackPressed returns false if not bound`() {
+ val presenter: FindInPagePresenter = mock()
+ val interactor: FindInPageInteractor = mock()
+
+ val feature = spy(FindInPageFeature(mock(), mock(), mock()))
+ feature.presenter = presenter
+ feature.interactor = interactor
+
+ assertFalse(feature.onBackPressed())
+
+ verify(feature, never()).unbind()
+ }
+
+ @Test
+ fun `unbind is forwarded to presenter and interactor`() {
+ val presenter: FindInPagePresenter = mock()
+ val interactor: FindInPageInteractor = mock()
+
+ val feature = FindInPageFeature(mock(), mock(), mock())
+ feature.presenter = presenter
+ feature.interactor = interactor
+
+ feature.unbind()
+
+ verify(presenter).unbind()
+ verify(interactor).unbind()
+ }
+
+ @Test
+ fun `unbind invokes close lambda`() {
+ val presenter: FindInPagePresenter = mock()
+ val interactor: FindInPageInteractor = mock()
+
+ var lambdaInvoked = false
+
+ val feature = FindInPageFeature(mock(), mock(), mock()) {
+ lambdaInvoked = true
+ }
+
+ feature.presenter = presenter
+ feature.interactor = interactor
+
+ feature.unbind()
+
+ assertTrue(lambdaInvoked)
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPageInteractorTest.kt b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPageInteractorTest.kt
new file mode 100644
index 0000000000..d51bf4d89b
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPageInteractorTest.kt
@@ -0,0 +1,211 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.internal
+
+import android.view.View
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import mozilla.components.browser.state.state.EngineState
+import mozilla.components.browser.state.state.SessionState
+import mozilla.components.concept.engine.EngineSession
+import mozilla.components.concept.engine.EngineView
+import mozilla.components.feature.findinpage.FindInPageFeature
+import mozilla.components.feature.findinpage.view.FindInPageView
+import mozilla.components.support.base.facts.Action
+import mozilla.components.support.base.facts.processor.CollectionProcessor
+import mozilla.components.support.test.mock
+import mozilla.components.support.test.robolectric.testContext
+import org.junit.Assert
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.Mockito.never
+import org.mockito.Mockito.verify
+import org.mockito.Mockito.`when`
+
+@RunWith(AndroidJUnit4::class)
+class FindInPageInteractorTest {
+
+ @Test
+ fun `Start registers interactor as listener on view`() {
+ val view: FindInPageView = mock()
+ val interactor = FindInPageInteractor(mock(), view, mock())
+
+ verify(view, never()).listener = interactor
+
+ interactor.start()
+
+ verify(view).listener = interactor
+ }
+
+ @Test
+ fun `Stop unregisters interactor as listener on view`() {
+ val view: FindInPageView = mock()
+ val interactor = FindInPageInteractor(mock(), view, mock())
+
+ interactor.start()
+ interactor.stop()
+
+ verify(view).listener = null
+ }
+
+ @Test
+ fun `FindInPageView-Listener implementation can get invoked without binding to session`() {
+ val view: FindInPageView = mock()
+ `when`(view.asView()).thenReturn(View(testContext))
+
+ val interactor = FindInPageInteractor(mock(), view, mock())
+
+ // Nothing should throw here if we haven't bound the interactor to a session
+ interactor.onPreviousResult()
+ interactor.onNextResult()
+ interactor.onClose()
+ interactor.onFindAll("example")
+ interactor.onClearMatches()
+ }
+
+ @Test
+ fun `OnPreviousResult updates engine session`() {
+ val view: FindInPageView = mock()
+ `when`(view.asView()).thenReturn(View(testContext))
+
+ val sessionState: SessionState = mock()
+ val engineState: EngineState = mock()
+ val engineSession: EngineSession = mock()
+ `when`(engineState.engineSession).thenReturn(engineSession)
+ `when`(sessionState.engineState).thenReturn(engineState)
+
+ val interactor = FindInPageInteractor(mock(), view, mock())
+ interactor.bind(sessionState)
+ interactor.onPreviousResult()
+
+ verify(engineSession).findNext(false)
+ }
+
+ @Test
+ fun `onNextResult updates engine session`() {
+ val view: FindInPageView = mock()
+ `when`(view.asView()).thenReturn(View(testContext))
+
+ val sessionState: SessionState = mock()
+ val engineState: EngineState = mock()
+ val engineSession: EngineSession = mock()
+ `when`(engineState.engineSession).thenReturn(engineSession)
+ `when`(sessionState.engineState).thenReturn(engineState)
+
+ val interactor = FindInPageInteractor(mock(), view, mock())
+ interactor.bind(sessionState)
+ interactor.onNextResult()
+
+ verify(engineSession).findNext(true)
+ }
+
+ @Test
+ fun `onNextResult blurs focused engine view`() {
+ val view: FindInPageView = mock()
+ `when`(view.asView()).thenReturn(View(testContext))
+
+ val actualEngineView: View = mock()
+ val engineView: EngineView = mock()
+ `when`(engineView.asView()).thenReturn(actualEngineView)
+
+ val sessionState: SessionState = mock()
+ val engineState: EngineState = mock()
+ val engineSession: EngineSession = mock()
+ `when`(engineState.engineSession).thenReturn(engineSession)
+ `when`(sessionState.engineState).thenReturn(engineState)
+
+ val interactor = FindInPageInteractor(mock(), view, engineView)
+
+ interactor.bind(sessionState)
+ interactor.onNextResult()
+ verify(actualEngineView).clearFocus()
+ }
+
+ @Test
+ fun `onClose notifies feature`() {
+ val feature: FindInPageFeature = mock()
+
+ val interactor = FindInPageInteractor(feature, mock(), mock())
+ interactor.onClose()
+
+ verify(feature).unbind()
+ }
+
+ @Test
+ fun `unbind clears matches`() {
+ val view: FindInPageView = mock()
+ val sessionState: SessionState = mock()
+ val engineState: EngineState = mock()
+ val engineSession: EngineSession = mock()
+ `when`(engineState.engineSession).thenReturn(engineSession)
+ `when`(sessionState.engineState).thenReturn(engineState)
+
+ val interactor = FindInPageInteractor(mock(), view, mock())
+ interactor.bind(sessionState)
+ verify(engineSession, never()).clearFindMatches()
+
+ interactor.unbind()
+ verify(engineSession).clearFindMatches()
+ }
+
+ @Test
+ fun `onFindAll updates engine session`() {
+ val sessionState: SessionState = mock()
+ val engineState: EngineState = mock()
+ val engineSession: EngineSession = mock()
+ `when`(engineState.engineSession).thenReturn(engineSession)
+ `when`(sessionState.engineState).thenReturn(engineState)
+
+ val interactor = FindInPageInteractor(mock(), mock(), mock())
+
+ interactor.bind(sessionState)
+ interactor.onFindAll("example")
+
+ verify(engineSession).findAll("example")
+ }
+
+ @Test
+ fun `onClearMatches updates engine session`() {
+ val sessionState: SessionState = mock()
+ val engineState: EngineState = mock()
+ val engineSession: EngineSession = mock()
+ `when`(engineState.engineSession).thenReturn(engineSession)
+ `when`(sessionState.engineState).thenReturn(engineState)
+
+ val interactor = FindInPageInteractor(mock(), mock(), mock())
+ interactor.bind(sessionState)
+ interactor.onClearMatches()
+
+ verify(engineSession).clearFindMatches()
+ }
+
+ @Test
+ fun `interactor emits the facts`() {
+ CollectionProcessor.withFactCollection { facts ->
+ val view: FindInPageView = mock()
+ `when`(view.asView()).thenReturn(View(testContext))
+
+ val actualEngineView: View = mock()
+ val engineView: EngineView = mock()
+ `when`(engineView.asView()).thenReturn(actualEngineView)
+
+ val interactor = FindInPageInteractor(mock(), view, engineView)
+ interactor.onClose()
+ interactor.onFindAll("Mozilla")
+ interactor.onNextResult()
+ interactor.onPreviousResult()
+
+ val closeFact = facts[0]
+ val commitFact = facts[1]
+ val nextFact = facts[2]
+ val previousFact = facts[3]
+
+ Assert.assertEquals("close", closeFact.item)
+ Assert.assertEquals("input", commitFact.item)
+ Assert.assertEquals(Action.COMMIT, commitFact.action)
+ Assert.assertEquals("next", nextFact.item)
+ Assert.assertEquals("previous", previousFact.item)
+ }
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPagePresenterTest.kt b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPagePresenterTest.kt
new file mode 100644
index 0000000000..3f7a8bfe43
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/internal/FindInPagePresenterTest.kt
@@ -0,0 +1,117 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.internal
+
+import kotlinx.coroutines.ExperimentalCoroutinesApi
+import mozilla.components.browser.state.action.ContentAction
+import mozilla.components.browser.state.selector.selectedTab
+import mozilla.components.browser.state.state.BrowserState
+import mozilla.components.browser.state.state.SessionState
+import mozilla.components.browser.state.state.content.FindResultState
+import mozilla.components.browser.state.state.createTab
+import mozilla.components.browser.state.store.BrowserStore
+import mozilla.components.feature.findinpage.view.FindInPageView
+import mozilla.components.support.test.any
+import mozilla.components.support.test.ext.joinBlocking
+import mozilla.components.support.test.mock
+import mozilla.components.support.test.rule.MainCoroutineRule
+import org.junit.Assert.assertEquals
+import org.junit.Assert.assertNull
+import org.junit.Before
+import org.junit.Rule
+import org.junit.Test
+import org.mockito.Mockito
+import org.mockito.Mockito.never
+import org.mockito.Mockito.times
+import org.mockito.Mockito.verify
+import org.mockito.Mockito.`when`
+
+class FindInPagePresenterTest {
+
+ @get:Rule
+ val coroutinesTestRule = MainCoroutineRule()
+ private val dispatcher = coroutinesTestRule.testDispatcher
+
+ private lateinit var store: BrowserStore
+
+ @Before
+ @ExperimentalCoroutinesApi
+ fun setUp() {
+ store = BrowserStore(
+ BrowserState(
+ tabs = listOf(
+ createTab("https://www.mozilla.org", id = "test-tab"),
+ ),
+ selectedTabId = "test-tab",
+ ),
+ )
+ }
+
+ @Test
+ fun `view is updated to display latest find result`() {
+ val view: FindInPageView = mock()
+ val presenter = FindInPagePresenter(store, view)
+ presenter.start()
+
+ val result = FindResultState(0, 2, false)
+ store.dispatch(ContentAction.AddFindResultAction("test-tab", result)).joinBlocking()
+ dispatcher.scheduler.advanceUntilIdle()
+ verify(view, never()).displayResult(result)
+
+ presenter.bind(store.state.selectedTab!!)
+ store.dispatch(ContentAction.AddFindResultAction("test-tab", result)).joinBlocking()
+ dispatcher.scheduler.advanceUntilIdle()
+ verify(view).displayResult(result)
+
+ val result2 = FindResultState(1, 2, true)
+ store.dispatch(ContentAction.AddFindResultAction("test-tab", result2)).joinBlocking()
+ dispatcher.scheduler.advanceUntilIdle()
+ verify(view).displayResult(result2)
+ }
+
+ @Test
+ fun `no find results are observed after stop has been called`() {
+ val view: FindInPageView = mock()
+ val presenter = FindInPagePresenter(store, view)
+ presenter.start()
+
+ presenter.bind(store.state.selectedTab!!)
+ store.dispatch(ContentAction.AddFindResultAction("test-tab", mock())).joinBlocking()
+ dispatcher.scheduler.advanceUntilIdle()
+ verify(view, times(1)).displayResult(any())
+
+ presenter.stop()
+ store.dispatch(ContentAction.AddFindResultAction("test-tab", mock())).joinBlocking()
+ dispatcher.scheduler.advanceUntilIdle()
+ verify(view, times(1)).displayResult(any())
+ }
+
+ @Test
+ fun `bind updates session and focuses view`() {
+ val view: FindInPageView = mock()
+
+ val presenter = FindInPagePresenter(mock(), view)
+ val session = Mockito.mock(SessionState::class.java, Mockito.RETURNS_DEEP_STUBS)
+ `when`(session.content.private).thenReturn(false)
+ presenter.bind(session)
+
+ assertEquals(presenter.session, session)
+ verify(view).focus()
+ }
+
+ @Test
+ fun `unbind clears session and view`() {
+ val view: FindInPageView = mock()
+
+ val presenter = FindInPagePresenter(mock(), view)
+ val session = Mockito.mock(SessionState::class.java, Mockito.RETURNS_DEEP_STUBS)
+ `when`(session.content.private).thenReturn(false)
+ presenter.bind(session)
+ presenter.unbind()
+
+ assertNull(presenter.session)
+ verify(view).clear()
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/view/FindInPageBarTest.kt b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/view/FindInPageBarTest.kt
new file mode 100644
index 0000000000..a16c9d897e
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/test/java/mozilla/components/feature/findinpage/view/FindInPageBarTest.kt
@@ -0,0 +1,170 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+package mozilla.components.feature.findinpage.view
+
+import android.widget.EditText
+import androidx.appcompat.widget.AppCompatImageButton
+import androidx.core.view.inputmethod.EditorInfoCompat
+import androidx.test.ext.junit.runners.AndroidJUnit4
+import mozilla.components.browser.state.state.content.FindResultState
+import mozilla.components.feature.findinpage.R
+import mozilla.components.support.test.mock
+import mozilla.components.support.test.robolectric.testContext
+import org.junit.Assert.assertEquals
+import org.junit.Assert.assertNotEquals
+import org.junit.Assert.assertTrue
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.Mockito.spy
+import org.mockito.Mockito.verify
+import org.robolectric.shadows.ShadowLooper
+
+@RunWith(AndroidJUnit4::class)
+class FindInPageBarTest {
+
+ @Test
+ fun `Clicking close button invokes onClose method of listener`() {
+ val listener: FindInPageView.Listener = mock()
+
+ val view = FindInPageBar(testContext)
+ view.listener = listener
+
+ view.findViewById<AppCompatImageButton>(R.id.find_in_page_close_btn)
+ .performClick()
+
+ verify(listener).onClose()
+ }
+
+ @Test
+ fun `Clicking next button invokes onNextResult method of listener`() {
+ val listener: FindInPageView.Listener = mock()
+
+ val view = FindInPageBar(testContext)
+ view.listener = listener
+
+ view.findViewById<EditText>(R.id.find_in_page_query_text).setText("Non empty query")
+ view.findViewById<AppCompatImageButton>(R.id.find_in_page_next_btn)
+ .performClick()
+
+ verify(listener).onNextResult()
+ }
+
+ @Test
+ fun `Clicking previous button invokes onPreviousResult method of listener`() {
+ val listener: FindInPageView.Listener = mock()
+
+ val view = FindInPageBar(testContext)
+ view.listener = listener
+
+ view.findViewById<EditText>(R.id.find_in_page_query_text).setText("Non empty query")
+ view.findViewById<AppCompatImageButton>(R.id.find_in_page_prev_btn)
+ .performClick()
+
+ verify(listener).onPreviousResult()
+ }
+
+ @Test
+ fun `Entering text invokes onFindAll method of listener`() {
+ val listener: FindInPageView.Listener = mock()
+
+ val view = FindInPageBar(testContext)
+ view.listener = listener
+
+ view.findViewById<EditText>(R.id.find_in_page_query_text)
+ .setText("Hello World")
+
+ verify(listener).onFindAll("Hello World")
+ }
+
+ @Test
+ fun `Clearing text invokes onClearMatches method of listener`() {
+ val listener: FindInPageView.Listener = mock()
+
+ val view = FindInPageBar(testContext)
+ view.listener = listener
+
+ view.findViewById<EditText>(R.id.find_in_page_query_text)
+ .setText("")
+
+ verify(listener).onClearMatches()
+ }
+
+ @Test
+ fun `displayResult with matches will update views`() {
+ val view = spy(FindInPageBar(testContext))
+
+ view.displayResult(FindResultState(0, 100, false))
+
+ val textCorrectValue = view.resultFormat.format(1, 100)
+ val contentDesCorrectValue = view.accessibilityFormat.format(1, 100)
+
+ assertEquals(textCorrectValue, view.resultsCountTextView.text)
+ assertEquals(contentDesCorrectValue, view.resultsCountTextView.contentDescription)
+ verify(view).announceForAccessibility(contentDesCorrectValue)
+ }
+
+ @Test
+ fun `displayResult with no matches will update views`() {
+ val view = spy(FindInPageBar(testContext))
+
+ view.displayResult(FindResultState(0, 0, false))
+
+ val textCorrectValue = view.resultFormat.format(0, 0)
+ val contentDesCorrectValue = view.accessibilityFormat.format(0, 0)
+
+ assertEquals(textCorrectValue, view.resultsCountTextView.text)
+ assertEquals(contentDesCorrectValue, view.resultsCountTextView.contentDescription)
+ verify(view).announceForAccessibility(contentDesCorrectValue)
+ }
+
+ @Test
+ fun `private flag sets IME_FLAG_NO_PERSONALIZED_LEARNING on find in page bar`() {
+ val findInPageBar = spy(FindInPageBar(testContext))
+ val edit = findInPageBar.queryEditText
+
+ // By default "private mode" is off.
+ assertEquals(
+ 0,
+ edit.imeOptions and
+ EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING,
+ )
+ assertEquals(false, findInPageBar.private)
+
+ // Turning on private mode sets flag
+ findInPageBar.private = true
+ assertNotEquals(
+ 0,
+ edit.imeOptions and
+ EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING,
+ )
+ assertTrue(findInPageBar.private)
+
+ // Turning private mode off again - should remove flag
+ findInPageBar.private = false
+ assertEquals(
+ 0,
+ edit.imeOptions and
+ EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING,
+ )
+ assertEquals(false, findInPageBar.private)
+ }
+
+ @Test
+ fun `clearing the focus of the find in page bar hides the keyboard`() {
+ val findInPageBar = spy(FindInPageBar(testContext))
+
+ // re-initialize the listener to use the spy
+ findInPageBar.bindQueryEditText()
+
+ // Focus the find in page bar first
+ findInPageBar.focus()
+ ShadowLooper.runUiThreadTasksIncludingDelayedTasks()
+
+ // clearing the focus should hide the keyboard
+ findInPageBar.clear()
+ ShadowLooper.runUiThreadTasksIncludingDelayedTasks()
+ verify(findInPageBar).hideKeyboard()
+ }
+}
diff --git a/mobile/android/android-components/components/feature/findinpage/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/mobile/android/android-components/components/feature/findinpage/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
new file mode 100644
index 0000000000..cf1c399ea8
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
@@ -0,0 +1,2 @@
+mock-maker-inline
+// This allows mocking final classes (classes are final by default in Kotlin)
diff --git a/mobile/android/android-components/components/feature/findinpage/src/test/resources/robolectric.properties b/mobile/android/android-components/components/feature/findinpage/src/test/resources/robolectric.properties
new file mode 100644
index 0000000000..932b01b9eb
--- /dev/null
+++ b/mobile/android/android-components/components/feature/findinpage/src/test/resources/robolectric.properties
@@ -0,0 +1 @@
+sdk=28