Merge branch 'lineage-21.0' of https://github.com/LineageOS/android_packages_apps_SetupWizard into leaf-3.2

Change-Id: I417c41774646001f09a184fe83bbc5e3350b19d9
diff --git a/Android.bp b/Android.bp
index 10fb317..a8ec7f7 100644
--- a/Android.bp
+++ b/Android.bp
@@ -22,7 +22,6 @@
 
     static_libs: [
         "androidx.activity_activity",
-        "androidx.work_work-runtime-ktx",
         "SettingsLib",
         "setupcompat",
         "setupdesign",
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 0ba26bb..8772e22 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -60,7 +60,6 @@
             android:name=".wizardmanager.WizardManager"
             android:enabled="false"
             android:exported="false"
-            android:excludeFromRecents="true"
             android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation|screenSize"
             android:immersive="true">
             <intent-filter>
@@ -75,7 +74,6 @@
             android:label="@string/activity_label_empty"
             android:lockTaskMode="normal"
             android:launchMode="singleTask"
-            android:excludeFromRecents="true"
             android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation|screenSize"
             android:immersive="true"
             android:exported="true"
@@ -93,7 +91,6 @@
         <activity
             android:name=".BluetoothSetupActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -107,7 +104,6 @@
         <activity
             android:name=".WelcomeActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -121,7 +117,6 @@
         <activity
             android:name=".LocaleActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -135,7 +130,6 @@
         <activity
             android:name=".DateTimeActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -149,7 +143,6 @@
         <activity
             android:name=".SimMissingActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -163,7 +156,6 @@
         <activity
             android:name=".NetworkSetupActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -177,7 +169,6 @@
         <activity
             android:name=".LocationSettingsActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -191,7 +182,6 @@
         <activity
             android:name=".DeviceSpecificActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:immersive="true"
             android:exported="true"
             android:windowSoftInputMode="stateAlwaysHidden">
@@ -204,7 +194,6 @@
         <activity
             android:name=".NavigationSettingsActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="true"
@@ -218,7 +207,6 @@
         <activity
             android:name=".BiometricActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -232,7 +220,6 @@
         <activity
             android:name=".ScreenLockActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="false"
@@ -246,7 +233,6 @@
         <activity
             android:name=".backup.RestoreIntroActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="true"
@@ -260,7 +246,6 @@
         <activity
             android:name=".ThemeSettingsActivity"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="true"
@@ -275,7 +260,6 @@
             android:name=".FinishActivity"
             android:theme="@style/EdgeToEdgeWallpaperBackground"
             android:label="@string/activity_label_empty"
-            android:excludeFromRecents="true"
             android:configChanges="mcc|mnc"
             android:immersive="true"
             android:exported="true"
@@ -296,9 +280,5 @@
                 <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
         </receiver>
-
-        <service
-            android:name=".SetupWizardExitWorker"
-            android:exported="false" />
     </application>
 </manifest>
diff --git a/res/layout-sw600dp/welcome_activity.xml b/res/layout-sw600dp/welcome_activity.xml
new file mode 100644
index 0000000..6ffebf5
--- /dev/null
+++ b/res/layout-sw600dp/welcome_activity.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     SPDX-FileCopyrightText: 2016 The CyanogenMod Project
+     SPDX-FileCopyrightText: 2017-2022 The LineageOS Project
+     SPDX-License-Identifier: Apache-2.0
+-->
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    style="@style/SudContentFrame">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:gravity="center_vertical"
+        android:weightSum="100"
+        android:orientation="vertical">
+
+        <ImageView
+            android:id="@+id/brand_logo"
+            android:layout_width="wrap_content"
+            android:layout_height="0dp"
+            android:layout_weight="65"
+            android:layout_gravity="center"
+            android:src="@drawable/logo"
+            android:adjustViewBounds="true"
+            android:scaleType="fitCenter"
+            android:gravity="center"
+            android:paddingTop="@dimen/content_margin_top"
+            android:paddingRight="@dimen/content_margin_left"
+            android:paddingLeft="@dimen/content_margin_left"
+            android:paddingBottom="0dp" />
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_weight="35"
+            android:gravity="center_vertical"
+            android:orientation="vertical">
+
+            <TextView
+                style="@style/WelcomeTitle"
+                android:id="@+id/welcome_title"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:hyphenationFrequency="none"
+                android:gravity="center" />
+
+            <Button
+                android:id="@+id/start"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="center"
+                android:text="@string/start"
+                style="@style/SudGlifButton.Primary" />
+        </LinearLayout>
+
+    </LinearLayout>
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:orientation="horizontal"
+        android:gravity="center"
+        android:visibility="gone">
+
+        <Button
+            android:id="@+id/emerg_dialer"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:drawableTop="@drawable/ic_dialer"
+            android:text="@string/emergency_call"
+            style="@style/SudGlifButton.Secondary" />
+
+        <Button
+            android:id="@+id/launch_accessibility"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:drawableTop="@drawable/ic_eye"
+            android:text="@string/accessibility_settings"
+            style="@style/SudGlifButton.Secondary" />
+
+    </LinearLayout>
+</LinearLayout>
diff --git a/res/raw/lineage_wizard_script.xml b/res/raw/lineage_wizard_script.xml
index 7d78b95..6ba2a43 100644
--- a/res/raw/lineage_wizard_script.xml
+++ b/res/raw/lineage_wizard_script.xml
@@ -16,6 +16,7 @@
     <WizardAction
         wizard:uri="intent:#Intent;action=org.lineageos.setupwizard.LINEAGE_WELCOME;end"
         id="welcome">
+        <result wizard:name="skip" wizard:resultCode="1" />
         <result wizard:action="locale" />
     </WizardAction>
 
diff --git a/res/raw/lineage_wizard_script_managed_profile.xml b/res/raw/lineage_wizard_script_managed_profile.xml
index 6a4d1e5..36f80c6 100644
--- a/res/raw/lineage_wizard_script_managed_profile.xml
+++ b/res/raw/lineage_wizard_script_managed_profile.xml
@@ -11,6 +11,7 @@
     <WizardAction
         wizard:uri="intent:#Intent;action=org.lineageos.setupwizard.LINEAGE_WELCOME;end"
         id="welcome">
+        <result wizard:name="skip" wizard:resultCode="1" />
         <result wizard:action="restore" />
     </WizardAction>
 
diff --git a/res/raw/lineage_wizard_script_user.xml b/res/raw/lineage_wizard_script_user.xml
index aef7f2e..f0ff14e 100644
--- a/res/raw/lineage_wizard_script_user.xml
+++ b/res/raw/lineage_wizard_script_user.xml
@@ -10,6 +10,7 @@
     <WizardAction
         wizard:uri="intent:#Intent;action=org.lineageos.setupwizard.LINEAGE_WELCOME;end"
         id="welcome">
+        <result wizard:name="skip" wizard:resultCode="1" />
         <result wizard:action="restore" />
     </WizardAction>
 
diff --git a/res/values-ast-rES/strings.xml b/res/values-ast-rES/strings.xml
index 1d7195a..da18e58 100644
--- a/res/values-ast-rES/strings.xml
+++ b/res/values-ast-rES/strings.xml
@@ -38,7 +38,7 @@
     <string name="services_pp_explanation">Estos servicios funcionen p\'aumentar les funciones del preséu. Los datos van usase d\'acuerdu cola política de privacidá de <xliff:g id="name" example="LeafOS">%1$s</xliff:g></string>
     <string name="services_find_privacy_policy">Pues lleer la política de privacidá n\'otru preséu pente la visita a <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Ayudar a ameyorar <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> pente l\'unviu los datos de diagnósticu y d\'usu a <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Esta información nun se pue usar pa identificate mas val p\'agabitar a los desendolcadores pa que trabayen en coses como la duración de la batería, el rindimientu de les aplicaciones y les funciones nueves de <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> pente l\'unviu los datos de diagnósticu y d\'usu a <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Esta información nun se pue usar pa identificate mas val p\'agabitar a los desendolcadores pa que trabayen en coses como la duración de la batería, el rindimientu de les aplicaciones y les funciones nueves de <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navegación</string>
     <string name="navigation_summary">Escueyi\'l métodu de navegación preferíu</string>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index cd6aa0b..a4104e9 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Bu xidmətlər cihazınızın imkanlarını artırır. Datalar, <xliff:g id="name" example="LeafOS">%1$s</xliff:g>un gizlilik siyasətinə uyğun olaraq istifadə ediləcək.</string>
     <string name="services_find_privacy_policy">Gizlilik siyasətini fərqli cihazda <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g> ünvanını ziyarət edərək oxuya bilərsiniz</string>
     <string name="services_help_improve_cm"><xliff:g id="name" example="LeafOS">%s</xliff:g>u təkmilləşdirməyə kömək edin</string>
-    <string name="services_metrics_label"><xliff:g id="name" example="LineageOS">%2$s</xliff:g>-a diaqnostikanı və istifadə datasıını avtomatik göndərərək <xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g>. Bu məlumatlar, kimliyinizi müəyyənləşdirmək üçün istifadə edilmir və batareya ömrü, tətbiq performansı və yeni <xliff:g id="name" example="LeafOS">%3$s</xliff:g> xüsusiyyətləri kimi işlərlə məşğul olan komandalara kömək edir.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="LineageOS">%2$s</xliff:g>-a diaqnostikanı və istifadə datasıını avtomatik göndərərək <xliff:g id="name" example="Help improve LeafOS">%1$s</xliff:g>. Bu məlumatlar, kimliyinizi müəyyənləşdirmək üçün istifadə edilmir və batareya ömrü, tətbiq performansı və yeni <xliff:g id="name" example="LeafOS">%3$s</xliff:g> xüsusiyyətləri kimi işlərlə məşğul olan komandalara kömək edir.</string>
     <string name="services_os_nav_keys_label"><b>Avadanlıq düymələri əvəzinə ekran üstü hərəkət düymələrindən istifadə edin.</b></string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Hərəkət</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 73157e4..d430954 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -35,6 +35,6 @@
     <string name="services_pp_explanation">Тези услуги работят за вас, за да разширите възможностите на вашето устройство. Данните ще бъдат използвани в съответствие с<xliff:g id="name" example="LeafOS">%1$s</xliff:g> политика за поверителност.</string>
     <string name="services_find_privacy_policy">Можете да прочетете политиката за поверителност на друго устройство, като посетите <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Помогне за подобряване на <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> чрез автоматично изпращане на диагностични данни и данни за употреба до <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Тази информация не може да се използва, за да ви идентифицира и помага на екипи, работещи по неща като живот на батерията, производителност на приложенията и нови <xliff:g id="name" example="LeafOS">%3$s</xliff:g> функции.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> чрез автоматично изпращане на диагностични данни и данни за употреба до <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Тази информация не може да се използва, за да ви идентифицира и помага на екипи, работещи по неща като живот на батерията, производителност на приложенията и нови <xliff:g id="name" example="LeafOS">%3$s</xliff:g> функции.</string>
     <string name="services_os_nav_keys_label"><b>Използване на клавишите за навигация на екрана</b> вместо хардуерните бутони.</string>
 </resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 80a840e..fb4eb40 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Aquests serveis funcionen per ampliar les capacitats del vostre dispositiu. Les dades s\'utilitzaran d\'acord amb la política de privadesa de &lt;xliff:g id="name" example="LeafOS"&gt;.</string>
     <string name="services_find_privacy_policy">Podeu llegir la política de privadesa en un altre dispositiu visitant <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Ajuda a millorar <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label">&lt;xliff:g id="name" example="Help improve LineageOS"&gt; enviant automàticament dades de diagnòstic i d\'ús a &lt;xliff:g id="name" example="LineageOS"&gt;. Aquesta informació no es pot utilitzar per identificar-vos i dóna un cop de mà als equips que treballen en coses com ara la durada de la bateria, el rendiment de les aplicacions i les noves característiques de &lt;xliff:g id="name" example="LeafOS"&gt;.</string>
+    <string name="services_metrics_label">&lt;xliff:g id="name" example="Help improve LineageOS"&gt; enviant automàticament dades de diagnòstic i d\'ús a &lt;xliff:g id="name" example="LeafOS"&gt;. Aquesta informació no es pot utilitzar per identificar-vos i dóna un cop de mà als equips que treballen en coses com ara la durada de la bateria, el rendiment de les aplicacions i les noves característiques de &lt;xliff:g id="name" example="LeafOS"&gt;.</string>
     <string name="services_os_nav_keys_label"><b>Utilitza les tecles de navegació en pantalla</b> enlloc de les tecles físiques.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation"/>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navegació</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index f5c5c85..218b260 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Tyto služby rozšiřují funkce vašeho zařízení. Data budou použita v souladu se zásadami ochrany osobních údajů <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Zásady ochrany osobních údajů si můžete přečíst na jiném zařízení navštívením odkazu <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Pomozte vylepšit <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Pomozte vylepšit LineageOS">%1$s</xliff:g> automatickým odesíláním diagnostických dat a dat o používání <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Tato data nelze použít pro Vaší identifikaci, ale pomohou vývojářskému týmu s informacemi o výdrži baterie, výkonu aplikací a vývoji nových funkcí pro <xliff:g id="name" example="LeafOS">%2$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Pomozte vylepšit LineageOS">%1$s</xliff:g> automatickým odesíláním diagnostických dat a dat o používání <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Tato data nelze použít pro Vaší identifikaci, ale pomohou vývojářskému týmu s informacemi o výdrži baterie, výkonu aplikací a vývoji nových funkcí pro <xliff:g id="name" example="LeafOS">%2$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Použít navigační klávesy na obrazovce</b> namísto hw kláves.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigace</string>
diff --git a/res/values-cy/strings.xml b/res/values-cy/strings.xml
index e49f4d1..bea07dc 100644
--- a/res/values-cy/strings.xml
+++ b/res/values-cy/strings.xml
@@ -38,7 +38,7 @@
     <string name="services_pp_explanation">Mae\'r gwasanaethau hyn yn gweithio i ti fedru ymestyn gallu dy ddyfais. Caiff data ei ddefnyddio yn ôl polisi preifatrwydd <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Gellir darllen y polisi preifatrwydd ar ddyfais arall wrth ymweld â <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Helpu i wella <xliff:g id="name" example="CyanogenMod">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> wrth anfon gwybodaeth ddiagnostig a defnydd data at <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Ni fydd yn bosib defnyddio\'r wybodaeth i dy adnabod di ac mi fydd o help mawr i\'r timau sy\'n gweithio ar bethau fel gwella perfformiad apiau a bywyd batri a chreu nodweddion newydd yn <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> wrth anfon gwybodaeth ddiagnostig a defnydd data at <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Ni fydd yn bosib defnyddio\'r wybodaeth i dy adnabod di ac mi fydd o help mawr i\'r timau sy\'n gweithio ar bethau fel gwella perfformiad apiau a bywyd batri a chreu nodweddion newydd yn <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Defnyddio bysellau llywio ar y sgrin</b> yn hytrach na botymau\'r ddyfais.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Llywio</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 03a872c..bbed809 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -35,10 +35,10 @@
     <string name="update_recovery_setting">Opdater Lineage Recovery sammen med OS</string>
     <string name="update_recovery_full_description"><xliff:g id="recovery_update_description">%1$s</xliff:g>\n<xliff:g id="recovery_update_warning">%2$s</xliff:g></string>
     <string name="setup_services">LeafOS-funktioner</string>
-    <string name="services_pp_explanation">&lt;xliff:g id="name" example="LineageOS"&gt;Disse tjenester virker for at udvide funktionerne på din enhed. Data vil blive brugt i overensstemmelse med  &lt;xliff:g id="name" example="LeafOS"&gt;%1$s&lt;/xliff:g&gt;\'s privatlivspolitik.</string>
+    <string name="services_pp_explanation">&lt;xliff:g id="name" example="LeafOS"&gt;Disse tjenester virker for at udvide funktionerne på din enhed. Data vil blive brugt i overensstemmelse med  &lt;xliff:g id="name" example="LeafOS"&gt;%1$s&lt;/xliff:g&gt;\'s privatlivspolitik.</string>
     <string name="services_find_privacy_policy">Du kan læse privatlivspolitikken på en anden enhed ved at besøge <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Hjælp med at forbedre <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> ved automatisk at sende diagnose og forbrugsdata til <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Denne information kan ikke bruge til at identificere dig men giver en hjælpende hånd til de hold der arbejder med batteri levetid, app præstation og nye<xliff:g id="name" example="LeafOS">%3$s</xliff:g> funktioner.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> ved automatisk at sende diagnose og forbrugsdata til <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Denne information kan ikke bruge til at identificere dig men giver en hjælpende hånd til de hold der arbejder med batteri levetid, app præstation og nye<xliff:g id="name" example="LeafOS">%3$s</xliff:g> funktioner.</string>
     <string name="services_os_nav_keys_label"><b>Brug navigationstaster på skærm</b> i stedet for fysiske-taster.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigation</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index b967d6e..b3dcfe6 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -13,6 +13,7 @@
     <string name="ok">OK</string>
     <string name="loading">Einen Moment\u2026</string>
     <string name="setup_welcome_message">Willkommen bei <xliff:g id="name" example="LeafOS">%1$s</xliff:g></string>
+    <string name="setup_managed_profile_welcome_message">Erstelle dein Arbeitsprofil</string>
     <string name="emergency_call">Notruf</string>
     <string name="accessibility_settings">Einstellungen zur Barrierefreiheit</string>
     <string name="setup_locale">Sprache</string>
@@ -25,6 +26,7 @@
     <string name="setup_current_date">Aktuelles Datum</string>
     <string name="setup_current_time">Aktuelle Zeit</string>
     <string name="intro_restore_title">Apps und Daten wiederherstellen</string>
+    <string name="intro_restore_subtitle">Wenn du eine Seedvault-Sicherung von <xliff:g id="name" example="LeafOS">%s</xliff:g> oder einem anderen Betriebssystem hast, kannst du sie hier wiederherstellen.</string>
     <string name="intro_restore_button">Aus Backup wiederherstellen</string>
     <string name="setup_location">Standortdienste</string>
     <string name="location_access_summary"><b>Erlaubt Apps, die um deine Erlaubnis gebeten haben, </b>deine Standortinformationen zu verwenden. Dies können Informationen zu deinem aktuellen Standort und zu vergangenen Standorten sein.</string>
@@ -38,7 +40,7 @@
     <string name="services_pp_explanation">Diese Dienste werden verwendet, um die Funktionen deines Gerätes zu erweitern. Deine Daten werden in Übereinstimmung mit der <xliff:g id="name" example="LeafOS">%1$s</xliff:g> Datenschutzerklärung verwendet.</string>
     <string name="services_find_privacy_policy">Du kannst die Datenschutzbestimmungen auf einem anderen Gerät lesen, indem du <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g> aufrufst.</string>
     <string name="services_help_improve_cm">Hilf <xliff:g id="name" example="LeafOS">%s</xliff:g> zu verbessern</string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Hilf LineageOS zu verbessern">%1$s</xliff:g>, indem du automatisch Diagnose- und Nutzungsdaten an <xliff:g id="name" example="LineageOS">%2$s</xliff:g> sendest. Diese Informationen können nicht verwendet werden, um dich zu identifizieren und helfen den Teams, die an Dingen wie Akkulaufzeit, App-Leistung und neuen <xliff:g id="name" example="LeafOS">%3$s</xliff:g>-Funktionen arbeiten.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Hilf LineageOS zu verbessern">%1$s</xliff:g>, indem du automatisch Diagnose- und Nutzungsdaten an <xliff:g id="name" example="LeafOS">%2$s</xliff:g> sendest. Diese Informationen können nicht verwendet werden, um dich zu identifizieren und helfen den Teams, die an Dingen wie Akkulaufzeit, App-Leistung und neuen <xliff:g id="name" example="LeafOS">%3$s</xliff:g>-Funktionen arbeiten.</string>
     <string name="services_os_nav_keys_label"><b>Bildschirm-Navigationstasten</b> statt Hardwaretasten verwenden.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigation</string>
@@ -47,4 +49,8 @@
     <string name="two_button_navigation">2-Tasten-Steuerung</string>
     <string name="navbar_navigation">3-Tasten-Steuerung</string>
     <string name="hide_gesture_hint">Gestensteuerungshinweis ausblenden</string>
+    <string name="setup_theme">Darstellung</string>
+    <string name="theme_summary">Beim dunklen Design wird ein schwarzer Hintergrund verwendet, um bei bestimmten Displaytypen die Akkulaufzeit zu verbessern</string>
+    <string name="dark">Dunkel</string>
+    <string name="light">Hell</string>
 </resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index e7bffcd..91a734b 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Οι υπηρεσίες αυτές έχουν σκοπό να επεκτείνουν τις δυνατότητες της συσκευής σας. Τα δεδομένα θα χρησιμοποιηθούν σύμφωνα με την πολιτική απορρήτου του <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Μπορείτε να διαβάσετε την πολιτική απορρήτου σε μια άλλη συσκευή επισκεπτόμενοι το <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Βοηθήστε στη βελτίωση του <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> στέλνοντας αυτόματα διαγνωστικά δεδομένα και στατιστικά χρήσης στο <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Αυτές οι πληροφορίες δε μπορούν να χρησιμοποιηθούν για να σας αναγνωρίσουν και δίνουν ένα χέρι βοηθείας στις ομάδες που εργάζονται σε θέματα όπως η διάρκεια ζωής μπαταρίας, επιδόσεις εφαρμογών και νέα χαρακτηριστικά του <xliff:g id="name" example="LeafOS">%2$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> στέλνοντας αυτόματα διαγνωστικά δεδομένα και στατιστικά χρήσης στο <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Αυτές οι πληροφορίες δε μπορούν να χρησιμοποιηθούν για να σας αναγνωρίσουν και δίνουν ένα χέρι βοηθείας στις ομάδες που εργάζονται σε θέματα όπως η διάρκεια ζωής μπαταρίας, επιδόσεις εφαρμογών και νέα χαρακτηριστικά του <xliff:g id="name" example="LeafOS">%2$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Κάντε χρήση των πλήκτρων πλοήγησης της οθόνης</b> αντί των φυσικών πλήκτρων.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Πλοήγηση</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 784480a..0cd1881 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">These services work for you to extend the capabilities of your device. Data will be used in accordance with <xliff:g id="name" example="LeafOS">%1$s</xliff:g>\'s privacy policy.</string>
     <string name="services_find_privacy_policy">You can read the privacy policy on another device by visiting <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Help improve <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
     <string name="services_os_nav_keys_label"><b>Use on screen navigation keys</b> instead of hardware keys.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigation</string>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index 784480a..0cd1881 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">These services work for you to extend the capabilities of your device. Data will be used in accordance with <xliff:g id="name" example="LeafOS">%1$s</xliff:g>\'s privacy policy.</string>
     <string name="services_find_privacy_policy">You can read the privacy policy on another device by visiting <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Help improve <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
     <string name="services_os_nav_keys_label"><b>Use on screen navigation keys</b> instead of hardware keys.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigation</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 51298f7..b23cbbf 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">These services work for you to extend the capabilities of your device. Data will be used in accordance with <xliff:g id="name" example="LeafOS">%1$s</xliff:g>\'s privacy policy.</string>
     <string name="services_find_privacy_policy">You can read the privacy policy on another device by visiting <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Help improve <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
     <string name="services_os_nav_keys_label"><b>Use on screen navigation keys</b> instead of hardware keys.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigation</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 784480a..0cd1881 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">These services work for you to extend the capabilities of your device. Data will be used in accordance with <xliff:g id="name" example="LeafOS">%1$s</xliff:g>\'s privacy policy.</string>
     <string name="services_find_privacy_policy">You can read the privacy policy on another device by visiting <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Help improve <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
     <string name="services_os_nav_keys_label"><b>Use on screen navigation keys</b> instead of hardware keys.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigation</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 78878dc..b155849 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Ces services fonctionnent pour étendre les fonctionnalités de votre appareil. Les données seront utilisées conformément à la politique de confidentialité de <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Vous pouvez lire la politique de confidentialité sur un autre appareil en visitant <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Contribuer à l\'amélioration de <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> en envoyant automatiquement des données de diagnostic et d\'utilisation à <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Cette information ne peut pas être utilisée pour vous identifier et est d\'une grande aide aux équipes travaillant sur des sujets tels que la durée de vie de la batterie, les performances des applications, et de nouvelles fonctionnalités de <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> en envoyant automatiquement des données de diagnostic et d\'utilisation à <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Cette information ne peut pas être utilisée pour vous identifier et est d\'une grande aide aux équipes travaillant sur des sujets tels que la durée de vie de la batterie, les performances des applications, et de nouvelles fonctionnalités de <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Utilisation des touches de navigation de l\'écran</b> au lieu des touches physiques.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigation</string>
diff --git a/res/values-fur-rIT/strings.xml b/res/values-fur-rIT/strings.xml
index 60b88c3..9956d3c 100644
--- a/res/values-fur-rIT/strings.xml
+++ b/res/values-fur-rIT/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Chescj servizis a funzionin par slargjâ lis funzionalitâts dal to dispositîf. I dâts a vignaran doprâts in conformitât cu la informative su la riservatece di <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Tu puedis lei la informative su la riservatece suntun altri dispositîf visitant <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Jude a miorâ <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> inviant in automatic i dâts diagnostiche di consum ai svilupadôrs di <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Nol sarà pussibil doprâ chestis informazions par identificâti ma a dan une man ai grups che a lavorin su robis come la durade de batarie, lis prestazions des aplicazions e lis gnovis funzionalitâts di <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> inviant in automatic i dâts diagnostiche di consum ai svilupadôrs di <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Nol sarà pussibil doprâ chestis informazions par identificâti ma a dan une man ai grups che a lavorin su robis come la durade de batarie, lis prestazions des aplicazions e lis gnovis funzionalitâts di <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Dopre i botons virtuâi sul schermi</b> invezit di chei fisics.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigazion</string>
diff --git a/res/values-gd/strings.xml b/res/values-gd/strings.xml
index 7bfad0b..600a890 100644
--- a/res/values-gd/strings.xml
+++ b/res/values-gd/strings.xml
@@ -35,6 +35,6 @@
     <string name="services_pp_explanation">Leudaichidh na seirbheisean seo comasan an uidheim agad. Thèid an dàta a chleachdadh a-rèir poileasaidh prìobhaideachd <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">’S urrainn dhut am poileasaidh a leughadh air uidheam eile is tu a’ tadhal air <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Cuidich gus piseach a thoirt air <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> is tu a’ cur dàta na diagnosachd ’s a’ chleachdaidh gu <xliff:g id="name" example="LineageOS">%2$s</xliff:g> gu fèin-obrachail. Cha ghabh an dàta sin a chleachdadh airson d’ aithneachadh agus bheir e cuideachadh dha na sgiobaidhean a bhios ag obair air rudan mar beatha a’ bhataraidh, dèanadas nan aplacaidean agus gleusan <xliff:g id="name" example="LeafOS">%3$s</xliff:g> ùra.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> is tu a’ cur dàta na diagnosachd ’s a’ chleachdaidh gu <xliff:g id="name" example="LeafOS">%2$s</xliff:g> gu fèin-obrachail. Cha ghabh an dàta sin a chleachdadh airson d’ aithneachadh agus bheir e cuideachadh dha na sgiobaidhean a bhios ag obair air rudan mar beatha a’ bhataraidh, dèanadas nan aplacaidean agus gleusan <xliff:g id="name" example="LeafOS">%3$s</xliff:g> ùra.</string>
     <string name="services_os_nav_keys_label"><b>Cleachd iuchraichean seòladaireachd air an sgrìn</b> seach iuchraichean bathair-chruaidh.</string>
 </resources>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 404b5e8..95a9a3a 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -35,6 +35,6 @@
     <string name="services_pp_explanation">Estes servizos serven para mellorar as capacidades do seu dispositivo. Os datos utilizaranse de acordo coa <xliff:g id="name" example="Politica de privacidade">%1$s</xliff:g> de LeafOS</string>
     <string name="services_find_privacy_policy">Podes ler a política de privacidade noutro dispositivo visitando <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Axuda a mellorar <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Axuda a mellorar LineageOS">%1$s</xliff:g> enviando automaticamente diagnóstico e uso de datos a <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Esta información non se pode utilizar para identificalo a vostede e acaba nas mans dos equipos que traballan en cousas como a duración da batería, rendemento das aplicacións e novas características de <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Axuda a mellorar LineageOS">%1$s</xliff:g> enviando automaticamente diagnóstico e uso de datos a <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Esta información non se pode utilizar para identificalo a vostede e acaba nas mans dos equipos que traballan en cousas como a duración da batería, rendemento das aplicacións e novas características de <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Usar as teclas de navegación</b> en vez das do hardware.</string>
 </resources>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 7febf1e..05f63aa 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -13,6 +13,7 @@
     <string name="ok">OK</string>
     <string name="loading">Csak egy pillanat\u2026</string>
     <string name="setup_welcome_message">Legyen üdvözölve a <xliff:g id="name" example="LeafOS">%1$s</xliff:g> rendszerben</string>
+    <string name="setup_managed_profile_welcome_message">Állítsa be a munkahelyi profilját</string>
     <string name="emergency_call">Segélyhívás</string>
     <string name="accessibility_settings">Kisegítő beállítások</string>
     <string name="setup_locale">Nyelv</string>
@@ -25,9 +26,11 @@
     <string name="setup_current_date">Aktuális dátum</string>
     <string name="setup_current_time">Aktuális idő</string>
     <string name="intro_restore_title">Alkalmazások és adatok visszaállítása</string>
+    <string name="intro_restore_subtitle">Amennyiben van <xliff:g id="name" example="LeafOS">%s</xliff:g>-mentése a Seedvaulttal, itt helyreállíthatja azt.</string>
     <string name="intro_restore_button">Visszaállítás biztonsági mentésből</string>
     <string name="setup_location">Helymeghatározó szolgáltatások</string>
     <string name="location_access_summary"><b>Lehetővé teszi az alkalmazás számára, amely korábban engedélyt kért,</b> a helymeghatározási információ használatára. Beleértve a jelenlegi és a korábbi helyeket.</string>
+    <string name="location_agps_access_summary">Ha a helymeghatározás be van kapcsolva, <b>töltse le a műholdsegítő adatokat az internetről</b>, ez nagy mértékben javíthatja a GPS indítási teljesítményét.</string>
     <string name="update_recovery_title">A Lineage Recovery frissítése</string>
     <string name="update_recovery_description">Frissíti a Lineage Recovery-t minden frissítés utáni első indításkor.</string>
     <string name="update_recovery_warning">A Recovery frissítésre kerül, amint befejeződött a telepítést. Ha érintetlenül akarja hagyni, tiltsa le ezt a funkciót.</string>
@@ -37,7 +40,7 @@
     <string name="services_pp_explanation">Ezek a szolgáltatások Önért dolgoznak, hogy kibővítsék telefonja képességeit. Az adatok felhasználása a <xliff:g id="name" example="LeafOS">%1$s</xliff:g> adatvédelmi szabályzata alapján történik.</string>
     <string name="services_find_privacy_policy">Elolvashatja az adatvédelmi szabályokat, ha megnyitja a következő weboldalt <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm"><xliff:g id="name" example="LeafOS">%s</xliff:g>, segítsen a fejlesztésében</string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> automatikus diagnosztikai és használati adatok küldésével segíthet a <xliff:g id="name" example="LineageOS">%2$s</xliff:g> fejlesztőinek. Ez az információ nem használható az Ön beazonosítására, csupán segítséget nyújt a csapat számára például az akkumulátor használat, alkalmazás teljesítmény, és más új <xliff:g id="name" example="LeafOS">%3$s</xliff:g> funkciók fejlesztésében.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> automatikus diagnosztikai és használati adatok küldésével segíthet a <xliff:g id="name" example="LeafOS">%2$s</xliff:g> fejlesztőinek. Ez az információ nem használható az Ön beazonosítására, csupán segítséget nyújt a csapat számára például az akkumulátor használat, alkalmazás teljesítmény, és más új <xliff:g id="name" example="LeafOS">%3$s</xliff:g> funkciók fejlesztésében.</string>
     <string name="services_os_nav_keys_label"><b>A képernyő navigációs gombjainak használata</b> a hardveres gombok helyett.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigáció</string>
@@ -46,4 +49,8 @@
     <string name="two_button_navigation">Kétgombos navigáció</string>
     <string name="navbar_navigation">Háromgombos navigáció</string>
     <string name="hide_gesture_hint">Mozdulatvezérlési navigációs-célsáv elrejtése</string>
+    <string name="setup_theme">Téma</string>
+    <string name="theme_summary">A Sötét téma néhány képernyőn fekete hátteret használ az akkukímélés érdekében.</string>
+    <string name="dark">Sötét</string>
+    <string name="light">Világos</string>
 </resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 7739e80..bfdf15a 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -37,7 +37,7 @@
     <string name="services_pp_explanation">Layanan ini digunakan untuk meningkatkan kemampuan perangkat Anda. Data akan digunakan sesuai dengan kebijakan privasi <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Anda dapat membaca kebijakan privasi di perangkat lainnya dengan mengunjungi <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Membantu meningkatkan <xliff:g id="name" example="LeafOS">%s </xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> dengan mengirim  data diagnosa dan penggunaan ke <xliff:g id="name" example="LineageOS">%2$s</xliff:g> secara otomatis. Informasi tersebut tidak untuk mengidentifikasi Anda, dan hanya berfungsi untuk membantu tim bekerja pada hal-hal seperti masa pakai baterai, performa aplikasi dan fitur-fitur <xliff:g id="name" example="LeafOS">%3$s</xliff:g> yang baru.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> dengan mengirim  data diagnosa dan penggunaan ke <xliff:g id="name" example="LeafOS">%2$s</xliff:g> secara otomatis. Informasi tersebut tidak untuk mengidentifikasi Anda, dan hanya berfungsi untuk membantu tim bekerja pada hal-hal seperti masa pakai baterai, performa aplikasi dan fitur-fitur <xliff:g id="name" example="LeafOS">%3$s</xliff:g> yang baru.</string>
     <string name="services_os_nav_keys_label"><b>Gunakan tombol navigasi pada layar</b> bukan tombol perangkat keras.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigasi</string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index db9ce9a..d801af9 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Þessar þjónustur gera þér kleift að útvíkka eiginleika tækisins þíns. Gögn verða notuð í samræmi við persónuverndarstefnu <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Lestu stefnu varðandi meðferð persónulegra gagna með því að fara á <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Hjálpaðu okkur að bæta <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> með því að senda sjálfvirkt greiningargögn og upplýsingar um notkun til <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Þessar upplýsingar er ekki hægt að nota til að auðkenna þig og hjálpa þróunarteymum við vinnu varðandi ýmis atriði, eins og líftíma rafhlöðu, afköst forrita og nýja eiginleika í <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> með því að senda sjálfvirkt greiningargögn og upplýsingar um notkun til <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Þessar upplýsingar er ekki hægt að nota til að auðkenna þig og hjálpa þróunarteymum við vinnu varðandi ýmis atriði, eins og líftíma rafhlöðu, afköst forrita og nýja eiginleika í <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Nota leiðsagnarlykla á skjánum</b> í stað vélbúnaðarhnappa.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Flakk</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 2521996..5920b88 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Questi servizi funzionano per estendere le funzionalità del tuo dispositivo. I dati saranno utilizzati in conformità con l\'informativa sulla privacy di <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Puoi leggere l\'informativa sulla privacy su un altro dispositivo visitando <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Contribuisci a migliorare <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> inviando automaticamente dati diagnostici e di consumo agli svilupatori di <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Queste informazioni non possono essere utilizzate per identificare te ma danno una mano ai team che lavorano su cose come la durata della batteria, performance delle app e nuove funzioni di <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> inviando automaticamente dati diagnostici e di consumo agli svilupatori di <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Queste informazioni non possono essere utilizzate per identificare te ma danno una mano ai team che lavorano su cose come la durata della batteria, performance delle app e nuove funzioni di <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Usa i pulsanti virtuali a schermo</b> invece di quelli fisici.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigazione</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 414dddd..91d92ed 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">これらのサービスはデバイスの機能を拡張するために動作します。データは <xliff:g id="name" example="LeafOS">%1$s</xliff:g> のプライバシーポリシーに従って使用されます。</string>
     <string name="services_find_privacy_policy">別のデバイスで<xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g>にアクセスしてプライバシーポリシーを読むことができます。</string>
     <string name="services_help_improve_cm"><xliff:g id="name" example="LeafOS">%s</xliff:g>の改善に協力します</string>
-    <string name="services_metrics_label">診断と使用状況データを自動的に <xliff:g id="name" example="LineageOS">%2$s</xliff:g>に送信して、<xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g>。この情報は個人を特定するために使用されることはなく、電池持ち、アプリのパフォーマンス、<xliff:g id="name" example="LeafOS">%3$s</xliff:g> の新機能などへの取り組みに活用されます。</string>
+    <string name="services_metrics_label">診断と使用状況データを自動的に <xliff:g id="name" example="LineageOS">%2$s</xliff:g>に送信して、<xliff:g id="name" example="Help improve LeafOS">%1$s</xliff:g>。この情報は個人を特定するために使用されることはなく、電池持ち、アプリのパフォーマンス、<xliff:g id="name" example="LeafOS">%3$s</xliff:g> の新機能などへの取り組みに活用されます。</string>
     <string name="services_os_nav_keys_label">ハードウェアキーのかわりに<b>スクリーンナビゲーションキーを使用します</b>。</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">ナビゲーション</string>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index 00b54fe..6670ec0 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">ამ მომსახურებების მუშაობა აფართოებს თქვენი მოწყობილობების შესაძლებლობებს. მონაცემებით სარგებლობის პირობებს განსაზღვრავს <xliff:g id="name" example="LeafOS">%1$s</xliff:g> მისი პირადულობის დებულებით.</string>
     <string name="services_find_privacy_policy">შეგიძლიათ გაეცნოთ პირადულობის დაცვის დებულებას სხვა მოწყობილობიდან მისამართზე <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">დაგვეხმარეთ, გავაუმჯობესოთ <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> იმ საკვლევი და გამოყენების მონაცემთა ავტომატური გაგზავნით, რომელთაც გაეცნობა <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. ეს მონაცემები არ გამოდგება თქვენი ვინაობის დასადგენად, სამაგიეროდ ხელს გაუმართავს შემმუშავებლებს, რომ დახვეწონ ბატარეის მოხმარება, გაზარდონ აპების წარმადობა და გააუმჯობესონ <xliff:g id="name" example="LeafOS">%3$s</xliff:g> ახალი შესაძლებლობებით.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> იმ საკვლევი და გამოყენების მონაცემთა ავტომატური გაგზავნით, რომელთაც გაეცნობა <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. ეს მონაცემები არ გამოდგება თქვენი ვინაობის დასადგენად, სამაგიეროდ ხელს გაუმართავს შემმუშავებლებს, რომ დახვეწონ ბატარეის მოხმარება, გაზარდონ აპების წარმადობა და გააუმჯობესონ <xliff:g id="name" example="LeafOS">%3$s</xliff:g> ახალი შესაძლებლობებით.</string>
     <string name="services_os_nav_keys_label"><b>ეკრანული ღილაკების გამოყენება სამოძრაოდ</b> ფიზიკურის ნაცვლად.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">სამოძრაო</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 001d92f..9bea7af 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -13,6 +13,7 @@
     <string name="ok">확인</string>
     <string name="loading">잠시만 기다려주세요\u2026</string>
     <string name="setup_welcome_message"><xliff:g id="name" example="LeafOS">%1$s</xliff:g>에 오신 것을 환영합니다</string>
+    <string name="setup_managed_profile_welcome_message">직장 프로필 설정</string>
     <string name="emergency_call">긴급 통화</string>
     <string name="accessibility_settings">접근성 설정</string>
     <string name="setup_locale">언어</string>
@@ -25,6 +26,7 @@
     <string name="setup_current_date">현재 날짜</string>
     <string name="setup_current_time">현재 시간</string>
     <string name="intro_restore_title">앱 및 데이터 복원</string>
+    <string name="intro_restore_subtitle"><xliff:g id="name" example="LeafOS">%s</xliff:g> 또는 다른 OS의 Seedvault 백업이 있다면 지금 복원할 수 있습니다.</string>
     <string name="intro_restore_button">백업에서 복원</string>
     <string name="setup_location">위치 서비스</string>
     <string name="location_access_summary"><b>사용자에게 권한을 요청한 앱</b>이 위치 정보를 사용할 수 있도록 합니다. 현재 위치 정보와 예전 위치 정보가 포함됩니다.</string>
@@ -38,7 +40,7 @@
     <string name="services_pp_explanation">이 서비스는 기기의 성능 향상을 위해 작동합니다. 수집한 데이터는 <xliff:g id="name" example="LeafOS">%1$s</xliff:g>의 개인 정보 보호 정책에 따라 사용됩니다.</string>
     <string name="services_find_privacy_policy">다른 기기에서 <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g> 페이지를 방문하여 개인 정보 보호 정책을 확인할 수 있습니다.</string>
     <string name="services_help_improve_cm"><xliff:g id="name" example="LeafOS">%s</xliff:g> 의 개선을 돕기 위해</string>
-    <string name="services_metrics_label"><xliff:g id="name" example="LineageOS의 개선을 돕기 위해">%1$s</xliff:g> 진단 및 사용 정보를 <xliff:g id="name" example="LineageOS">%2$s</xliff:g>에 보냅니다. 이 정보로는 사용자를 식별할 수 없으며 <xliff:g id="name" example="LeafOS">%3$s</xliff:g>에 새로운 기능을 추가하거나 배터리 수명, 앱 성능을 개선하는 데 도움이 됩니다.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="LineageOS의 개선을 돕기 위해">%1$s</xliff:g> 진단 및 사용 정보를 <xliff:g id="name" example="LeafOS">%2$s</xliff:g>에 보냅니다. 이 정보로는 사용자를 식별할 수 없으며 <xliff:g id="name" example="LeafOS">%3$s</xliff:g>에 새로운 기능을 추가하거나 배터리 수명, 앱 성능을 개선하는 데 도움이 됩니다.</string>
     <string name="services_os_nav_keys_label">하드웨어 키 대신 <b>화면 상의 내비게이션 키</b>를 사용합니다.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">탐색</string>
@@ -47,4 +49,8 @@
     <string name="two_button_navigation">2버튼 탐색</string>
     <string name="navbar_navigation">3버튼 탐색</string>
     <string name="hide_gesture_hint">제스처 탐색 도움말 숨기기</string>
+    <string name="setup_theme">테마</string>
+    <string name="theme_summary">어두운 테마는 일부 디스플레이에서 배터리 사용을 줄이기 위해 검정색 배경을 사용합니다.</string>
+    <string name="dark">어두운 테마</string>
+    <string name="light">밝은 테마</string>
 </resources>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index d01edfe..86bc711 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -29,7 +29,7 @@
     <string name="setup_services">LeafOS လုပ်ဆောင်နိုင်မှုများ</string>
     <string name="services_pp_explanation">ဤလုပ်ဆောင်ချက်သည် သင့်စက်ပစ္စည်း၏ စွမ်းဆောင်နိုင်မှုကို တိုးမြင့်စေနိုင်ပါသည်။ အချက်အလက်များကို <xliff:g id="name" example="LeafOS">%1$s</xliff:g>၏ ပုဂ္ဂိုလ်ရေးဆိုင်ရာမူဝါဒအတိုင်း အသုံးပြုပါမည်။</string>
     <string name="services_help_improve_cm"><xliff:g id="name" example="LeafOS">%s</xliff:g> ကိုတိုးတက်လာအောင် ကူညီပါ။</string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> သည် ပြဿနာများနှင့် အသုံးပြုမှုဆိုင်ရာအချက်အလက်များကို <xliff:g id="name" example="LineageOS">%2$s</xliff:g> သို့ပေးပို့ပါမည်။ အချက်အလက်များသည် သင်မည်သူမည်ဝါဖြစ်သည်ကို မခွဲခြားနိုင်ဘဲ ဘက်ထရီသက်တမ်း, အက်ပ်များ၏ စွမ်းဆောင်ရည်များနှင့် <xliff:g id="name" example="LeafOS">%3$s</xliff:g>၏ လုပ်ဆောင်မှုအသစ်များကဲ့သို့သော အချက်အလက်များကို အလုပ်လုပ်နေသောအဖွဲ့ထံသို့သာ လွှဲပြောင်းပါမည်။</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> သည် ပြဿနာများနှင့် အသုံးပြုမှုဆိုင်ရာအချက်အလက်များကို <xliff:g id="name" example="LeafOS">%2$s</xliff:g> သို့ပေးပို့ပါမည်။ အချက်အလက်များသည် သင်မည်သူမည်ဝါဖြစ်သည်ကို မခွဲခြားနိုင်ဘဲ ဘက်ထရီသက်တမ်း, အက်ပ်များ၏ စွမ်းဆောင်ရည်များနှင့် <xliff:g id="name" example="LeafOS">%3$s</xliff:g>၏ လုပ်ဆောင်မှုအသစ်များကဲ့သို့သော အချက်အလက်များကို အလုပ်လုပ်နေသောအဖွဲ့ထံသို့သာ လွှဲပြောင်းပါမည်။</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">လမ်းညွှန်</string>
     <string name="navigation_summary">သင်အားသာသော လမ်းညွှန်မှုနည်းလမ်းကို ရွေးချယ်ပါ</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 6f03ed8..4a440c7 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Deze diensten worden gebruikt om de mogelijkheden van uw apparaat uit te breiden. Gegevens zullen worden gebruikt conform het privacybeleid van <xliff:g id="name" example="LeafOS">%1$s</xliff:g></string>
     <string name="services_find_privacy_policy">U kunt het privacybeleid op een ander apparaat lezen door <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g> te bezoeken</string>
     <string name="services_help_improve_cm">Help mee met het verbeteren van <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> door automatisch diagnose- en verbruiksgegevens te verzenden naar  <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Deze informatie kan niet gebruikt worden om u te identificeren en helpt de teams om te werken aan zaken zoals levensduur van de accu, app-prestaties en nieuwe <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> door automatisch diagnose- en verbruiksgegevens te verzenden naar  <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Deze informatie kan niet gebruikt worden om u te identificeren en helpt de teams om te werken aan zaken zoals levensduur van de accu, app-prestaties en nieuwe <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
     <string name="services_os_nav_keys_label"><b>On-screen navigatieknoppen</b> gebruiken in plaats van de hardwareknoppen.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigatie</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 0962e96..6276f66 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Te usługi są uruchomione w celu rozszerzenia możliwości twojego urządzenia. Dane będą używane zgodnie z polityką prywatności <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Możesz przeczytać politykę prywatności na innym urządzeniu, odwiedzając <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Pomóż ulepszyć <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Pomóż ulepszyć LineageOS">%1$s</xliff:g>, automatycznie wysyłając dane diagnostyczne oraz dotyczące użytkowania do <xliff:g id="name" example="LineageOS"> %2$s</xliff:g>. Informacje te nie mogą być wykorzystane do identyfikacji użytkownika i pomagają zespołom pracującym nad takimi kwestiami, jak żywotność baterii, wydajność aplikacji i nowe funkcje <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Pomóż ulepszyć LineageOS">%1$s</xliff:g>, automatycznie wysyłając dane diagnostyczne oraz dotyczące użytkowania do <xliff:g id="name" example="LeafOS"> %2$s</xliff:g>. Informacje te nie mogą być wykorzystane do identyfikacji użytkownika i pomagają zespołom pracującym nad takimi kwestiami, jak żywotność baterii, wydajność aplikacji i nowe funkcje <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Użyj ekranowych przycisków nawigacyjnych</b> zamiast klawiszy sprzętowych.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Nawigacja w systemie</string>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 93a46ec..f9014d8 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -12,6 +12,8 @@
     <string name="done">Concluído</string>
     <string name="ok">Ok</string>
     <string name="loading">Aguarde um segundo\u2026</string>
+    <string name="setup_welcome_message">Bem-vindo(a) ao &lt;xliff:g id="name" example="LeafOS"&gt;</string>
+    <string name="setup_managed_profile_welcome_message">Configure seu perfil de trabalho</string>
     <string name="emergency_call">Chamada de emergência</string>
     <string name="accessibility_settings">Configurações de acessibilidade</string>
     <string name="setup_locale">Idioma</string>
@@ -23,15 +25,32 @@
     <string name="date_time_summary">Defina o fuso horário e ajuste a data e a hora atual, se necessário</string>
     <string name="setup_current_date">Data atual</string>
     <string name="setup_current_time">Hora atual</string>
+    <string name="intro_restore_title">Restaurar apps e dados</string>
+    <string name="intro_restore_subtitle">Se você tiver um backup do Seedvault do <xliff:g id="name" example="LeafOS">%s</xliff:g> ou qualquer outro sistema operacional, você pode restaurá-lo aqui.</string>
+    <string name="intro_restore_button">Restaurar backup</string>
     <string name="setup_location">Serviços de localização</string>
     <string name="location_access_summary"><b>Permitir que aplicativos que pediram a sua permissão</b> usem suas informações de localização. Isso pode incluir a sua localização atual bem como localizações anteriores.</string>
+    <string name="location_agps_access_summary">Quando a localização estiver ativada, <b>baixar dados de assistência para satélite através da internet</b>, o que pode melhorar consideravelmente o desempenho da inicialização do GPS.</string>
     <string name="update_recovery_title">Atualizar Lineage Recovery</string>
+    <string name="update_recovery_description">Atualiza o Lineage Recovery na primeira inicialização após cada atualização.</string>
+    <string name="update_recovery_warning">A recuperação será atualizada assim que você terminar a configuração. Se você deseja mantê-la intacta, desabilite esse recurso.</string>
+    <string name="update_recovery_setting">Atualizar o Lineage Recovery junto com o sistema operacional</string>
     <string name="update_recovery_full_description"><xliff:g id="recovery_update_description">%1$s</xliff:g>\n<xliff:g id="recovery_update_warning">%2$s</xliff:g></string>
     <string name="setup_services">Recursos LeafOS</string>
+    <string name="services_pp_explanation">Estes serviços trabalham para você, estendendo os recursos do seu dispositivo. Os dados serão usados de acordo com a política de privacidade em <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
+    <string name="services_find_privacy_policy">Você pode ler a política de privacidade em outro dispositivo visitando <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Ajude a melhorar o <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
     <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> enviando automaticamente dados de diagnóstico e utilização para  <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Esta informação não pode ser usada para identificá-lo e ajuda os desenvolvedores a melhorarem funções e serviços como a duração da bateria, o desempenho das aplicações e o desenvolvimento de novos recursos para o <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Use as teclas de navegação na tela</b> em vez de botões físicos.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navegação</string>
+    <string name="navigation_summary">Escolha o método preferido de navegação</string>
     <string name="gesture_navigation">Navegação por gestos</string>
+    <string name="two_button_navigation">Navegação com dois botões</string>
+    <string name="navbar_navigation">Navegação com três botões</string>
+    <string name="hide_gesture_hint">Ocultar dica de navegação por gestos</string>
+    <string name="setup_theme">Tema</string>
+    <string name="theme_summary">O tema escuro usa um fundo preto para ajudar a economizar bateria em algumas telas</string>
+    <string name="dark">Escuro</string>
+    <string name="light">Claro</string>
 </resources>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index a5a0645..8e8003a 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -37,7 +37,7 @@
     <string name="services_pp_explanation">Estes serviços servem para ampliar os recursos do seu telefone. Os dados serão utilizados em conformidade com a politica de privacidade de <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Pode ler a política de privacidade noutro dispositivo visitando <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Ajude a melhorar a <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Ajude a melhorar a LineageOS">%1$s</xliff:g> enviando automaticamente dados de diagnóstico e utilização para <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Esta informação não pode ser usada para identificá-lo e ajuda as equipas de desenvolvimento a melhorarem coisas como a duração da bateria, o desempenho das aplicações e o desenvolvimento de novas funcionalidades para <xliff:g id="name" example="LeafOS">%2$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Ajude a melhorar a LineageOS">%1$s</xliff:g> enviando automaticamente dados de diagnóstico e utilização para <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Esta informação não pode ser usada para identificá-lo e ajuda as equipas de desenvolvimento a melhorarem coisas como a duração da bateria, o desempenho das aplicações e o desenvolvimento de novas funcionalidades para <xliff:g id="name" example="LeafOS">%2$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Usar os botões de navegação no ecrã</b> em vez dos botões do dispositivo.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navegação</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 2a63307..077609b 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Aceste servicii lucrează pentru dvs. pentru a extinde capabilitățile dispozitivului. Datele vor fi utilizate în concordanță cu politica de confidențialitate a <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Puteți citi politica de confidențialitate pe un alt dispozitiv accesând <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Ajutați la îmbunătățirea <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> prin trimiterea automată a datelor de diagnosticare și utilizare la <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Aceste informații nu pot fi folosite pentru a te identifica și oferă o mână de ajutor echipelor care lucrează la lucruri precum durata bateriei, performanța aplicațiilor și noile caracteristici <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> prin trimiterea automată a datelor de diagnosticare și utilizare la <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Aceste informații nu pot fi folosite pentru a te identifica și oferă o mână de ajutor echipelor care lucrează la lucruri precum durata bateriei, performanța aplicațiilor și noile caracteristici <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Utilizează tastele de navigare de pe ecran</b> în locul tastelor fizice.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Navigare</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index aa9f983..3925028 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -32,15 +32,15 @@
     <string name="location_access_summary"><b>Разрешить приложениям, запросившим ваше разрешение</b>, использовать информацию о вашем местоположении. Это может включать ваше текущее и прошлые местоположения.</string>
     <string name="location_agps_access_summary">При включении определения местоположения <b>из интернета будут загружаться вспомогательные спутниковые данные</b>. Это поможет значительно ускорить подключение к GPS.</string>
     <string name="update_recovery_title">Обновление Lineage Recovery</string>
-    <string name="update_recovery_description">Обновление Lineage Recovery при первом запуске после каждого обновления ОС.</string>
-    <string name="update_recovery_warning">Recovery будет обновлен по завершении установки. Если вы хотите оставить его без изменений, отключите эту функцию.</string>
-    <string name="update_recovery_setting">Обновить Lineage Recovery  вместе с ОС</string>
+    <string name="update_recovery_description">Lineage Recovery обновляется при первой загрузке после обновления.</string>
+    <string name="update_recovery_warning">После установки будет выполнено обновление Recovery. Вы можете отключить эту возможность.</string>
+    <string name="update_recovery_setting">Обновлять Lineage Recovery  вместе с ОС</string>
     <string name="update_recovery_full_description"><xliff:g id="recovery_update_description">%1$s</xliff:g>\n<xliff:g id="recovery_update_warning">%2$s</xliff:g></string>
     <string name="setup_services">Возможности LeafOS</string>
     <string name="services_pp_explanation">Эти службы работают, чтобы расширить возможности вашего устройства. Данные будут использоваться в соответствии с политикой конфиденциальности <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Вы можете ознакомиться с политикой конфиденциальности на другом устройстве, посетив <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Помочь улучшить <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g>, разрешив отправку данных диагностики и использования в <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Эта информация не может быть использована для идентификации вашей личности и поможет в работе над повышением автономности, производительности и новыми возможностями <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g>, разрешив отправку данных диагностики и использования в <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Эта информация не может быть использована для идентификации вашей личности и поможет в работе над повышением автономности, производительности и новыми возможностями <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Использовать экранные навигационные кнопки</b> вместо аппаратных.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Навигация</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 2d89c47..f3fd0b7 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Te storitve služijo vam za razširitev zmogljivosti vaše naprave. Podatki bodo uporabljeni v skladu z <xliff:g id="name" example="LeafOS">%1$s</xliff:g>-ovo politiko zasebnosti.</string>
     <string name="services_find_privacy_policy">Politiko zasebnosti lahko preberete na drugi napravi z obiskom <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Pomagajte izboljšati <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> s samodejnim pošiljanjem diagnostičnih podatkov in podatkov uporabe <xliff:g id="name" example="LineageOS">%2$s</xliff:g>-u. Ti podatki se ne uporabljajo za vaše prepoznavanje in ekipi pomagajo pri izboljšanju npr. življenjske dobe baterije, zmogljivosti aplikacij in novih <xliff:g id="name" example="LeafOS">%3$s</xliff:g> funkcij.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> s samodejnim pošiljanjem diagnostičnih podatkov in podatkov uporabe <xliff:g id="name" example="LeafOS">%2$s</xliff:g>-u. Ti podatki se ne uporabljajo za vaše prepoznavanje in ekipi pomagajo pri izboljšanju npr. življenjske dobe baterije, zmogljivosti aplikacij in novih <xliff:g id="name" example="LeafOS">%3$s</xliff:g> funkcij.</string>
     <string name="services_os_nav_keys_label"><b>Uporabite zaslonske tipke za krmarjenje</b> namesto fizičnih tipk.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Krmarjenje</string>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index 9627934..bea0544 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Këto shërbime punojnë për ju për të zgjeruar aftësitë e pajisjes tuaj. Të dhënat do të përdoren në përputhje me <xliff:g id="name" example="LeafOS">%1$s</xliff:g> politikës së privatësisë</string>
     <string name="services_find_privacy_policy">Ju mund të lexoni politikën e privatësisë në një pajisje tjetër duke vizituar  <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Ndihmo në përmirësimin e <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label">&lt;xliff:g id="name" example="Ndihmoni në përmirësimin e LineageOS&gt;%1$s&lt;/xliff:g&gt; duke dërguar automatikisht të dhënat diagnostikuese dhe të përdorimit te &lt;xliff:g id="name" example="LineageOS"&gt;%2$s&lt;/xliff:g&gt;. Ky informacion nuk mund të përdoret për të të identifikuar ty dhe u jep ndihmë ekipeve që punojnë për gjëra të tilla si jetëgjatësia e baterisë, performanca e aplikacionit dhe të reja &lt;xliff:g id="name" example="LeafOS"&gt;%3$s&lt;/xliff:g&gt; veçoritë.</string>
+    <string name="services_metrics_label">&lt;xliff:g id="name" example="Ndihmoni në përmirësimin e LineageOS&gt;%1$s&lt;/xliff:g&gt; duke dërguar automatikisht të dhënat diagnostikuese dhe të përdorimit te &lt;xliff:g id="name" example="LeafOS"&gt;%2$s&lt;/xliff:g&gt;. Ky informacion nuk mund të përdoret për të të identifikuar ty dhe u jep ndihmë ekipeve që punojnë për gjëra të tilla si jetëgjatësia e baterisë, performanca e aplikacionit dhe të reja &lt;xliff:g id="name" example="LeafOS"&gt;%3$s&lt;/xliff:g&gt; veçoritë.</string>
     <string name="services_os_nav_keys_label"><b>Përdor butonat virtualë të lundrimit</b> në vend të butonave fizikë.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Lundrimi</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 032c1cb..6c73d33 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -38,7 +38,7 @@
     <string name="services_pp_explanation">Bu hizmetler, cihazınızın özelliklerini genişletmeniz için çalışır. Veri <xliff:g id="name" example="LeafOS">%1$s</xliff:g>\'un gizlilik politikası ile kullanılacaktır.</string>
     <string name="services_find_privacy_policy">Gizlilik politikasını farklı cihazla <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g> adresini ziyaret ederek okuyabilirsiniz</string>
     <string name="services_help_improve_cm"><xliff:g id="name" example="LeafOS">%s</xliff:g>\'u geliştirmeye yardımcı olun</string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> teşhis ve kullanım verilerini otomatik olarak <xliff:g id="name" example="LineageOS">%2$s</xliff:g>\'a gönderir. Bu bilgiler kimliğinizi belirlemek için kullanılamaz ve pil ömrü, uygulama performansı ve yeni <xliff:g id="name" example="LeafOS">%3$s</xliff:g> özellikler gibi konularda çalışan ekiplere yardımcı olur.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> teşhis ve kullanım verilerini otomatik olarak <xliff:g id="name" example="LeafOS">%2$s</xliff:g>\'a gönderir. Bu bilgiler kimliğinizi belirlemek için kullanılamaz ve pil ömrü, uygulama performansı ve yeni <xliff:g id="name" example="LeafOS">%3$s</xliff:g> özellikler gibi konularda çalışan ekiplere yardımcı olur.</string>
     <string name="services_os_nav_keys_label">Donanımsal tuşlar yerine <b>yazılımsal gezinme tuşlarını kullanın</b>.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find"/></string>
     <string name="setup_navigation">Gezinme</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index e6bf12e..fc7d943 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -33,7 +33,7 @@
     <string name="update_recovery_full_description"><xliff:g id="recovery_update_description">%1$s</xliff:g>\n<xliff:g id="recovery_update_warning">%2$s</xliff:g></string>
     <string name="setup_services">Функції LeafOS</string>
     <string name="services_pp_explanation">Ці служби працюють задля розширення підтримки вашого пристрою. Використання даних обмежується політикою приватності <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Допомогти поліпшити LineageOS">%1$s</xliff:g>, дозволивши надсилання діагностичних даних у <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Відстежити вас за ними неможливо; вони допоможуть удосконалити автономність, швидкодію та нові можливості <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Допомогти поліпшити LineageOS">%1$s</xliff:g>, дозволивши надсилання діагностичних даних у <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Відстежити вас за ними неможливо; вони допоможуть удосконалити автономність, швидкодію та нові можливості <xliff:g id="name" example="LeafOS">%3$s</xliff:g>.</string>
     <string name="services_os_nav_keys_label"><b>Використовувати навігаційні кнопки на екрані
 </b> замість апаратних.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index fe59d11..b95237b 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">Các dịch vụ này giúp bạn mở rộng khả năng của thiết bị. Dữ liệu sẽ được sử dụng theo chính sách bảo mật của <xliff:g id="name" example="LeafOS">%1$s</xliff:g>.</string>
     <string name="services_find_privacy_policy">Bạn có thể đọc chính sách bảo mật trên một thiết bị khác bằng cách truy cập <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_help_improve_cm">Giúp cải thiện <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> bằng cách tự động gửi dữ liệu sử dụng và chẩn đoán đến <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. Thông tin này không thể được sử dụng để nhận dạng bạn và hỗ trợ các nhóm làm việc về những yếu tố như thời lượng pin, hiệu suất ứng dụng và <xliff:g id="name" example="LeafOS">%3$s</xliff:g> tính năng mới.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> bằng cách tự động gửi dữ liệu sử dụng và chẩn đoán đến <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. Thông tin này không thể được sử dụng để nhận dạng bạn và hỗ trợ các nhóm làm việc về những yếu tố như thời lượng pin, hiệu suất ứng dụng và <xliff:g id="name" example="LeafOS">%3$s</xliff:g> tính năng mới.</string>
     <string name="services_os_nav_keys_label"><b>Sử dụng các phím điều hướng trên màn hình</b> thay cho các phím cứng.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">Điều hướng</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 436aa27..40df05a 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -40,7 +40,7 @@
     <string name="services_pp_explanation">这些服务可帮助您扩展设备的功能。 数据将按照 <xliff:g id="name" example="LeafOS">%1$s</xliff:g>的隐私政策进行使用。</string>
     <string name="services_find_privacy_policy">您可以使用其他设备访问 <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g> 来了解隐私政策</string>
     <string name="services_help_improve_cm">帮助改进 <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> 通过自动发送诊断和使用数据给 <xliff:g id="name" example="LineageOS">%2$s</xliff:g>。这些信息不会被用于识别您的身份,而是用于帮助团队致力于诸如电池寿命、应用性能和新 <xliff:g id="name" example="LeafOS">%3$s</xliff:g> 功能。</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> 通过自动发送诊断和使用数据给 <xliff:g id="name" example="LeafOS">%2$s</xliff:g>。这些信息不会被用于识别您的身份,而是用于帮助团队致力于诸如电池寿命、应用性能和新 <xliff:g id="name" example="LeafOS">%3$s</xliff:g> 功能。</string>
     <string name="services_os_nav_keys_label"><b>使用虚拟导航键</b>替代实体按键。</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">导航栏</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 33510ea..0a6a1af 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -13,6 +13,7 @@
     <string name="ok">確定</string>
     <string name="loading">請稍候\u2026</string>
     <string name="setup_welcome_message">歡迎使用 <xliff:g id="name" example="LeafOS">%1$s</xliff:g></string>
+    <string name="setup_managed_profile_welcome_message">設定您的工作設定檔</string>
     <string name="emergency_call">緊急電話</string>
     <string name="accessibility_settings">無障礙設定</string>
     <string name="setup_locale">語言</string>
@@ -25,6 +26,7 @@
     <string name="setup_current_date">目前日期</string>
     <string name="setup_current_time">目前時間</string>
     <string name="intro_restore_title">恢復應用程式和資料</string>
+    <string name="intro_restore_subtitle">如果您有來自 <xliff:g id="name" example="LeafOS">%s</xliff:g> 或任何其他作業系統的 Seedvault 備份,您可以在此處還原它。</string>
     <string name="intro_restore_button">從備份還原</string>
     <string name="setup_location">定位服務</string>
     <string name="location_access_summary"><b>允許您許可的應用程式</b>使用您的定位資訊。可能包括您目前和過去的位置。</string>
@@ -38,7 +40,7 @@
     <string name="services_pp_explanation">這些服務可協助您強化裝置的功能。資料將會根據 <xliff:g id="name" example="LeafOS">%1$s</xliff:g> 的隱私權政策使用。</string>
     <string name="services_find_privacy_policy">您可以透過在其他裝置上造訪 <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g> 來閱讀隱私權政策</string>
     <string name="services_help_improve_cm">協助改善 <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> 經由傳送錯誤報告及使用資料給 <xliff:g id="name" example="LineageOS">%2$s</xliff:g>,這些資料不會用於識別您的身分,而是用於幫助團隊改善電池壽命、應用程式效能與新的 <xliff:g id="name" example="LeafOS">%3$s</xliff:g> 功能。</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> 經由傳送錯誤報告及使用資料給 <xliff:g id="name" example="LeafOS">%2$s</xliff:g>,這些資料不會用於識別您的身分,而是用於幫助團隊改善電池壽命、應用程式效能與新的 <xliff:g id="name" example="LeafOS">%3$s</xliff:g> 功能。</string>
     <string name="services_os_nav_keys_label"><b>使用虛擬按鍵</b>替代實體按鍵。</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
     <string name="setup_navigation">導航欄</string>
@@ -47,4 +49,8 @@
     <string name="two_button_navigation">透過 2 個按鈕操作系統</string>
     <string name="navbar_navigation">透過 3 個按鈕操作系統</string>
     <string name="hide_gesture_hint">隱藏手勢導航條</string>
+    <string name="setup_theme">佈景主題</string>
+    <string name="theme_summary">深色佈景主題使用黑色背景,在某些螢幕上可延長電池續航時間</string>
+    <string name="dark">深色</string>
+    <string name="light">淺色</string>
 </resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 25a541a..1355f47 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -65,7 +65,7 @@
     <string name="services_find_privacy_policy">You can read the privacy policy on another device by visiting <xliff:g id="uri" example="https://lineageos.org/legal">%1$s</xliff:g></string>
     <string name="services_privacy_policy_uri" translatable="false">https://lineageos.org/legal</string>
     <string name="services_help_improve_cm">Help improve <xliff:g id="name" example="LeafOS">%s</xliff:g></string>
-    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LineageOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
+    <string name="services_metrics_label"><xliff:g id="name" example="Help improve LineageOS">%1$s</xliff:g> by automatically sending diagnostic and usage data to <xliff:g id="name" example="LeafOS">%2$s</xliff:g>. This information can’t be used to identify you and lends a hand to teams working on things like battery life, app performance, and new <xliff:g id="name" example="LeafOS">%3$s</xliff:g> features.</string>
     <string name="services_os_nav_keys_label"><b>Use on screen navigation keys</b> instead of hardware keys.</string>
     <string name="services_full_description"><xliff:g id="pp_explanation">%1$s</xliff:g>\n<xliff:g id="pp_find">%2$s</xliff:g></string>
 
diff --git a/src/org/lineageos/setupwizard/BaseSetupWizardActivity.java b/src/org/lineageos/setupwizard/BaseSetupWizardActivity.java
index 5d6f2a8..5a64abb 100644
--- a/src/org/lineageos/setupwizard/BaseSetupWizardActivity.java
+++ b/src/org/lineageos/setupwizard/BaseSetupWizardActivity.java
@@ -10,16 +10,11 @@
 
 import static com.google.android.setupcompat.util.ResultCodes.RESULT_SKIP;
 
-import static org.lineageos.setupwizard.SetupWizardApp.ACTION_SETUP_COMPLETE;
 import static org.lineageos.setupwizard.SetupWizardApp.LOGV;
 
 import android.annotation.NonNull;
 import android.annotation.Nullable;
-import android.app.ActivityManager;
-import android.content.BroadcastReceiver;
-import android.content.Context;
 import android.content.Intent;
-import android.content.IntentFilter;
 import android.graphics.drawable.Drawable;
 import android.net.wifi.WifiManager;
 import android.os.Bundle;
@@ -38,13 +33,12 @@
 
 import com.google.android.setupcompat.util.WizardManagerHelper;
 import com.google.android.setupdesign.GlifLayout;
+import com.google.android.setupdesign.transition.TransitionHelper;
 import com.google.android.setupdesign.util.ThemeHelper;
 
 import org.lineageos.setupwizard.NavigationLayout.NavigationBarListener;
 import org.lineageos.setupwizard.util.SetupWizardUtils;
 
-import java.util.List;
-
 public abstract class BaseSetupWizardActivity extends AppCompatActivity implements
         NavigationBarListener {
 
@@ -52,18 +46,6 @@
 
     private NavigationLayout mNavigationBar;
 
-    private final BroadcastReceiver finishReceiver = new BroadcastReceiver() {
-        @Override
-        public void onReceive(Context context, Intent intent) {
-            if (ACTION_SETUP_COMPLETE.equals(intent.getAction())) {
-                if (BaseSetupWizardActivity.this instanceof FinishActivity) return;
-                if (mNavigationBar != null) {
-                    // hide the activity's view, so it does not pop up again
-                    mNavigationBar.getRootView().setVisibility(INVISIBLE);
-                }
-            }
-        }
-    };
     private final ActivityResultLauncher<Intent> activityResultLauncher = registerForActivityResult(
             new ActivityResultContracts.StartActivityForResult(),
             BaseSetupWizardActivity.this::onActivityResult);
@@ -74,7 +56,6 @@
             logActivityState("onCreate savedInstanceState=" + savedInstanceState);
         }
         super.onCreate(savedInstanceState);
-        registerReceiver(finishReceiver, new IntentFilter(ACTION_SETUP_COMPLETE));
         initLayout();
         mNavigationBar = getNavigationBar();
         if (mNavigationBar != null) {
@@ -87,6 +68,8 @@
                     Log.v(TAG, "handleOnBackPressed()");
                 }
                 finishAction(RESULT_CANCELED, new Intent().putExtra("onBackPressed", true));
+                TransitionHelper.applyBackwardTransition(BaseSetupWizardActivity.this,
+                        TransitionHelper.TRANSITION_FADE_THROUGH, true);
             }
         });
     }
@@ -136,7 +119,6 @@
         if (LOGV) {
             logActivityState("onDestroy");
         }
-        unregisterReceiver(finishReceiver);
         super.onDestroy();
     }
 
@@ -253,7 +235,7 @@
         finish();
     }
 
-    protected final void nextAction(int resultCode) {
+    public final void nextAction(int resultCode) {
         nextAction(resultCode, null);
     }
 
@@ -276,6 +258,8 @@
         intent.putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true);
         intent.putExtra(WizardManagerHelper.EXTRA_THEME, ThemeHelper.THEME_GLIF_V4);
         super.startActivity(intent);
+        TransitionHelper.applyForwardTransition(this,
+                TransitionHelper.TRANSITION_FADE_THROUGH, true);
     }
 
     protected final void startActivityForResult(@NonNull Intent intent) {
@@ -283,6 +267,8 @@
         intent.putExtra(WizardManagerHelper.EXTRA_IS_SETUP_FLOW, true);
         intent.putExtra(WizardManagerHelper.EXTRA_THEME, ThemeHelper.THEME_GLIF_V4);
         activityResultLauncher.launch(intent);
+        TransitionHelper.applyForwardTransition(this,
+                TransitionHelper.TRANSITION_FADE_THROUGH, true);
     }
 
     protected void onActivityResult(ActivityResult activityResult) {
@@ -301,7 +287,7 @@
 
     protected final boolean tryEnablingWifi() {
         WifiManager wifiManager = getSystemService(WifiManager.class);
-        return wifiManager.setWifiEnabled(true);
+        return wifiManager != null && wifiManager.setWifiEnabled(true);
     }
 
     private boolean isFirstRun() {
diff --git a/src/org/lineageos/setupwizard/BiometricActivity.java b/src/org/lineageos/setupwizard/BiometricActivity.java
index 07999a8..dcfc45f 100644
--- a/src/org/lineageos/setupwizard/BiometricActivity.java
+++ b/src/org/lineageos/setupwizard/BiometricActivity.java
@@ -6,15 +6,14 @@
 
 package org.lineageos.setupwizard;
 
-import static org.lineageos.setupwizard.SetupWizardApp.ACTION_SETUP_BIOMETRIC;
-
 import android.content.Intent;
+import android.provider.Settings;
 
 public class BiometricActivity extends SubBaseActivity {
 
     @Override
     protected void onStartSubactivity() {
-        Intent intent = new Intent(ACTION_SETUP_BIOMETRIC);
+        Intent intent = new Intent(Settings.ACTION_BIOMETRIC_ENROLL);
         startSubactivity(intent);
     }
 }
diff --git a/src/org/lineageos/setupwizard/BluetoothSetupActivity.java b/src/org/lineageos/setupwizard/BluetoothSetupActivity.java
index d874309..0856e3b 100644
--- a/src/org/lineageos/setupwizard/BluetoothSetupActivity.java
+++ b/src/org/lineageos/setupwizard/BluetoothSetupActivity.java
@@ -27,9 +27,7 @@
     @Override
     protected void onStartSubactivity() {
         try {
-            Intent intent = new Intent();
-            intent.setComponent(SetupWizardUtils.sTvAddAccessorySettingsActivity);
-            intent.setAction(ACTION_CONNECT_INPUT);
+            Intent intent = new Intent(ACTION_CONNECT_INPUT);
             intent.putExtra(INTENT_EXTRA_NO_INPUT_MODE, true);
             startSubactivity(intent);
         } catch (Exception e) {
diff --git a/src/org/lineageos/setupwizard/FinishActivity.java b/src/org/lineageos/setupwizard/FinishActivity.java
index 8a168f6..af55c4a 100644
--- a/src/org/lineageos/setupwizard/FinishActivity.java
+++ b/src/org/lineageos/setupwizard/FinishActivity.java
@@ -18,28 +18,15 @@
 
 import android.animation.Animator;
 import android.animation.AnimatorListenerAdapter;
-import android.app.WallpaperManager;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.content.om.IOverlayManager;
 import android.content.pm.ActivityInfo;
-import android.graphics.Bitmap;
-import android.graphics.Point;
-import android.graphics.Rect;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Looper;
-import android.os.ServiceManager;
-import android.os.SystemProperties;
-import android.os.UserHandle;
 import android.util.Log;
 import android.view.View;
 import android.view.ViewAnimationUtils;
 import android.view.ViewGroup.MarginLayoutParams;
 import android.view.Window;
-import android.widget.ImageView;
 
 import androidx.core.graphics.Insets;
 import androidx.core.view.ViewCompat;
@@ -51,36 +38,18 @@
 
     public static final String TAG = FinishActivity.class.getSimpleName();
 
-    private ImageView mBackground;
-
-    private SetupWizardApp mSetupWizardApp;
-
     private final Handler mHandler = new Handler(Looper.getMainLooper());
 
     private boolean mIsFinishing;
 
-    private final BroadcastReceiver mIntentReceiver = new BroadcastReceiver() {
-        @Override
-        public void onReceive(Context context, Intent intent) {
-            if (LOGV) {
-                Log.v(TAG, "onReceive intent=" + intent);
-            }
-            if (intent != null && intent.getAction().equals(ACTION_FINISHED)) {
-                unregisterReceiver(mIntentReceiver);
-                completeSetup();
-            }
-        }
-    };
-
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        overridePendingTransition(R.anim.translucent_enter, R.anim.translucent_exit);
+        overrideActivityTransition(OVERRIDE_TRANSITION_CLOSE, R.anim.translucent_enter,
+                R.anim.translucent_exit);
         if (LOGV) {
             logActivityState("onCreate savedInstanceState=" + savedInstanceState);
         }
-        mSetupWizardApp = (SetupWizardApp) getApplication();
-        mBackground = findViewById(R.id.background);
         setNextText(R.string.start);
 
         // Edge-to-edge. Needed for the background view to fill the full screen.
@@ -121,15 +90,6 @@
         }
         mIsFinishing = true;
 
-        // Listen for completion from the exit service.
-        IntentFilter filter = new IntentFilter();
-        filter.addAction(ACTION_FINISHED);
-        registerReceiver(mIntentReceiver, filter, null, null);
-
-        Intent i = new Intent(ACTION_SETUP_COMPLETE);
-        i.setPackage(getPackageName());
-        sendBroadcastAsUser(i, getCallingUserHandle(), FINISH_SETUP);
-
         setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LOCKED);
         hideNextButton();
 
@@ -158,36 +118,10 @@
                     if (LOGV) {
                         Log.v(TAG, "Animation ended");
                     }
-                    // Start exit procedures, including the exit service.
-                    SetupWizardUtils.startSetupWizardExitProcedure(FinishActivity.this);
+                    SetupWizardUtils.finishSetupWizard(FinishActivity.this);
                 });
             }
         });
         anim.start();
     }
-
-    private void completeSetup() {
-        handleNavigationOption(mSetupWizardApp);
-        final WallpaperManager wallpaperManager =
-                WallpaperManager.getInstance(mSetupWizardApp);
-        wallpaperManager.forgetLoadedWallpaper();
-        finishAffinity();
-        nextAction(RESULT_OK);
-        SetupWizardUtils.enableStatusBar();
-        Log.i(TAG, "Setup complete!");
-    }
-
-    private void handleNavigationOption(Context context) {
-        Bundle settingsBundle = mSetupWizardApp.getSettingsBundle();
-        if (settingsBundle.containsKey(NAVIGATION_OPTION_KEY)) {
-            IOverlayManager overlayManager = IOverlayManager.Stub.asInterface(
-                    ServiceManager.getService(Context.OVERLAY_SERVICE));
-            String selectedNavMode = settingsBundle.getString(NAVIGATION_OPTION_KEY);
-
-            try {
-                overlayManager.setEnabledExclusiveInCategory(selectedNavMode, USER_CURRENT);
-            } catch (Exception ignored) {
-            }
-        }
-    }
 }
diff --git a/src/org/lineageos/setupwizard/LocaleActivity.java b/src/org/lineageos/setupwizard/LocaleActivity.java
index a286be5..b350ccf 100644
--- a/src/org/lineageos/setupwizard/LocaleActivity.java
+++ b/src/org/lineageos/setupwizard/LocaleActivity.java
@@ -6,8 +6,6 @@
 
 package org.lineageos.setupwizard;
 
-import static androidx.appcompat.app.AppCompatDelegate.setApplicationLocales;
-
 import android.app.Activity;
 import android.content.BroadcastReceiver;
 import android.content.Context;
@@ -19,13 +17,12 @@
 import android.telephony.SubscriptionInfo;
 import android.telephony.SubscriptionManager;
 import android.telephony.TelephonyManager;
+import android.util.Log;
 import android.view.View;
 import android.widget.ArrayAdapter;
 import android.widget.NumberPicker;
 import android.widget.Toast;
 
-import androidx.core.os.LocaleListCompat;
-
 import com.android.internal.telephony.TelephonyIntents;
 import com.android.internal.telephony.util.LocaleUtils;
 
@@ -40,6 +37,8 @@
 
 public class LocaleActivity extends BaseSetupWizardActivity {
 
+    private static final String TAG = LocaleActivity.class.getSimpleName();
+
     private ArrayAdapter<com.android.internal.app.LocalePicker.LocaleInfo> mLocaleAdapter;
     private Locale mCurrentLocale;
     private int[] mAdapterIndices;
@@ -53,7 +52,7 @@
         public void run() {
             if (mCurrentLocale != null) {
                 mLanguagePicker.setEnabled(false);
-                setApplicationLocales(LocaleListCompat.create(mCurrentLocale));
+                com.android.internal.app.LocalePicker.updateLocale(mCurrentLocale);
             }
         }
     };
@@ -177,7 +176,7 @@
         }
         mFetchUpdateSimLocaleTask = Executors.newSingleThreadExecutor();
         mFetchUpdateSimLocaleTask.execute(() -> {
-            Locale locale;
+            Locale locale = null;
             Activity activity = LocaleActivity.this;
             if (!activity.isFinishing() || !activity.isDestroyed()) {
                 // If the sim is currently pin locked, return
@@ -198,8 +197,17 @@
                 }
 
                 // Fetch locale for active sim's MCC
-                int mcc = Integer.parseInt(activeSubs.get(0).getMccString());
-                locale = LocaleUtils.getLocaleFromMcc(activity, mcc, null);
+                final String mccString = activeSubs.get(0).getMccString();
+                try {
+                    if (mccString != null && !mccString.isEmpty()) {
+                        int mcc = Integer.parseInt(mccString);
+                        locale = LocaleUtils.getLocaleFromMcc(activity, mcc, null);
+                    } else {
+                        Log.w(TAG, "Unexpected mccString: '" + mccString + "'");
+                    }
+                } catch (NumberFormatException e) {
+                    Log.w(TAG, "mccString not a number: '" + mccString + "'", e);
+                }
 
                 // If that fails, fall back to preferred languages reported
                 // by the sim
diff --git a/src/org/lineageos/setupwizard/NetworkSetupActivity.java b/src/org/lineageos/setupwizard/NetworkSetupActivity.java
index f741b60..372c901 100644
--- a/src/org/lineageos/setupwizard/NetworkSetupActivity.java
+++ b/src/org/lineageos/setupwizard/NetworkSetupActivity.java
@@ -6,7 +6,6 @@
 
 package org.lineageos.setupwizard;
 
-import static org.lineageos.setupwizard.SetupWizardApp.ACTION_SETUP_NETWORK;
 import static org.lineageos.setupwizard.SetupWizardApp.EXTRA_ENABLE_NEXT_ON_CONNECT;
 import static org.lineageos.setupwizard.SetupWizardApp.EXTRA_PREFS_SET_BACK_TEXT;
 import static org.lineageos.setupwizard.SetupWizardApp.EXTRA_PREFS_SHOW_BUTTON_BAR;
@@ -14,20 +13,20 @@
 import static org.lineageos.setupwizard.SetupWizardApp.EXTRA_PREFS_SHOW_SKIP_TV;
 
 import android.content.Intent;
+import android.os.Bundle;
 
 import org.lineageos.setupwizard.util.SetupWizardUtils;
 
 public class NetworkSetupActivity extends SubBaseActivity {
 
+    private static final String ACTION_SETUP_NETWORK = "android.settings.NETWORK_PROVIDER_SETUP";
+
     @Override
     protected void onStartSubactivity() {
         if (SetupWizardUtils.isOwner()) {
             tryEnablingWifi();
         }
         Intent intent = new Intent(ACTION_SETUP_NETWORK);
-        if (SetupWizardUtils.hasLeanback(this)) {
-            intent.setComponent(SetupWizardUtils.sTvWifiSetupSettingsActivity);
-        }
         intent.putExtra(EXTRA_PREFS_SHOW_BUTTON_BAR, true);
         intent.putExtra(EXTRA_PREFS_SHOW_SKIP, true);
         intent.putExtra(EXTRA_PREFS_SHOW_SKIP_TV, true);
diff --git a/src/org/lineageos/setupwizard/ScreenLockActivity.java b/src/org/lineageos/setupwizard/ScreenLockActivity.java
index 37366df..ca93684 100644
--- a/src/org/lineageos/setupwizard/ScreenLockActivity.java
+++ b/src/org/lineageos/setupwizard/ScreenLockActivity.java
@@ -6,12 +6,12 @@
 
 package org.lineageos.setupwizard;
 
-import static org.lineageos.setupwizard.SetupWizardApp.ACTION_SETUP_LOCKSCREEN;
-
 import android.content.Intent;
 
 public class ScreenLockActivity extends SubBaseActivity {
 
+    private static final String ACTION_SETUP_LOCKSCREEN = "com.android.settings.SETUP_LOCK_SCREEN";
+
     @Override
     protected void onStartSubactivity() {
         Intent intent = new Intent(ACTION_SETUP_LOCKSCREEN);
diff --git a/src/org/lineageos/setupwizard/SetupWizardActivity.java b/src/org/lineageos/setupwizard/SetupWizardActivity.java
index 8991ee2..8e061d0 100644
--- a/src/org/lineageos/setupwizard/SetupWizardActivity.java
+++ b/src/org/lineageos/setupwizard/SetupWizardActivity.java
@@ -31,6 +31,10 @@
         if (LOGV) {
             Log.v(TAG, "onCreate savedInstanceState=" + savedInstanceState);
         }
+        if (SetupWizardUtils.hasLeanback(this) && SetupWizardUtils.hasGMS(this)) {
+            finish();
+            return;
+        }
         SetupWizardUtils.enableComponent(this, WizardManager.class);
         Intent intent = new Intent(ACTION_LOAD);
         if (SetupWizardUtils.isOwner()) {
diff --git a/src/org/lineageos/setupwizard/SetupWizardApp.java b/src/org/lineageos/setupwizard/SetupWizardApp.java
index 4731b65..40d732e 100644
--- a/src/org/lineageos/setupwizard/SetupWizardApp.java
+++ b/src/org/lineageos/setupwizard/SetupWizardApp.java
@@ -22,14 +22,6 @@
     // Verbose logging
     public static final boolean LOGV = Log.isLoggable(TAG, Log.VERBOSE);
 
-    public static final String ACTION_ACCESSIBILITY_SETTINGS =
-            "android.settings.ACCESSIBILITY_SETTINGS_FOR_SUW";
-    public static final String ACTION_FINISHED = "org.lineageos.setupwizard.SETUP_FINISHED";
-    public static final String ACTION_SETUP_COMPLETE =
-            "org.lineageos.setupwizard.LINEAGE_SETUP_COMPLETE";
-    public static final String ACTION_SETUP_NETWORK = "android.settings.NETWORK_PROVIDER_SETUP";
-    public static final String ACTION_SETUP_BIOMETRIC = "android.settings.BIOMETRIC_ENROLL";
-    public static final String ACTION_SETUP_LOCKSCREEN = "com.android.settings.SETUP_LOCK_SCREEN";
     public static final String ACTION_RESTORE_FROM_BACKUP =
             "com.stevesoltys.seedvault.RESTORE_BACKUP";
     public static final String ACTION_EMERGENCY_DIAL = "com.android.phone.EmergencyDialer.DIAL";
@@ -53,7 +45,7 @@
     private boolean mIsRadioReady = false;
     private boolean mIgnoreSimLocale = false;
 
-    private final Bundle mSettingsBundle = new Bundle();
+    private static final Bundle mSettingsBundle = new Bundle();
     private final Handler mHandler = new Handler(Looper.getMainLooper());
 
     private final Runnable mRadioTimeoutRunnable = () -> mIsRadioReady = true;
@@ -88,7 +80,7 @@
         mIgnoreSimLocale = ignoreSimLocale;
     }
 
-    public Bundle getSettingsBundle() {
+    public static Bundle getSettingsBundle() {
         return mSettingsBundle;
     }
 }
diff --git a/src/org/lineageos/setupwizard/SetupWizardExitWorker.java b/src/org/lineageos/setupwizard/SetupWizardExitWorker.java
deleted file mode 100644
index ba72173..0000000
--- a/src/org/lineageos/setupwizard/SetupWizardExitWorker.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * SPDX-FileCopyrightText: 2024 The LineageOS Project
- * SPDX-License-Identifier: Apache-2.0
- */
-
-package org.lineageos.setupwizard;
-
-import android.content.Context;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.work.CoroutineWorker;
-import androidx.work.WorkerParameters;
-
-import org.lineageos.setupwizard.util.SetupWizardUtils;
-
-import kotlin.coroutines.Continuation;
-
-public class SetupWizardExitWorker extends CoroutineWorker {
-
-    public SetupWizardExitWorker(@NonNull Context appContext,
-            @NonNull WorkerParameters params) {
-        super(appContext, params);
-    }
-
-    @Nullable
-    @Override
-    public Object doWork(@NonNull Continuation<? super Result> continuation) {
-        SetupWizardUtils.finishSetupWizard(getApplicationContext());
-        return Result.success();
-    }
-}
diff --git a/src/org/lineageos/setupwizard/SimMissingActivity.java b/src/org/lineageos/setupwizard/SimMissingActivity.java
index a5c7254..3980cb4 100644
--- a/src/org/lineageos/setupwizard/SimMissingActivity.java
+++ b/src/org/lineageos/setupwizard/SimMissingActivity.java
@@ -6,18 +6,45 @@
 
 package org.lineageos.setupwizard;
 
-import android.os.Bundle;
+import static com.google.android.setupcompat.util.ResultCodes.RESULT_ACTIVITY_NOT_FOUND;
+
+import android.content.Intent;
+
+import androidx.activity.result.ActivityResult;
+
+import com.google.android.setupdesign.transition.TransitionHelper;
 
 import org.lineageos.setupwizard.util.SetupWizardUtils;
 
-public class SimMissingActivity extends BaseSetupWizardActivity {
+public class SimMissingActivity extends SubBaseActivity {
+
+    protected void onStartSubactivity() {
+        if (!SetupWizardUtils.simMissing(this)) {
+            nextAction(RESULT_OK);
+            return;
+        }
+        getGlifLayout().setDescriptionText(getString(R.string.sim_missing_summary));
+        setNextAllowed(true);
+    }
 
     @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        getGlifLayout().setDescriptionText(getString(R.string.sim_missing_summary));
-        if (!SetupWizardUtils.simMissing(this)) {
-            finishAction(RESULT_OK);
+    protected void onActivityResult(ActivityResult activityResult) {
+        int resultCode = activityResult.getResultCode();
+        Intent data = activityResult.getData();
+        if (resultCode != RESULT_CANCELED) {
+            nextAction(resultCode, data);
+        } else if (mIsSubactivityNotFound) {
+            finishAction(RESULT_ACTIVITY_NOT_FOUND);
+        } else if (data != null && data.getBooleanExtra("onBackPressed", false)) {
+            if (SetupWizardUtils.simMissing(this)) {
+                onStartSubactivity();
+            } else {
+                finishAction(RESULT_CANCELED, data);
+            }
+            TransitionHelper.applyBackwardTransition(this,
+                    TransitionHelper.TRANSITION_FADE_THROUGH, true);
+        } else if (!SetupWizardUtils.simMissing(this)) {
+            nextAction(RESULT_OK);
         }
     }
 
diff --git a/src/org/lineageos/setupwizard/SubBaseActivity.java b/src/org/lineageos/setupwizard/SubBaseActivity.java
index ac1cd0a..9379d5e 100644
--- a/src/org/lineageos/setupwizard/SubBaseActivity.java
+++ b/src/org/lineageos/setupwizard/SubBaseActivity.java
@@ -19,6 +19,8 @@
 
 import androidx.activity.result.ActivityResult;
 
+import com.google.android.setupdesign.transition.TransitionHelper;
+
 public abstract class SubBaseActivity extends BaseSetupWizardActivity {
 
     public static final String TAG = SubBaseActivity.class.getSimpleName();
@@ -80,6 +82,8 @@
             finishAction(RESULT_ACTIVITY_NOT_FOUND);
         } else if (data != null && data.getBooleanExtra("onBackPressed", false)) {
             onStartSubactivity();
+            TransitionHelper.applyBackwardTransition(this,
+                    TransitionHelper.TRANSITION_FADE_THROUGH, true);
         } else {
             finishAction(RESULT_CANCELED);
         }
diff --git a/src/org/lineageos/setupwizard/WelcomeActivity.java b/src/org/lineageos/setupwizard/WelcomeActivity.java
index 240681c..4dc594e 100644
--- a/src/org/lineageos/setupwizard/WelcomeActivity.java
+++ b/src/org/lineageos/setupwizard/WelcomeActivity.java
@@ -6,7 +6,6 @@
 
 package org.lineageos.setupwizard;
 
-import static org.lineageos.setupwizard.SetupWizardApp.ACTION_ACCESSIBILITY_SETTINGS;
 import static org.lineageos.setupwizard.SetupWizardApp.ACTION_EMERGENCY_DIAL;
 
 import android.content.Intent;
@@ -22,6 +21,9 @@
 
 public class WelcomeActivity extends SubBaseActivity {
 
+    private static final String ACTION_ACCESSIBILITY_SETTINGS =
+            "android.settings.ACCESSIBILITY_SETTINGS_FOR_SUW";
+
     @Override
     protected void onStartSubactivity() {
     }
diff --git a/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java b/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java
index f7abe31..b43798b 100644
--- a/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java
+++ b/src/org/lineageos/setupwizard/backup/RestoreIntroActivity.java
@@ -6,8 +6,12 @@
 
 package org.lineageos.setupwizard.backup;
 
+import static com.google.android.setupcompat.util.ResultCodes.RESULT_ACTIVITY_NOT_FOUND;
+
 import static org.lineageos.setupwizard.SetupWizardApp.ACTION_RESTORE_FROM_BACKUP;
 
+import androidx.activity.result.ActivityResult;
+
 import android.content.Intent;
 import android.os.Bundle;
 
@@ -24,6 +28,19 @@
     }
 
     @Override
+    protected void onActivityResult(ActivityResult activityResult) {
+        int resultCode = activityResult.getResultCode();
+        Intent data = activityResult.getData();
+        if (resultCode != RESULT_CANCELED) {
+            nextAction(resultCode, data);
+        } else if (mIsSubactivityNotFound) {
+            finishAction(RESULT_ACTIVITY_NOT_FOUND);
+        } else if (data != null && data.getBooleanExtra("onBackPressed", false)) {
+            onStartSubactivity();
+        }
+    }
+
+    @Override
     protected void onStartSubactivity() {
         setNextAllowed(true);
     }
diff --git a/src/org/lineageos/setupwizard/util/SetupWizardUtils.java b/src/org/lineageos/setupwizard/util/SetupWizardUtils.java
index 1cfdfa4..7b10a1f 100644
--- a/src/org/lineageos/setupwizard/util/SetupWizardUtils.java
+++ b/src/org/lineageos/setupwizard/util/SetupWizardUtils.java
@@ -11,59 +11,58 @@
 import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
 import static android.content.pm.PackageManager.DONT_KILL_APP;
 import static android.content.pm.PackageManager.GET_ACTIVITIES;
-import static android.content.pm.PackageManager.GET_RECEIVERS;
-import static android.content.pm.PackageManager.GET_SERVICES;
 import static android.telephony.TelephonyManager.PHONE_TYPE_GSM;
-import static android.telephony.TelephonyManager.SIM_STATE_ABSENT;
 
 import static com.android.internal.telephony.PhoneConstants.LTE_ON_CDMA_TRUE;
 import static com.android.internal.telephony.PhoneConstants.LTE_ON_CDMA_UNKNOWN;
 
+import static com.google.android.setupcompat.util.ResultCodes.RESULT_SKIP;
+
+import static org.lineageos.setupwizard.SetupWizardApp.DISABLE_NAV_KEYS;
+import static org.lineageos.setupwizard.SetupWizardApp.ENABLE_RECOVERY_UPDATE;
+import static org.lineageos.setupwizard.SetupWizardApp.KEY_SEND_METRICS;
 import static org.lineageos.setupwizard.SetupWizardApp.LOGV;
+import static org.lineageos.setupwizard.SetupWizardApp.NAVIGATION_OPTION_KEY;
+import static org.lineageos.setupwizard.SetupWizardApp.UPDATE_RECOVERY_PROP;
 
 import android.app.StatusBarManager;
+import android.app.WallpaperManager;
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.SharedPreferences;
-import android.content.pm.ComponentInfo;
-import android.content.pm.PackageInfo;
+import android.content.om.IOverlayManager;
 import android.content.pm.PackageManager;
-import android.content.pm.ServiceInfo;
 import android.content.res.Resources;
 import android.hardware.biometrics.BiometricManager;
 import android.net.ConnectivityManager;
 import android.net.NetworkCapabilities;
-import android.os.Binder;
+import android.os.Bundle;
+import android.os.ServiceManager;
 import android.os.SystemProperties;
 import android.os.UserHandle;
 import android.os.UserManager;
 import android.provider.Settings;
 import android.sysprop.TelephonyProperties;
-import android.telephony.ServiceState;
 import android.telephony.SubscriptionInfo;
 import android.telephony.SubscriptionManager;
 import android.telephony.TelephonyManager;
 import android.util.Log;
 
-import androidx.work.OneTimeWorkRequest;
-import androidx.work.OutOfQuotaPolicy;
-import androidx.work.WorkManager;
-
-import org.lineageos.internal.util.PackageManagerUtils;
+import org.lineageos.setupwizard.BaseSetupWizardActivity;
 import org.lineageos.setupwizard.BiometricActivity;
 import org.lineageos.setupwizard.BluetoothSetupActivity;
 import org.lineageos.setupwizard.NetworkSetupActivity;
 import org.lineageos.setupwizard.ScreenLockActivity;
 import org.lineageos.setupwizard.SetupWizardApp;
-import org.lineageos.setupwizard.SetupWizardExitWorker;
 import org.lineageos.setupwizard.SimMissingActivity;
 
 import java.io.File;
-import java.util.ArrayList;
 import java.util.List;
 
+import lineageos.providers.LineageSettings;
+
 public class SetupWizardUtils {
 
     private static final String TAG = SetupWizardUtils.class.getSimpleName();
@@ -153,8 +152,8 @@
     public static boolean hasGMS(Context context) {
         String gmsSuwPackage = hasLeanback(context) ? GMS_TV_SUW_PACKAGE : GMS_SUW_PACKAGE;
 
-        if (PackageManagerUtils.isAppInstalled(context, GMS_PACKAGE) &&
-                PackageManagerUtils.isAppInstalled(context, gmsSuwPackage)) {
+        if (isPackageInstalled(context, GMS_PACKAGE) &&
+                isPackageInstalled(context, gmsSuwPackage)) {
             PackageManager packageManager = context.getPackageManager();
             if (LOGV) {
                 Log.v(TAG, GMS_SUW_PACKAGE + " state = " +
@@ -176,21 +175,7 @@
         }
     }
 
-    public static void startSetupWizardExitProcedure(Context context) {
-        try {
-            WorkManager.getInstance(context).enqueue(new OneTimeWorkRequest.Builder(
-                    SetupWizardExitWorker.class).setExpedited(
-                    OutOfQuotaPolicy.RUN_AS_NON_EXPEDITED_WORK_REQUEST).build());
-        } catch (IllegalArgumentException e) {
-            // finishSetupWizard -- called by the exit worker -- disables components at the end,
-            // including the WorkManager component required here, so this is likely an error finding
-            // that component. The worker only needs to run once. We can assume it already has.
-            Log.w(TAG, "Could not start SetupWizardExitWorker. It has likely already run.", e);
-            return;
-        }
-    }
-
-    public static void finishSetupWizard(Context context) {
+    public static void finishSetupWizard(BaseSetupWizardActivity context) {
         if (LOGV) {
             Log.v(TAG, "finishSetupWizard");
         }
@@ -210,34 +195,29 @@
                     Settings.Secure.TV_USER_SETUP_COMPLETE, 1);
         }
 
-        disableComponentsAndSendFinishedBroadcast(context);
-    }
-
-    private static void disableComponentsAndSendFinishedBroadcast(Context context) {
-        if (LOGV) {
-            Log.v(TAG, "Disabling Setup Wizard components and sending FINISHED broadcast.");
-        }
+        handleEnableMetrics(context);
+        handleNavKeys(context);
+        handleRecoveryUpdate();
+        handleNavigationOption();
+        WallpaperManager.getInstance(context).forgetLoadedWallpaper();
         disableHome(context);
-        context.sendStickyBroadcastAsUser(
-                new Intent(SetupWizardApp.ACTION_FINISHED),
-                Binder.getCallingUserHandle());
-        disableComponentSets(context, GET_RECEIVERS | GET_SERVICES);
-        // Note: The WizardManager component is disabled when the WizardManager exits,
-        // which happens when FinishActivity calls nextAction while completing.
+        enableStatusBar();
+        context.finishAffinity();
+        context.nextAction(RESULT_SKIP);
+        Log.i(TAG, "Setup complete!");
     }
 
     public static boolean isBluetoothDisabled() {
         return SystemProperties.getBoolean("config.disable_bluetooth", false);
     }
 
-    public static boolean isEthernetConnected(Context context) {
-        ConnectivityManager cm = (ConnectivityManager) context.
-                getSystemService(Context.CONNECTIVITY_SERVICE);
+    private static boolean isNetworkConnectedToInternetViaEthernet(Context context) {
+        ConnectivityManager cm = context.getSystemService(ConnectivityManager.class);
         NetworkCapabilities networkCapabilities = cm.getNetworkCapabilities(cm.getActiveNetwork());
-        if (networkCapabilities != null) {
-            return networkCapabilities.hasCapability(NetworkCapabilities.TRANSPORT_ETHERNET);
-        }
-        return false;
+        return networkCapabilities != null &&
+                networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_ETHERNET) &&
+                networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) &&
+                networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
     }
 
     public static boolean hasLeanback(Context context) {
@@ -265,14 +245,18 @@
         } else {
             disableComponent(context, ScreenLockActivity.class);
         }
-        if (!hasTelephony(context) || !simMissing(context)) {
+        if (!hasTelephony(context)) {
             disableComponent(context, SimMissingActivity.class);
         }
-        if ((!hasWifi(context) && !hasTelephony(context)) || isEthernetConnected(context)) {
+        if ((!hasWifi(context) && !hasTelephony(context)) ||
+                isNetworkConnectedToInternetViaEthernet(context)) {
             disableComponent(context, NetworkSetupActivity.class);
         }
     }
 
+    /**
+     * Disable the Home component, which is presumably SetupWizardActivity at this time.
+     */
     public static void disableHome(Context context) {
         ComponentName homeComponent = getHomeComponent(context);
         if (homeComponent != null) {
@@ -282,7 +266,7 @@
         }
     }
 
-    public static ComponentName getHomeComponent(Context context) {
+    private static ComponentName getHomeComponent(Context context) {
         Intent intent = new Intent("android.intent.action.MAIN");
         intent.addCategory("android.intent.category.HOME");
         intent.setPackage(context.getPackageName());
@@ -293,11 +277,6 @@
         return comp;
     }
 
-    public static void disableComponentSets(Context context, int flags) {
-        setComponentListEnabledState(context, getComponentSets(context, flags),
-                COMPONENT_ENABLED_STATE_DISABLED);
-    }
-
     public static void disableComponent(Context context, Class<?> cls) {
         setComponentEnabledState(context, new ComponentName(context, cls),
                 COMPONENT_ENABLED_STATE_DISABLED);
@@ -314,51 +293,58 @@
                 enabledState, DONT_KILL_APP);
     }
 
-    public static void setComponentListEnabledState(Context context,
-            List<ComponentName> componentNames, int enabledState) {
-        for (ComponentName componentName : componentNames) {
-            setComponentEnabledState(context, componentName, enabledState);
+    private static void handleEnableMetrics(Context context) {
+        Bundle privacyData = SetupWizardApp.getSettingsBundle();
+        if (privacyData != null
+                && privacyData.containsKey(KEY_SEND_METRICS)) {
+            LineageSettings.Secure.putInt(context.getContentResolver(),
+                    LineageSettings.Secure.STATS_COLLECTION,
+                    privacyData.getBoolean(KEY_SEND_METRICS)
+                            ? 1 : 0);
         }
     }
 
-    public static List<ComponentName> getComponentSets(Context context, int flags) {
-        int i = 0;
-        List<ComponentName> componentNames = new ArrayList<>();
-        try {
-            PackageInfo allInfo = context.getPackageManager()
-                    .getPackageInfo(context.getPackageName(), flags);
-            if (allInfo != null) {
-                if (allInfo.activities != null && (flags & GET_ACTIVITIES) != 0) {
-                    for (ComponentInfo info : allInfo.activities) {
-                        componentNames.add(new ComponentName(context, info.name));
-                    }
-                }
-                if (allInfo.receivers != null && (flags & GET_RECEIVERS) != 0) {
-                    for (ComponentInfo info2 : allInfo.receivers) {
-                        componentNames.add(new ComponentName(context, info2.name));
-                    }
-                }
-                if (allInfo.services != null && (flags & GET_SERVICES) != 0) {
-                    ServiceInfo[] serviceInfoArr = allInfo.services;
-                    int length = serviceInfoArr.length;
-                    while (i < length) {
-                        componentNames.add(new ComponentName(context, serviceInfoArr[i].name));
-                        i++;
-                    }
-                }
+    private static void handleNavKeys(Context context) {
+        if (SetupWizardApp.getSettingsBundle().containsKey(DISABLE_NAV_KEYS)) {
+            writeDisableNavkeysOption(context,
+                    SetupWizardApp.getSettingsBundle().getBoolean(DISABLE_NAV_KEYS));
+        }
+    }
+
+    private static void handleRecoveryUpdate() {
+        if (SetupWizardApp.getSettingsBundle().containsKey(ENABLE_RECOVERY_UPDATE)) {
+            boolean update = SetupWizardApp.getSettingsBundle()
+                    .getBoolean(ENABLE_RECOVERY_UPDATE);
+
+            SystemProperties.set(UPDATE_RECOVERY_PROP, String.valueOf(update));
+        }
+    }
+
+    private static void handleNavigationOption() {
+        Bundle settingsBundle = SetupWizardApp.getSettingsBundle();
+        if (settingsBundle.containsKey(NAVIGATION_OPTION_KEY)) {
+            IOverlayManager overlayManager = IOverlayManager.Stub.asInterface(
+                    ServiceManager.getService(Context.OVERLAY_SERVICE));
+            String selectedNavMode = settingsBundle.getString(NAVIGATION_OPTION_KEY);
+
+            try {
+                overlayManager.setEnabledExclusiveInCategory(selectedNavMode,
+                        UserHandle.USER_CURRENT);
+            } catch (Exception ignored) {
             }
-        } catch (PackageManager.NameNotFoundException ignored) {
         }
-        return componentNames;
     }
 
-    public static final ComponentName sTvWifiSetupSettingsActivity =
-            new ComponentName("com.android.tv.settings",
-                    "com.android.tv.settings.connectivity.setup.WifiSetupActivity");
-
-    public static final ComponentName sTvAddAccessorySettingsActivity =
-            new ComponentName("com.android.tv.settings",
-                    "com.android.tv.settings.accessories.AddAccessoryActivity");
+    private static void writeDisableNavkeysOption(Context context, boolean enabled) {
+        final boolean virtualKeysEnabled = LineageSettings.System.getIntForUser(
+                context.getContentResolver(), LineageSettings.System.FORCE_SHOW_NAVBAR, 0,
+                UserHandle.USER_CURRENT) != 0;
+        if (enabled != virtualKeysEnabled) {
+            LineageSettings.System.putIntForUser(context.getContentResolver(),
+                    LineageSettings.System.FORCE_SHOW_NAVBAR, enabled ? 1 : 0,
+                    UserHandle.USER_CURRENT);
+        }
+    }
 
     public static long getBuildDateTimestamp() {
         return SystemProperties.getLong(PROP_BUILD_DATE, 0);
diff --git a/src/org/lineageos/setupwizard/wizardmanager/WizardManager.java b/src/org/lineageos/setupwizard/wizardmanager/WizardManager.java
index 44deb57..b1d3848 100644
--- a/src/org/lineageos/setupwizard/wizardmanager/WizardManager.java
+++ b/src/org/lineageos/setupwizard/wizardmanager/WizardManager.java
@@ -23,7 +23,6 @@
 import android.util.Log;
 
 import com.google.android.setupcompat.util.ResultCodes;
-import com.google.android.setupcompat.util.WizardManagerHelper;
 
 import org.lineageos.setupwizard.util.SetupWizardUtils;
 
@@ -71,10 +70,6 @@
         finish();
     }
 
-    private void addExtras(Intent intent) {
-        intent.putExtra(WizardManagerHelper.EXTRA_IS_FIRST_RUN, true);
-    }
-
     private void doAction(String scriptUri, WizardAction action, Intent extras) {
         Intent intent = action.getIntent();
         intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
@@ -83,7 +78,6 @@
                     + " intent=" + intent + " extras2=" + intent.getExtras() + " action=" + action);
         }
 
-        addExtras(intent);
         if (extras != null) {
             intent.putExtras(extras);
         }