diff --git a/Android.bp b/Android.bp
index 57d30ce..c85fd2b 100644
--- a/Android.bp
+++ b/Android.bp
@@ -69,12 +69,19 @@
     name: "ThemePicker",
 
     static_libs: [
+        "guava",
+        "monet",
+	"renderscript_toolkit",
         "wallpaper-common-deps",
         "SettingsLibSettingsTheme",
         "SystemUI-statsd",
         "styleprotoslite",
     ],
 
+    jni_libs: [
+        "librenderscript-toolkit",
+    ],
+
     srcs: [
         ":WallpaperPicker2_srcs",
         ":ThemePicker_srcs",
diff --git a/res/drawable/color_chip_seed_filled0.xml b/res/drawable/color_chip_seed_filled0.xml
new file mode 100644
index 0000000..a93bc6b
--- /dev/null
+++ b/res/drawable/color_chip_seed_filled0.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item>
+        <shape android:shape="rectangle">
+            <corners
+                android:topLeftRadius="@dimen/component_color_chip_small_size_default" />
+            <size
+                android:width="@dimen/component_color_chip_small_size_default"
+                android:height="@dimen/component_color_chip_small_size_default" />
+            <solid android:color="@android:color/black" />
+        </shape>
+    </item>
+</selector>
\ No newline at end of file
diff --git a/res/drawable/color_chip_seed_filled1.xml b/res/drawable/color_chip_seed_filled1.xml
new file mode 100644
index 0000000..a0672bc
--- /dev/null
+++ b/res/drawable/color_chip_seed_filled1.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item>
+         <shape android:shape="rectangle">
+            <corners
+                android:bottomLeftRadius="@dimen/component_color_chip_small_size_default" />
+            <size
+                android:width="@dimen/component_color_chip_small_size_default"
+                android:height="@dimen/component_color_chip_small_size_default" />
+            <solid android:color="@android:color/black" />
+        </shape>
+    </item>
+</selector>
\ No newline at end of file
diff --git a/res/drawable/color_chip_seed_filled2.xml b/res/drawable/color_chip_seed_filled2.xml
new file mode 100644
index 0000000..545fbdd
--- /dev/null
+++ b/res/drawable/color_chip_seed_filled2.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item>
+        <shape android:shape="rectangle">
+            <corners
+                android:topRightRadius="@dimen/component_color_chip_small_size_default" />
+            <size
+                android:width="@dimen/component_color_chip_small_size_default"
+                android:height="@dimen/component_color_chip_small_size_default" />
+            <solid android:color="@android:color/black" />
+        </shape>
+    </item>
+</selector>
\ No newline at end of file
diff --git a/res/drawable/color_chip_seed_filled3.xml b/res/drawable/color_chip_seed_filled3.xml
new file mode 100644
index 0000000..0e286a5
--- /dev/null
+++ b/res/drawable/color_chip_seed_filled3.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item>
+        <shape android:shape="rectangle">
+            <corners
+                android:bottomRightRadius="@dimen/component_color_chip_small_size_default" />
+            <size
+                android:width="@dimen/component_color_chip_small_size_default"
+                android:height="@dimen/component_color_chip_small_size_default" />
+            <solid android:color="@android:color/black" />
+        </shape>
+    </item>
+</selector>
\ No newline at end of file
diff --git a/res/layout-land/fragment_grid_picker.xml b/res/layout-land/fragment_grid_picker.xml
index 2861e7d..0fd52c8 100644
--- a/res/layout-land/fragment_grid_picker.xml
+++ b/res/layout-land/fragment_grid_picker.xml
@@ -26,35 +26,41 @@
         android:layout_width="match_parent"
         android:layout_height="match_parent">
 
-        <LinearLayout
-        android:id="@+id/content_section"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:orientation="horizontal">
-        <FrameLayout
-            android:layout_width="0dp"
-            android:layout_height="match_parent"
-            android:layout_weight="1"
-            android:clipToPadding="false"
-            android:paddingTop="@dimen/preview_content_padding_top"
-            android:paddingBottom="@dimen/preview_content_padding_bottom"
-            android:background="?android:colorSecondary">
-            <include layout="@layout/grid_preview_card"/>
-        </FrameLayout>
+        <androidx.constraintlayout.widget.ConstraintLayout
+            android:id="@+id/content_section"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent">
 
-        <FrameLayout
-            android:id="@+id/options_section"
-            android:layout_width="0dp"
-            android:layout_height="match_parent"
-            android:layout_weight="1"
-            android:paddingVertical="10dp">
+            <FrameLayout
+                android:id="@+id/preview_card_container"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:background="?android:colorSecondary"
+                android:clipToPadding="false"
+                android:paddingBottom="@dimen/preview_content_padding_bottom"
+                android:paddingTop="@dimen/preview_content_padding_top"
+                app:layout_constraintHorizontal_weight="1"
+                app:layout_constraintLeft_toLeftOf="parent"
+                app:layout_constraintRight_toLeftOf="@+id/options_section">
+                <include layout="@layout/grid_preview_card"/>
+            </FrameLayout>
 
-            <androidx.recyclerview.widget.RecyclerView
-                android:id="@+id/options_container"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"/>
-        </FrameLayout>
-    </LinearLayout>
+            <FrameLayout
+                android:id="@+id/options_section"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:paddingVertical="10dp"
+                app:layout_constraintHorizontal_weight="1"
+                app:layout_constraintLeft_toRightOf="@+id/preview_card_container"
+                app:layout_constraintRight_toRightOf="parent">
+
+                <androidx.recyclerview.widget.RecyclerView
+                    android:id="@+id/options_container"
+                    android:layout_width="match_parent"
+                    android:layout_height="match_parent"/>
+            </FrameLayout>
+        </androidx.constraintlayout.widget.ConstraintLayout>
+
         <androidx.core.widget.ContentLoadingProgressBar
             android:id="@+id/loading_indicator"
             style="@android:style/Widget.DeviceDefault.ProgressBar"
diff --git a/res/layout/color_option.xml b/res/layout/color_option.xml
new file mode 100644
index 0000000..9bbfd7f
--- /dev/null
+++ b/res/layout/color_option.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:clipChildren="false"
+    android:clipToPadding="false"
+    android:orientation="vertical">
+
+    <FrameLayout
+        android:id="@+id/option_tile"
+        android:layout_width="@dimen/option_tile_width"
+        android:layout_height="@dimen/option_tile_width"
+        android:layout_gravity="center_horizontal"
+        android:background="@drawable/option_border_color">
+        <ImageView
+            android:id="@+id/color_preview_0"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginRight="@dimen/color_seed_chip_margin"
+            android:layout_marginBottom="@dimen/color_seed_chip_margin"
+            android:src="@drawable/color_chip_seed_filled0"/>
+        <ImageView
+            android:id="@+id/color_preview_1"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginLeft="@dimen/color_seed_chip_margin"
+            android:layout_marginBottom="@dimen/color_seed_chip_margin"
+            android:src="@drawable/color_chip_seed_filled2"/>
+        <ImageView
+            android:id="@+id/color_preview_2"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginRight="@dimen/color_seed_chip_margin"
+            android:layout_marginTop="@dimen/color_seed_chip_margin"
+            android:src="@drawable/color_chip_seed_filled1"/>
+        <ImageView
+            android:id="@+id/color_preview_3"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginLeft="@dimen/color_seed_chip_margin"
+            android:layout_marginTop="@dimen/color_seed_chip_margin"
+            android:src="@drawable/color_chip_seed_filled3"/>
+    </FrameLayout>
+</FrameLayout>
diff --git a/res/layout/color_options_view.xml b/res/layout/color_options_view.xml
new file mode 100644
index 0000000..65028a6
--- /dev/null
+++ b/res/layout/color_options_view.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+    <androidx.recyclerview.widget.RecyclerView
+        android:id="@+id/color_option_container"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center_horizontal"
+        android:orientation="horizontal" />
+</FrameLayout>
diff --git a/res/layout/color_pages_view.xml b/res/layout/color_pages_view.xml
new file mode 100644
index 0000000..3ccbd41
--- /dev/null
+++ b/res/layout/color_pages_view.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical">
+
+    <androidx.viewpager2.widget.ViewPager2
+        android:id="@+id/color_page_container"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"/>
+    <com.android.wallpaper.widget.PageIndicator
+        android:id="@+id/color_page_indicator"
+        android:layout_marginTop="@dimen/color_page_indicator_margin_top"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:visibility="gone"
+        android:layout_gravity="center"/>
+</LinearLayout>
diff --git a/res/layout/color_section_view.xml b/res/layout/color_section_view.xml
new file mode 100644
index 0000000..6095c9b
--- /dev/null
+++ b/res/layout/color_section_view.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<com.android.customization.picker.color.ColorSectionView
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:paddingBottom="@dimen/section_bottom_padding"
+    android:orientation="vertical">
+
+    <FrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:paddingHorizontal="@dimen/separated_tabs_horizontal_padding">
+        <include layout="@layout/separated_tabs" />
+    </FrameLayout>
+
+    <androidx.viewpager2.widget.ViewPager2
+        android:id="@+id/color_section_view_pager"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="@dimen/color_options_container_top_margin"
+        android:clipChildren="false"
+        android:clipToPadding="false"/>
+</com.android.customization.picker.color.ColorSectionView>
diff --git a/res/layout/fragment_grid_picker.xml b/res/layout/fragment_grid_picker.xml
index aec8e49..34547fc 100644
--- a/res/layout/fragment_grid_picker.xml
+++ b/res/layout/fragment_grid_picker.xml
@@ -33,8 +33,8 @@
 
             <FrameLayout
                 android:id="@+id/preview_card_container"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
+                android:layout_width="0dp"
+                android:layout_height="0dp"
                 android:clipToPadding="false"
                 android:paddingTop="@dimen/preview_page_top_margin"
                 android:paddingBottom="@dimen/preview_page_bottom_margin"
@@ -42,7 +42,8 @@
                 app:layout_constraintBottom_toTopOf="@+id/options_container"
                 app:layout_constraintEnd_toEndOf="parent"
                 app:layout_constraintStart_toStartOf="parent"
-                app:layout_constraintTop_toTopOf="parent">
+                app:layout_constraintTop_toTopOf="parent"
+                app:layout_constraintVertical_bias="@dimen/preview_card_vertical_bias">
 
                 <include layout="@layout/grid_preview_card" />
             </FrameLayout>
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 7aa19ff..4a6733e 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Pas toe"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tik om te wysig"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Hou huidige muurpapier"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Pas toe"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Stylvoorskou"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Roostervoorskou"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Lettertipevoorskou"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, tans toegepas"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, word tans toegepas en voorbeskou"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, word tans voorbeskou"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, verander wat gekies en voorbeskou word"</string>
     <string name="theme_description" msgid="3697012391785254635">"Lettertipe: <xliff:g id="ID_1">%1$s</xliff:g>, ikone: <xliff:g id="ID_2">%2$s</xliff:g>, vorm: <xliff:g id="ID_3">%3$s</xliff:g>, kleur: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Verstek"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Lettertipe"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Gepasmaakte kleur"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Gepasmaakte vorm"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Gepasmaakte stylnaam"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Donkertema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Tydelik gedeaktiveer vanweë Batterybespaarder"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema het verander"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tema-ikone"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Verander programrooster"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Muurpapierkleure"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Muurpapierkleur"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Basiese kleure"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Kleur het verander"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamies"</string>
 </resources>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index bdd0cbb..7399eca 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"ተግብር"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ለማርትዕ መታ ያድርጉ"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"የአሁኑን ልጣፍ ያቆዩት"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"ተግብር"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"የቅጥ ቅድመ-እይታ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"የፍርግርግ ቅድመ-እይታ"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"የቅርጸ-ቁምፊ ቅድመ-እይታ"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>፣ አሁን ላይ ተፈጻሚ ሆኗል"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied and previewed"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, currently previewed"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>፣ የተመረጠውን እና የታየውን ለውጥ"</string>
     <string name="theme_description" msgid="3697012391785254635">"ቅርጸ-ቁምፊ፦ <xliff:g id="ID_1">%1$s</xliff:g>፣ አዶዎች፦ <xliff:g id="ID_2">%2$s</xliff:g>፣ ቅርጽ፦ <xliff:g id="ID_3">%3$s</xliff:g>፣ ቀለም፦ <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ነባሪ"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ቅርጸ-ቁምፊ"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"ብጁ ቀለም"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"ብጁ ቅርጽ"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"ብጁ የቅጥ ስም"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ጠቆር ያለ ገጽታ"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"በባትሪ ኃይል ቆጣቢ ምክንያት ለጊዜው ተሰናክሏል"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"ገጽታ ተቀይሯል"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"ገጽታ ያላቸው አዶዎች"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ቤታ"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"የመተግበሪያ ፍርግርግን ይቀይሩ"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"የልጣፍ ቀለማት"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"የልጣፍ ቀለም"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"መሰረታዊ ቀለሞች"</string>
+    <string name="color_changed" msgid="7029571720331641235">"ቀለም ተቀይሯል"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ተለዋዋጭ"</string>
 </resources>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 5d51ecd..ef802d2 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"تطبيق"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"انقُر للتعديل."</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"الاحتفاظ بالخلفية الحالية"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"تطبيق"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"معاينة النمط"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"معاينة الشبكة"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"معاينة الخط"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>، مستخدَم حاليًا"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"تتم معاينة وتطبيق الخيار <xliff:g id="ID_1">%1$s</xliff:g> حاليًا."</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"تتم معاينة الخيار <xliff:g id="ID_1">%1$s</xliff:g> حاليًا."</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>، يمكنك تغيير هذا الخيار وعرضه."</string>
     <string name="theme_description" msgid="3697012391785254635">"الخط: <xliff:g id="ID_1">%1$s</xliff:g>، الرموز: <xliff:g id="ID_2">%2$s</xliff:g>، الشكل: <xliff:g id="ID_3">%3$s</xliff:g>، اللون: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"تلقائي"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"الخط"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"لون مخصص"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"شكل مخصص"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"اسم نمط مخصص"</string>
+    <string name="mode_title" msgid="2394873501427436055">"المظهر الداكن"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"تم الإيقاف مؤقتًا بسبب تفعيل ميزة \"توفير شحن البطارية\"."</string>
+    <string name="mode_changed" msgid="2243581369395418584">"تم تغيير المظهر."</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"رموز مستوحاة من موضوع معيّن"</string>
+    <string name="beta_title" msgid="8703819523760746458">"تجريبي"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"تغيير شبكة التطبيقات"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ألوان الخلفية"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"لون الخلفية"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"الألوان الأساسية"</string>
+    <string name="color_changed" msgid="7029571720331641235">"تم تغيير اللون."</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ألوان ديناميكية"</string>
 </resources>
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index eafaeb6..81c77f0 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"প্ৰয়োগ কৰক"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"সম্পাদনা কৰিবলৈ টিপক"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"বৰ্তমানৰ ৱালপেপাৰখন ৰাখক"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"প্ৰয়োগ কৰক"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"শৈলীৰ পূৰ্বদৰ্শন"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"গ্ৰিডৰ পূৰ্বদৰ্শন"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ফণ্টৰ পূৰ্বদৰ্শন"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"বৰ্তমান <xliff:g id="ID_1">%1$s</xliff:g> প্ৰয়োগ কৰা হৈছে"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, বৰ্তমান প্ৰয়োগ আৰু পূৰ্বদৰ্শন কৰি থকা হৈছে"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, বৰ্তমান পূৰ্বদৰ্শন কৰি থকা হৈছে"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, সালসলনি বাছনি কৰি পর্যালোচনা কৰা হ\'ল"</string>
     <string name="theme_description" msgid="3697012391785254635">"ফ’ণ্ট: <xliff:g id="ID_1">%1$s</xliff:g>, আইকন: <xliff:g id="ID_2">%2$s</xliff:g>, আকৃতি: <xliff:g id="ID_3">%3$s</xliff:g>, ৰং: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ডিফ’ল্ট"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ফ’ণ্ট"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"কাষ্টম ৰং"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"কাষ্টম আকৃতি"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"কাষ্টম শৈলীৰ নাম"</string>
+    <string name="mode_title" msgid="2394873501427436055">"গাঢ় ৰঙৰ থীম"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"বেটাৰী সঞ্চয়কাৰীৰ বাবে অস্থায়ীভাৱে অক্ষম কৰা হৈছে"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"থীম সলনি কৰা হৈছে"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"থীমযুক্ত চিহ্ন"</string>
+    <string name="beta_title" msgid="8703819523760746458">"বিটা"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"এপৰ গ্ৰিড সলনি কৰক"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ৱালপেপাৰৰ ৰং"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ৱালপেপাৰৰ ৰং"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"প্ৰাথমিক ৰং"</string>
+    <string name="color_changed" msgid="7029571720331641235">"ৰং সলনি কৰা হৈছে"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ডাইনামিক"</string>
 </resources>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index 78b1f5d..2d8209b 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Tətbiq edin"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Redaktə etmək üçün klikləyin"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Cari divar kağızını saxlayın"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Tətbiq edin"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Üslub önizləməsi"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Tor önizləməsi"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Şrift önizləməsi"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"Hazırda <xliff:g id="ID_1">%1$s</xliff:g> tətbiq edilir"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> hazırda tətbiq edilir və önizlənilir"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> hazırda önizlənilir"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, seçilən və önizlənəni dəyişin"</string>
     <string name="theme_description" msgid="3697012391785254635">"Şrift: <xliff:g id="ID_1">%1$s</xliff:g>, ikonalar: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, rəng: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Defolt"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Şrift"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Fərdi rəng"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Fərdi forma"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Fərdi üslub adı"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tünd tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Enerjiyə Qənaət rejiminə görə müvəqqəti deaktivdir"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema dəyişdirildi"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Temalı ikonalar"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Tətbiq torunu dəyişin"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Divar kağızı rəngləri"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Divar kağızı rəngi"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Əsas rənglər"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Rəng dəyişdirildi"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamik"</string>
 </resources>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index ee20919..d8aacd6 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Primeni"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Dodirnite da biste izmenili"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Zadrži aktuelnu pozadinu"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Primeni"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Pregled stila"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Pregled mreže"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Pregled fonta"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, trenutno je primenjeno"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, trenutno je primenjeno i pregleda se"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, trenutno se pregleda"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, promenite izabranu stavku koja se prikazuje"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, ikone: <xliff:g id="ID_2">%2$s</xliff:g>, oblik: <xliff:g id="ID_3">%3$s</xliff:g>, boja: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Podrazumevano"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Prilagođena boja"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Prilagođeni oblik"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Prilagođeni naziv stila"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tamna tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Privremeno je onemogućeno zbog uštede baterije"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema je promenjena"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tematske ikone"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Promenite mrežu aplikacija"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Boje pozadine"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Boja pozadine"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Osnovne boje"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Boja je promenjena"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamički"</string>
 </resources>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index 59497c9..4151478 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Ужыць"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Дакраніцеся, каб рэдагаваць"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Захаваць бягучыя шпалеры"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Ужыць"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Перадпрагляд стылю"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Перадпрагляд сеткі"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Перапрагляд шрыфту"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, цяпер ужыта"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, цяпер ужыта і папярэдне паказана"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, цяпер папярэдне паказваецца"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, змяніце выбранае і папярэдне прагледжанае"</string>
     <string name="theme_description" msgid="3697012391785254635">"Шрыфт: <xliff:g id="ID_1">%1$s</xliff:g>, значкі: <xliff:g id="ID_2">%2$s</xliff:g>, фігура: <xliff:g id="ID_3">%3$s</xliff:g>, колер: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Стандартна"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Шрыфт"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Карыстальніцкі колер"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Карыстальніцкая форма"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Назва карыстальніцкага стылю"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Цёмная тэма"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Часова выключана ў рэжыме эканоміі зараду"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Тэма зменена"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Тэматычныя значкі"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бэта"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Змяніць сетку праграм"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Колеры шпалер"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Колер шпалер"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Асноўныя колеры"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Колер зменены"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Дынамічны"</string>
 </resources>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 440f9e0..849af69 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Прилагане"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Докоснете, за да редактирате"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Запазване на текущия тапет"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Прилагане"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Визуализация на стила"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Визуализация на решетката"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Визуализация на шрифта"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"Понастоящем е приложена опцията „<xliff:g id="ID_1">%1$s</xliff:g>“"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"Понастоящем е приложена и визуализирана опцията „<xliff:g id="ID_1">%1$s</xliff:g>“"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"Понастоящем е визуализирана опцията „<xliff:g id="ID_1">%1$s</xliff:g>“"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"Промяна на избраната и визуализирана опция „<xliff:g id="ID_1">%1$s</xliff:g>“"</string>
     <string name="theme_description" msgid="3697012391785254635">"Шрифт: <xliff:g id="ID_1">%1$s</xliff:g> – икони: <xliff:g id="ID_2">%2$s</xliff:g> – форма: <xliff:g id="ID_3">%3$s</xliff:g> – цвят: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Основно"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Шрифт"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Персонализиран цвят"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Персонализирана фигура"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Име на персонализирания стил"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Тъмна тема"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Временно деактивирано с цел режим за запазване на батерията"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Темата бе променена"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Икони с теми"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Промяна на решетката с приложения"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Цветове от тапета"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Цвят от тапета"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Основни цветове"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Цветът бе променен"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамично"</string>
 </resources>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 220fd0c..b1c9abe 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"প্রয়োগ করুন"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"এডিট করতে ট্যাপ করুন"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"এখন যে ওয়ালপেপার আছে সেটি রাখুন"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"প্রয়োগ করুন"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"স্টাইল প্রিভিউ করুন"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"গ্রিড প্রিভিউ করুন"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ফন্ট প্রিভিউ করুন"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, বর্তমানে প্রয়োগ করা হয়েছে"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"এখন <xliff:g id="ID_1">%1$s</xliff:g> থিম প্রয়োগ করে প্রিভিউ করা হচ্ছে"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"এখন <xliff:g id="ID_1">%1$s</xliff:g> থিম প্রিভিউ করছেন"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, বেছে নেওয়া ও প্রিভিউ করা বিকল্প পরিবর্তন করা"</string>
     <string name="theme_description" msgid="3697012391785254635">"ফন্ট: <xliff:g id="ID_1">%1$s</xliff:g>, আইকন: <xliff:g id="ID_2">%2$s</xliff:g>, আকার: <xliff:g id="ID_3">%3$s</xliff:g>, রঙ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ডিফল্ট"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ফন্ট"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"কাস্টম রঙ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"কাস্টম আকৃতি"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"কাস্টম স্টাইলের নাম"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ডার্ক থিম"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ব্যাটারি সেভারের কারণে সাময়িকভাবে বন্ধ করা আছে"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"থিম পরিবর্তন করা হয়েছে"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"থিমযুক্ত আইকন"</string>
+    <string name="beta_title" msgid="8703819523760746458">"বিটা"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"অ্যাপ গ্রিড পরিবর্তন করুন"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ওয়ালপেপারের রঙ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ওয়ালপেপারের রঙ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"প্রাথমিক রঙ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"রঙ পরিবর্তন করা হয়েছে"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ডায়নামিক"</string>
 </resources>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 8067d04..11c4587 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Primijeni"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Dodirnite da uredite"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Zadrži trenutnu pozadinsku sliku"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Primijeni"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Pregled stila"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Pregled mreže"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Pregled fonta"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, trenutno primijenjeno"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"Opcija <xliff:g id="ID_1">%1$s</xliff:g> se trenutno primjenjuje i pregleda"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"Opcija <xliff:g id="ID_1">%1$s</xliff:g> se trenutno pregleda"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, promijenite odabrano i pregledano"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, ikone: <xliff:g id="ID_2">%2$s</xliff:g>, oblik: <xliff:g id="ID_3">%3$s</xliff:g>, boja: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Zadano"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Prilagođena boja"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Prilagođeni oblik"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Naziv prilagođenog stila"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tamna tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Privremeno onemogućeno zbog uštede baterije"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema je promijenjena"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tematske ikone"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Promjena mreže aplikacije"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Boje pozadinske slike"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Boja pozadinske slike"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Osnovne boje"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Boja je promijenjena"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamički"</string>
 </resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 0c92c78..f9a3a33 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -17,14 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="app_name" msgid="1647136562008520313">"Fons de pantalla i estil"</string>
+    <string name="app_name" msgid="1647136562008520313">"Estil i fons de pantalla"</string>
     <string name="theme_title" msgid="2144932106319405101">"Estil"</string>
     <string name="clock_title" msgid="2126046720254613991">"Rellotge"</string>
     <string name="grid_title" msgid="1688173478777254123">"Quadrícula d\'apps"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplica"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Toca per editar"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Mantén el fons de pantalla actual"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplica"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Previsualització de l\'estil"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Previsualització de quadrícula"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Previsualització de la lletra"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, aplicat actualment"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, aplicada i previsualitzada actualment"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, previsualitzada actualment"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, canvi seleccionat i previsualitzat"</string>
     <string name="theme_description" msgid="3697012391785254635">"Tipus de lletra: <xliff:g id="ID_1">%1$s</xliff:g>; icones: <xliff:g id="ID_2">%2$s</xliff:g>; forma: <xliff:g id="ID_3">%3$s</xliff:g>; color: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Predeterminat"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Tipus de lletra"</string>
@@ -72,10 +72,21 @@
     <string name="clock_preview_content_description" msgid="5460561185905717460">"Previsualització de rellotge <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="something_went_wrong" msgid="529840112449799117">"Vaja! S\'ha produït un error."</string>
     <string name="theme_preview_icons_section_title" msgid="7064768910744000643">"Color/Icones"</string>
-    <string name="style_info_description" msgid="2612473574431003251">"Previsualització de tipus de lletra, icones, forma d\'aplicacions i color"</string>
+    <string name="style_info_description" msgid="2612473574431003251">"Previsualització de font, icones, forma d\'aplicacions i color"</string>
     <string name="accessibility_custom_font_title" msgid="966867359157303705">"Tipus de lletra personalitzat"</string>
     <string name="accessibility_custom_icon_title" msgid="5753297905849062296">"Icona personalitzada"</string>
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Color personalitzat"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma personalitzada"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nom d\'estil personalitzat"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema fosc"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Desactivat temporalment per Estalvi de bateria"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"S\'ha canviat el tema"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Icones temàtiques"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Canvia la quadrícula d\'aplicacions"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Colors del fons"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Color del fons de pantalla"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Colors bàsics"</string>
+    <string name="color_changed" msgid="7029571720331641235">"S\'ha canviat el color"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinàmic"</string>
 </resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 95f6373..3bdbe89 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Použít"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Klepnutím upravte"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Zachovat stávající tapetu"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Použít"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Náhled stylu"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Náhled mřížky"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Náhled písma"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, momentálně použito"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, momentálně použito a v náhledu"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, momentálně v náhledu"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, změnit vybrané s náhledem"</string>
     <string name="theme_description" msgid="3697012391785254635">"Písmo: <xliff:g id="ID_1">%1$s</xliff:g>, ikony: <xliff:g id="ID_2">%2$s</xliff:g>, tvar: <xliff:g id="ID_3">%3$s</xliff:g>, barva: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Výchozí"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Písmo"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Vlastní barva"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Vlastní tvar"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Název vlastního stylu"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tmavý motiv"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Dočasně deaktivováno spořičem baterie"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Motiv byl změněn"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tematické ikony"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Změnit mřížku aplikací"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Barvy tapety"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Barva tapety"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Základní barvy"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Barva byla změněna"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamické"</string>
 </resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 0933732..68fe7b3 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Anvend"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tryk for at redigere"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Behold den aktuelle baggrund"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Anvend"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Forhåndsvisning af stil"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Forhåndsvisning af gitter"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Forhåndsvisning af skrifttype"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, er valgt"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> er valgt og forhåndsvises i øjeblikket"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> forhåndsvises i øjeblikket"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ændringen er valg og forhåndsvises"</string>
     <string name="theme_description" msgid="3697012391785254635">"Skrifttype: <xliff:g id="ID_1">%1$s</xliff:g>, ikoner: <xliff:g id="ID_2">%2$s</xliff:g>, form: <xliff:g id="ID_3">%3$s</xliff:g>, farve: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Standard"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Skrifttype"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Tilpasset farve"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Tilpasset form"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Navn på tilpasset stil"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Mørkt tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Midlertidigt deaktiveret på grund af Batterisparefunktion"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Temaet er ændret"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Temaikoner"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Juster appgitter"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Baggrundsfarver"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Baggrundsfarve"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Standardfarver"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Farven er ændret"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamisk"</string>
 </resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 3d39bc1..c55bffb 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Anwenden"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Zum Bearbeiten tippen"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Aktuellen Hintergrund behalten"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Anwenden"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Designvorschau"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Rastervorschau"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Schriftartvorschau"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, wird aktuell angewendet"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, derzeit angewendet und in der Vorschau"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, derzeit in der Vorschau"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, kann ausgewählt und als Vorschau angesehen werden"</string>
     <string name="theme_description" msgid="3697012391785254635">"Schriftart: <xliff:g id="ID_1">%1$s</xliff:g>, Symbole: <xliff:g id="ID_2">%2$s</xliff:g>, Form: <xliff:g id="ID_3">%3$s</xliff:g>, Farbe: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Standard"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Schriftart"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Benutzerdefinierte Farbe"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Benutzerdefiniertes Format"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Name des benutzerdefinierten Stils"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Dunkles Design"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Wegen Energiesparmodus vorübergehend deaktiviert"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Design geändert"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Symboldesigns"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"App-Raster ändern"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Hintergrundfarben"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Hintergrundfarbe"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Standardfarben"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Farbe geändert"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamisch"</string>
 </resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 29428bd..db4400f 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Εφαρμογή"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Πατήστε για επεξεργασία"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Διατήρηση τρέχουσας ταπετσαρίας"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Εφαρμογή"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Προεπισκόπηση στιλ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Προεπισκόπηση πλέγματος"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Προεπισκόπηση γραμματοσειράς"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"Αυτήν τη στιγμή εφαρμόζεται το θέμα <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"Αυτήν τη στιγμή εφαρμόζεται και εμφανίζεται σε προεπισκόπηση η επιλογή <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"Αυτήν τη στιγμή εμφανίζεται σε προεπισκόπηση η επιλογή <xliff:g id="ID_1">%1$s</xliff:g>"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, η αλλαγή επιλέχθηκε και προβλήθηκε σε προεπισκόπηση"</string>
     <string name="theme_description" msgid="3697012391785254635">"Γραμματοσειρά: <xliff:g id="ID_1">%1$s</xliff:g>, εικονίδια: <xliff:g id="ID_2">%2$s</xliff:g>, σχήμα: <xliff:g id="ID_3">%3$s</xliff:g>, χρώμα: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Προεπιλογή"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Γραμματοσειρά"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Προσαρμοσμένο χρώμα"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Προσαρμοσμένο σχήμα"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Προσαρμοσμένο όνομα στιλ"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Σκούρο θέμα"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Απενεργοποιήθηκε προσωρινά λόγω Εξοικονόμησης μπαταρίας"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Το θέμα άλλαξε"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Θεματικά εικονίδια"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Αλλαγή πλέγματος εφαρμογής"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Χρώματα ταπετσαρίας"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Χρώμα ταπετσαρίας"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Βασικά χρώματα"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Το χρώμα άλλαξε"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Δυναμική"</string>
 </resources>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index bb1141d..1d78ca0 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Apply"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tap to edit"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Keep current wallpaper"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Apply"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Style preview"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Grid preview"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Font preview"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied and previewed"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, currently previewed"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, change selected and previewed"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, icons: <xliff:g id="ID_2">%2$s</xliff:g>, shape: <xliff:g id="ID_3">%3$s</xliff:g>, colour: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Default"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -68,7 +68,7 @@
     <string name="use_style_instead_title" msgid="1578754995763917502">"Use <xliff:g id="ID_1">%1$s</xliff:g> instead?"</string>
     <string name="use_style_instead_body" msgid="3051937045807471496">"The components you chose match the <xliff:g id="ID_1">%1$s</xliff:g> style. Do you want to use <xliff:g id="ID_2">%1$s</xliff:g> instead?"</string>
     <string name="use_style_button" msgid="1754493078383627019">"Use <xliff:g id="ID_1">%1$s</xliff:g>"</string>
-    <string name="no_thanks" msgid="7286616980115687627">"No thanks"</string>
+    <string name="no_thanks" msgid="7286616980115687627">"No, thanks"</string>
     <string name="clock_preview_content_description" msgid="5460561185905717460">"<xliff:g id="ID_1">%1$s</xliff:g> clock preview"</string>
     <string name="something_went_wrong" msgid="529840112449799117">"Oops! Something went wrong."</string>
     <string name="theme_preview_icons_section_title" msgid="7064768910744000643">"Colour/Icons"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Customised colour"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Custom shape"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Custom style name"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Dark theme"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Temporarily disabled due to Battery Saver"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Theme changed"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Themed icons"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Change app grid"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Wallpaper colours"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Wallpaper colour"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Basic colours"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Colour changed"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamic"</string>
 </resources>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index bb1141d..1d78ca0 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Apply"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tap to edit"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Keep current wallpaper"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Apply"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Style preview"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Grid preview"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Font preview"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied and previewed"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, currently previewed"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, change selected and previewed"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, icons: <xliff:g id="ID_2">%2$s</xliff:g>, shape: <xliff:g id="ID_3">%3$s</xliff:g>, colour: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Default"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -68,7 +68,7 @@
     <string name="use_style_instead_title" msgid="1578754995763917502">"Use <xliff:g id="ID_1">%1$s</xliff:g> instead?"</string>
     <string name="use_style_instead_body" msgid="3051937045807471496">"The components you chose match the <xliff:g id="ID_1">%1$s</xliff:g> style. Do you want to use <xliff:g id="ID_2">%1$s</xliff:g> instead?"</string>
     <string name="use_style_button" msgid="1754493078383627019">"Use <xliff:g id="ID_1">%1$s</xliff:g>"</string>
-    <string name="no_thanks" msgid="7286616980115687627">"No thanks"</string>
+    <string name="no_thanks" msgid="7286616980115687627">"No, thanks"</string>
     <string name="clock_preview_content_description" msgid="5460561185905717460">"<xliff:g id="ID_1">%1$s</xliff:g> clock preview"</string>
     <string name="something_went_wrong" msgid="529840112449799117">"Oops! Something went wrong."</string>
     <string name="theme_preview_icons_section_title" msgid="7064768910744000643">"Colour/Icons"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Customised colour"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Custom shape"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Custom style name"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Dark theme"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Temporarily disabled due to Battery Saver"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Theme changed"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Themed icons"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Change app grid"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Wallpaper colours"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Wallpaper colour"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Basic colours"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Colour changed"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamic"</string>
 </resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index bb1141d..1d78ca0 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Apply"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tap to edit"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Keep current wallpaper"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Apply"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Style preview"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Grid preview"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Font preview"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied and previewed"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, currently previewed"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, change selected and previewed"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, icons: <xliff:g id="ID_2">%2$s</xliff:g>, shape: <xliff:g id="ID_3">%3$s</xliff:g>, colour: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Default"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -68,7 +68,7 @@
     <string name="use_style_instead_title" msgid="1578754995763917502">"Use <xliff:g id="ID_1">%1$s</xliff:g> instead?"</string>
     <string name="use_style_instead_body" msgid="3051937045807471496">"The components you chose match the <xliff:g id="ID_1">%1$s</xliff:g> style. Do you want to use <xliff:g id="ID_2">%1$s</xliff:g> instead?"</string>
     <string name="use_style_button" msgid="1754493078383627019">"Use <xliff:g id="ID_1">%1$s</xliff:g>"</string>
-    <string name="no_thanks" msgid="7286616980115687627">"No thanks"</string>
+    <string name="no_thanks" msgid="7286616980115687627">"No, thanks"</string>
     <string name="clock_preview_content_description" msgid="5460561185905717460">"<xliff:g id="ID_1">%1$s</xliff:g> clock preview"</string>
     <string name="something_went_wrong" msgid="529840112449799117">"Oops! Something went wrong."</string>
     <string name="theme_preview_icons_section_title" msgid="7064768910744000643">"Colour/Icons"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Customised colour"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Custom shape"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Custom style name"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Dark theme"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Temporarily disabled due to Battery Saver"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Theme changed"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Themed icons"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Change app grid"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Wallpaper colours"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Wallpaper colour"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Basic colours"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Colour changed"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamic"</string>
 </resources>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index bb1141d..1d78ca0 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Apply"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tap to edit"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Keep current wallpaper"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Apply"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Style preview"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Grid preview"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Font preview"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, currently applied and previewed"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, currently previewed"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, change selected and previewed"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, icons: <xliff:g id="ID_2">%2$s</xliff:g>, shape: <xliff:g id="ID_3">%3$s</xliff:g>, colour: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Default"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -68,7 +68,7 @@
     <string name="use_style_instead_title" msgid="1578754995763917502">"Use <xliff:g id="ID_1">%1$s</xliff:g> instead?"</string>
     <string name="use_style_instead_body" msgid="3051937045807471496">"The components you chose match the <xliff:g id="ID_1">%1$s</xliff:g> style. Do you want to use <xliff:g id="ID_2">%1$s</xliff:g> instead?"</string>
     <string name="use_style_button" msgid="1754493078383627019">"Use <xliff:g id="ID_1">%1$s</xliff:g>"</string>
-    <string name="no_thanks" msgid="7286616980115687627">"No thanks"</string>
+    <string name="no_thanks" msgid="7286616980115687627">"No, thanks"</string>
     <string name="clock_preview_content_description" msgid="5460561185905717460">"<xliff:g id="ID_1">%1$s</xliff:g> clock preview"</string>
     <string name="something_went_wrong" msgid="529840112449799117">"Oops! Something went wrong."</string>
     <string name="theme_preview_icons_section_title" msgid="7064768910744000643">"Colour/Icons"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Customised colour"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Custom shape"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Custom style name"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Dark theme"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Temporarily disabled due to Battery Saver"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Theme changed"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Themed icons"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Change app grid"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Wallpaper colours"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Wallpaper colour"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Basic colours"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Colour changed"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamic"</string>
 </resources>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index 601a8c2..8ed71cd 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‏‎‏‏‏‎‏‎‏‎‏‎‏‏‎‎‎‎‏‎‎‎‎‎‎‎‎‎‎‏‎‎‏‎‎‏‏‎‎‎‎‎‎‎‎‏‏‎‎‎‏‎‏‏‎‏‏‎‏‏‏‎Apply‎‏‎‎‏‎"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‎‎‏‎‏‎‎‏‎‏‎‎‎‏‎‎‎‎‏‏‎‏‎‎‏‏‎‎‎‏‎‏‏‎‏‎‎‎‏‏‏‏‏‏‎‏‎‏‏‏‎‏‏‏‎‎‎‎Tap to edit‎‏‎‎‏‎"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‏‏‏‏‎‎‏‏‎‎‎‏‏‎‏‏‎‏‏‎‎‎‎‎‏‏‎‎‎‏‏‏‏‎‎‏‏‏‏‎‎‎‏‎‎‏‏‎‏‏‏‏‎‎‎‎‎‏‎‏‎Keep current wallpaper‎‏‎‎‏‎"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‏‏‏‎‏‎‎‎‏‏‎‎‎‏‏‏‏‎‏‏‎‎‏‎‎‎‏‎‏‏‏‏‏‎‎‎‏‎‏‎‎‎‎‏‎‏‎‎‎‎‏‏‎‎‎‎‏‎‎‎‎Apply‎‏‎‎‏‎"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‏‎‎‏‏‎‎‎‏‏‏‎‏‏‏‏‏‏‏‏‎‏‎‎‎‎‎‎‎‏‏‎‎‏‏‎‎‏‏‏‎‎‏‏‎‎‎‏‏‎‏‎‎‏‎‏‎‏‏‎‏‎Style preview‎‏‎‎‏‎"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‎‏‎‏‎‏‎‎‎‎‏‎‎‎‏‏‏‏‎‏‏‏‎‎‎‏‏‏‎‏‏‎‏‎‎‏‏‏‏‎‎‎‏‎‏‎‎‏‎‏‎‎‎‏‎‏‏‎‏‎‎Grid preview‎‏‎‎‏‎"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‎‎‏‏‏‏‎‎‎‏‏‏‏‎‎‏‎‎‎‎‏‏‏‎‎‏‏‏‏‎‏‏‎‏‏‏‎‏‏‏‏‎‎‎‏‏‎‎‎‎‎‏‎‎‏‎‎‎‏‏‎Font preview‎‏‎‎‏‎"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‎‏‎‏‏‎‏‏‎‎‏‎‏‏‎‎‏‏‏‏‏‏‏‏‏‎‏‏‎‎‏‎‎‏‏‏‏‎‎‎‎‎‎‏‎‏‎‏‏‎‎‎‏‎‎‏‏‏‏‎‎‎‏‎‎‏‏‎<xliff:g id="ID_1">%1$s</xliff:g>‎‏‎‎‏‏‏‎, currently applied‎‏‎‎‏‎"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‏‎‎‏‎‎‎‎‏‏‎‎‏‎‎‏‎‏‎‏‎‎‏‏‏‎‏‏‎‎‏‎‎‎‎‏‏‎‎‏‎‏‏‏‏‏‎‎‏‎‎‎‎‏‎‏‎‎‎‏‎‎‏‏‎<xliff:g id="ID_1">%1$s</xliff:g>‎‏‎‎‏‏‏‎, currently applied and previewed‎‏‎‎‏‎"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‎‎‎‎‎‎‎‏‏‏‏‎‎‎‎‎‏‎‎‎‎‎‎‎‏‎‎‏‎‎‏‏‏‎‏‏‎‏‎‏‎‏‎‏‏‎‎‎‎‎‎‎‎‏‏‎‏‏‎‏‎‎‏‎‎‏‏‎<xliff:g id="ID_1">%1$s</xliff:g>‎‏‎‎‏‏‏‎, currently previewed‎‏‎‎‏‎"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‏‎‎‎‏‏‎‏‏‎‏‎‎‏‏‏‏‎‏‏‎‎‎‏‎‏‎‎‎‏‏‏‏‏‎‎‎‎‎‎‎‏‎‎‎‏‏‏‎‎‎‎‎‎‎‎‏‎‎‏‏‎<xliff:g id="ID_1">%1$s</xliff:g>‎‏‎‎‏‏‏‎, change selected and previewed‎‏‎‎‏‎"</string>
     <string name="theme_description" msgid="3697012391785254635">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‎‎‏‏‎‏‎‎‏‏‏‎‎‏‏‎‏‏‎‏‎‎‏‎‏‏‏‎‏‏‎‎‎‏‏‎‏‎‎‏‎‎‏‏‏‏‎‎‏‏‏‎‏‏‏‎‏‎‏‏‎Font: ‎‏‎‎‏‏‎<xliff:g id="ID_1">%1$s</xliff:g>‎‏‎‎‏‏‏‎, icons: ‎‏‎‎‏‏‎<xliff:g id="ID_2">%2$s</xliff:g>‎‏‎‎‏‏‏‎, shape: ‎‏‎‎‏‏‎<xliff:g id="ID_3">%3$s</xliff:g>‎‏‎‎‏‏‏‎, color: ‎‏‎‎‏‏‎<xliff:g id="ID_4">%4$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‎‎‏‏‎‏‏‏‎‏‏‏‏‏‎‏‎‎‎‏‏‎‎‏‎‎‎‏‏‎‎‎‏‏‎‏‎‎‎‎‎‏‎‎‎‎‏‎‎‎‎‎‎‏‎‎‏‏‎‏‎Default‎‏‎‎‏‎"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‏‏‎‏‏‏‏‏‏‎‎‎‎‏‎‏‏‏‏‏‎‏‏‎‎‎‎‎‏‎‏‏‏‏‎‎‏‏‏‏‏‏‎‎‏‏‏‎‏‎‎‎‎‎‏‎‏‏‏‎‎Font‎‏‎‎‏‎"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‏‎‎‏‎‎‏‏‏‏‎‎‎‏‎‎‎‏‎‎‎‏‏‎‏‏‏‎‎‎‏‏‎‏‎‎‏‎‏‏‏‎‏‏‎‏‏‎‏‎‏‎‎‎‎‏‎‏‏‏‎Custom color‎‏‎‎‏‎"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‏‎‏‎‏‏‏‏‏‎‎‏‏‏‎‎‎‏‎‎‎‏‏‏‏‎‎‎‏‎‎‏‎‎‏‏‏‎‏‏‎‏‏‎‎‏‏‏‎‏‏‏‏‎‏‏‏‎‎‏‎Custom shape‎‏‎‎‏‎"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‎‎‎‏‎‎‎‎‎‎‎‎‏‏‏‏‏‎‏‎‏‏‏‎‏‎‏‏‏‏‎‏‎‎‏‏‏‎‎‏‎‎‏‎‎‎‏‏‎‎‏‏‎‏‏‏‏‎‎Custom style name‎‏‎‎‏‎"</string>
+    <string name="mode_title" msgid="2394873501427436055">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‎‎‎‏‎‎‏‏‏‏‎‎‎‏‎‎‏‏‎‎‏‏‎‎‎‎‏‎‏‏‎‎‏‏‏‎‏‎‎‏‎‏‎‎‎‎‎‎‏‎‏‎‎‎‎‏‎‏‏‏‎Dark theme‎‏‎‎‏‎"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‏‏‏‏‎‏‎‎‎‎‎‏‎‎‏‎‎‏‏‎‏‎‎‎‎‎‏‏‎‏‎‎‏‏‎‏‏‏‎‏‎‎‏‎‎‎‎‎‎‎‎‎Temporarily disabled due to Battery Saver‎‏‎‎‏‎"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‏‏‏‏‎‎‏‎‎‎‏‎‏‏‎‎‏‏‎‏‎‏‎‏‏‏‏‎‎‏‎‏‎‎‏‏‎‏‏‏‏‏‏‏‏‎‎‏‎‏‎‏‏‏‎‏‏‎‎‎‎Theme changed‎‏‎‎‏‎"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‎‏‎‏‎‏‏‏‏‎‏‏‎‎‎‏‎‏‎‎‎‎‎‎‎‏‎‎‏‎‏‏‏‎‎‎‎‏‏‎‎‎‎‏‏‎‎‎‏‎‎‎‎‏‎‎‏‏‏‎‎Themed icons‎‏‎‎‏‎"</string>
+    <string name="beta_title" msgid="8703819523760746458">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‎‎‏‏‎‎‏‎‏‎‎‎‏‎‏‏‎‏‏‎‏‏‏‏‎‏‏‏‏‏‎‏‏‎‏‏‎‏‏‏‏‎‎‏‏‎‏‏‏‏‏‏‎‏‏‎‏‎‎Beta‎‏‎‎‏‎"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‎‎‎‏‏‏‎‏‏‏‎‏‎‎‏‎‏‏‎‏‏‏‎‏‎‎‎‏‏‏‎‎‏‎‎‎‏‏‏‏‎‏‏‎‎‎‏‏‎‎‏‏‏‏‏‏‎Change app grid‎‏‎‎‏‎"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‎‎‎‎‎‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‎‏‎‎‎‎‎‏‎‏‎‎‎‎‎‏‏‎‎‏‎‏‎‏‏‏‎‏‎‏‏‏‎‎‎‎‎‎‎Wallpaper colors‎‏‎‎‏‎"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‏‎‏‏‏‎‏‏‏‏‏‎‏‏‎‏‏‎‎‎‏‏‏‏‏‏‏‎‏‏‏‎‎‎‎‎‏‎‎‏‏‏‎‎‎‎‏‎‎‎‎‏‎‏‏‎‏‎‎Wallpaper color‎‏‎‎‏‎"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‏‎‏‏‎‏‏‏‏‏‎‎‎‎‎‎‏‎‏‏‎‏‎‎‎‏‏‎‏‏‎‎‎‏‏‎‎‎‎‎‏‏‎‎‎‎‏‏‏‎‏‏‏‎‏‎‎‎‏‎‎Basic colors‎‏‎‎‏‎"</string>
+    <string name="color_changed" msgid="7029571720331641235">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‎‎‎‏‏‎‎‎‏‏‏‎‎‎‎‎‏‏‏‎‎‎‏‏‏‏‎‎‎‏‎‎‎‎‎‏‎‏‏‏‏‏‏‏‏‏‎‎‎‎‎‏‏‎‎‏‎‎‏‏‎Color changed‎‏‎‎‏‎"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‎‏‎‏‎‎‎‏‏‎‎‎‎‏‏‏‎‏‏‎‏‏‏‏‏‎‏‎‏‏‎‏‎‎‎‏‎‏‏‎‏‎‏‏‏‏‎‎‎‏‏‏‎‎‎‏‏‎‏‎Dynamic‎‏‎‎‏‎"</string>
 </resources>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 6e455e9..0eb30c7 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplicar"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Presiona para editar"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Conservar fondo de pantalla actual"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplicar"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Vista previa del estilo"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Vista previa de la cuadrícula"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Vista previa de fuente"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> (aplicado actualmente)"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> (opción aplicada y vista previa en curso)"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> (vista previa en curso)"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>; cambiar opción seleccionada y en vista previa"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fuente: <xliff:g id="ID_1">%1$s</xliff:g>, íconos: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, color: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Predet."</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fuente"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Color personalizado"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma personalizada"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nombre de estilo personalizado"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema oscuro"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Se inhabilitó temporalmente debido al Ahorro de batería"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Se cambió el tema"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Íconos temáticos"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Cambiar cuadrícula de apps"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Colores del fondo"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Color del fondo de pantalla"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Colores básicos"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Se cambió el color"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinámico"</string>
 </resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 09fd93e..c45e390 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplicar"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Toca para editar"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Mantener fondo de pantalla actual"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplicar"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Previsualizar estilo"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Vista previa de cuadrícula"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Vista previa de fuente"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"Se ha aplicado <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> (opción aplicada y vista previa en curso)"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> (vista previa en curso)"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, cambio seleccionado y con vista previa"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fuente: <xliff:g id="ID_1">%1$s</xliff:g>; iconos: <xliff:g id="ID_2">%2$s</xliff:g>; forma: <xliff:g id="ID_3">%3$s</xliff:g>; color: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Predeterminado"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fuente"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Color personalizado"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma personalizada"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nombre de estilo personalizado"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema oscuro"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Inhabilitado temporalmente debido a Ahorro de batería"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema cambiado"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Iconos con tema"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Cambiar cuadrícula de aplicaciones"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Colores del fondo"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Color del fondo de pantalla"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Colores básicos"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Color cambiado"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinámico"</string>
 </resources>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index 706f889..2a6e051 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Rakenda"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Puudutage muutmiseks"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Säilita praegune taustapilt"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Rakenda"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Stiili eelvaade"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Ruudustiku eelvaade"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Fondi eelvaade"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, praegu rakendatud"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, praegu rakendatakse ja kuvatakse eelvaadet"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, praegu kuvatakse eelvaadet"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, muudatus on valitud ja kuvatud on selle eelvaade"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, ikoonid: <xliff:g id="ID_2">%2$s</xliff:g>, kuju: <xliff:g id="ID_3">%3$s</xliff:g>, värv: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Vaikeseade"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Kohandatud värv"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Kohandatud kuju"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Kohandatud stiili nimi"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tume teema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Akusäästja tõttu ajutiselt keelatud"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Teema on muudetud"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Temaatilised ikoonid"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beeta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Rakenduste ruudustiku muutmine"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Taustapildi värvid"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Taustapildi värv"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Põhivärvid"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Värvi muudeti"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dünaamiline"</string>
 </resources>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index ea02bb7..7944b93 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplikatu"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Sakatu editatzeko"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Utzi bere horretan horma-papera"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplikatu"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Estiloaren aurrebista"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Saretaren aurrebista"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Letraren aurrebista"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> (aplikatuta dago)"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> (aplikatuta eta aurrebista gisa ikusgai)"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> (aurrebista gisa ikusgai)"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, aldatu hautatuta dagoena (aurreikusiten ari zarena)"</string>
     <string name="theme_description" msgid="3697012391785254635">"Letra: <xliff:g id="ID_1">%1$s</xliff:g>, ikonoak: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, kolorea: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Lehenetsia"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Letra"</string>
@@ -70,7 +70,7 @@
     <string name="use_style_button" msgid="1754493078383627019">"Erabili <xliff:g id="ID_1">%1$s</xliff:g> estiloa"</string>
     <string name="no_thanks" msgid="7286616980115687627">"Ez"</string>
     <string name="clock_preview_content_description" msgid="5460561185905717460">"<xliff:g id="ID_1">%1$s</xliff:g> erlojuaren aurrebista"</string>
-    <string name="something_went_wrong" msgid="529840112449799117">"Arazoren bat izan da."</string>
+    <string name="something_went_wrong" msgid="529840112449799117">"Arazo bat izan da."</string>
     <string name="theme_preview_icons_section_title" msgid="7064768910744000643">"Koloreak / Ikonoak"</string>
     <string name="style_info_description" msgid="2612473574431003251">"Letra-tipoen, ikonoen, aplikazio-formen eta koloreen aurrebista"</string>
     <string name="accessibility_custom_font_title" msgid="966867359157303705">"Letra pertsonalizatua"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Kolore pertsonalizatua"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma pertsonalizatua"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Estilo pertsonalizatuaren izena"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Gai iluna"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Aldi baterako desgaituta, bateria-aurrezlea dela eta"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Aldatu da gaia"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ikono gaidunak"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Aldatu aplikazioen sareta"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Horma-papereko koloreak"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Horma-paperaren kolorea"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Oinarrizko koloreak"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Aldatu da kolorea"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamikoa"</string>
 </resources>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index f269808..4a5f763 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"اعمال"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"برای ویرایش ضربه بزنید"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"حفظ کاغذدیواری فعلی"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"اعمال"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"پیش‌نمایش سبک"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"پیش‌نمایش جدول"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"پیش‌نمایش قلم"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>، درحال‌حاضر اعمال شده است"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>، درحال‌حاضر اعمال و پیش‌نمایش شده است"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>، درحال‌حاضر پیش‌نمایش شده است"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>، تغییر و پیش‌نمایش مورد انتخاب‌شده"</string>
     <string name="theme_description" msgid="3697012391785254635">"قلم: <xliff:g id="ID_1">%1$s</xliff:g>، نمادها: <xliff:g id="ID_2">%2$s</xliff:g>، شکل: <xliff:g id="ID_3">%3$s</xliff:g>، رنگ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"پیش‌فرض"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"قلم"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"رنگ سفارشی"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"شکل سفارشی"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"نام سبک سفارشی"</string>
+    <string name="mode_title" msgid="2394873501427436055">"زمینه تیره"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"به‌دلیل روشن بودن «بهینه‌سازی باتری» موقتاً غیرفعال شده است"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"زمینه تغییر کرد"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"نمادهای دارای زمینه"</string>
+    <string name="beta_title" msgid="8703819523760746458">"بتا"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"تغییر جدول برنامه"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"رنگ‌های کاغذدیواری"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"رنگ کاغذدیواری"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"رنگ‌های اصلی"</string>
+    <string name="color_changed" msgid="7029571720331641235">"رنگ تغییر کرد"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"پویا"</string>
 </resources>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 7ce0515..37f57b8 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Käytä"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Muokkaa napauttamalla"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Säilytä nykyinen taustakuva"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Käytä"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Tyylin esikatselu"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Ruudukon esikatselu"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Fontin esikatselu"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, käytössä tällä hetkellä"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, käytössä ja esikatselussa tällä hetkellä"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, esikatselussa tällä hetkellä"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, vaihda valintaa ja esikatselua"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fontti: <xliff:g id="ID_1">%1$s</xliff:g>, kuvakkeet: <xliff:g id="ID_2">%2$s</xliff:g>, muoto: <xliff:g id="ID_3">%3$s</xliff:g>, väri: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Oletus"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fontti"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Oma väri"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Oma muoto"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Oman tyylin nimi"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tumma teema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Tilapäisesti pois käytöstä virransäästön takia"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Teema vaihdettu"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Kuvakkeiden teemat"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Muuta sovellusruudukkoa"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Taustakuvan värit"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Taustakuvan väri"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Perusvärit"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Väri vaihdettu"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynaaminen"</string>
 </resources>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 2d9afaa..c271e5c 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Appliquer"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Toucher pour modifier"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Garder le fond d\'écran actuel"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Appliquer"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Aperçu du style"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Aperçu de la grille"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Aperçu de la police"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"L\'option <xliff:g id="ID_1">%1$s</xliff:g> est présentement active"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"Option appliquée et en cours d\'aperçu : <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"Option en cours d\'aperçu : <xliff:g id="ID_1">%1$s</xliff:g>"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"Modification sélectionnée et en cours d\'aperçu : <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="theme_description" msgid="3697012391785254635">"Police : <xliff:g id="ID_1">%1$s</xliff:g>, icônes : <xliff:g id="ID_2">%2$s</xliff:g>, forme : <xliff:g id="ID_3">%3$s</xliff:g>, couleur : <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Par défaut"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Police"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Couleur personnalisée"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forme personnalisée"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nom du style personnalisé"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Thème sombre"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Temporairement désactivé par l\'économiseur de pile"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Thème modifié"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Icônes du thème"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Bêta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Modifiez la grille d\'applications"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Couleurs fond d\'écran"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Couleur du fond d\'écran"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Couleurs de base"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Couleur changée"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamique"</string>
 </resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 86fb5dd..05dfdfd 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -20,11 +20,10 @@
     <string name="app_name" msgid="1647136562008520313">"Fond d\'écran et style"</string>
     <string name="theme_title" msgid="2144932106319405101">"Style"</string>
     <string name="clock_title" msgid="2126046720254613991">"Horloge"</string>
-    <string name="grid_title" msgid="1688173478777254123">"Grille appli"</string>
+    <string name="grid_title" msgid="1688173478777254123">"Grille d\'applis"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Appliquer"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Appuyer pour modifier"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Conserver le fond d\'écran actuel"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Appliquer"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Aperçu du style"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Aperçu de la grille"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Aperçu de la police"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, option appliquée actuellement"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> (option actuellement appliquée et prévisualisée)"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> (option actuellement prévisualisée)"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, changer l\'option appliquée et prévisualisée"</string>
     <string name="theme_description" msgid="3697012391785254635">"Police : <xliff:g id="ID_1">%1$s</xliff:g>, icônes : <xliff:g id="ID_2">%2$s</xliff:g>, forme : <xliff:g id="ID_3">%3$s</xliff:g>, couleur : <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Par défaut"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Police"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Couleur personnalisée"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forme personnalisée"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nom du style personnalisé"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Thème sombre"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Temporairement désactivé par l\'économiseur de batterie"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Thème modifié"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Icônes à thème"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Bêta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Modifier la grille d\'applis"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Couleurs du fond"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Couleur du fond d\'écran"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Couleurs de base"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Couleur modifiée"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamique"</string>
 </resources>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 28823bc..5b90944 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -17,14 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="app_name" msgid="1647136562008520313">"Fondo de pantalla e estilo"</string>
+    <string name="app_name" msgid="1647136562008520313">"Estilo e fondo de pantalla"</string>
     <string name="theme_title" msgid="2144932106319405101">"Estilo"</string>
     <string name="clock_title" msgid="2126046720254613991">"Reloxo"</string>
     <string name="grid_title" msgid="1688173478777254123">"Grade de apps"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplicar"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Toca para editar"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Conservar fondo de pantalla actual"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplicar"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Vista previa do estilo"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Vista previa da grade"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Vista previa do tipo de letra"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, opción aplicada actualmente"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> (opción aplicada e en vista previa actualmente)"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> (opción en vista previa actualmente)"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, cambiar opción seleccionada e en vista previa"</string>
     <string name="theme_description" msgid="3697012391785254635">"Tipo de letra: <xliff:g id="ID_1">%1$s</xliff:g>, iconas: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, cor: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Predeterm."</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Tipo de letra"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Cor personalizada"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma personalizada"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nome de estilo personalizado"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema escuro"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Desactivouse temporalmente debido ao Aforro de batería"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Cambiouse o tema"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tema das iconas"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Cambia a grade de aplicacións"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Cores do fondo"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Cor do fondo de pantalla"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Cores básicas"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Cor modificada"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinámica"</string>
 </resources>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 9013e4e..95af51f 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"વૉલપેપર અને શૈલી"</string>
     <string name="theme_title" msgid="2144932106319405101">"શૈલી"</string>
     <string name="clock_title" msgid="2126046720254613991">"ઘડિયાળ"</string>
     <string name="grid_title" msgid="1688173478777254123">"ઍપ ગ્રિડ"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"લાગુ કરો"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ફેરફાર કરવા માટે ટૅપ કરો"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"હાલનું વૉલપેપર રાખો"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"લાગુ કરો"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"શૈલીનો પ્રીવ્યૂ કરો"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ગ્રિડનો પ્રીવ્યૂ કરો"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ફોન્ટનો પ્રીવ્યૂ"</string>
@@ -35,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, હાલમાં લાગુ કરેલી થીમ"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>ને, હાલમાં લાગુ કરીને પ્રીવ્યૂ કરવામાં આવી રહ્યું છે"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>ને, હાલમાં પ્રીવ્યૂ કરવામાં આવી રહ્યું છે"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, પસંદ કરેલા અને પ્રીવ્યૂ કરેલા વિકલ્પમાં ફેરફાર કરો"</string>
     <string name="theme_description" msgid="3697012391785254635">"ફોન્ટ: <xliff:g id="ID_1">%1$s</xliff:g>, આઇકન: <xliff:g id="ID_2">%2$s</xliff:g>, આકાર: <xliff:g id="ID_3">%3$s</xliff:g>, રંગ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ડિફૉલ્ટ"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ફોન્ટ"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"કસ્ટમ રંગ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"કસ્ટમ આકાર"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"કસ્ટમ શૈલી નામ"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ઘેરી થીમ"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"બૅટરી સેવરના લીધે હંગામીરૂપે બંધ કર્યું"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"થીમ બદલી છે"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"થીમવાળા આઇકન"</string>
+    <string name="beta_title" msgid="8703819523760746458">"બીટા"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ઍપ ગ્રિડ બદલો"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"વૉલપેપરના રંગો"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"વૉલપેપરનો રંગ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"મૂળભૂત રંગો"</string>
+    <string name="color_changed" msgid="7029571720331641235">"રંગ બદલ્યો છે"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ડાઇનૅમિક"</string>
 </resources>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index a43d377..a207bfe 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"लागू करें"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"बदलाव करने के लिए टैप करें"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"मौजूदा वॉलपेपर बनाए रखें"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"लागू करें"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"थीम की झलक देखें"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ग्रिड की झलक देखें"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"फ़ॉन्ट की झलक देखें"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, इस समय लागू है"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> को लागू कर दिया गया है और इसकी झलक देखी जा रही है"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> की झलक अभी देखी जा रही है"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g> में बदलाव करें, जिसे चुना गया है और जिसकी झलक देखी गई है"</string>
     <string name="theme_description" msgid="3697012391785254635">"फ़ॉन्ट: <xliff:g id="ID_1">%1$s</xliff:g>, आइकॉन: <xliff:g id="ID_2">%2$s</xliff:g>, बनावट: <xliff:g id="ID_3">%3$s</xliff:g>, रंग: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"डिफ़ॉल्ट"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"फ़ॉन्ट"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"पसंद के मुताबिक रंग"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"पसंद के मुताबिक आकार"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"पसंद के मुताबिक बनाई गई स्टाइल का नाम"</string>
+    <string name="mode_title" msgid="2394873501427436055">"गहरे रंग वाली थीम"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"बैटरी सेवर मोड चालू होने की वजह से, इस सुविधा को कुछ समय के लिए बंद कर दिया गया है"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"थीम को बदला गया"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"थीम वाले आइकॉन"</string>
+    <string name="beta_title" msgid="8703819523760746458">"बीटा"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ऐप्लिकेशन ग्रिड बदलें"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"वॉलपेपर के रंग"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"वॉलपेपर का रंग"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"सामान्य रंग"</string>
+    <string name="color_changed" msgid="7029571720331641235">"रंग बदल दिया गया है"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"डाइनैमिक"</string>
 </resources>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 74522b5..b603fa6 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Primijeni"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Dodirnite da biste uredili"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Zadrži trenutačnu pozadinu"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Primijeni"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Pregled stila"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Pregled rešetke"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Pregled fonta"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, trenutačno primijenjeno"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, trenutačno se primjenjuje i pregledava"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, trenutačno se pregledava"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, izmjena je odabrana i pregledana"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, ikone: <xliff:g id="ID_2">%2$s</xliff:g>, oblik: <xliff:g id="ID_3">%3$s</xliff:g>, boja: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Zadano"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Prilagođena boja"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Prilagođeni oblik"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Naziv prilagođenog stila"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tamna tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Privremeno onemogućeno zbog štednje baterije"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema je promijenjena"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tematske ikone"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Promjena rešetke aplikacije"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Boje pozadine"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Boja pozadine"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Osnovne boje"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Promijenjena boja"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamično"</string>
 </resources>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 9faac54..620d36c 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Alkalmaz"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Koppintson a szerkesztéshez"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Jelenlegi háttérkép megtartása"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Alkalmaz"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Stílus előnézete"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Rács előnézete"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Betűtípus előnézete"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, jelenleg érvényben van"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, alkalmazva és előnézet folyamatban"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, előnézet folyamatban"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, kiválasztás és előnézet módosítása"</string>
     <string name="theme_description" msgid="3697012391785254635">"Betűtípus: <xliff:g id="ID_1">%1$s</xliff:g>, ikonok: <xliff:g id="ID_2">%2$s</xliff:g>, alak: <xliff:g id="ID_3">%3$s</xliff:g>, szín: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Alap"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Betűtípus"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Egyéni szín"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Egyéni alak"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Egyéni stílusnév"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Sötét téma"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Átmenetileg kikapcsolva az Akkumulátorkímélő mód miatt"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Téma módosítva"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tematikus ikonok"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Béta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Alkalmazásrács módosítása"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Háttérképszínek"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Háttérkép színe"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Alapszínek"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Szín módosítva"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamikus"</string>
 </resources>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index 3ff37bd..7c7d059 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Կիրառել"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Հպեք՝ փոփոխելու համար"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Պահպանել ընթացիկ պաստառը"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Կիրառել"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Ոճի նախադիտում"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Ցանցի նախադիտում"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Տառատեսակի նախադիտում"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> (այժմ կիրառվում է)"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, այժմ կիրառվում և ցուցադրվում է"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, այժմ ցուցադրվում է"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, փոփոխությունն ընտրված է, և բացված է նախադիտումը"</string>
     <string name="theme_description" msgid="3697012391785254635">"Տառատեսակ՝ <xliff:g id="ID_1">%1$s</xliff:g>, պատկերակներ՝ <xliff:g id="ID_2">%2$s</xliff:g>, ձև՝ <xliff:g id="ID_3">%3$s</xliff:g>, գույն՝ <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Կանխադրված"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Տառատեսակ"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Հատուկ գույն"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Հատուկ ձևապատկեր"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Հատուկ ոճի անվանումը"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Մուգ թեմա"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Ժամանակավորապես անջատվել է մարտկոցի տնտեսման համար"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Թեման փոխվեց"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Թեմատիկ պատկերակներ"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Բետա"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Փոխել հավելվածների ցանցը"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Պաստառի գույներ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Պաստառի գույն"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Հիմնական գույներ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Գույնը փոխվեց"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Դինամիկ"</string>
 </resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index e80416a..7e48536 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Terapkan"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Ketuk untuk mengedit"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Pertahankan wallpaper saat ini"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Terapkan"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Pratinjau gaya"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Pratinjau petak"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Pratinjau font"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, saat ini diterapkan"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, saat ini diterapkan dan dilihat pratinjaunya"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, saat ini dilihat pratinjaunya"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, perubahan dipilih dan dilihat pratinjaunya"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, ikon: <xliff:g id="ID_2">%2$s</xliff:g>, bentuk: <xliff:g id="ID_3">%3$s</xliff:g>, warna: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Default"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Warna khusus"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Bentuk khusus"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nama gaya khusus"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema gelap"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Dinonaktifkan sementara karena fitur Penghemat Baterai"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema diubah"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ikon bertema"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Ubah petak aplikasi"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Warna wallpaper"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Warna wallpaper"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Warna dasar"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Warna diubah"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamis"</string>
 </resources>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index 0b21ddd..9312a5c 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Nota"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Ýttu til að breyta"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Halda núverandi veggfóðri"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Nota"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Forskoðun stíls"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Forskoðun hnitanets"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Forskoðun leturgerðar"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, notaður"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, í notkun og forskoðun"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, í forskoðun"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, breyta vali og forskoðun"</string>
     <string name="theme_description" msgid="3697012391785254635">"Leturgerð: <xliff:g id="ID_1">%1$s</xliff:g>, tákn: <xliff:g id="ID_2">%2$s</xliff:g>, form: <xliff:g id="ID_3">%3$s</xliff:g>, litur: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Sjálfgefið"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Leturgerð"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Sérsniðinn litur"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Sérsniðið form"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Sérsniðið stílheiti"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Dökkt þema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Slökkt tímabundið vegna rafhlöðusparnaðar"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Þema var breytt"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Þematákn"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Breyta forritatöflu"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Veggfóðurslitir"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Veggfóðurslitur"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Grunnlitir"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Lit breytt"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Breytilegt"</string>
 </resources>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index e0b2c28..08df999 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Applica"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tocca per modificare"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Mantieni lo sfondo corrente"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Applica"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Anteprima stile"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Anteprima griglia"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Anteprima carattere"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, attualmente applicata"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, attualmente applicata e visualizzata in anteprima"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, attualmente visualizzata in anteprima"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, modifica selezionata e visualizzata in anteprima"</string>
     <string name="theme_description" msgid="3697012391785254635">"Carattere: <xliff:g id="ID_1">%1$s</xliff:g>, icone: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, colore: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Predef."</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Carattere"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Colore personalizzato"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma personalizzata"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nome dello stile personalizzato"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema scuro"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Opzione disattivata temporaneamente per risparmio energetico"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema modificato"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Icone a tema"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Cambia griglia di app"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Colori di sfondo"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Colore dello sfondo"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Colori di base"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Colore modificato"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamica"</string>
 </resources>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 2f8f9c8..5d9e2d9 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -20,11 +20,10 @@
     <string name="app_name" msgid="1647136562008520313">"טפט וסגנון"</string>
     <string name="theme_title" msgid="2144932106319405101">"סגנון"</string>
     <string name="clock_title" msgid="2126046720254613991">"שעון"</string>
-    <string name="grid_title" msgid="1688173478777254123">"רשת האפליקציות"</string>
+    <string name="grid_title" msgid="1688173478777254123">"תצוגת האפליקציות"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"אישור"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"יש להקיש כדי לערוך"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"שמירת הטפט הנוכחי"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"אישור"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"תצוגה מקדימה של הסגנון"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"תצוגה מקדימה של הרשת"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"תצוגה מקדימה של הגופן"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, מוחלת כרגע"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, בהחלה ובתצוגה מקדימה כעת"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, בתצוגה מקדימה כעת"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, שינוי האפשרות שנבחרה ומוצגת בתצוגה המקדימה"</string>
     <string name="theme_description" msgid="3697012391785254635">"גופן: <xliff:g id="ID_1">%1$s</xliff:g>, סמלים: <xliff:g id="ID_2">%2$s</xliff:g>, צורה: <xliff:g id="ID_3">%3$s</xliff:g>, צבע: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ברירת מחדל"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"גופן"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"צבע מותאם אישית"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"צורה מותאמת אישית"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"שם סגנון מותאם אישית"</string>
+    <string name="mode_title" msgid="2394873501427436055">"עיצוב כהה"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"מושבת זמנית כי הופעל מצב \'חיסכון בסוללה\'"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"העיצוב השתנה"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"סמלים מעוצבים"</string>
+    <string name="beta_title" msgid="8703819523760746458">"בטא"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"שינוי רשת האפליקציות"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"צבעי הטפט"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"צבע הטפט"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"הצבעים הבסיסיים"</string>
+    <string name="color_changed" msgid="7029571720331641235">"הצבע השתנה"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"דינמי"</string>
 </resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index d687419..f6a20d3 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"適用"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"タップして編集"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"現在の壁紙を保持"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"適用"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"スタイルのプレビュー"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"グリッドのプレビュー"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"フォントのプレビュー"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>（現在適用中）"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>（現在、適用してプレビュー中）"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>（現在、プレビュー中）"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>、選択対象とプレビュー対象を変更"</string>
     <string name="theme_description" msgid="3697012391785254635">"フォント: <xliff:g id="ID_1">%1$s</xliff:g>、アイコン: <xliff:g id="ID_2">%2$s</xliff:g>、形状: <xliff:g id="ID_3">%3$s</xliff:g>、色: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"デフォルト"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"フォント"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"カスタム色"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"カスタムの形状"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"カスタム スタイル名"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ダークモード"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"バッテリー セーバーにより一時的に無効になりました"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"テーマを変更しました"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"テーマアイコン"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ベータ版"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"アプリグリッドを変更します"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"壁紙の色"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"壁紙の色"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"基本の色"</string>
+    <string name="color_changed" msgid="7029571720331641235">"色を変更しました"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"動的"</string>
 </resources>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index bfb07db..7fb2f96 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"მისადაგება"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"შეეხეთ რედაქტირებისთვის"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"ამჟამინდელი ფონის შენარჩუნება"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"მისადაგება"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"სტილის გადახედვა"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ბადის გადახედვა"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"შრიფტის გადახედვა"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, ამჟამად მისადაგებული"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, ამჟამად მისადაგებულია და გადახედვის პროცესშია"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, გადახედვის პროცესშია"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, შეცვალეთ არჩეული და გადახედილი"</string>
     <string name="theme_description" msgid="3697012391785254635">"შრიფტი: <xliff:g id="ID_1">%1$s</xliff:g>, ხატულები: <xliff:g id="ID_2">%2$s</xliff:g>, ფორმა: <xliff:g id="ID_3">%3$s</xliff:g>, ფერი: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ნაგულისხ."</string>
     <string name="preview_name_font" msgid="4465423899630037038">"შრიფტი"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"მორგებული ფერი"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"მორგებული ფიგურა"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"მორგებული სტილის სახელი"</string>
+    <string name="mode_title" msgid="2394873501427436055">"მუქი თემა"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ბატარეის დამზოგის გამო დროებით გათიშულია"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"თემა შეიცვალა"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"თემატური ხატულები"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ბეტა"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"აპების ბადის შეცვლა"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ფონის ფერები"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ფონის ფერი"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"ძირითადი ფერები"</string>
+    <string name="color_changed" msgid="7029571720331641235">"ფერი შეიცვალა"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"დინამიკური"</string>
 </resources>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index a5a53f8..c62d6a0 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Қолдану"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Өзгерту үшін түртіңіз"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Қазіргі тұсқағазды қалдыру"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Қолдану"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Стильді алдын ала қарау"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Торды алдын ала қарау"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Қаріпті алдын ала қарау"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, қазір қосулы"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, қазір қолданылды және алдын ала қаралды"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, қазір алдын ала қаралды"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, өзгертілді және алдын ала қаралды."</string>
     <string name="theme_description" msgid="3697012391785254635">"Қарпі: <xliff:g id="ID_1">%1$s</xliff:g>, белгішелері: <xliff:g id="ID_2">%2$s</xliff:g>, пішіні: <xliff:g id="ID_3">%3$s</xliff:g>, түсі: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Әдепкі"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Қаріп"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Арнаулы түс"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Арнаулы пішін"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Арнаулы стиль атауы"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Қараңғы режим"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Батареяны үнемдеу режиміне байланысты уақытша өшірілген."</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Тақырып өзгертілді."</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Тақырыптық белгішелер"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Қолданбалар торын өзгерту"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Тұсқағаз түстері"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Тұсқағаз түсі"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Негізгі түстер"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Түс өзгертілді."</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамикалық"</string>
 </resources>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index b55a72a..02080a7 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"ប្រើ"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ចុច ដើម្បី​កែ"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"រក្សាទុក​ផ្ទាំងរូបភាព​បច្ចុប្បន្ន"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"ប្រើ"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"ការមើល​រចនាប័ទ្មសាកល្បង"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ការមើល​ក្រឡាសាកល្បង"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ការមើលពុម្ព​អក្សរសាកល្បង"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> ត្រូវបានប្រើ​បច្ចុប្បន្ននេះ"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> កំពុងត្រូវបានអនុវត្ត និង​មើលសាកល្បង​បច្ចុប្បន្ននេះ"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> កំពុងត្រូវបាន​មើលសាកល្បង​បច្ចុប្បន្ននេះ"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ផ្លាស់ប្ដូរអ្វីដែលបានជ្រើសរើស និងបានមើលសាកល្បង"</string>
     <string name="theme_description" msgid="3697012391785254635">"ពុម្ព​អក្សរ៖ <xliff:g id="ID_1">%1$s</xliff:g>, រូបតំណាង៖ <xliff:g id="ID_2">%2$s</xliff:g>, រូបរាង៖ <xliff:g id="ID_3">%3$s</xliff:g>, ពណ៌៖ <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"លំនាំដើម"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ពុម្ពអក្សរ"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"ពណ៌​ផ្ទាល់ខ្លួន"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"រូបរាង​ផ្ទាល់ខ្លួន"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"ឈ្មោះ​រចនាប័ទ្ម​ផ្ទាល់ខ្លួន"</string>
+    <string name="mode_title" msgid="2394873501427436055">"​រចនាប័ទ្ម​ងងឹត"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"បានបិទ​ជា​បណ្តោះអាសន្ន ដោយសារ​មុខងារ​សន្សំ​ថ្ម"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"បាន​ផ្លាស់ប្ដូរ​រចនាប័ទ្ម"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"រូបតំណាងប្ដូររចនាប័ទ្ម"</string>
+    <string name="beta_title" msgid="8703819523760746458">"បេតា"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ប្ដូរ​ក្រឡា​កម្មវិធី"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ពណ៌ផ្ទាំងរូបភាព"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ពណ៌​ផ្ទាំងរូបភាព"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"ពណ៌​លំនាំដើម"</string>
+    <string name="color_changed" msgid="7029571720331641235">"បាន​ផ្លាស់ប្ដូរ​ពណ៌"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ឌីណាមិក"</string>
 </resources>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index ce55ece..95d8df3 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"ವಾಲ್‌ಪೇಪರ್ ಮತ್ತು ಶೈಲಿ"</string>
     <string name="theme_title" msgid="2144932106319405101">"ಶೈಲಿ"</string>
     <string name="clock_title" msgid="2126046720254613991">"ಗಡಿಯಾರ"</string>
     <string name="grid_title" msgid="1688173478777254123">"ಆ್ಯಪ್ ಗ್ರಿಡ್"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"ಅನ್ವಯಿಸಿ"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ಎಡಿಟ್ ಮಾಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"ಪ್ರಸ್ತುತ ವಾಲ್‌ಪೇಪರ್ ಅನ್ನು ಉಳಿಸಿ"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"ಅನ್ವಯಿಸಿ"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"ಶೈಲಿ ಪೂರ್ವವೀಕ್ಷಣೆ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ಗ್ರಿಡ್ ಪೂರ್ವವೀಕ್ಷಣೆ"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ಫಾಂಟ್ ಪೂರ್ವವೀಕ್ಷಣೆ"</string>
@@ -35,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"ಪ್ರಸ್ತುತ <xliff:g id="ID_1">%1$s</xliff:g> ಅನ್ನು ಅನ್ವಯಿಸಲಾಗಿದೆ"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, ಪ್ರಸ್ತುತ ಸಲ್ಲಿಸಲಾಗಿದೆ ಮತ್ತು ಪೂರ್ವವೀಕ್ಷಿಸಲಾಗಿದೆ"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, ಪ್ರಸ್ತುತ ಪೂರ್ವವೀಕ್ಷಿಸಲಾಗಿದೆ"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ಬದಲಾವಣೆ ಆಯ್ಕೆಮಾಡಲಾಗಿದೆ ಮತ್ತು ಪೂರ್ವವೀಕ್ಷಣೆ ಮಾಡಲಾಗಿದೆ"</string>
     <string name="theme_description" msgid="3697012391785254635">"ಫಾಂಟ್: <xliff:g id="ID_1">%1$s</xliff:g>, ಐಕಾನ್‌ಗಳು: <xliff:g id="ID_2">%2$s</xliff:g>, ಆಕಾರ: <xliff:g id="ID_3">%3$s</xliff:g>, ಬಣ್ಣ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ಡೀಫಾಲ್ಟ್"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ಫಾಂಟ್"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"ಕಸ್ಟಮ್ ಬಣ್ಣ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"ಕಸ್ಟಮ್ ಆಕಾರ"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"ಕಸ್ಟಮ್ ಶೈಲಿ ಹೆಸರು"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ಡಾರ್ಕ್ ಥೀಮ್"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ಬ್ಯಾಟರಿ ಸೇವರ್‌ ಕಾರಣದಿಂದ ತಾತ್ಕಾಲಿಕವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"ಥೀಮ್ ಅನ್ನು ಬದಲಾಯಿಸಲಾಗಿದೆ"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"ಥೀಮ್ ಮಾಡಿದ ಐಕಾನ್‌ಗಳು"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ಬೀಟಾ"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ಆ್ಯಪ್ ಗ್ರಿಡ್ ಬದಲಾಯಿಸಿ"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ವಾಲ್‌ಪೇಪರ್ ಬಣ್ಣಗಳು"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ವಾಲ್‌ಪೇಪರ್ ಬಣ್ಣ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"ಮೂಲ ಬಣ್ಣಗಳು"</string>
+    <string name="color_changed" msgid="7029571720331641235">"ಬಣ್ಣ ಬದಲಾಗಿದೆ"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ಡೈನಾಮಿಕ್"</string>
 </resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 228d346..25e7d43 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"적용"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"탭하여 수정"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"현재 배경화면 유지"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"적용"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"스타일 미리보기"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"그리드 미리보기"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"글꼴 미리보기"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, 현재 적용됨"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, 현재 적용되어 미리보기 중"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, 현재 미리보기 중"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, 선택 및 미리보기 표시 가능"</string>
     <string name="theme_description" msgid="3697012391785254635">"글꼴: <xliff:g id="ID_1">%1$s</xliff:g>, 아이콘: <xliff:g id="ID_2">%2$s</xliff:g>, 도형: <xliff:g id="ID_3">%3$s</xliff:g>, 색상: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"기본값"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"글꼴"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"맞춤 색상"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"맞춤 모양"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"맞춤 스타일 이름"</string>
+    <string name="mode_title" msgid="2394873501427436055">"어두운 테마"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"절전 모드로 인해 일시적으로 사용 중지됨"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"테마 변경됨"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"테마 아이콘"</string>
+    <string name="beta_title" msgid="8703819523760746458">"베타"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"앱 그리드 변경"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"배경화면 색상"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"배경화면 색상"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"기본 색상"</string>
+    <string name="color_changed" msgid="7029571720331641235">"색상 변경됨"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"동적"</string>
 </resources>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 1597313..f7b60ef 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Колдонуу"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Өзгөртүү үчүн таптап коюңуз"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Учурдагы тушкагаз калсын"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Колдонуу"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Стилди алдын ала көрүү"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Торчону алдын ала көрүү"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Арипти алдын ала көрүү"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, учурда колдонулууда"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, учурда колдонулуп, текшерилди"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, учурда текшерилип жатат"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, өзгөрүү тандалды жана алдын ала көрүлдү"</string>
     <string name="theme_description" msgid="3697012391785254635">"Арип: <xliff:g id="ID_1">%1$s</xliff:g>, сүрөтчөлөр: <xliff:g id="ID_2">%2$s</xliff:g>, форма: <xliff:g id="ID_3">%3$s</xliff:g>, түс: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Демейки"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Арип"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Жеке түс"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Жеке форма"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Жеке стилдин аталышы"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Караңгы тема"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Батареяны үнөмдөөчү режимде убактылуу өчүрүлдү"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Тема өзгөртүлдү"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Тематикалык сүрөтчөлөр"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Колдонмонун торчосун өзгөртүү"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Тушкагаздын түстөрү"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Тушкагаздын түсү"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Негизги түстөр"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Түс өзгөртүлдү"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамикалык"</string>
 </resources>
diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml
index 3bad9e6..601f06f 100644
--- a/res/values-land/dimens.xml
+++ b/res/values-land/dimens.xml
@@ -27,7 +27,7 @@
     <dimen name="preview_theme_tile_size">14dp</dimen>
     <dimen name="preview_theme_shape_size">30dp</dimen>
 
-    <dimen name="options_container_width">400dp</dimen>
+    <dimen name="options_container_width">0dp</dimen>
     <dimen name="option_bottom_margin">8dp</dimen>
     <dimen name="option_tile_width">62dp</dimen>
     <dimen name="option_tile_padding_horizontal">7dp</dimen>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index 5b70519..8fe51ba 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"ນຳໃຊ້"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ແຕະເພື່ອແກ້ໄຂ"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"ໃຊ້ຮູບພື້ນຫຼັງປັດຈຸບັນ"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"ນຳໃຊ້"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"ຕົວຢ່າງຮູບແບບ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ຕົວຢ່າງຊ່ອງ"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ຕົວຢ່າງຟອນ"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, ຕອນນີ້ນຳໃຊ້ແລ້ວ"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, ຕອນນີ້ນຳໃຊ້ ແລະ ເບິ່ງຕົວຢ່າງແລ້ວ"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, ຕອນນີ້ເບິ່ງຕົວຢ່າງແລ້ວ"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ເລືອກ ແລະ ເບິ່ງຕົວຢ່າງການປ່ຽນແປງແລ້ວ"</string>
     <string name="theme_description" msgid="3697012391785254635">"ຟອນ: <xliff:g id="ID_1">%1$s</xliff:g>, ໄອຄອນ: <xliff:g id="ID_2">%2$s</xliff:g>, ຮູບຮ່າງ: <xliff:g id="ID_3">%3$s</xliff:g>, ສີ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ຄ່າເລີ່ມຕົ້ນ"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ຟອນ"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"ສີກຳນົດເອງ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"ຮູບຮ່າງກຳນົດເອງ"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"ຊື່ຮູບແບບສີສັນກຳນົດເອງ"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ຮູບແບບສີສັນມືດ"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ຖືກປິດການນຳໃຊ້ຊົ່ວຄາວເນື່ອງຈາກຕົວປະຢັດ​ແບັດເຕີຣີ"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"ປ່ຽນຮູບແບບສີສັນແລ້ວ"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"ໄອຄອນຕາມຮູບແບບສີສັນ"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ເບຕ້າ"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ປ່ຽນຕາຕະລາງແອັບ"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ສີຮູບພື້ນຫຼັງ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ສີຮູບພື້ນຫຼັງ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"ສີພື້ນຖານ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"ປ່ຽນສີແລ້ວ"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ໄດນາມິກ"</string>
 </resources>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 931ed26..02b289b 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Taikyti"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Palieskite ir redaguokite"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Palikti dabartinį ekrano foną"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Taikyti"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Stiliaus peržiūra"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Tinklelio peržiūra"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Šrifto peržiūra"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, šiuo metu taikoma"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, šiuo metu taikoma ir peržiūrima"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, šiuo metu peržiūrima"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, pakeitimas pasirinktas ir peržiūrimas"</string>
     <string name="theme_description" msgid="3697012391785254635">"Šriftas: <xliff:g id="ID_1">%1$s</xliff:g>, piktogramos: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, spalva: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Numatytoji"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Šriftas"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Tinkinta spalva"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Tinkinta forma"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Tinkinto stiliaus pavadinimas"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tamsioji tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Laikinai išjungta dėl Akumuliatoriaus tausojimo priemonės"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema pakeista"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Teminės piktogramos"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Programų tinklelio keitimas"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Ekrano fono spalvos"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Ekrano fono spalva"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Pagrindinės spalvos"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Spalva pakeista"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinaminės"</string>
 </resources>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index d6deff2..f8fb310 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Lietot"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Pieskarieties, lai rediģētu"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Paturēt pašreizējo fona tapeti"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Lietot"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Stila priekšskatījums"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Režģa priekšskatījums"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Fonta priekšskatījums"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, pašlaik tiek lietots"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, pašlaik tiek lietots un priekšskatīts"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, pašlaik tiek priekšskatīts"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, mainīt atlasīto un priekšskatīto opciju"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fonts: <xliff:g id="ID_1">%1$s</xliff:g>, ikonas: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, krāsa: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Noklus."</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fonts"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Pielāgota krāsa"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Pielāgota forma"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Pielāgots stila nosaukums"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tumšais motīvs"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Īslaicīgi atspējots akumulatora enerģijas taupīšanas dēļ"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Motīvs ir nomainīts"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Motīvu ikonas"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Mainīt lietotņu režģi"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Fona tapetes krāsas"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Fona tapetes krāsa"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Pamatkrāsas"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Krāsa mainīta"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamiska"</string>
 </resources>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index 11851b6..197058c 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Примени"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Допрете за да измените"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Задржи тековен тапет"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Примени"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Преглед на стил"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Преглед на решетка"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Преглед на фонтот"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, применета во моментов"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, применети и прегледани во моментов"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, прегледани во моментов"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, променете избрана и прегледана"</string>
     <string name="theme_description" msgid="3697012391785254635">"Фонт: <xliff:g id="ID_1">%1$s</xliff:g>, икони: <xliff:g id="ID_2">%2$s</xliff:g>, облик: <xliff:g id="ID_3">%3$s</xliff:g>, боја: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Стандардно"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Фонт"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Приспособена боја"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Приспособена форма"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Приспособено име на стил"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Темна тема"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Привремено оневозможено поради „Штедачот на батерија“"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Темата е променета"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Икони со тема"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Променете ја мрежата на апликации"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Бои од тапетот"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Боја на тапет"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Основни бои"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Бојата е променета"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамично"</string>
 </resources>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 24b9695..91ae2dc 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"വാൾപേപ്പറും സ്‌റ്റൈലും"</string>
     <string name="theme_title" msgid="2144932106319405101">"സ്‌റ്റൈൽ"</string>
     <string name="clock_title" msgid="2126046720254613991">"ക്ലോക്ക്"</string>
     <string name="grid_title" msgid="1688173478777254123">"ആപ്പ് ഗ്രിഡ്"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"പ്രയോഗിക്കുക"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"എഡിറ്റ് ചെയ്യാൻ ടാപ്പ് ചെയ്യുക"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"നിലവിലെ വാൾപേപ്പർ നിലനിർത്തുക"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"പ്രയോഗിക്കുക"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"സ്‌റ്റൈൽ പ്രിവ്യൂ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ഗ്രിഡ് പ്രിവ്യൂ"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ഫോണ്ട് പ്രിവ്യൂ"</string>
@@ -35,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, നിലവിൽ ബാധകമാക്കിയത്"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, നിലവിൽ ബാധകമാക്കി പ്രിവ്യൂ ചെയ്യുന്നു"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, നിലവിൽ പ്രിവ്യൂ ചെയ്യുന്നു"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, തിരഞ്ഞെടുത്തവയും പ്രിവ്യൂ ചെയ്തവയും മാറ്റുക"</string>
     <string name="theme_description" msgid="3697012391785254635">"ഫോണ്ട്: <xliff:g id="ID_1">%1$s</xliff:g>, ഐക്കണുകൾ: <xliff:g id="ID_2">%2$s</xliff:g>, രൂപം: <xliff:g id="ID_3">%3$s</xliff:g>, വർണ്ണം: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ഡിഫോൾട്ട്"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ഫോണ്ട്"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"ഇഷ്‌ടാനുസൃത നിറം"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"ഇഷ്‌ടാനുസൃത രൂപം"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"ഇഷ്‌ടാനുസൃത സ്‌റ്റൈലിന്റെ പേര്"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ഡാർക്ക് തീം"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ബാറ്ററി ലാഭിക്കൽ കാരണം തൽക്കാലം പ്രവർത്തനരഹിതമാണ്"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"തീം മാറ്റി"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"തീമുള്ള ഐക്കണുകൾ"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ബീറ്റ"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ആപ്പ് ഗ്രിഡ് മാറ്റുക"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"വാൾപേപ്പർ നിറങ്ങൾ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"വാൾപേപ്പറിനിന്റെ നിറം"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"അടിസ്ഥാന നിറങ്ങൾ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"നിറം മാറ്റി"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ഡൈനാമിക്"</string>
 </resources>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index c3e32fb..6fc45b5 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Ашиглах"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Засахын тулд товшино уу"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Одоогийн дэлгэцийн зургийг хадгалах"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Ашиглах"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Загварыг урьдчилан үзэх"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Торыг урьдчилан үзэх"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Фонтыг урьдчилан үзэх"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>-г одоогоор ашигласан"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>-г одоогоор хэрэгжүүлсэн бөгөөд шалгасан"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>-г одоогоор шалгасан"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, өөрчлөлтийг сонгож, шалгасан"</string>
     <string name="theme_description" msgid="3697012391785254635">"Фонт: <xliff:g id="ID_1">%1$s</xliff:g>, дүрс тэмдэг: <xliff:g id="ID_2">%2$s</xliff:g>, дүрс: <xliff:g id="ID_3">%3$s</xliff:g>, өнгө: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Өгөгдмөл"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Фонт"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Захиалгат өнгө"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Захиалгат дүрс"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Захиалгат загварын нэр"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Бараан загвар"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Батарей хэмнэгчийн улмаас түр зуур идэвхгүй болгосон"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Загварыг өөрчилсөн"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Загварын дүрс тэмдэг"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Аппын хүснэгтийг өөрчлөх"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Дэлгэцийн зургийн өнгө"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Дэлгэцийн зургийн өнгө"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Суурь өнгөнүүд"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Өнгийг өөрчилсөн"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамик"</string>
 </resources>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index af35e01..0eba26e 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"वॉलपेपर आणि शैली"</string>
     <string name="theme_title" msgid="2144932106319405101">"शैली"</string>
     <string name="clock_title" msgid="2126046720254613991">"घड्याळ"</string>
     <string name="grid_title" msgid="1688173478777254123">"ॲप ग्रिड"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"लागू करा"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"संपादित करण्‍यासाठी टॅप करा"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"सध्याचा वॉलपेपर ठेवा"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"लागू करा"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"शैली पूर्वावलोकन"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ग्रिड पूर्वावलोकन"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"फाँटचे पूर्वावलोकन"</string>
@@ -35,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, सध्या लागू केले"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> सध्या लागू केले आहे आणि त्याचे पूर्वावलोकन केले आहे"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> चे सध्या पूर्वावलोकन करत आहे"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, निवडलेला आणि पूर्वावलोकन केलेला बदला"</string>
     <string name="theme_description" msgid="3697012391785254635">"फॉंट: <xliff:g id="ID_1">%1$s</xliff:g> आयकन: <xliff:g id="ID_2">%2$s</xliff:g> आकार: <xliff:g id="ID_3">%3$s</xliff:g> रंग: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"डीफॉल्ट"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"फॉंट"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"कस्टम रंग"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"कस्टम आकार"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"कस्टम शैलीचे नाव"</string>
+    <string name="mode_title" msgid="2394873501427436055">"गडद थीम"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"बॅटरी सेव्हर मुळे तात्पुरते बंद केले आहे"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"थीम बदलली आहे"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"थीम असलेले आयकन"</string>
+    <string name="beta_title" msgid="8703819523760746458">"बीटा"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"अ‍ॅप ग्रिड बदला"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"वॉलपेपरचे रंग"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"वॉलपेपरचा रंग"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"डीफॉल्ट रंग"</string>
+    <string name="color_changed" msgid="7029571720331641235">"रंग बदलला आहे"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"सतत बदलणारे"</string>
 </resources>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index 41bc0b7..a241339 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Gunakan"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Ketik untuk edit"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Kekalkan kertas dinding semasa"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Gunakan"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Pratonton Gaya"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Pratonton grid"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Pratonton fon"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, digunakan pada masa ini"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, digunakan dan dipratonton pada masa ini"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, dipratonton pada masa ini"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, perubahan yang dipilih dan dipratonton"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fon: <xliff:g id="ID_1">%1$s</xliff:g>, ikon: <xliff:g id="ID_2">%2$s</xliff:g>, bentuk: <xliff:g id="ID_3">%3$s</xliff:g>, warna: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Lalai"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fon"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Warna tersuai"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Bentuk tersuai"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nama gaya tersuai"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema gelap"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Dilumpuhkan sementara disebabkan Penjimat Bateri"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema ditukar"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ikon bertema"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Tukar grid apl"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Warna kertas dinding"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Warna kertas dinding"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Warna asas"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Warna ditukar"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamik"</string>
 </resources>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index e70957c..1f63a7a 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"အသုံးပြုရန်"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"တည်းဖြတ်ရန် တို့ပါ"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"လက်ရှိနောက်ခံပုံ ဆက်ထားရန်"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"အသုံးပြုရန်"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"ပုံစံ အစမ်းကြည့်ရှုခြင်း"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ဇယားကွက် အစမ်းကြည့်ရှုခြင်း"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ဖောင့် အစမ်းကြည့်ရှုခြင်း"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> ကို လက်ရှိအသုံးပြုထားသည်"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>၊ လက်ရှိ အသုံးပြုပြီး အစမ်းကြည့်ထားသည်"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>၊ လက်ရှိ အစမ်းကြည့်ထားသည်"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>၊ ပြောင်းလဲမှုကို ရွေးချယ်ပြီး အစမ်းကြည့်ရှုပြီးပါပြီ"</string>
     <string name="theme_description" msgid="3697012391785254635">"ဖောင့်- <xliff:g id="ID_1">%1$s</xliff:g>၊ သင်္ကေတများ- <xliff:g id="ID_2">%2$s</xliff:g>၊ ပုံသဏ္ဌာန်- <xliff:g id="ID_3">%3$s</xliff:g>၊ အရောင်- <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"မူရင်း"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ဖောင့်"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"စိတ်ကြိုက်အရောင်"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"စိတ်ကြိုက်ပုံသဏ္ဌာန်"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"စိတ်ကြိုက်ပုံစံအမည်"</string>
+    <string name="mode_title" msgid="2394873501427436055">"မှောင်သည့် အပြင်အဆင်"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"‘ဘက်ထရီ အားထိန်း’ ကြောင့် ယာယီပိတ်ထားသည်"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"အပြင်အဆင် ပြောင်းလိုက်ပါပြီ"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"အပြင်အဆင်သုံး သင်္ကေတများ"</string>
+    <string name="beta_title" msgid="8703819523760746458">"စမ်းသပ်ဆော့ဖ်ဝဲ"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"အက်ပ်ဇယား ပြောင်းရန်"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"နောက်ခံအရောင်များ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"နောက်ခံအရောင်"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"မူရင်းအရောင်များ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"အရောင် ပြောင်းလိုက်ပါပြီ"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ပြောင်းနိုင်သော"</string>
 </resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index ee6e6de..a82f28b 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Bruk"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Trykk for å endre"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Behold den nåværende bakgrunnen"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Bruk"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Forhåndsvisning av stil"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Forhåndsvisning av rutenett"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Forhåndsvisning av skrifttype"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, brukes for øyeblikket"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, brukes of forhåndsvises for øyeblikket"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, forhåndsvises for øyeblikket"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, endre det som er valgt og forhåndsvises"</string>
     <string name="theme_description" msgid="3697012391785254635">"Skrifttype: <xliff:g id="ID_1">%1$s</xliff:g>, ikoner: <xliff:g id="ID_2">%2$s</xliff:g>, form: <xliff:g id="ID_3">%3$s</xliff:g>, farge: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Standard"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Skrifttype"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Egendefinert farge"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Egendefinert form"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Navn på egendefinert stil"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Mørkt tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Midlertidig slått av på grunn av Batterisparing"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Temaet er endret"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Temaikoner"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Endre apprutenett"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Bakgrunnsfarger"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Bakgrunnsfarge"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Grunnleggende farger"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Fargen er endret"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamisk"</string>
 </resources>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 33b8329..a29a975 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"वालपेपर तथा शैली"</string>
     <string name="theme_title" msgid="2144932106319405101">"शैली"</string>
     <string name="clock_title" msgid="2126046720254613991">"घडी"</string>
     <string name="grid_title" msgid="1688173478777254123">"एप ग्रिड"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"लागू गर्नुहोस्"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"सम्पादन गर्न ट्याप गर्नुहोस्"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"अहिले कै वालपेपर राख्नुहोस्"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"लागू गर्नुहोस्"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"शैलीको प्रिभ्यु"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ग्रिडको प्रिभ्यु"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"फन्टको प्रिभ्यू"</string>
@@ -35,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, हालसालै लागू गरिएको"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, हालसालै लागू तथा पूर्वावलोकन गरिएको"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, हालसालै पूर्वलोकन गरिएको"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, तपाईंले चयन गरेको र समीक्षा गरेको वस्तु बदल्नुहोस्"</string>
     <string name="theme_description" msgid="3697012391785254635">"फन्ट: <xliff:g id="ID_1">%1$s</xliff:g>, आइकनहरू: <xliff:g id="ID_2">%2$s</xliff:g>, आकार: <xliff:g id="ID_3">%3$s</xliff:g>, रङ्ग: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"डिफल्ट"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"फन्ट"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"आफूले रोजेको रङ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"आफूले रोजेको आकार"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"शैलीको आफूले रोजेको नाम"</string>
+    <string name="mode_title" msgid="2394873501427436055">"अँध्यारो थिम"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ब्याट्री सेभर अन भएकाले केही समयका लागि अफ गरिएको छ"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"थिम परिवर्तन गरिएको छ"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"थिम भएका आइकन"</string>
+    <string name="beta_title" msgid="8703819523760746458">"बिटा"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"एप ग्रिड बदल्नुहोस्"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"वालपेपरका रङहरू"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"वालपेपरको रङ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"आधारभूत रङहरू"</string>
+    <string name="color_changed" msgid="7029571720331641235">"रङ बदलियो"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"गतिशील"</string>
 </resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 3785340..6210372 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Toepassen"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tik om te bewerken"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Huidige achtergrond behouden"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Toepassen"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Stijlvoorbeeld"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Rastervoorbeeld"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Lettertypevoorbeeld"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, momenteel toegepast"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, wordt momenteel toegepast en bekeken"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, wordt momenteel bekeken"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, wijzigen wat je hebt geselecteerd en waarvan je een voorbeeld wilt bekijken"</string>
     <string name="theme_description" msgid="3697012391785254635">"Lettertype: <xliff:g id="ID_1">%1$s</xliff:g>, pictogrammen: <xliff:g id="ID_2">%2$s</xliff:g>, vorm: <xliff:g id="ID_3">%3$s</xliff:g>, kleur: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Standaard"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Lettertype"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Aangepaste kleur"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Aangepaste vorm"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Naam van aangepaste stijl"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Donker thema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Tijdelijk uit vanwege Batterijbesparing"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Thema gewijzigd"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Thema-iconen"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Bèta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"App-raster wijzigen"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Achtergrondkleuren"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Achtergrondkleur"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Basiskleuren"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Kleur gewijzigd"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamisch"</string>
 </resources>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index a8c559d..8df3d48 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"ପ୍ରୟୋଗ କରନ୍ତୁ"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ଏଡିଟ୍ କରିବା ପାଇଁ ଟାପ୍ କରନ୍ତୁ"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"ବର୍ତ୍ତମାନର ୱାଲ୍‌ପେପର୍‌କୁ ରଖନ୍ତୁ"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"ପ୍ରୟୋଗ କରନ୍ତୁ"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"ଷ୍ଟାଇଲ୍ ପ୍ରିଭ୍ୟୁ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ଗ୍ରିଡ୍ ପ୍ରିଭ୍ୟୁ"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ଫଣ୍ଟ ପ୍ରିଭ୍ୟୁ"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, ବର୍ତ୍ତମାନ ଲାଗୁ ହୋଇଛି"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, ବର୍ତ୍ତମାନ ଲାଗୁ ହୋଇଛି ଏବଂ ଏହାର ପ୍ରିଭ୍ୟୁ କରାଯାଇଛି"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>ର, ବର୍ତ୍ତମାନ ପ୍ରିଭ୍ୟୁ କରାଯାଇଛି"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ପରିବର୍ତ୍ତନକୁ ଚୟନ କରାଯାଇଛି ଏବଂ ପ୍ରିଭ୍ୟୁ କରାଯାଇଛି"</string>
     <string name="theme_description" msgid="3697012391785254635">"ଫଣ୍ଟ: <xliff:g id="ID_1">%1$s</xliff:g>, ଆଇକନ୍‌ଗୁଡ଼ିକ: <xliff:g id="ID_2">%2$s</xliff:g>, ଆକାର: <xliff:g id="ID_3">%3$s</xliff:g>, ରଙ୍ଗ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ଡିଫଲ୍ଟ"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ଫଣ୍ଟ"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"କଷ୍ଟମ୍ ରଙ୍ଗ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"କଷ୍ଟମ୍ ଆକାର"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"କଷ୍ଟମ୍ ଷ୍ଟାଇଲ୍ ନାମ"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ଗାଢ଼ା ଥିମ୍"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ବ୍ୟାଟେରୀ ସେଭର୍ ଯୋଗୁଁ ଅସ୍ଥାୟୀ ଭାବେ ଅକ୍ଷମ କରାଯାଇଛି"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"ଥିମ ପରିବର୍ତ୍ତନ କରାଯାଇଛି"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"ଥିମ୍ ଯୁକ୍ତ ଆଇକନ୍"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ବିଟା"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ଆପ୍ ଗ୍ରିଡ୍ ପରିବର୍ତ୍ତନ କରନ୍ତୁ"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ୱାଲପେପର ରଙ୍ଗଗୁଡ଼ିକ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ୱାଲପେପର ରଙ୍ଗ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"ବେସିକ ରଙ୍ଗଗୁଡ଼ିକ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"ରଙ୍ଗ ପରିବର୍ତ୍ତନ କରାଯାଇଛି"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ଡାଇନାମିକ"</string>
 </resources>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index acd4b54..1d9d119 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"ਲਾਗੂ ਕਰੋ"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ਸੰਪਾਦਨ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"ਮੌਜੂਦਾ ਵਾਲਪੇਪਰ ਬਰਕਰਾਰ ਰੱਖੋ"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"ਲਾਗੂ ਕਰੋ"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"ਸਟਾਈਲ ਦੀ ਪੂਰਵ-ਝਲਕ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ਗ੍ਰਿਡ ਪੂਰਵ-ਝਲਕ"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ਫ਼ੌਂਟ ਦੀ ਪੂਰਵ-ਝਲਕ"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, ਫ਼ਿਲਹਾਲ ਲਾਗੂ ਕੀਤਾ ਗਿਆ"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, ਫਿਲਹਾਲ ਲਾਗੂ ਕਰਕੇ ਪੂਰਵ-ਝਲਕ ਦੇਖੀ ਗਈ"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, ਫਿਲਹਾਲ ਪੂਰਵ-ਝਲਕ ਦੇਖੀ ਗਈ"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ਉਸ ਵਿਕਲਪ ਨੂੰ ਬਦਲੋ ਜਿਸ ਨੂੰ ਚੁਣਿਆ ਗਿਆ ਅਤੇ ਜਿਸ ਦੀ ਪੂਰਵ-ਝਲਕ ਦੇਖੀ ਗਈ ਹੈ"</string>
     <string name="theme_description" msgid="3697012391785254635">"ਫੌਂਟ: <xliff:g id="ID_1">%1$s</xliff:g>, ਪ੍ਰਤੀਕ: <xliff:g id="ID_2">%2$s</xliff:g>, ਆਕ੍ਰਿਤੀ: <xliff:g id="ID_3">%3$s</xliff:g>, ਰੰਗ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ਪੂਰਵ-ਨਿਰਧਾਰਤ"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ਫੌਂਟ"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"ਵਿਉਂਤਿਆ ਰੰਗ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"ਵਿਉਂਤੀ ਆਕ੍ਰਿਤੀ"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"ਸ਼ੈਲੀ ਦਾ ਵਿਉਂਤਿਆ ਨਾਮ"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ਗੂੜ੍ਹਾ ਥੀਮ"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ਬੈਟਰੀ ਸੇਵਰ ਕਰਕੇ ਕੁਝ ਸਮੇਂ ਲਈ ਬੰਦ ਕੀਤਾ ਗਿਆ"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"ਥੀਮ ਬਦਲਿਆ ਗਿਆ"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"ਥੀਮ ਵਾਲੇ ਪ੍ਰਤੀਕ"</string>
+    <string name="beta_title" msgid="8703819523760746458">"ਬੀਟਾ"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ਐਪ ਗ੍ਰਿਡ ਬਦਲੋ"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"ਵਾਲਪੇਪਰ ਦੇ ਰੰਗ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"ਵਾਲਪੇਪਰ ਦਾ ਰੰਗ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"ਮੂਲ ਰੰਗ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"ਰੰਗ ਬਦਲਿਆ ਗਿਆ"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ਪਰਿਵਰਤਨਸ਼ੀਲ"</string>
 </resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index cbcbc0a..b3140dc 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Zastosuj"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Kliknij, by edytować"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Pozostaw bieżącą tapetę"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Zastosuj"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Podgląd stylu"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Podgląd siatki"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Podgląd czcionki"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, obecnie używana opcja"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, obecnie zastosowana i przeglądana"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, obecnie przeglądana"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, zmiana została wybrana i wyświetlono jej podgląd"</string>
     <string name="theme_description" msgid="3697012391785254635">"Czcionka: <xliff:g id="ID_1">%1$s</xliff:g>, ikony: <xliff:g id="ID_2">%2$s</xliff:g>, kształt: <xliff:g id="ID_3">%3$s</xliff:g>, kolor: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Domyślny"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Czcionka"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Kolor niestandardowy"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Kształt niestandardowy"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nazwa stylu niestandardowego"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Ciemny motyw"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Tymczasowo wyłączono z powodu oszczędzania baterii"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Motyw został zmieniony"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ikony z motywem"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Zmień siatkę aplikacji"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Kolory tapety"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Kolor tapety"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Kolory podstawowe"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Kolor został zmieniony"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamicznie"</string>
 </resources>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 4ae02bc..a9a4fe3 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplicar"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Toque para editar"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Manter a imagem de fundo atual"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplicar"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Pré-visualização do estilo"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Pré-visualização da grelha"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Pré-visualiz. do tipo de letra"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, aplicado atualmente"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, aplicado e em pré-visualização atualmente"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, em pré-visualização atualmente"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, alteração selecionada e pré-visualizada"</string>
     <string name="theme_description" msgid="3697012391785254635">"Tipo de letra: <xliff:g id="ID_1">%1$s</xliff:g>, ícones: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, cor: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Predef."</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Tipo de letra"</string>
@@ -61,7 +61,7 @@
     <string name="shape_component_title" msgid="8366847436022025538">"Escolha a forma"</string>
     <string name="name_component_title" msgid="532425087968663437">"Atribua um nome ao seu estilo"</string>
     <string name="icon_component_label" msgid="2625784884001407944">"Ícones <xliff:g id="ID_1">%1$d</xliff:g>"</string>
-    <string name="delete_custom_theme_confirmation" msgid="4452137183628769394">"Pretende eliminar o estilo personalizado?"</string>
+    <string name="delete_custom_theme_confirmation" msgid="4452137183628769394">"Eliminar o estilo personalizado?"</string>
     <string name="delete_custom_theme_button" msgid="5102462988130208824">"Eliminar"</string>
     <string name="cancel" msgid="4651030493668562067">"Cancelar"</string>
     <string name="set_theme_wallpaper_dialog_message" msgid="2179661027350908003">"Defina a imagem de fundo do estilo"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Cor personalizada"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma personalizada"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nome do estilo personalizado"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema escuro"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Temporariamente desativado devido à Poupança de bateria"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema alterado"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ícones temáticos"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Altere a grelha de apps"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Cores imag. de fundo"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Cor da imagem de fundo"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Cores básicas"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Cor alterada"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinâmico"</string>
 </resources>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 70bc224..c858265 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplicar"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Toque para editar"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Manter o plano de fundo atual"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplicar"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Visualização do estilo"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Visualização da grade"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Visualização da fonte"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"Opção <xliff:g id="ID_1">%1$s</xliff:g> aplicada no momento"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"Opção <xliff:g id="ID_1">%1$s</xliff:g> aplicada e visualizada no momento"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"Opção <xliff:g id="ID_1">%1$s</xliff:g> visualizada no momento"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, mudança selecionada e visualizada"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fonte: <xliff:g id="ID_1">%1$s</xliff:g>, ícones: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, cor: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Padrão"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fonte"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Cor personalizada"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Formato personalizado"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Nome do estilo personalizado"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema escuro"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Desativado temporariamente pela Economia de bateria"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema trocado"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ícones com tema"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Mudar a grade de apps"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Cores do plano de fundo"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Cor do plano de fundo"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Cores básicas"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Cor trocada"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinâmica"</string>
 </resources>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 3d7c7de..7389836 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Aplicați"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Atingeți pentru a modifica"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Păstrați imaginea de fundal actuală"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Aplicați"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Previzualizarea stilului"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Previzualizarea grilei"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Previzualizarea fontului"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"S-a aplicat <xliff:g id="ID_1">%1$s</xliff:g> acum"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, aplicată și previzualizată acum"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, previzualizată acum"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, modificați opțiunea selectată și previzualizată"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, pictograme: <xliff:g id="ID_2">%2$s</xliff:g>, formă: <xliff:g id="ID_3">%3$s</xliff:g>, culoare: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Standard"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Culoare personalizată"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Formă personalizată"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Numele stilului personalizat"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Temă întunecată"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Dezactivat temporar de Economisirea bateriei"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema a fost schimbată"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Pictograme tematice"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Schimbați grila de aplicații"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Culori de fundal"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Culoarea imaginii de fundal"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Culori de bază"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Culoare modificată"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamic"</string>
 </resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index cee2a83..1a674ff 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -20,11 +20,10 @@
     <string name="app_name" msgid="1647136562008520313">"Обои и стиль"</string>
     <string name="theme_title" msgid="2144932106319405101">"Стиль"</string>
     <string name="clock_title" msgid="2126046720254613991">"Часы"</string>
-    <string name="grid_title" msgid="1688173478777254123">"Сетка прилож-ий"</string>
+    <string name="grid_title" msgid="1688173478777254123">"Сетка приложений"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Применить"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Нажмите, чтобы изменить"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Использовать текущие обои"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Применить"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Предварительный просмотр стиля"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Предварительный просмотр сетки"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Предпросмотр шрифта"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"Применено сейчас: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"Сейчас включено и показано: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"Сейчас показано: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, изменить объект, который вы выбрали и просматриваете"</string>
     <string name="theme_description" msgid="3697012391785254635">"Шрифт: <xliff:g id="ID_1">%1$s</xliff:g>, значки: <xliff:g id="ID_2">%2$s</xliff:g>, форма: <xliff:g id="ID_3">%3$s</xliff:g>, цвет: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"По умолч."</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Шрифт"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Пользовательский цвет"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Пользовательская форма"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Название пользовательского стиля"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Тёмная тема"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Временно отключено из-за режима энергосбережения"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Тема изменена"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Тематические значки"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Настроить сетку приложений"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Цвета обоев"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Цвет обоев"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Основные цвета"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Цвет изменен"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамически"</string>
 </resources>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index 48fc06e..2e85b26 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"යොදන්න"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"සංස්කරණයට තට්ටු කරන්න"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"වත්මන් බිතුපත තබා ගන්න"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"යොදන්න"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"විලාස පෙරදසුන"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"ජාලක පෙරදසුන"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ෆොන්ට පෙරදසුන"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, දැනට යෙදේ"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, දැනට යෙදිණි සහ පෙරදසුන්ගතයි"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, දැනට පෙරදසුන්ගතයි"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, තෝරා ගත් සහ පෙරදසුන් කළ විකල්පය වෙනස් කරන්න"</string>
     <string name="theme_description" msgid="3697012391785254635">"අකුර: <xliff:g id="ID_1">%1$s</xliff:g>, නිරූපක: <xliff:g id="ID_2">%2$s</xliff:g>, හැඩය: <xliff:g id="ID_3">%3$s</xliff:g>, වර්ණය: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"පෙරනිමි"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"අකුර"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"අභිරුචි වර්ණය"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"අභිරුචි හැඩය"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"අභිරුචි මෝස්තර නම"</string>
+    <string name="mode_title" msgid="2394873501427436055">"අඳුරු තේමාව"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"බැටරි සුරැකුම හේතුවෙන් තාවකාලිකව අබල කරන ලදි"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"තේමාව වෙනස් විය"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"තේමාගත නිරූපක"</string>
+    <string name="beta_title" msgid="8703819523760746458">"බීටා"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"යෙදුම් ජාලකය වෙනස් කරන්න"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"වෝල්පේපර වර්ණ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"වෝල්පේපර වර්ණය"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"මූලික වර්ණ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"වර්ණය වෙනස් විය"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ගතික"</string>
 </resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 98482fa..7431dec 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Použiť"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Klepnutím upravte"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Ponechať aktuálnu tapetu"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Použiť"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Ukážka štýlu"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Ukážka mriežky"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Ukážka písma"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, momentálne použité"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, možnosť bola práve použitá a zobrazuje sa jej ukážka"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, práve sa zobrazuje ukážka"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, zmeniť vybrané s ukážkou"</string>
     <string name="theme_description" msgid="3697012391785254635">"Písmo: <xliff:g id="ID_1">%1$s</xliff:g>, ikony: <xliff:g id="ID_2">%2$s</xliff:g>, tvar: <xliff:g id="ID_3">%3$s</xliff:g>, farba: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Predvolené"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Písmo"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Vlastná farba"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Vlastný tvar"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Názov vlastného štýlu"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tmavý motív"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Dočasne vypnuté šetričom batérie"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Motív bol zmenený"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Prefarbené ikony"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Zmeniť mriežku aplikácií"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Farby tapety"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Farba tapety"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Základné farby"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Farba bola zmenená"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamické"</string>
 </resources>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 5a381ab..a637d4f 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Uporabi"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Dotaknite se za urejanje"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Obdrži trenutno ozadje"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Uporabi"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Predogled sloga"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Predogled mreže"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Predogled pisave"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> – trenutno uporabljeno"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> – trenutno uporabljeno in v predogledu"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> – trenutno v predogledu"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, sprememba je bila izbrana in predogledana"</string>
     <string name="theme_description" msgid="3697012391785254635">"Pisava: <xliff:g id="ID_1">%1$s</xliff:g>, ikone: <xliff:g id="ID_2">%2$s</xliff:g>, oblika: <xliff:g id="ID_3">%3$s</xliff:g>, barva: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Privzeto"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Pisava"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Barva po meri"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Oblika po meri"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Ime sloga po meri"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Temna tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Začasno onemogočeno zaradi varčevanja z energijo baterije."</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema je spremenjena."</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ikone s temo"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Spreminjanje mreže aplikacij."</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Barve zaslon. ozadja"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Barva zaslonskega ozadja"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Osnovne barve"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Barva je spremenjena."</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamično"</string>
 </resources>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index 0b36ff3..8f6259c 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"Imazhi i sfondit dhe stili"</string>
     <string name="theme_title" msgid="2144932106319405101">"Stili"</string>
     <string name="clock_title" msgid="2126046720254613991">"Ora"</string>
     <string name="grid_title" msgid="1688173478777254123">"Rrjeta e aplikacioneve"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Zbato"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Trokit për të modifikuar"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Mbaj imazhin aktual të sfondit"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Zbato"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Pamja paraprake e stilit"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Pamja paraprake e rrjetës"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Pamja paraprake e fontit"</string>
@@ -35,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, është zbatuar aktualisht"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, aktualisht është zbatuar dhe në pamje paraprake"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, aktualisht në pamje paraprake"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ndrysho zgjedhjen dhe pamjen paraprake"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fonti: <xliff:g id="ID_1">%1$s</xliff:g>, ikonat: <xliff:g id="ID_2">%2$s</xliff:g>, forma: <xliff:g id="ID_3">%3$s</xliff:g>, ngjyra: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Parazgjedhja"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fonti"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Ngjyra e personalizuar"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Forma e personalizuar"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Emri i stilit të personalizuar"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tema e errët"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Çaktivizuar për shkak të \"Kursyesit të baterisë\""</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema është ndryshuar"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ikona me temë"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Ndrysho rrjetën e aplikacioneve"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Ngjyra imazhi sfondi"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Ngjyra e imazhit të sfondit"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Ngjyra bazë"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Ngjyra ka ndryshuar"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamike"</string>
 </resources>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 7b73153..3a7de2b 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Примени"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Додирните да бисте изменили"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Задржи актуелну позадину"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Примени"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Преглед стила"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Преглед мреже"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Преглед фонта"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, тренутно је примењено"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, тренутно је примењено и прегледа се"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, тренутно се прегледа"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, промените изабрану ставку која се приказује"</string>
     <string name="theme_description" msgid="3697012391785254635">"Фонт: <xliff:g id="ID_1">%1$s</xliff:g>, иконе: <xliff:g id="ID_2">%2$s</xliff:g>, облик: <xliff:g id="ID_3">%3$s</xliff:g>, боја: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Подразумевано"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Фонт"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Прилагођена боја"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Прилагођени облик"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Прилагођени назив стила"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Тамна тема"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Привремено је онемогућено због уштеде батерије"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Тема је промењена"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Тематске иконе"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Промените мрежу апликација"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Боје позадине"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Боја позадине"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Основне боје"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Боја је промењена"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамички"</string>
 </resources>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 76a8427..d16ff0f 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Använd"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tryck för att redigera"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Behåll befintlig bakgrund"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Använd"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Förhandsgranska stilen"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Förhandsgranska rutnätet"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Förhandsgranska teckensnitt"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> tillämpas för närvarande"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> förhandsgranskas och tillämpas just nu"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> förhandsgranskas just nu"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, ändra vald och förhandsgranskad"</string>
     <string name="theme_description" msgid="3697012391785254635">"Teckensnitt: <xliff:g id="ID_1">%1$s</xliff:g>, ikoner: <xliff:g id="ID_2">%2$s</xliff:g>, former: <xliff:g id="ID_3">%3$s</xliff:g>, färger: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Standard"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Teckensnitt"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Anpassad färg"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Anpassat område"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Namn på anpassat format"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Mörkt tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Tillfälligt inaktiverat i batterisparläge"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Temat har ändrats"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Ikoner med tema"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Ändra rutnät för appar"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Bakgrundsfärger"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Bakgrundsfärg"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Standardfärger"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Färgen har ändrats"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamisk"</string>
 </resources>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 57fa6eb..f4fe8f8 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Tumia"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Gusa ili ubadilishe"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Tumia mandhari ya sasa"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Tumia"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Onyesho la kukagua muundo"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Onyesho la kukagua gridi"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Onyesho la kukagua fonti"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, inayotumiwa sasa hivi"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, inayotumika na kukaguliwa kwanza sasa hivi"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, inakaguliwa kwanza sasa hivi"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, badilisha chaguo lililochaguliwa na kukaguliwa kwanza"</string>
     <string name="theme_description" msgid="3697012391785254635">"Fonti: <xliff:g id="ID_1">%1$s</xliff:g>, aikoni: <xliff:g id="ID_2">%2$s</xliff:g>, umbo: <xliff:g id="ID_3">%3$s</xliff:g>, rangi: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Chaguomsingi"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Fonti"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Rangi maalum"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Umbo maalum"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Jina la muundo maalum"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Mandhari meusi"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Imezimwa kwa muda kwa sababu ya Kiokoa Betri"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Mandhari yamebadilishwa"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Aikoni zenye mada"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Badilisha gridi ya programu"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Rangi za mandhari"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Rangi ya mandhari"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Rangi za msingi"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Rangi imebadilishwa"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Inayobadilika"</string>
 </resources>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index 387dece..3a2bffb 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"பயன்படுத்து"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"\'தீமைத்\' திருத்த தட்டவும்"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"தற்போதைய வால்பேப்பரே இருக்கட்டும்"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"பயன்படுத்து"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"ஸ்டைல் மாதிரிக்காட்சி"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"கட்ட மாதிரிக்காட்சி"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"எழுத்துரு மாதிரிக்காட்சி"</string>
@@ -34,7 +33,8 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> தற்போது பயன்படுத்தப்பட்டது"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, தற்போது பயன்படுத்தப்பட்டு மாதிரிக்காட்சி காண்பிக்கப்படுகிறது"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, மாதிரிக்காட்சி தற்போது காண்பிக்கப்படுகிறது"</string>
-    <string name="theme_description" msgid="3697012391785254635">"எழுத்துரு: <xliff:g id="ID_1">%1$s</xliff:g>, ஐகான்கள்: <xliff:g id="ID_2">%2$s</xliff:g>, வடிவம்: <xliff:g id="ID_3">%3$s</xliff:g>, நிறம்: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, தேர்ந்தெடுக்கப்பட்ட &amp; மாதிரிக்காட்சியில் காட்டப்பட்டதை மாற்றும்"</string>
+    <string name="theme_description" msgid="3697012391785254635">"எழுத்து வடிவம்: <xliff:g id="ID_1">%1$s</xliff:g>, ஐகான்கள்: <xliff:g id="ID_2">%2$s</xliff:g>, வடிவம்: <xliff:g id="ID_3">%3$s</xliff:g>, நிறம்: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"இயல்புநிலை"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"எழுத்துரு"</string>
     <string name="preview_name_icon" msgid="6818927315316316440">"ஐகான்"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"பிரத்தியேக வண்ணம்"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"பிரத்தியேக வடிவம்"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"பிரத்தியேகத் தோற்றத்தின் பெயர்"</string>
+    <string name="mode_title" msgid="2394873501427436055">"டார்க் தீம்"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"பேட்டரிச் சேமிப்பான் காரணமாகத் தற்காலிகமாக முடக்கப்பட்டுள்ளது"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"தீம் மாற்றப்பட்டது"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"தீம் செய்யப்பட்ட ஐகான்கள்"</string>
+    <string name="beta_title" msgid="8703819523760746458">"பீட்டா"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ஆப்ஸ் கட்டக் காட்சியை மாற்றும்"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"வால்பேப்பர் நிறங்கள்"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"வால்பேப்பரின் நிறம்"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"அடிப்படை வண்ணங்கள்"</string>
+    <string name="color_changed" msgid="7029571720331641235">"வண்ணம் மாற்றப்பட்டது"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"டைனமிக்"</string>
 </resources>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index a39685d..72fd0c3 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"వాల్‌పేపర్ &amp; స్టయిల్"</string>
     <string name="theme_title" msgid="2144932106319405101">"శైలి"</string>
     <string name="clock_title" msgid="2126046720254613991">"గడియారం"</string>
     <string name="grid_title" msgid="1688173478777254123">"యాప్ గ్రిడ్"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"వర్తింపజేయి"</string>
-    <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"సవరించడానికి నొక్కండి"</string>
+    <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ఎడిట్ చేయడానికి నొక్కండి"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"ప్రస్తుత వాల్‌పేపర్‌ను అలాగే ఉంచండి"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"వర్తింపజేయి"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"స్టైల్ ప్రివ్యూ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"గ్రిడ్ ప్రివ్యూ"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"ఫాంట్ ప్రివ్యూ"</string>
@@ -35,8 +33,9 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, ప్రస్తుతం వర్తింపజేయబడింది"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, ప్రస్తుతం వర్తింప చేయబడి ప్రివ్యూ చేయబడింది"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, ప్రస్తుతం ప్రివ్యూ చేయబడింది"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, మార్పు ఎంచుకోబడింది, ప్రివ్యూ చేయబడింది"</string>
     <string name="theme_description" msgid="3697012391785254635">"ఫాంట్: <xliff:g id="ID_1">%1$s</xliff:g>, చిహ్నాలు: <xliff:g id="ID_2">%2$s</xliff:g>, ఆకారం: <xliff:g id="ID_3">%3$s</xliff:g>, రంగు: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
-    <string name="default_theme_title" msgid="2555741736622366797">"డిఫాల్ట్"</string>
+    <string name="default_theme_title" msgid="2555741736622366797">"ఆటోమేటిక్"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"ఫాంట్"</string>
     <string name="preview_name_icon" msgid="6818927315316316440">"చిహ్నం"</string>
     <string name="preview_name_color" msgid="8776203144994416172">"రంగు"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"అనుకూల రంగు"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"అనుకూల ఆకారం"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"అనుకూల స్టయిల్ పేరు"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ముదురు రంగు రూపం"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"బ్యాటరీ సేవర్ కారణంగా తాత్కాలికంగా డిజేబుల్‌ చేయబడింది"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"థీమ్ మార్చబడింది"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"రూపానికి తగిన చిహ్నాలు"</string>
+    <string name="beta_title" msgid="8703819523760746458">"బీటా"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"యాప్ గ్రిడ్‌ను మార్చండి"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"వాల్‌పేపర్ రంగులు"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"వాల్‌పేపర్ రంగు"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"ప్రాథమిక రంగులు"</string>
+    <string name="color_changed" msgid="7029571720331641235">"రంగు మార్చబడింది"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"డైనమిక్"</string>
 </resources>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 5235a90..3375c30 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"ใช้"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"แตะเพื่อแก้ไข"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"ใช้วอลเปเปอร์ปัจจุบัน"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"ใช้"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"พรีวิวรูปแบบ"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"พรีวิวตารางกริด"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"พรีวิวแบบอักษร"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> ใช้อยู่ในขณะนี้"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>แสดงตัวอย่างและใช้อยู่"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>แสดงตัวอย่างอยู่"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g> เลือกและแสดงตัวอย่างการเปลี่ยนแปลงอยู่"</string>
     <string name="theme_description" msgid="3697012391785254635">"แบบอักษร: <xliff:g id="ID_1">%1$s</xliff:g>, ไอคอน: <xliff:g id="ID_2">%2$s</xliff:g>, รูปร่าง: <xliff:g id="ID_3">%3$s</xliff:g>, สี: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ค่าเริ่มต้น"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"แบบอักษร"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"สีที่กำหนดเอง"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"รูปร่างที่กำหนดเอง"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"ชื่อรูปแบบที่กำหนดเอง"</string>
+    <string name="mode_title" msgid="2394873501427436055">"ธีมมืด"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"ปิดใช้ชั่วคราวเนื่องจากอยู่ในโหมดประหยัดแบตเตอรี่"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"เปลี่ยนธีมแล้ว"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"ไอคอนตามธีม"</string>
+    <string name="beta_title" msgid="8703819523760746458">"เบต้า"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"เปลี่ยนแปลงตารางกริดสำหรับแอป"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"สีวอลเปเปอร์"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"สีวอลเปเปอร์"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"สีพื้นฐาน"</string>
+    <string name="color_changed" msgid="7029571720331641235">"เปลี่ยนสีแล้ว"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ไดนามิก"</string>
 </resources>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index eae43bb..591a107 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Ilapat"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"I-tap para ma-edit"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Gamitin ang kasalukuyang wallpaper"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Ilapat"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Preview ng istilo"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Preview ng grid"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Preview ng font"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, kasalukuyang nakalapat"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, kasalukuyang nakalapat at pini-preview"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, kasalukuyang pini-preview"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, baguhin ang napili at na-preview"</string>
     <string name="theme_description" msgid="3697012391785254635">"Font: <xliff:g id="ID_1">%1$s</xliff:g>, mga icon: <xliff:g id="ID_2">%2$s</xliff:g>, hugis: <xliff:g id="ID_3">%3$s</xliff:g>, kulay: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Default"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Font"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Custom na kulay"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Custom na hugis"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Custom na pangalan ng istilo"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Madilim na tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Pansamantalang na-disable dahil sa Pantipid ng Baterya"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Pinalitan ang tema"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Mga may temang icon"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Baguhin ang grid ng app"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Kulay ng wallpaper"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Kulay ng wallpaper"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Mga basic na kulay"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Pinalitan ang kulay"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dynamic"</string>
 </resources>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 9638aa2..e90cc22 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Uygula"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Düzenlemek için dokunun"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Geçerli duvar kağıdını sakla"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Uygula"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Stil önizleme"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Izgara önizleme"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Yazı tipi önizleme"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, uygulanmış durumda"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, şu anda uygulandı ve önizleniyor"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, şu anda önizleniyor"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, seçilen ve önizleneni değiştir"</string>
     <string name="theme_description" msgid="3697012391785254635">"Yazı tipi: <xliff:g id="ID_1">%1$s</xliff:g>, simgeler: <xliff:g id="ID_2">%2$s</xliff:g>, şekil: <xliff:g id="ID_3">%3$s</xliff:g>, renk: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Varsayılan"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Yazı tipi"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Özel renk"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Özel şekil"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Özel stil adı"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Koyu tema"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Pil Tasarrufu nedeniyle geçici olarak devre dışı bırakıldı"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Tema değişti"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Tema simgeleri"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Uygulama ızgarasını değiştirin"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Duvar kağıdı renkleri"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Duvar kağıdı rengi"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Temel renkler"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Renk değişti"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamik"</string>
 </resources>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 408ed3c..4fd5c71 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -17,14 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="app_name" msgid="1647136562008520313">"Фоновий малюнок і стиль"</string>
+    <string name="app_name" msgid="1647136562008520313">"Оформлення та стиль"</string>
     <string name="theme_title" msgid="2144932106319405101">"Стиль"</string>
     <string name="clock_title" msgid="2126046720254613991">"Годинник"</string>
     <string name="grid_title" msgid="1688173478777254123">"Сітка додатків"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Застосувати"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Торкніться, щоб змінити"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Зберегти поточний фоновий малюнок"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Застосувати"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Попередній перегляд теми"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Попередній перегляд сітки"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Попередній перегляд шрифту"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g> (зараз застосовано)"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> (застосовано й відображається зараз)"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> (відображається зараз)"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, змінити елемент, який ви вибрали й переглядаєте"</string>
     <string name="theme_description" msgid="3697012391785254635">"Шрифт: <xliff:g id="ID_1">%1$s</xliff:g>; значки: <xliff:g id="ID_2">%2$s</xliff:g>; форма: <xliff:g id="ID_3">%3$s</xliff:g>; колір: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"За умовчанням"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Шрифт"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Спеціальний колір"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Спеціальна фігура"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Назва спеціального стилю"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Темна тема"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Тимчасово вимкнено, оскільки працює режим енергозбереження"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Тему змінено"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Тема значків"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Бета"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Змінити сітку додатків"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Кольори фон. малюнка"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Колір фонового малюнка"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Основні кольори"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Колір змінено"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Динамічний"</string>
 </resources>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 3e5eaa1..8ae85d3 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -17,15 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for app_name (1647136562008520313) -->
-    <skip />
+    <string name="app_name" msgid="1647136562008520313">"وال پیپر اور طرز"</string>
     <string name="theme_title" msgid="2144932106319405101">"طرز"</string>
     <string name="clock_title" msgid="2126046720254613991">"گھڑی"</string>
     <string name="grid_title" msgid="1688173478777254123">"ایپ گرڈ"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"لاگو کریں"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"ترمیم کرنے کے لیے تھپتھپائيں"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"حالیہ وال پیپر رکھیں"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"لاگو کریں"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"طرز کا پیش منظر"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"گرڈ کا پیش منظر"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"فونٹ کا پیش منظر"</string>
@@ -35,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>، فی الحال لاگو کر دیا گیا"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>، فی الحال اطلاق کردہ اور پیش منظر شدہ ہے"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>، فی الحال پیش منظر شدہ ہے"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>، منتخب کردہ اور پیش منظر شدہ کو تبدیل کریں"</string>
     <string name="theme_description" msgid="3697012391785254635">"فونٹ: <xliff:g id="ID_1">%1$s</xliff:g>، آئیکنز: <xliff:g id="ID_2">%2$s</xliff:g>، شکل: <xliff:g id="ID_3">%3$s</xliff:g>، رنگ: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"ڈیفالٹ"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"فونٹ"</string>
@@ -79,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"حسب ضرورت رنگ"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"حسب ضرورت شکل"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"حسب ضرورت طرز کا نام"</string>
+    <string name="mode_title" msgid="2394873501427436055">"گہری تھیم"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"بیٹری سیور کی وجہ سے عارضی طور پر غیر فعال ہے"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"تھیم تبدیل کر دی گئی"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"تھیم کردہ آئیکنز"</string>
+    <string name="beta_title" msgid="8703819523760746458">"بی ٹا"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"ایپ گرڈ تبدیل کریں"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"وال پیپر کے رنگ"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"وال پیپر کا رنگ"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"بنیادی رنگ"</string>
+    <string name="color_changed" msgid="7029571720331641235">"رنگ کو تبدیل کر دیا گیا"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"ڈائنیمک"</string>
 </resources>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 46c07d8..44563b5 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -17,14 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="app_name" msgid="1647136562008520313">"Fon rasmi va stili"</string>
+    <string name="app_name" msgid="1647136562008520313">"Fon rasmi va uslubi"</string>
     <string name="theme_title" msgid="2144932106319405101">"Uslub"</string>
     <string name="clock_title" msgid="2126046720254613991">"Soat"</string>
     <string name="grid_title" msgid="1688173478777254123">"Ilovalar jadvali"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Tatbiq etish"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Tahrirlash uchun tegining"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Joriy fon rasmini saqlab qolish"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Tatbiq etish"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Dizaynga razm solish"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Kataklarga razm solish"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Shriftga nazar solish"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, hozirda tatbiq etilgan"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, hozirda tatbiq etilgan va tanishib chiqilgan"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, tanishib chiqilgan"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, oʻzgarish tanlangan va tanishib chiqilgan"</string>
     <string name="theme_description" msgid="3697012391785254635">"Shrifti: <xliff:g id="ID_1">%1$s</xliff:g>, belgilar: <xliff:g id="ID_2">%2$s</xliff:g>, shakli: <xliff:g id="ID_3">%3$s</xliff:g>, rangi: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Standart"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Shrift"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Maxsus rang"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Maxsus shakl"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Maxsus uslub nomi"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Tungi mavzu"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Quvvat tejash maqsadida vaqtinchalik faolsizlantirilgan"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Mavzu oʻzgartirildi"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Mavzuga oid ikonkalar"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Ilovalar jadvalini oʻzgartirish"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Fon ranglari"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Fon rasmi rangi"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Asosiy ranglar"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Rang oʻzgartirildi"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Dinamik"</string>
 </resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index e7b46a9..c078772 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -17,14 +17,13 @@
 
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="app_name" msgid="1647136562008520313">"Hình nền và kiểu"</string>
+    <string name="app_name" msgid="1647136562008520313">"Hình nền và phong cách"</string>
     <string name="theme_title" msgid="2144932106319405101">"Kiểu"</string>
     <string name="clock_title" msgid="2126046720254613991">"Đồng hồ"</string>
     <string name="grid_title" msgid="1688173478777254123">"Lưới ứng dụng"</string>
     <string name="apply_theme_btn" msgid="6293081192321303991">"Áp dụng"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Nhấn để chỉnh sửa"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Giữ hình nền hiện tại"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Áp dụng"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Xem trước kiểu"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Xem trước lưới"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Xem trước phông chữ"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, đang áp dụng"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, đang áp dụng và xem trước"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, đang xem trước"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, thay đổi đã được chọn và xem trước"</string>
     <string name="theme_description" msgid="3697012391785254635">"Phông chữ: <xliff:g id="ID_1">%1$s</xliff:g>, biểu tượng: <xliff:g id="ID_2">%2$s</xliff:g>, hình dáng: <xliff:g id="ID_3">%3$s</xliff:g>, màu: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Mặc định"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Phông chữ"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Màu tùy chỉnh"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Hình dạng tùy chỉnh"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Tên kiểu tùy chỉnh"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Giao diện tối"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Tạm thời tắt do tính năng của Trình tiết kiệm pin"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Đã thay đổi giao diện"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Biểu tượng theo chủ đề"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Thử nghiệm"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Thay đổi lưới ứng dụng"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Màu hình nền"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Màu hình nền"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Màu cơ bản"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Đã thay đổi màu"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Động"</string>
 </resources>
diff --git a/res/values-w600dp-port/dimens.xml b/res/values-w600dp-port/dimens.xml
new file mode 100644
index 0000000..ba92746
--- /dev/null
+++ b/res/values-w600dp-port/dimens.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2022 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<resources>
+    <!-- Dimensions for the customization option tiles -->
+    <dimen name="option_tile_width">79dp</dimen>
+    <dimen name="option_tile_grid_padding_horizontal">8dp</dimen>
+
+    <dimen name="component_color_chip_small_size_default">30dp</dimen>
+    <dimen name="color_seed_chip_margin">15dp</dimen>
+</resources>
diff --git a/res/values-w800dp/dimens.xml b/res/values-w800dp/dimens.xml
new file mode 100644
index 0000000..4cd6242
--- /dev/null
+++ b/res/values-w800dp/dimens.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2022 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<resources>
+    <!-- Dimensions for the customization option tiles -->
+    <dimen name="option_tile_width">87dp</dimen>
+    <dimen name="option_tile_grid_padding_horizontal">8dp</dimen>
+</resources>
\ No newline at end of file
diff --git a/res/values-w800dp/integers.xml b/res/values-w800dp/integers.xml
new file mode 100644
index 0000000..23fa48a
--- /dev/null
+++ b/res/values-w800dp/integers.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources>
+    <integer name="options_grid_num_columns">6</integer>
+</resources>
diff --git a/res/values-w840dp/attrs.xml b/res/values-w840dp/attrs.xml
new file mode 100644
index 0000000..f63f574
--- /dev/null
+++ b/res/values-w840dp/attrs.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources>
+    <item name="linear_layout_horizontal_display_options_max" format="float" type="dimen">6.35
+    </item>
+</resources>
\ No newline at end of file
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 5c116e4..1a20566 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"应用"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"点按即可修改"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"保留当前壁纸"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"应用"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"样式预览"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"网格预览"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"字体预览"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>，目前已应用"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>（目前应用及预览的项）"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>（目前预览的项）"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>，更改所选的项以及预览的项"</string>
     <string name="theme_description" msgid="3697012391785254635">"字体：<xliff:g id="ID_1">%1$s</xliff:g>，图标：<xliff:g id="ID_2">%2$s</xliff:g>，形状：<xliff:g id="ID_3">%3$s</xliff:g>，颜色：<xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"默认"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"字体"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"自定义颜色"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"自定义形状"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"自定义样式名称"</string>
+    <string name="mode_title" msgid="2394873501427436055">"深色主题"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"因省电模式已开启，该功能被暂时停用了"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"主题已更改"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"带主题的图标"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta 版"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"更改应用网格"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"壁纸颜色"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"壁纸颜色"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"基本颜色"</string>
+    <string name="color_changed" msgid="7029571720331641235">"颜色已更改"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"动态"</string>
 </resources>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index e7951e2..df0972c 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"套用"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"輕按即可編輯"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"保留目前桌布"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"套用"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"預覽樣式"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"預覽網格"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"字型預覽"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"目前已套用<xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"目前已套用及預覽<xliff:g id="ID_1">%1$s</xliff:g>"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"目前已預覽<xliff:g id="ID_1">%1$s</xliff:g>"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>，選取並預覽變更"</string>
     <string name="theme_description" msgid="3697012391785254635">"字型：<xliff:g id="ID_1">%1$s</xliff:g>，圖示：<xliff:g id="ID_2">%2$s</xliff:g>，形狀：<xliff:g id="ID_3">%3$s</xliff:g>，顏色：<xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"預設"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"字型"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"自訂顏色"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"自訂形狀"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"自訂樣式嘅名"</string>
+    <string name="mode_title" msgid="2394873501427436055">"深色主題背景"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"因「省電模式」而暫時停用"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"已經變咗主題"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"主題圖示"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta 版本"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"變更應用程式網格"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"桌布顏色"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"桌布顏色"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"基本顏色"</string>
+    <string name="color_changed" msgid="7029571720331641235">"已經變咗顏色"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"動態"</string>
 </resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index f687b7a..478d759 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"套用"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"輕觸這裡即可編輯"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"繼續使用目前的桌布"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"套用"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"樣式預覽"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"網格預覽"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"字型預覽"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"目前已套用「<xliff:g id="ID_1">%1$s</xliff:g>」"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g> (目前套用及預覽的項目)"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g> (目前預覽的項目)"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>，變更選取和預覽的項目"</string>
     <string name="theme_description" msgid="3697012391785254635">"字型：<xliff:g id="ID_1">%1$s</xliff:g>，圖示：<xliff:g id="ID_2">%2$s</xliff:g>，圖形：<xliff:g id="ID_3">%3$s</xliff:g>，顏色：<xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"預設"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"字型"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"自訂顏色"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"自訂形狀"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"自訂樣式名稱"</string>
+    <string name="mode_title" msgid="2394873501427436055">"深色主題"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"因省電模式而暫時停用"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"主題已變更"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"圖示套用主題色"</string>
+    <string name="beta_title" msgid="8703819523760746458">"Beta 版"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"變更應用程式格線"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"桌布顏色"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"桌布顏色"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"基本顏色"</string>
+    <string name="color_changed" msgid="7029571720331641235">"顏色已變更"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"動態"</string>
 </resources>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 68e1f93..e399001 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -24,7 +24,6 @@
     <string name="apply_theme_btn" msgid="6293081192321303991">"Faka"</string>
     <string name="edit_custom_theme_lbl" msgid="5211377705710775224">"Thepha ukuze uhlele"</string>
     <string name="keep_my_wallpaper" msgid="8012385376769568517">"Gcina isithombe sangemuva samanje"</string>
-    <string name="apply_btn" msgid="7965877231041987336">"Faka"</string>
     <string name="theme_preview_card_content_description" msgid="5989222908619535533">"Ukubuka kuqala kwesitayela"</string>
     <string name="grid_preview_card_content_description" msgid="8449383777584714842">"Ukubuka kuqala kwe-grid"</string>
     <string name="font_preview_content_description" msgid="128230439293337891">"Ukubuka kuqala ifonti"</string>
@@ -34,6 +33,7 @@
     <string name="option_applied_description" msgid="5022305212078053534">"<xliff:g id="ID_1">%1$s</xliff:g>, okufakwe manje"</string>
     <string name="option_applied_previewed_description" msgid="5269654286638446858">"<xliff:g id="ID_1">%1$s</xliff:g>, manje isetshenzisiwe yaphinde yabukwa kuqala"</string>
     <string name="option_previewed_description" msgid="3467217598865047661">"<xliff:g id="ID_1">%1$s</xliff:g>, manje ibukwe kuqala"</string>
+    <string name="option_change_applied_previewed_description" msgid="9197311327728570816">"<xliff:g id="ID_1">%1$s</xliff:g>, shintsha okukhethiwe nokuhlolwe kuqala"</string>
     <string name="theme_description" msgid="3697012391785254635">"Ifonti: <xliff:g id="ID_1">%1$s</xliff:g>, izithonjana: <xliff:g id="ID_2">%2$s</xliff:g>, isimo: <xliff:g id="ID_3">%3$s</xliff:g>, umbala: <xliff:g id="ID_4">%4$s</xliff:g>"</string>
     <string name="default_theme_title" msgid="2555741736622366797">"Okuzenzekelayo"</string>
     <string name="preview_name_font" msgid="4465423899630037038">"Ifonti"</string>
@@ -78,4 +78,15 @@
     <string name="accessibility_custom_color_title" msgid="4124246598886320663">"Umbala ongokwezifiso"</string>
     <string name="accessibility_custom_shape_title" msgid="7708408259374643129">"Umumo ongokwezifiso"</string>
     <string name="accessibility_custom_name_title" msgid="5494460518085463262">"Igama lesitayela esingokwezifiso"</string>
+    <string name="mode_title" msgid="2394873501427436055">"Itimu emnyama"</string>
+    <string name="mode_disabled_msg" msgid="9196245518435936512">"Kukhutshaziwe okwesikhashana ngenxa Yesilondolozi Sebhethri"</string>
+    <string name="mode_changed" msgid="2243581369395418584">"Itimu ishintshiwe"</string>
+    <string name="themed_icon_title" msgid="7312460430471956558">"Izithonjana ezinetimu"</string>
+    <string name="beta_title" msgid="8703819523760746458">"I-beta"</string>
+    <string name="gird_picker_entry_content_description" msgid="9087651470212293439">"Shintsha igridi ye-app"</string>
+    <string name="wallpaper_color_tab" msgid="1447926591721403840">"Imibala yesithombe sangemuva"</string>
+    <string name="wallpaper_color_title" msgid="5687965239180986458">"Umbala wesithombe sangemuva"</string>
+    <string name="preset_color_tab" msgid="3133391839341329314">"Imibala eyisisekelo"</string>
+    <string name="color_changed" msgid="7029571720331641235">"Umbala ushintshiwe"</string>
+    <string name="adaptive_color_title" msgid="1336508599235896205">"Okuguqukayo"</string>
 </resources>
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
new file mode 100644
index 0000000..288dd19
--- /dev/null
+++ b/res/values/attrs.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+     Copyright (C) 2022 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<resources>
+    <item name="linear_layout_horizontal_display_options_max" format="float" type="dimen">4.35
+    </item>
+</resources>
\ No newline at end of file
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 2086480..0ad221e 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -38,6 +38,7 @@
     <dimen name="option_tile_margin_horizontal">6dp</dimen>
     <dimen name="option_tile_padding_vertical">12dp</dimen>
     <dimen name="option_tile_padding_horizontal">12dp</dimen>
+    <dimen name="option_tile_grid_padding_horizontal">4dp</dimen>
     <dimen name="option_icon_size">16dp</dimen>
     <dimen name="theme_option_icon_sample_height">22dp</dimen>
     <dimen name="theme_option_icon_sample_width">22dp</dimen>
@@ -123,4 +124,15 @@
 
     <dimen name="beta_tag_background_width">46dp</dimen>
     <dimen name="beta_tag_background_height">24dp</dimen>
+
+    <!-- For the color option section -->
+    <dimen name="color_options_container_top_margin">24dp</dimen>
+
+    <!-- For the color page. -->
+    <dimen name="color_page_indicator_margin_top">16dp</dimen>
+
+    <dimen name="component_color_chip_small_size_default">29dp</dimen>
+    <dimen name="color_seed_option_tile_padding">10dp</dimen>
+    <dimen name="color_seed_option_tile_padding_selected">6dp</dimen>
+    <dimen name="color_seed_chip_margin">14dp</dimen>
 </resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index f2d0f21..1a15fd0 100755
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -247,4 +247,17 @@
 
     <!-- The content description of grid picker entry. [CHAR LIMIT=NONE] -->
     <string name="gird_picker_entry_content_description" msgid="7538418512525897691">Change app grid</string>
+
+    <!-- The title for the tab with colors from wallpaper. [CHAR_LIMIT=20]-->
+    <string name="wallpaper_color_tab">Wallpaper colors</string>
+    <!-- The description on an item that shows a color obtained from the wallpaper
+        (used mainly for accessibility). [CHAR_LIMIT=NONE] -->
+    <string name="wallpaper_color_title">Wallpaper color</string>
+    <!-- The title for the tab with a default set of color options. [CHAR_LIMIT=20]-->
+    <string name="preset_color_tab">Basic colors</string>
+    <!-- The text for A11y announcement when color changes. -->
+    <string name="color_changed">Color changed</string>
+    <!-- Title of a section of color selection option that obtains colors automatically from the
+        wallpaper instead of a set color [CHAR LIMIT=15] -->
+    <string name="adaptive_color_title">Dynamic</string>
 </resources>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index c0a0aed..3991b65 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -41,6 +41,17 @@
 
         <item name="android:windowContentOverlay">@null</item>
         <item name="android:windowDisablePreview">true</item>
+        <item name="snackbarStyle">@style/SnackbarMargin</item>
+
+        <item name="borderlessButtonStyle">@style/Widget.AppCompat.Button.Borderless</item>
+        <item name="colorAccent">@color/accent_color</item>
+        <item name="colorSurface">@color/design_default_color_surface</item>
+        <item name="colorOnSurface">@color/design_default_color_on_surface</item>
+    </style>
+
+    <!-- Snackbar margin -->
+    <style name="SnackbarMargin" parent="Widget.MaterialComponents.Snackbar">
+        <item name="android:layout_margin">48dp</item>
     </style>
 
     <!-- Bottom nav -->
diff --git a/robolectric_tests/Android.mk b/robolectric_tests/Android.mk
index 1117cc3..7d9b0e1 100644
--- a/robolectric_tests/Android.mk
+++ b/robolectric_tests/Android.mk
@@ -29,7 +29,7 @@
     mockito-robolectric-prebuilt \
     truth-prebuilt
 LOCAL_JAVA_LIBRARIES := \
-    platform-robolectric-3.6.2-prebuilt
+    platform-robolectric-4.5.1-prebuilt
 
 LOCAL_JAVA_RESOURCE_DIRS := config
 
diff --git a/robolectric_tests/config/robolectric.properties b/robolectric_tests/config/robolectric.properties
index 6a5d031..6c518c0 100644
--- a/robolectric_tests/config/robolectric.properties
+++ b/robolectric_tests/config/robolectric.properties
@@ -1,2 +1,2 @@
 manifest=packages/apps/ThemePicker/AndroidManifest.xml
-sdk=27
+sdk=31
diff --git a/robolectric_tests/robolectric_gradle_config/robolectric.properties b/robolectric_tests/robolectric_gradle_config/robolectric.properties
index 926e354..2916ca9 100644
--- a/robolectric_tests/robolectric_gradle_config/robolectric.properties
+++ b/robolectric_tests/robolectric_gradle_config/robolectric.properties
@@ -1,3 +1,3 @@
 # Do not include the manifest definition in this version
 # as it is specified directly in the gradle file
-sdk=27
\ No newline at end of file
+sdk=31
\ No newline at end of file
diff --git a/robolectric_tests/src/com/android/customization/model/clock/ClockManagerTest.java b/robolectric_tests/src/com/android/customization/model/clock/ClockManagerTest.java
index f431006..574548a 100644
--- a/robolectric_tests/src/com/android/customization/model/clock/ClockManagerTest.java
+++ b/robolectric_tests/src/com/android/customization/model/clock/ClockManagerTest.java
@@ -18,8 +18,8 @@
 import static junit.framework.TestCase.fail;
 
 import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.doAnswer;
 import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
 
 import android.content.ContentResolver;
 import android.provider.Settings.Secure;
@@ -86,7 +86,9 @@
 
     @Test
     public void testApply_whenJSONExceptionOccurs_callsOnError() {
-        when(mMockClockface.getId()).thenThrow(JSONException.class);
+        doAnswer((invocation) -> {
+            throw new JSONException("Fake Test Excepton");
+        }).when(mMockClockface).getId();
 
         mManager.apply(mMockClockface, mMockCallback);
 
diff --git a/robolectric_tests/src/com/android/customization/model/color/ColorCustomizationManagerTest.kt b/robolectric_tests/src/com/android/customization/model/color/ColorCustomizationManagerTest.kt
new file mode 100644
index 0000000..f6f4227
--- /dev/null
+++ b/robolectric_tests/src/com/android/customization/model/color/ColorCustomizationManagerTest.kt
@@ -0,0 +1,175 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color
+
+import android.app.WallpaperColors
+import android.graphics.Color
+import com.android.customization.model.CustomizationManager
+import com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_SYSTEM_PALETTE
+import com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_COLOR
+import com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_HOME
+import com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_PRESET
+import com.android.customization.model.color.ColorOptionsProvider.OVERLAY_COLOR_BOTH
+import com.android.customization.model.color.ColorOptionsProvider.OVERLAY_COLOR_INDEX
+import com.android.customization.model.color.ColorOptionsProvider.OVERLAY_COLOR_SOURCE
+import com.android.customization.model.theme.OverlayManagerCompat
+import com.android.systemui.monet.Style
+import com.google.common.truth.Truth.assertThat
+import org.json.JSONObject
+import org.junit.Before
+import org.junit.Rule
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.ArgumentMatchers.anyInt
+import org.mockito.Mock
+import org.mockito.MockitoAnnotations
+import org.mockito.junit.MockitoJUnit
+import org.mockito.junit.MockitoRule
+import org.robolectric.RobolectricTestRunner
+import org.robolectric.RuntimeEnvironment
+
+/**
+ * Tests of {@link ColorCustomizationManager}.
+ */
+// TODO(b/222433744): most of these tests are failing due to the manager apk missing in the image
+@RunWith(RobolectricTestRunner::class)
+class ColorCustomizationManagerTest {
+
+    @get:Rule
+    val rule: MockitoRule = MockitoJUnit.rule()
+
+    @Mock private lateinit var provider: ColorOptionsProvider
+    @Mock private lateinit var mockOM: OverlayManagerCompat
+
+    private lateinit var manager: ColorCustomizationManager
+
+    @Before
+    fun setUp() {
+        MockitoAnnotations.initMocks(this)
+        val application = RuntimeEnvironment.application
+        manager = ColorCustomizationManager(provider, application.contentResolver, mockOM)
+    }
+
+    @Test
+    fun testParseSettings() {
+        val source = COLOR_SOURCE_HOME
+        val style = Style.SPRITZ
+        val someColor = "aabbcc"
+        val someOtherColor = "bbccdd"
+        val settings = mapOf(OVERLAY_CATEGORY_SYSTEM_PALETTE to someColor,
+                OVERLAY_CATEGORY_COLOR to someOtherColor,
+                OVERLAY_COLOR_SOURCE to source,
+                ColorOption.TIMESTAMP_FIELD to "12345")
+        val json = JSONObject(settings).toString()
+
+        manager.parseSettings(json)
+
+        assertThat(manager.currentColorSource).isEqualTo(source)
+        assertThat(manager.currentStyle).isEqualTo(style)
+        assertThat(manager.currentOverlays.size).isEqualTo(2)
+        assertThat(manager.currentOverlays.get(OVERLAY_CATEGORY_COLOR)).isEqualTo(someOtherColor)
+        assertThat(manager.currentOverlays.get(OVERLAY_CATEGORY_SYSTEM_PALETTE))
+                .isEqualTo(someColor)
+    }
+
+    @Test
+    fun apply_ColorBundle_index() {
+        testApplyColorBundle(1, "1")
+        testApplyColorBundle(2, "2")
+        testApplyColorBundle(3, "3")
+        testApplyColorBundle(4, "4")
+    }
+
+    private fun testApplyColorBundle(index: Int, value: String) {
+        manager.apply(getColorBundle(index), object : CustomizationManager.Callback {
+            override fun onSuccess() {}
+            override fun onError(throwable: Throwable?) {}
+        })
+
+        val overlaysJson = JSONObject(manager.storedOverlays)
+
+        assertThat(overlaysJson.getString(OVERLAY_COLOR_INDEX)).isEqualTo(value)
+    }
+
+    private fun getColorBundle(index: Int): ColorBundle {
+        return ColorBundle(
+            "fake color", mapOf("fake_package" to "fake_color"),
+            /* isDefault= */ false,
+            null,
+            /* index= */ index,
+            null
+        )
+    }
+
+    @Test
+    fun apply_ColorSeed_index() {
+        testApplyColorSeed(1, "1")
+        testApplyColorSeed(2, "2")
+        testApplyColorSeed(3, "3")
+        testApplyColorSeed(4, "4")
+    }
+
+    private fun testApplyColorSeed(index: Int, value: String) {
+        manager.apply(getColorSeed(index), object : CustomizationManager.Callback {
+            override fun onSuccess() {}
+            override fun onError(throwable: Throwable?) {}
+        })
+
+        val overlaysJson = JSONObject(manager.storedOverlays)
+        assertThat(overlaysJson.getString(OVERLAY_COLOR_INDEX)).isEqualTo(value)
+    }
+
+    private fun getColorSeed(index: Int): ColorSeedOption {
+        return ColorSeedOption(
+            "fake color",
+            mapOf("fake_package" to "fake_color"),
+            /* isDefault= */ false,
+            COLOR_SOURCE_PRESET,
+            null,
+            index,
+            null
+        )
+    }
+
+    @Test
+    fun testApply_colorSeedFromWallpaperBoth_shouldReturnBothValue() {
+        val wallpaperColor = WallpaperColors(Color.valueOf(Color.RED), null, null)
+        manager.setWallpaperColors(wallpaperColor, wallpaperColor)
+
+        manager.apply(getColorSeed(anyInt()), object : CustomizationManager.Callback {
+            override fun onSuccess() {}
+            override fun onError(throwable: Throwable?) {}
+        })
+
+        val overlaysJson = JSONObject(manager.storedOverlays)
+        assertThat(overlaysJson.getString(OVERLAY_COLOR_BOTH)).isEqualTo("1")
+    }
+
+    @Test
+    fun testApply_colorSeedFromWallpaperDifferent_shouldReturnNonBothValue() {
+        val wallpaperColor1 = WallpaperColors(Color.valueOf(Color.RED), null, null)
+        val wallpaperColor2 = WallpaperColors(Color.valueOf(Color.BLUE), null, null)
+        manager.setWallpaperColors(wallpaperColor1, wallpaperColor2)
+
+        manager.apply(getColorSeed(anyInt()), object : CustomizationManager.Callback {
+            override fun onSuccess() {}
+            override fun onError(throwable: Throwable?) {}
+        })
+
+        val overlaysJson = JSONObject(manager.storedOverlays)
+        assertThat(overlaysJson.getString(OVERLAY_COLOR_BOTH)).isEqualTo("0")
+    }
+}
diff --git a/robolectric_tests/src/com/android/customization/model/color/ColorOptionTest.kt b/robolectric_tests/src/com/android/customization/model/color/ColorOptionTest.kt
new file mode 100644
index 0000000..271aa83
--- /dev/null
+++ b/robolectric_tests/src/com/android/customization/model/color/ColorOptionTest.kt
@@ -0,0 +1,180 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color
+
+import com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_HOME
+import com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_LOCK
+import com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_PRESET
+import com.android.systemui.monet.Style
+import com.google.common.truth.Truth.assertThat
+import org.junit.Assert.assertEquals
+import org.junit.Rule
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.mockito.Mock
+import org.mockito.Mockito.`when`
+import org.mockito.junit.MockitoJUnit
+import org.mockito.junit.MockitoRule
+import org.robolectric.RobolectricTestRunner
+
+/**
+ * Tests of {@link ColorOption}.
+ */
+@RunWith(RobolectricTestRunner::class)
+class ColorOptionTest {
+
+    @get:Rule
+    val rule: MockitoRule = MockitoJUnit.rule()
+
+    @Mock
+    private lateinit var manager: ColorCustomizationManager
+
+    @Test
+    fun colorOption_Source_Preset() {
+        val bundleOption: ColorOption = ColorBundle("fake color",
+                mapOf("fake_package" to "fake_color"), false, null, /* index= */ 0, null)
+        assertEquals(COLOR_SOURCE_PRESET, bundleOption.source)
+    }
+
+    @Test
+    fun colorOption_bundle_index() {
+        testBundleOptionIndex(1)
+        testBundleOptionIndex(2)
+        testBundleOptionIndex(3)
+        testBundleOptionIndex(4)
+    }
+
+    private fun testBundleOptionIndex(index: Int) {
+        val bundleOption: ColorBundle = ColorBundle("fake color",
+                mapOf("fake_package" to "fake_color"), false, null, /* index= */ index, null)
+        assertThat(bundleOption.index).isEqualTo(index)
+    }
+
+    @Test
+    fun colorOption_Source_Seed() {
+        testSeedOptionSource(COLOR_SOURCE_HOME)
+        testSeedOptionSource(COLOR_SOURCE_LOCK)
+    }
+
+    private fun testSeedOptionSource(source: String) {
+        val seedOption: ColorOption = ColorSeedOption("fake color",
+                mapOf("fake_package" to "fake_color"), false, source, null, /* index= */ 0, null)
+        assertThat(seedOption.source).isEqualTo(source)
+    }
+
+    @Test
+    fun colorOption_seed_style() {
+        testSeedOptionStyle(Style.TONAL_SPOT)
+        testSeedOptionStyle(Style.SPRITZ)
+        testSeedOptionStyle(Style.VIBRANT)
+        testSeedOptionStyle(Style.EXPRESSIVE)
+    }
+
+    private fun testSeedOptionStyle(style: Style) {
+        val seedOption: ColorOption = ColorSeedOption("fake color",
+            mapOf("fake_package" to "fake_color"), /* isDefault= */ false, "fake_source", style,
+            0, null)
+        assertThat(seedOption.style).isEqualTo(style)
+    }
+
+    @Test
+    fun colorOption_seed_index() {
+        testSeedOptionIndex(1)
+        testSeedOptionIndex(2)
+        testSeedOptionIndex(3)
+        testSeedOptionIndex(4)
+    }
+
+    private fun testSeedOptionIndex(index: Int) {
+        val seedOption: ColorOption = ColorSeedOption("fake color",
+                mapOf("fake_package" to "fake_color"),
+                /* isDefault= */ false,
+                "fake_source",
+                Style.TONAL_SPOT,
+                index,
+                /* previewInfo= */ null)
+        assertThat(seedOption.index).isEqualTo(index)
+    }
+
+    private fun setUpSeedOption(isDefault: Boolean, source: String = "some_source")
+            : ColorSeedOption {
+        val overlays = if (isDefault) {
+            HashMap()
+        } else {
+            mapOf("package" to "value", "otherPackage" to "otherValue")
+        }
+        `when`(manager.currentOverlays).thenReturn(overlays)
+        return ColorSeedOption("seed",
+                overlays,
+                isDefault,
+                source,
+                Style.TONAL_SPOT,
+                /* index= */ 0,
+                /* previewInfo= */ null)
+    }
+
+    @Test
+    fun seedOption_isActive_notDefault_SourceSet() {
+        val source = "some_source"
+        val seedOption = setUpSeedOption(false, source)
+        `when`(manager.currentColorSource).thenReturn(source)
+
+        assertThat(seedOption.isActive(manager)).isTrue()
+    }
+
+    @Test
+    fun seedOption_isActive_notDefault_NoSource() {
+        val seedOption = setUpSeedOption(false)
+        `when`(manager.currentColorSource).thenReturn(null)
+
+        assertThat(seedOption.isActive(manager)).isTrue()
+    }
+
+    @Test
+    fun seedOption_isActive_notDefault_differentSource() {
+        val seedOption = setUpSeedOption(false)
+        `when`(manager.currentColorSource).thenReturn("some_other_source")
+
+        assertThat(seedOption.isActive(manager)).isFalse()
+    }
+
+    @Test
+    fun seedOption_isActive_default_emptyJson() {
+        val seedOption = setUpSeedOption(true)
+        `when`(manager.storedOverlays).thenReturn("")
+
+        assertThat(seedOption.isActive(manager)).isTrue()
+    }
+
+    @Test
+    fun seedOption_isActive_default_nonEmptyJson() {
+        val seedOption = setUpSeedOption(true)
+
+        `when`(manager.storedOverlays).thenReturn("{non-empty-json}")
+
+        // Should still be Active because overlays is empty
+        assertThat(seedOption.isActive(manager)).isTrue()
+    }
+
+    @Test
+    fun seedOption_isActive_default_nonEmptyOverlays() {
+        val seedOption = setUpSeedOption(true)
+
+        `when`(manager.currentOverlays).thenReturn(mapOf("a" to "b"))
+        // TODO(b/222433744): failing as it's true
+        assertThat(seedOption.isActive(manager)).isFalse()
+    }
+}
diff --git a/robolectric_tests/src/com/android/customization/model/color/ColorSectionControllerTest.java b/robolectric_tests/src/com/android/customization/model/color/ColorSectionControllerTest.java
new file mode 100644
index 0000000..820e641
--- /dev/null
+++ b/robolectric_tests/src/com/android/customization/model/color/ColorSectionControllerTest.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import androidx.appcompat.app.AppCompatActivity;
+
+import com.android.wallpaper.model.WallpaperColorsViewModel;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.Robolectric;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+
+/**
+ * Tests of {@link ColorSectionController}.
+ */
+@RunWith(RobolectricTestRunner.class)
+@Config(manifest = Config.NONE)
+public final class ColorSectionControllerTest {
+
+    private AppCompatActivity mActivity;
+    private ColorSectionController mColorSectionController;
+
+    /**
+     * Set up the test case.
+     */
+    @Before
+    public void setUp() {
+        MockitoAnnotations.initMocks(this);
+        mActivity = Robolectric.buildActivity(AppCompatActivity.class).create().get();
+        mColorSectionController = new ColorSectionController(mActivity,
+                new WallpaperColorsViewModel(), mActivity, null);
+    }
+
+    /**
+     * isAvailable()'s test.
+     */
+    @Test
+    @Config(manifest = Config.NONE)
+    public void isAvailable_nullContext_shouldReturnFalse() {
+        assertThat(mColorSectionController.isAvailable(/* context= */ null)).isFalse();
+    }
+}
+
diff --git a/robolectric_tests/src/com/android/customization/model/grid/GridOptionsManagerTest.java b/robolectric_tests/src/com/android/customization/model/grid/GridOptionsManagerTest.java
index 64a8389..4268725 100644
--- a/robolectric_tests/src/com/android/customization/model/grid/GridOptionsManagerTest.java
+++ b/robolectric_tests/src/com/android/customization/model/grid/GridOptionsManagerTest.java
@@ -31,7 +31,6 @@
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
-import org.robolectric.Robolectric;
 import org.robolectric.RobolectricTestRunner;
 
 @RunWith(RobolectricTestRunner.class)
@@ -69,7 +68,6 @@
     @Test
     public void testFetch_backgroundThread() {
         mManager.fetchOptions(null, false);
-        Robolectric.flushBackgroundThreadScheduler();
         verify(mProvider).fetch(anyBoolean());
     }
 }
diff --git a/src/com/android/customization/model/ResourceConstants.java b/src/com/android/customization/model/ResourceConstants.java
index 86eb7f4..aaee935 100644
--- a/src/com/android/customization/model/ResourceConstants.java
+++ b/src/com/android/customization/model/ResourceConstants.java
@@ -58,6 +58,8 @@
      * Overlay Categories that theme picker handles.
      */
     String OVERLAY_CATEGORY_COLOR = "android.theme.customization.accent_color";
+    String OVERLAY_CATEGORY_SYSTEM_PALETTE = "android.theme.customization.system_palette";
+    String OVERLAY_CATEGORY_THEME_STYLE = "android.theme.customization.theme_style";
     String OVERLAY_CATEGORY_FONT = "android.theme.customization.font";
     String OVERLAY_CATEGORY_SHAPE = "android.theme.customization.adaptive_icon_shape";
     String OVERLAY_CATEGORY_ICON_ANDROID = "android.theme.customization.icon_pack.android";
@@ -88,6 +90,14 @@
             "ic_battery_80_24dp"
     };
 
+    /**
+     * Color bundle strings used to reference system resources.
+     */
+    String COLOR_BUNDLES_ARRAY_NAME = "color_bundles";
+    String COLOR_BUNDLE_NAME_PREFIX = "bundle_name_";
+    String COLOR_BUNDLE_MAIN_COLOR_PREFIX = "color_secondary_";
+    String COLOR_BUNDLE_STYLE_PREFIX = "color_style_";
+
     ArrayList<String> sTargetPackages = new ArrayList<>();
     String ACCENT_COLOR_LIGHT_NAME = "accent_device_default_light";
     String ACCENT_COLOR_DARK_NAME = "accent_device_default_dark";
diff --git a/src/com/android/customization/model/clock/ContentProviderClockProvider.java b/src/com/android/customization/model/clock/ContentProviderClockProvider.java
index 8f4c031..f0df031 100644
--- a/src/com/android/customization/model/clock/ContentProviderClockProvider.java
+++ b/src/com/android/customization/model/clock/ContentProviderClockProvider.java
@@ -8,8 +8,10 @@
 import android.content.pm.ProviderInfo;
 import android.database.Cursor;
 import android.net.Uri;
-import android.os.AsyncTask;
+import android.os.Handler;
+import android.os.Looper;
 import android.text.TextUtils;
+import android.util.Log;
 
 import com.android.customization.model.CustomizationManager.OptionsFetchedListener;
 import com.android.customization.model.clock.Clockface.Builder;
@@ -21,9 +23,19 @@
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
 
 public class ContentProviderClockProvider implements ClockProvider {
 
+    private static final String TAG = "ContentProviderClockProvider";
+    private static final ExecutorService sExecutorService = Executors.newSingleThreadExecutor();
+    private static final String LIST_OPTIONS = "list_options";
+    private static final String COL_TITLE = "title";
+    private static final String COL_ID = "id";
+    private static final String COL_THUMBNAIL = "thumbnail";
+    private static final String COL_PREVIEW = "preview";
+
     private final Context mContext;
     private final ProviderInfo mProviderInfo;
     private List<Clockface> mClocks;
@@ -75,42 +87,7 @@
             }
             return;
         }
-        new ClocksFetchTask(mContext, mProviderInfo, options -> {
-            mClocks = options;
-            if (callback != null) {
-                if (!mClocks.isEmpty()) {
-                    callback.onOptionsLoaded(mClocks);
-                } else {
-                    callback.onError(null);
-                }
-            }
-        }).execute();
-    }
-
-    private static class ClocksFetchTask extends AsyncTask<Void, Void, List<Clockface>> {
-
-        private static final String LIST_OPTIONS = "list_options";
-
-        private static final String COL_NAME = "name";
-        private static final String COL_TITLE = "title";
-        private static final String COL_ID = "id";
-        private static final String COL_THUMBNAIL = "thumbnail";
-        private static final String COL_PREVIEW = "preview";
-
-        private final OptionsFetchedListener<Clockface> mCallback;
-        private Context mContext;
-        private final ProviderInfo mProviderInfo;
-
-        public ClocksFetchTask(Context context, ProviderInfo providerInfo,
-                OptionsFetchedListener<Clockface> callback) {
-            super();
-            mContext = context;
-            mProviderInfo = providerInfo;
-            mCallback = callback;
-        }
-
-        @Override
-        protected List<Clockface> doInBackground(Void... voids) {
+        sExecutorService.submit(() -> {
             Uri optionsUri = new Uri.Builder()
                     .scheme(ContentResolver.SCHEME_CONTENT)
                     .authority(mProviderInfo.authority)
@@ -121,7 +98,7 @@
 
             List<Clockface> clockfaces = new ArrayList<>();
             try (Cursor c = resolver.query(optionsUri, null, null, null, null)) {
-                while(c.moveToNext()) {
+                while (c != null && c.moveToNext()) {
                     String id = c.getString(c.getColumnIndex(COL_ID));
                     String title = c.getString(c.getColumnIndex(COL_TITLE));
                     String thumbnailUri = c.getString(c.getColumnIndex(COL_THUMBNAIL));
@@ -140,16 +117,19 @@
                 Glide.get(mContext).clearDiskCache();
             } catch (Exception e) {
                 clockfaces = null;
-            } finally {
-                mContext = null;
+                Log.e(TAG, "Failed to query clock face options.", e);
             }
-            return clockfaces;
-        }
-
-        @Override
-        protected void onPostExecute(List<Clockface> clockfaces) {
-            super.onPostExecute(clockfaces);
-            mCallback.onOptionsLoaded(clockfaces);
-        }
+            final List<Clockface> clockfaceList = clockfaces;
+            new Handler(Looper.getMainLooper()).post(() -> {
+                mClocks = clockfaceList;
+                if (callback != null) {
+                    if (!mClocks.isEmpty()) {
+                        callback.onOptionsLoaded(mClocks);
+                    } else {
+                        callback.onError(null);
+                    }
+                }
+            });
+        });
     }
 }
diff --git a/src/com/android/customization/model/color/ColorBundle.java b/src/com/android/customization/model/color/ColorBundle.java
new file mode 100644
index 0000000..dc5a367
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorBundle.java
@@ -0,0 +1,350 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import static com.android.customization.model.ResourceConstants.PATH_SIZE;
+
+import android.content.Context;
+import android.content.res.Configuration;
+import android.content.res.Resources;
+import android.graphics.Color;
+import android.graphics.Path;
+import android.graphics.PorterDuff;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.ShapeDrawable;
+import android.graphics.drawable.shapes.PathShape;
+import android.text.TextUtils;
+import android.view.View;
+import android.widget.ImageView;
+
+import androidx.annotation.ColorInt;
+import androidx.annotation.Dimension;
+import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.core.graphics.PathParser;
+
+import com.android.customization.model.ResourceConstants;
+import com.android.systemui.monet.Style;
+import com.android.wallpaper.R;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Represents a preset color available for the user to chose as their theming option.
+ */
+public class ColorBundle extends ColorOption {
+
+    private final PreviewInfo mPreviewInfo;
+
+    @VisibleForTesting ColorBundle(String title,
+            Map<String, String> overlayPackages, boolean isDefault, Style style, int index,
+            PreviewInfo previewInfo) {
+        super(title, overlayPackages, isDefault, style, index);
+        mPreviewInfo = previewInfo;
+    }
+
+    @Override
+    public void bindThumbnailTile(View view) {
+        Resources res = view.getContext().getResources();
+        int primaryColor = mPreviewInfo.resolvePrimaryColor(res);
+        int secondaryColor = mPreviewInfo.resolveSecondaryColor(res);
+        int padding = view.isActivated()
+                ? res.getDimensionPixelSize(R.dimen.color_seed_option_tile_padding_selected)
+                : res.getDimensionPixelSize(R.dimen.color_seed_option_tile_padding);
+
+        for (int i = 0; i < mPreviewColorIds.length; i++) {
+            ImageView colorPreviewImageView = view.findViewById(mPreviewColorIds[i]);
+            int color = i % 2 == 0 ? primaryColor : secondaryColor;
+            colorPreviewImageView.getDrawable().setColorFilter(color, PorterDuff.Mode.SRC);
+            colorPreviewImageView.setPadding(padding, padding, padding, padding);
+        }
+        view.setContentDescription(getContentDescription(view.getContext()));
+    }
+
+    @Override
+    public PreviewInfo getPreviewInfo() {
+        return mPreviewInfo;
+    }
+
+    @Override
+    public int getLayoutResId() {
+        return R.layout.color_option;
+    }
+
+    @Override
+    public String getSource() {
+        return ColorOptionsProvider.COLOR_SOURCE_PRESET;
+    }
+
+    /**
+     * The preview information of {@link ColorBundle}
+     */
+    public static class PreviewInfo implements ColorOption.PreviewInfo {
+        @ColorInt
+        public final int secondaryColorLight;
+        @ColorInt public final int secondaryColorDark;
+        // Monet system palette and accent colors
+        @ColorInt public final int primaryColorLight;
+        @ColorInt public final int primaryColorDark;
+        public final List<Drawable> icons;
+        public final Drawable shapeDrawable;
+        @Dimension
+        public final int bottomSheetCornerRadius;
+
+        @ColorInt private int mOverrideSecondaryColorLight = Color.TRANSPARENT;
+        @ColorInt private int mOverrideSecondaryColorDark = Color.TRANSPARENT;
+        @ColorInt private int mOverridePrimaryColorLight = Color.TRANSPARENT;
+        @ColorInt private int mOverridePrimaryColorDark = Color.TRANSPARENT;
+
+        private PreviewInfo(
+                int secondaryColorLight, int secondaryColorDark, int colorSystemPaletteLight,
+                int primaryColorDark, List<Drawable> icons, Drawable shapeDrawable,
+                @Dimension int cornerRadius) {
+            this.secondaryColorLight = secondaryColorLight;
+            this.secondaryColorDark = secondaryColorDark;
+            this.primaryColorLight = colorSystemPaletteLight;
+            this.primaryColorDark = primaryColorDark;
+            this.icons = icons;
+            this.shapeDrawable = shapeDrawable;
+            this.bottomSheetCornerRadius = cornerRadius;
+        }
+
+        /**
+         * Returns the accent color to be applied corresponding with the current configuration's
+         * UI mode.
+         * @return one of {@link #secondaryColorDark} or {@link #secondaryColorLight}
+         */
+        @ColorInt
+        public int resolveSecondaryColor(Resources res) {
+            boolean night = (res.getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK)
+                    == Configuration.UI_MODE_NIGHT_YES;
+            if (mOverrideSecondaryColorDark != Color.TRANSPARENT
+                    || mOverrideSecondaryColorLight != Color.TRANSPARENT) {
+                return night ? mOverrideSecondaryColorDark : mOverrideSecondaryColorLight;
+            }
+            return night ? secondaryColorDark : secondaryColorLight;
+        }
+
+        /**
+         * Returns the palette (main) color to be applied corresponding with the current
+         * configuration's UI mode.
+         * @return one of {@link #secondaryColorDark} or {@link #secondaryColorLight}
+         */
+        @ColorInt
+        public int resolvePrimaryColor(Resources res) {
+            boolean night = (res.getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK)
+                    == Configuration.UI_MODE_NIGHT_YES;
+            if (mOverridePrimaryColorDark != Color.TRANSPARENT
+                    || mOverridePrimaryColorLight != Color.TRANSPARENT) {
+                return night ? mOverridePrimaryColorDark : mOverridePrimaryColorLight;
+            }
+            return night ? primaryColorDark
+                    : primaryColorLight;
+        }
+
+        /**
+         * Sets accent colors to override the ones in this bundle
+         */
+        public void setOverrideAccentColors(int overrideColorAccentLight,
+                int overrideColorAccentDark) {
+            mOverrideSecondaryColorLight = overrideColorAccentLight;
+            mOverrideSecondaryColorDark = overrideColorAccentDark;
+        }
+
+        /**
+         * Sets palette colors to override the ones in this bundle
+         */
+        public void setOverridePaletteColors(int overrideColorPaletteLight,
+                int overrideColorPaletteDark) {
+            mOverridePrimaryColorLight = overrideColorPaletteLight;
+            mOverridePrimaryColorDark = overrideColorPaletteDark;
+        }
+    }
+
+    /**
+     * The builder of ColorBundle
+     */
+    public static class Builder {
+        protected String mTitle;
+        @ColorInt private int mSecondaryColorLight = Color.TRANSPARENT;
+        @ColorInt private int mSecondaryColorDark = Color.TRANSPARENT;
+        // System and Monet colors
+        @ColorInt private int mPrimaryColorLight = Color.TRANSPARENT;
+        @ColorInt private int mPrimaryColorDark = Color.TRANSPARENT;
+        private List<Drawable> mIcons = new ArrayList<>();
+        private boolean mIsDefault;
+        private Style mStyle = Style.TONAL_SPOT;
+        private int mIndex;
+        protected Map<String, String> mPackages = new HashMap<>();
+
+        /**
+         * Builds the ColorBundle
+         * @param context {@link Context}
+         * @return new {@link ColorBundle} object
+         */
+        public ColorBundle build(Context context) {
+            if (mTitle == null) {
+                mTitle = context.getString(R.string.adaptive_color_title);
+            }
+            return new ColorBundle(mTitle, mPackages, mIsDefault, mStyle, mIndex,
+                    createPreviewInfo(context));
+        }
+
+        /**
+         * Creates preview information
+         * @param context the {@link Context}
+         * @return the {@link PreviewInfo} object
+         */
+        public PreviewInfo createPreviewInfo(@NonNull Context context) {
+            ShapeDrawable shapeDrawable = null;
+            Resources system = context.getResources().getSystem();
+            String pathString = system.getString(
+                    system.getIdentifier(ResourceConstants.CONFIG_ICON_MASK,
+                            "string", ResourceConstants.ANDROID_PACKAGE));
+            Path path = null;
+            if (!TextUtils.isEmpty(pathString)) {
+                path = PathParser.createPathFromPathData(pathString);
+            }
+            if (path != null) {
+                PathShape shape = new PathShape(path, PATH_SIZE, PATH_SIZE);
+                shapeDrawable = new ShapeDrawable(shape);
+                shapeDrawable.setIntrinsicHeight((int) PATH_SIZE);
+                shapeDrawable.setIntrinsicWidth((int) PATH_SIZE);
+            }
+            return new PreviewInfo(mSecondaryColorLight,
+                    mSecondaryColorDark, mPrimaryColorLight, mPrimaryColorDark, mIcons,
+                    shapeDrawable, system.getDimensionPixelOffset(
+                    system.getIdentifier(ResourceConstants.CONFIG_CORNERRADIUS,
+                            "dimen", ResourceConstants.ANDROID_PACKAGE)));
+        }
+
+        public Map<String, String> getPackages() {
+            return Collections.unmodifiableMap(mPackages);
+        }
+
+        /**
+         * Gets title of this {@link ColorBundle} object
+         * @return title string
+         */
+        public String getTitle() {
+            return mTitle;
+        }
+
+        /**
+         * Sets title of bundle
+         * @param title specified title
+         * @return this of {@link Builder}
+         */
+        public Builder setTitle(String title) {
+            mTitle = title;
+            return this;
+        }
+
+        /**
+         * Sets color accent (light)
+         * @param colorSecondaryLight color accent light in {@link ColorInt}
+         * @return this of {@link Builder}
+         */
+        public Builder setColorSecondaryLight(@ColorInt int colorSecondaryLight) {
+            mSecondaryColorLight = colorSecondaryLight;
+            return this;
+        }
+
+        /**
+         * Sets color accent (dark)
+         * @param colorSecondaryDark color accent dark in {@link ColorInt}
+         * @return this of {@link Builder}
+         */
+        public Builder setColorSecondaryDark(@ColorInt int colorSecondaryDark) {
+            mSecondaryColorDark = colorSecondaryDark;
+            return this;
+        }
+
+        /**
+         * Sets color system palette (light)
+         * @param colorPrimaryLight color system palette in {@link ColorInt}
+         * @return this of {@link Builder}
+         */
+        public Builder setColorPrimaryLight(@ColorInt int colorPrimaryLight) {
+            mPrimaryColorLight = colorPrimaryLight;
+            return this;
+        }
+
+        /**
+         * Sets color system palette (dark)
+         * @param colorPrimaryDark color system palette in {@link ColorInt}
+         * @return this of {@link Builder}
+         */
+        public Builder setColorPrimaryDark(@ColorInt int colorPrimaryDark) {
+            mPrimaryColorDark = colorPrimaryDark;
+            return this;
+        }
+
+        /**
+         * Sets icon for bundle
+         * @param icon icon in {@link Drawable}
+         * @return this of {@link Builder}
+         */
+        public Builder addIcon(Drawable icon) {
+            mIcons.add(icon);
+            return this;
+        }
+
+        /**
+         * Sets overlay package for bundle
+         * @param category the category of bundle
+         * @param packageName tha name of package in the category
+         * @return this of {@link Builder}
+         */
+        public Builder addOverlayPackage(String category, String packageName) {
+            mPackages.put(category, packageName);
+            return this;
+        }
+
+        /**
+         * Sets the style of this color seed
+         * @param style color style of {@link Style}
+         * @return this of {@link Builder}
+         */
+        public Builder setStyle(Style style) {
+            mStyle = style;
+            return this;
+        }
+
+        /**
+         * Sets color option index of bundle
+         * @param index color option index
+         * @return this of {@link Builder}
+         */
+        public Builder setIndex(int index) {
+            mIndex = index;
+            return this;
+        }
+
+        /**
+         * Sets as default bundle
+         * @return this of {@link Builder}
+         */
+        public Builder asDefault() {
+            mIsDefault = true;
+            return this;
+        }
+    }
+}
diff --git a/src/com/android/customization/model/color/ColorBundlePreviewExtractor.java b/src/com/android/customization/model/color/ColorBundlePreviewExtractor.java
new file mode 100644
index 0000000..b67eec8
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorBundlePreviewExtractor.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import static com.android.customization.model.ResourceConstants.ANDROID_PACKAGE;
+import static com.android.customization.model.ResourceConstants.ICONS_FOR_PREVIEW;
+import static com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_COLOR;
+import static com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_SYSTEM_PALETTE;
+import static com.android.customization.model.color.ColorUtils.toColorString;
+
+import android.content.Context;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
+import android.content.res.Resources;
+import android.content.res.Resources.NotFoundException;
+import android.graphics.drawable.Drawable;
+import android.text.TextUtils;
+import android.util.Log;
+
+import androidx.annotation.ColorInt;
+
+import com.android.systemui.monet.ColorScheme;
+import com.android.systemui.monet.Style;
+
+/**
+ * Utility class to read all the details of a color bundle for previewing it
+ * (eg, actual color values)
+ */
+class ColorBundlePreviewExtractor {
+
+    private static final String TAG = "ColorBundlePreviewExtractor";
+
+    private final PackageManager mPackageManager;
+
+    ColorBundlePreviewExtractor(Context context) {
+        mPackageManager = context.getPackageManager();
+    }
+
+    void addSecondaryColor(ColorBundle.Builder builder, @ColorInt int color) {
+        ColorScheme darkColorScheme = new ColorScheme(color, true);
+        ColorScheme lightColorScheme = new ColorScheme(color, false);
+        int lightSecondary = lightColorScheme.getAccentColor();
+        int darkSecondary = darkColorScheme.getAccentColor();
+        builder.addOverlayPackage(OVERLAY_CATEGORY_COLOR, toColorString(color))
+                .setColorSecondaryLight(lightSecondary)
+                .setColorSecondaryDark(darkSecondary);
+    }
+
+    void addPrimaryColor(ColorBundle.Builder builder, @ColorInt int color) {
+        ColorScheme darkColorScheme = new ColorScheme(color, true);
+        ColorScheme lightColorScheme = new ColorScheme(color, false);
+        int lightPrimary = lightColorScheme.getAccentColor();
+        int darkPrimary = darkColorScheme.getAccentColor();
+        builder.addOverlayPackage(OVERLAY_CATEGORY_SYSTEM_PALETTE, toColorString(color))
+                .setColorPrimaryLight(lightPrimary)
+                .setColorPrimaryDark(darkPrimary);
+    }
+
+    void addColorStyle(ColorBundle.Builder builder, String styleName) {
+        Style s = Style.TONAL_SPOT;
+        if (!TextUtils.isEmpty(styleName)) {
+            try {
+                s = Style.valueOf(styleName);
+            } catch (IllegalArgumentException e) {
+                Log.i(TAG, "Unknown style : " + styleName + ". Will default to TONAL_SPOT.");
+            }
+        }
+        builder.setStyle(s);
+    }
+
+    void addAndroidIconOverlay(ColorBundle.Builder builder) throws NameNotFoundException {
+        addSystemDefaultIcons(builder, ICONS_FOR_PREVIEW);
+    }
+
+    void addSystemDefaultIcons(ColorBundle.Builder builder, String... previewIcons) {
+        try {
+            for (String iconName : previewIcons) {
+                builder.addIcon(loadIconPreviewDrawable(iconName));
+            }
+        } catch (NameNotFoundException | NotFoundException e) {
+            Log.w(TAG, "Didn't find android package icons, will skip preview", e);
+        }
+    }
+
+    Drawable loadIconPreviewDrawable(String drawableName)
+            throws NameNotFoundException, NotFoundException {
+        Resources packageRes = mPackageManager.getResourcesForApplication(ANDROID_PACKAGE);
+        Resources res = Resources.getSystem();
+        return res.getDrawable(packageRes.getIdentifier(drawableName, "drawable",
+                        ANDROID_PACKAGE), null);
+    }
+}
diff --git a/src/com/android/customization/model/color/ColorCustomizationManager.java b/src/com/android/customization/model/color/ColorCustomizationManager.java
new file mode 100644
index 0000000..908480f
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorCustomizationManager.java
@@ -0,0 +1,268 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import static com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_COLOR;
+import static com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_SYSTEM_PALETTE;
+import static com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_PRESET;
+import static com.android.customization.model.color.ColorOptionsProvider.OVERLAY_COLOR_BOTH;
+import static com.android.customization.model.color.ColorOptionsProvider.OVERLAY_COLOR_INDEX;
+import static com.android.customization.model.color.ColorOptionsProvider.OVERLAY_COLOR_SOURCE;
+import static com.android.customization.model.color.ColorOptionsProvider.OVERLAY_THEME_STYLE;
+
+import android.app.WallpaperColors;
+import android.content.ContentResolver;
+import android.content.Context;
+import android.database.ContentObserver;
+import android.net.Uri;
+import android.os.Handler;
+import android.os.Looper;
+import android.provider.Settings;
+import android.text.TextUtils;
+import android.util.Log;
+
+import androidx.annotation.Nullable;
+import androidx.annotation.VisibleForTesting;
+
+import com.android.customization.model.CustomizationManager;
+import com.android.customization.model.ResourceConstants;
+import com.android.customization.model.color.ColorOptionsProvider.ColorSource;
+import com.android.customization.model.theme.OverlayManagerCompat;
+import com.android.wallpaper.R;
+
+import org.json.JSONArray;
+import org.json.JSONException;
+import org.json.JSONObject;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+
+/** The Color manager to manage Color bundle related operations. */
+public class ColorCustomizationManager implements CustomizationManager<ColorOption> {
+
+    private static final String TAG = "ColorCustomizationManager";
+    private static final ExecutorService sExecutorService = Executors.newSingleThreadExecutor();
+
+    private static final Set<String> COLOR_OVERLAY_SETTINGS = new HashSet<>();
+    static {
+        COLOR_OVERLAY_SETTINGS.add(OVERLAY_CATEGORY_SYSTEM_PALETTE);
+        COLOR_OVERLAY_SETTINGS.add(OVERLAY_CATEGORY_COLOR);
+        COLOR_OVERLAY_SETTINGS.add(OVERLAY_COLOR_SOURCE);
+        COLOR_OVERLAY_SETTINGS.add(OVERLAY_THEME_STYLE);
+    }
+
+    private static ColorCustomizationManager sColorCustomizationManager;
+
+    private final ColorOptionsProvider mProvider;
+    private final OverlayManagerCompat mOverlayManagerCompat;
+    private final ContentResolver mContentResolver;
+    private final ContentObserver mObserver;
+
+    private Map<String, String> mCurrentOverlays;
+    @ColorSource private String mCurrentSource;
+    private String mCurrentStyle;
+    private WallpaperColors mHomeWallpaperColors;
+    private WallpaperColors mLockWallpaperColors;
+
+    /** Returns the {@link ColorCustomizationManager} instance. */
+    public static ColorCustomizationManager getInstance(Context context,
+            OverlayManagerCompat overlayManagerCompat) {
+        if (sColorCustomizationManager == null) {
+            Context appContext = context.getApplicationContext();
+            sColorCustomizationManager = new ColorCustomizationManager(
+                    new ColorProvider(appContext,
+                            appContext.getString(R.string.themes_stub_package)),
+                    appContext.getContentResolver(), overlayManagerCompat);
+        }
+        return sColorCustomizationManager;
+    }
+
+    @VisibleForTesting
+    ColorCustomizationManager(ColorOptionsProvider provider, ContentResolver contentResolver,
+            OverlayManagerCompat overlayManagerCompat) {
+        mProvider = provider;
+        mContentResolver = contentResolver;
+        mObserver = new ContentObserver(/* handler= */ null) {
+            @Override
+            public void onChange(boolean selfChange, Uri uri) {
+                super.onChange(selfChange, uri);
+                // Resets current overlays when system's theme setting is changed.
+                if (TextUtils.equals(uri.getLastPathSegment(), ResourceConstants.THEME_SETTING)) {
+                    Log.i(TAG, "Resetting " + mCurrentOverlays + ", " + mCurrentStyle + ", "
+                            + mCurrentSource + " to null");
+                    mCurrentOverlays = null;
+                    mCurrentStyle = null;
+                    mCurrentSource = null;
+                }
+            }
+        };
+        mContentResolver.registerContentObserver(
+                Settings.Secure.CONTENT_URI, /* notifyForDescendants= */ true, mObserver);
+        mOverlayManagerCompat = overlayManagerCompat;
+    }
+
+    @Override
+    public boolean isAvailable() {
+        return mOverlayManagerCompat.isAvailable() && mProvider.isAvailable();
+    }
+
+    @Override
+    public void apply(ColorOption theme, Callback callback) {
+        applyOverlays(theme, callback);
+    }
+
+    private void applyOverlays(ColorOption colorOption, Callback callback) {
+        sExecutorService.submit(() -> {
+            String currentStoredOverlays = getStoredOverlays();
+            if (TextUtils.isEmpty(currentStoredOverlays)) {
+                currentStoredOverlays = "{}";
+            }
+            JSONObject overlaysJson = null;
+            try {
+                overlaysJson = new JSONObject(currentStoredOverlays);
+                JSONObject colorJson = colorOption.getJsonPackages(true);
+                for (String setting : COLOR_OVERLAY_SETTINGS) {
+                    overlaysJson.remove(setting);
+                }
+                for (Iterator<String> it = colorJson.keys(); it.hasNext(); ) {
+                    String key = it.next();
+                    overlaysJson.put(key, colorJson.get(key));
+                }
+                overlaysJson.put(OVERLAY_COLOR_SOURCE, colorOption.getSource());
+                overlaysJson.put(OVERLAY_COLOR_INDEX, String.valueOf(colorOption.getIndex()));
+                overlaysJson.put(OVERLAY_THEME_STYLE,
+                        String.valueOf(colorOption.getStyle().toString()));
+
+                // OVERLAY_COLOR_BOTH is only for wallpaper color case, not preset.
+                if (!COLOR_SOURCE_PRESET.equals(colorOption.getSource())) {
+                    boolean isForBoth =
+                            (mLockWallpaperColors == null || mLockWallpaperColors.equals(
+                                    mHomeWallpaperColors));
+                    overlaysJson.put(OVERLAY_COLOR_BOTH, isForBoth ? "1" : "0");
+                } else {
+                    overlaysJson.remove(OVERLAY_COLOR_BOTH);
+                }
+            } catch (JSONException e) {
+                e.printStackTrace();
+            }
+            boolean allApplied = overlaysJson != null && Settings.Secure.putString(
+                    mContentResolver, ResourceConstants.THEME_SETTING, overlaysJson.toString());
+            new Handler(Looper.getMainLooper()).post(() -> {
+                if (allApplied) {
+                    callback.onSuccess();
+                } else {
+                    callback.onError(null);
+                }
+            });
+        });
+    }
+
+    @Override
+    public void fetchOptions(OptionsFetchedListener<ColorOption> callback, boolean reload) {
+        WallpaperColors lockWallpaperColors = mLockWallpaperColors;
+        if (lockWallpaperColors != null && mLockWallpaperColors.equals(mHomeWallpaperColors)) {
+            lockWallpaperColors = null;
+        }
+        mProvider.fetch(callback, reload, mHomeWallpaperColors, lockWallpaperColors);
+    }
+
+    /**
+     * Sets the current wallpaper colors to extract seeds from
+     */
+    public void setWallpaperColors(WallpaperColors homeColors,
+            @Nullable WallpaperColors lockColors) {
+        mHomeWallpaperColors = homeColors;
+        mLockWallpaperColors = lockColors;
+    }
+
+    /**
+     * Gets current overlays mapping
+     * @return the {@link Map} of overlays
+     */
+    public Map<String, String> getCurrentOverlays() {
+        if (mCurrentOverlays == null) {
+            parseSettings(getStoredOverlays());
+        }
+        return mCurrentOverlays;
+    }
+
+    /**
+     * @return The source of the currently applied color. One of
+     * {@link ColorOptionsProvider#COLOR_SOURCE_HOME},{@link ColorOptionsProvider#COLOR_SOURCE_LOCK}
+     * or {@link ColorOptionsProvider#COLOR_SOURCE_PRESET}.
+     */
+    @ColorSource
+    public String getCurrentColorSource() {
+        if (mCurrentSource == null) {
+            parseSettings(getStoredOverlays());
+        }
+        return mCurrentSource;
+    }
+
+    /**
+     * @return The style of the currently applied color. One of enum values in
+     * {@link com.android.systemui.monet.Style}.
+     */
+    public String getCurrentStyle() {
+        if (mCurrentStyle == null) {
+            parseSettings(getStoredOverlays());
+        }
+        return mCurrentStyle;
+    }
+
+    public String getStoredOverlays() {
+        return Settings.Secure.getString(mContentResolver, ResourceConstants.THEME_SETTING);
+    }
+
+    @VisibleForTesting
+    void parseSettings(String serializedJson) {
+        Map<String, String> allSettings = parseColorSettings(serializedJson);
+        mCurrentSource = allSettings.remove(OVERLAY_COLOR_SOURCE);
+        mCurrentStyle = allSettings.remove(OVERLAY_THEME_STYLE);
+        mCurrentOverlays = allSettings;
+    }
+
+    private Map<String, String> parseColorSettings(String serializedJsonSettings) {
+        Map<String, String> overlayPackages = new HashMap<>();
+        if (serializedJsonSettings != null) {
+            try {
+                final JSONObject jsonPackages = new JSONObject(serializedJsonSettings);
+
+                JSONArray names = jsonPackages.names();
+                if (names != null) {
+                    for (int i = 0; i < names.length(); i++) {
+                        String category = names.getString(i);
+                        if (COLOR_OVERLAY_SETTINGS.contains(category)) {
+                            try {
+                                overlayPackages.put(category, jsonPackages.getString(category));
+                            } catch (JSONException e) {
+                                Log.e(TAG, "parseColorOverlays: " + e.getLocalizedMessage(), e);
+                            }
+                        }
+                    }
+                }
+            } catch (JSONException e) {
+                Log.e(TAG, "parseColorOverlays: " + e.getLocalizedMessage(), e);
+            }
+        }
+        return overlayPackages;
+    }
+}
diff --git a/src/com/android/customization/model/color/ColorOption.java b/src/com/android/customization/model/color/ColorOption.java
new file mode 100644
index 0000000..c8b28c2
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorOption.java
@@ -0,0 +1,223 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import static com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_COLOR;
+import static com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_SYSTEM_PALETTE;
+
+import android.content.Context;
+import android.text.TextUtils;
+import android.util.Log;
+
+import androidx.annotation.VisibleForTesting;
+
+import com.android.customization.model.CustomizationManager;
+import com.android.customization.model.CustomizationOption;
+import com.android.customization.model.color.ColorOptionsProvider.ColorSource;
+import com.android.systemui.monet.Style;
+import com.android.wallpaper.R;
+
+import org.json.JSONException;
+import org.json.JSONObject;
+
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * Represents a color choice for the user.
+ * This could be a preset color or those obtained from a wallpaper.
+ */
+public abstract class ColorOption implements CustomizationOption<ColorOption> {
+
+    private static final String TAG = "ColorOption";
+    private static final String EMPTY_JSON = "{}";
+    @VisibleForTesting
+    static final String TIMESTAMP_FIELD = "_applied_timestamp";
+
+    protected final Map<String, String> mPackagesByCategory;
+    protected final int[] mPreviewColorIds = {R.id.color_preview_0, R.id.color_preview_1,
+            R.id.color_preview_2, R.id.color_preview_3};
+    private final String mTitle;
+    private final boolean mIsDefault;
+    private final Style mStyle;
+    private final int mIndex;
+    private CharSequence mContentDescription;
+
+    protected ColorOption(String title, Map<String, String> overlayPackages, boolean isDefault,
+            Style style, int index) {
+        mTitle = title;
+        mIsDefault = isDefault;
+        mStyle = style;
+        mIndex = index;
+        mPackagesByCategory = Collections.unmodifiableMap(removeNullValues(overlayPackages));
+    }
+
+    @Override
+    public String getTitle() {
+        return mTitle;
+    }
+
+    @Override
+    public boolean isActive(CustomizationManager<ColorOption> manager) {
+        ColorCustomizationManager colorManager = (ColorCustomizationManager) manager;
+
+        String currentStyle = colorManager.getCurrentStyle();
+        if (TextUtils.isEmpty(currentStyle)) {
+            currentStyle = Style.TONAL_SPOT.toString();
+        }
+        boolean isCurrentStyle = TextUtils.equals(getStyle().toString(), currentStyle);
+
+        if (mIsDefault) {
+            String serializedOverlays = colorManager.getStoredOverlays();
+            return (TextUtils.isEmpty(serializedOverlays) || EMPTY_JSON.equals(serializedOverlays)
+                    || colorManager.getCurrentOverlays().isEmpty() || !(serializedOverlays.contains(
+                    OVERLAY_CATEGORY_SYSTEM_PALETTE) || serializedOverlays.contains(
+                    OVERLAY_CATEGORY_COLOR))) && isCurrentStyle;
+        } else {
+            Map<String, String> currentOverlays = colorManager.getCurrentOverlays();
+            String currentSource = colorManager.getCurrentColorSource();
+            boolean isCurrentSource = TextUtils.isEmpty(currentSource) || getSource().equals(
+                    currentSource);
+            return isCurrentSource && isCurrentStyle && mPackagesByCategory.equals(currentOverlays);
+        }
+    }
+
+    /**
+     * This is similar to #equals() but it only compares this theme's packages with the other, that
+     * is, it will return true if applying this theme has the same effect of applying the given one.
+     */
+    public boolean isEquivalent(ColorOption other) {
+        if (other == null) {
+            return false;
+        }
+        if (mIsDefault) {
+            return other.isDefault() || TextUtils.isEmpty(other.getSerializedPackages())
+                    || EMPTY_JSON.equals(other.getSerializedPackages());
+        }
+        // Map#equals ensures keys and values are compared.
+        return mPackagesByCategory.equals(other.mPackagesByCategory);
+    }
+
+    /**
+     * Returns the {@link PreviewInfo} object for this ColorOption
+     */
+    public abstract PreviewInfo getPreviewInfo();
+
+    boolean isDefault() {
+        return mIsDefault;
+    }
+
+    public Map<String, String> getPackagesByCategory() {
+        return mPackagesByCategory;
+    }
+
+    public String getSerializedPackages() {
+        return getJsonPackages(false).toString();
+    }
+
+    public String getSerializedPackagesWithTimestamp() {
+        return getJsonPackages(true).toString();
+    }
+
+    /**
+     * Get a JSONObject representation of this color option, with the current values for each
+     * field, and optionally a {@link TIMESTAMP_FIELD} field.
+     * @param insertTimestamp whether to add a field with the current timestamp
+     * @return the JSONObject for this color option
+     */
+    public JSONObject getJsonPackages(boolean insertTimestamp) {
+        JSONObject json;
+        if (isDefault()) {
+            json = new JSONObject();
+        } else {
+            json = new JSONObject(mPackagesByCategory);
+            // Remove items with null values to avoid deserialization issues.
+            removeNullValues(json);
+        }
+        if (insertTimestamp) {
+            try {
+                json.put(TIMESTAMP_FIELD, System.currentTimeMillis());
+            } catch (JSONException e) {
+                Log.e(TAG, "Couldn't add timestamp to serialized themebundle");
+            }
+        }
+        return json;
+    }
+
+    private void removeNullValues(JSONObject json) {
+        Iterator<String> keys = json.keys();
+        Set<String> keysToRemove = new HashSet<>();
+        while (keys.hasNext()) {
+            String key = keys.next();
+            if (json.isNull(key)) {
+                keysToRemove.add(key);
+            }
+        }
+        for (String key : keysToRemove) {
+            json.remove(key);
+        }
+    }
+
+    private Map<String, String> removeNullValues(Map<String, String> map) {
+        return map.entrySet()
+                .stream()
+                .filter(entry -> entry.getValue() != null)
+                .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
+    }
+
+    protected CharSequence getContentDescription(Context context) {
+        if (mContentDescription == null) {
+            CharSequence defaultName = context.getString(R.string.default_theme_title);
+            if (isDefault()) {
+                mContentDescription = defaultName;
+            } else {
+                mContentDescription = mTitle;
+            }
+        }
+        return mContentDescription;
+    }
+
+    /**
+     * @return the source of this color option
+     */
+    @ColorSource
+    public abstract String getSource();
+
+    /**
+     * @return the style of this color option
+     */
+    public Style getStyle() {
+        return mStyle;
+    }
+
+    /**
+     * @return the index of this color option
+     */
+    public int getIndex() {
+        return mIndex;
+    }
+
+    /**
+     * The preview information of {@link ColorOption}
+     */
+    public interface PreviewInfo {
+    }
+
+}
diff --git a/src/com/android/customization/model/color/ColorOptionsProvider.java b/src/com/android/customization/model/color/ColorOptionsProvider.java
new file mode 100644
index 0000000..2803c7b
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorOptionsProvider.java
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import android.app.WallpaperColors;
+
+import androidx.annotation.Nullable;
+import androidx.annotation.StringDef;
+
+import com.android.customization.model.CustomizationManager.OptionsFetchedListener;
+
+/**
+ * Interface for a class that can retrieve Colors from the system.
+ */
+public interface ColorOptionsProvider {
+
+    /**
+     * Extra setting indicating the source of the color overlays (it can be one of
+     * COLOR_SOURCE_PRESET, COLOR_SOURCE_HOME or COLOR_SOURCE_LOCK)
+     */
+    String OVERLAY_COLOR_SOURCE = "android.theme.customization.color_source";
+
+    /**
+     * Extra setting indicating the style of the color overlays (it can be one of
+     * {@link com.android.systemui.monet.Style}).
+     */
+    String OVERLAY_THEME_STYLE = "android.theme.customization.theme_style";
+
+    /**
+     * Users selected color option, its value starts from 1 (which means first option).
+     */
+    String OVERLAY_COLOR_INDEX = "android.theme.customization.color_index";
+
+    /**
+     * Users selected color from both home and lock screen.
+     * Example value: 0 means home or lock screen, 1 means both.
+     */
+    String OVERLAY_COLOR_BOTH = "android.theme.customization.color_both";
+
+    String COLOR_SOURCE_PRESET = "preset";
+    String COLOR_SOURCE_HOME = "home_wallpaper";
+    String COLOR_SOURCE_LOCK = "lock_wallpaper";
+
+    @StringDef({COLOR_SOURCE_PRESET, COLOR_SOURCE_HOME, COLOR_SOURCE_LOCK})
+    @interface ColorSource{}
+
+
+    /**
+     * Returns whether themes are available in the current setup.
+     */
+    boolean isAvailable();
+
+    /**
+     * Retrieve the available themes.
+     * @param callback called when the themes have been retrieved (or immediately if cached)
+     * @param reload whether to reload themes if they're cached.
+     * @param homeWallpaperColors to get seed colors from
+     * @param lockWallpaperColors WallpaperColors from the lockscreen wallpaper to get seeds from,
+     *                            if different than homeWallpaperColors
+     */
+    void fetch(OptionsFetchedListener<ColorOption> callback, boolean reload,
+            @Nullable WallpaperColors homeWallpaperColors,
+            @Nullable WallpaperColors lockWallpaperColors);
+}
diff --git a/src/com/android/customization/model/color/ColorProvider.kt b/src/com/android/customization/model/color/ColorProvider.kt
new file mode 100644
index 0000000..a63f904
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorProvider.kt
@@ -0,0 +1,281 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color
+
+import android.app.WallpaperColors
+import android.content.Context
+import android.content.res.ColorStateList
+import android.content.res.Resources
+import android.text.TextUtils
+import androidx.annotation.ColorInt
+import androidx.core.graphics.ColorUtils.setAlphaComponent
+import androidx.lifecycle.LifecycleOwner
+import androidx.lifecycle.lifecycleScope
+import com.android.customization.model.CustomizationManager.OptionsFetchedListener
+import com.android.customization.model.ResourceConstants.COLOR_BUNDLES_ARRAY_NAME
+import com.android.customization.model.ResourceConstants.COLOR_BUNDLE_MAIN_COLOR_PREFIX
+import com.android.customization.model.ResourceConstants.COLOR_BUNDLE_NAME_PREFIX
+import com.android.customization.model.ResourceConstants.COLOR_BUNDLE_STYLE_PREFIX
+import com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_SYSTEM_PALETTE
+import com.android.customization.model.ResourceConstants.OVERLAY_CATEGORY_COLOR
+import com.android.customization.model.ResourcesApkProvider
+import com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_HOME
+import com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_LOCK
+import com.android.customization.model.color.ColorUtils.toColorString
+import com.android.systemui.monet.ColorScheme
+import com.android.systemui.monet.Style
+import com.android.wallpaper.compat.WallpaperManagerCompat
+import com.android.wallpaper.module.InjectorProvider
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.SupervisorJob
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
+import java.util.*
+
+/**
+ * Default implementation of {@link ColorOptionsProvider} that reads preset colors from
+ * a stub APK.
+ */
+class ColorProvider(context: Context, stubPackageName: String) :
+        ResourcesApkProvider(context, stubPackageName), ColorOptionsProvider {
+
+    companion object {
+        const val themeStyleEnabled = true
+        val styleSize = if (themeStyleEnabled) Style.values().size else 1
+        private const val TAG = "ColorProvider"
+        private const val MAX_SEED_COLORS = 4
+        private const val MAX_PRESET_COLORS = 4
+        private const val ALPHA_MASK = 0xFF
+    }
+
+    private val monetEnabled = ColorUtils.isMonetEnabled(context)
+    // TODO(b/202145216): Use style method to fetch the list of style.
+    private var styleList = if (themeStyleEnabled) arrayOf(
+        Style.TONAL_SPOT, Style.SPRITZ, Style.VIBRANT, Style.EXPRESSIVE
+    ) else arrayOf(Style.TONAL_SPOT)
+
+    private val scope = if (mContext is LifecycleOwner) {
+        mContext.lifecycleScope
+    } else {
+        CoroutineScope(Dispatchers.Default + SupervisorJob())
+    }
+
+    private var colorsAvailable = true
+    private var colorBundles: List<ColorOption>? = null
+    private var homeWallpaperColors: WallpaperColors? = null
+    private var lockWallpaperColors: WallpaperColors? = null
+
+
+    override fun isAvailable(): Boolean {
+        return monetEnabled && super.isAvailable() && colorsAvailable
+    }
+
+    override fun fetch(callback: OptionsFetchedListener<ColorOption>?, reload: Boolean,
+                       homeWallpaperColors: WallpaperColors?,
+                       lockWallpaperColors: WallpaperColors?) {
+        val wallpaperColorsChanged = this.homeWallpaperColors != homeWallpaperColors
+                || this.lockWallpaperColors != lockWallpaperColors
+        if (wallpaperColorsChanged) {
+            this.homeWallpaperColors = homeWallpaperColors
+            this.lockWallpaperColors = lockWallpaperColors
+        }
+        if(colorBundles == null || reload || wallpaperColorsChanged) {
+            scope.launch {
+                try {
+                    if (colorBundles == null || reload) {
+                        loadPreset()
+                    }
+                    if (wallpaperColorsChanged || reload) {
+                        loadSeedColors(homeWallpaperColors, lockWallpaperColors)
+                    }
+                } catch (e: Throwable) {
+                    colorsAvailable = false
+                    callback?.onError(e)
+                    return@launch
+                }
+                callback?.onOptionsLoaded(colorBundles)
+            }
+        } else {
+            callback?.onOptionsLoaded(colorBundles)
+        }
+    }
+
+    private fun isLockScreenWallpaperLastApplied(): Boolean {
+        // The WallpaperId increases every time a new wallpaper is set, so the larger wallpaper id
+        // is the most recently set wallpaper
+        val manager = InjectorProvider.getInjector().getWallpaperManagerCompat(mContext)
+        return manager.getWallpaperId(WallpaperManagerCompat.FLAG_LOCK) >
+                manager.getWallpaperId(WallpaperManagerCompat.FLAG_SYSTEM)
+    }
+
+    private fun loadSeedColors(homeWallpaperColors: WallpaperColors?,
+                               lockWallpaperColors: WallpaperColors?) {
+        if (homeWallpaperColors == null) return
+
+        val bundles: MutableList<ColorOption> = ArrayList()
+        val colorsPerSource = if (lockWallpaperColors == null) {
+            MAX_SEED_COLORS
+        } else {
+            MAX_SEED_COLORS / 2
+        }
+
+        if (lockWallpaperColors != null) {
+            val shouldLockColorsGoFirst = isLockScreenWallpaperLastApplied()
+            // First half of the colors
+            buildColorSeeds(
+                    if (shouldLockColorsGoFirst) lockWallpaperColors else homeWallpaperColors,
+                    colorsPerSource,
+                    if (shouldLockColorsGoFirst) COLOR_SOURCE_LOCK else COLOR_SOURCE_HOME,
+                    true,
+                    bundles)
+            // Second half of the colors
+            buildColorSeeds(
+                    if (shouldLockColorsGoFirst) homeWallpaperColors else lockWallpaperColors,
+                    MAX_SEED_COLORS - bundles.size / styleSize,
+                    if (shouldLockColorsGoFirst) COLOR_SOURCE_HOME else COLOR_SOURCE_LOCK,
+                    false,
+                    bundles)
+        } else {
+            buildColorSeeds(homeWallpaperColors, colorsPerSource, COLOR_SOURCE_HOME, true, bundles)
+        }
+
+        bundles.addAll(colorBundles?.filterNot{it is ColorSeedOption} ?: emptyList())
+        colorBundles = bundles
+    }
+
+    private fun buildColorSeeds(wallpaperColors: WallpaperColors, maxColors: Int, source: String,
+                                containsDefault: Boolean, bundles: MutableList<ColorOption>) {
+        val seedColors = ColorScheme.getSeedColors(wallpaperColors)
+        val defaultSeed = seedColors.first()
+        buildBundle(defaultSeed, 0, containsDefault, source, bundles)
+        for ((i, colorInt) in seedColors.drop(1).take(maxColors - 1).withIndex()) {
+            buildBundle(colorInt, i + 1, false, source, bundles)
+        }
+    }
+
+    private fun buildBundle(colorInt: Int, i: Int, isDefault: Boolean, source: String,
+                            bundles: MutableList<ColorOption>) {
+        // TODO(b/202145216): Measure time cost in the loop.
+        for (style in styleList) {
+            val builder = ColorSeedOption.Builder()
+            val lightColorScheme = ColorScheme(colorInt, /* darkTheme= */ false, style)
+            val darkColorScheme = ColorScheme(colorInt, /* darkTheme= */ true, style)
+            builder.setLightColors(lightColorScheme.getLightColorPreview())
+                .setDarkColors(darkColorScheme.getDarkColorPreview())
+                .addOverlayPackage(OVERLAY_CATEGORY_SYSTEM_PALETTE,
+                    if (isDefault) "" else toColorString(colorInt)
+                )
+                .addOverlayPackage(OVERLAY_CATEGORY_COLOR,
+                    if (isDefault) "" else toColorString(colorInt)
+                )
+                .setSource(source)
+                .setStyle(style)
+                // Color option index value starts from 1.
+                .setIndex(i + 1)
+
+            if (isDefault) builder.asDefault()
+
+            bundles.add(builder.build())
+        }
+    }
+
+    /**
+     * Returns the colors for the light theme version of the preview of a ColorScheme
+     * based on this order:
+     * |-------|
+     * | 0 | 1 |
+     * |---+---|
+     * | 2 | 3 |
+     * |-------|
+     */
+    @ColorInt
+    private fun ColorScheme.getLightColorPreview(): IntArray {
+        return intArrayOf(setAlphaComponent(this.accent1[2], ALPHA_MASK),
+                setAlphaComponent(this.accent1[2], ALPHA_MASK),
+                ColorStateList.valueOf(this.accent3[6]).withLStar(85f).colors[0],
+                setAlphaComponent(this.accent1[6], ALPHA_MASK))
+    }
+
+    /**
+     * Returns the color for the dark theme version of the preview of a ColorScheme
+     * based on this order:
+     * |-------|
+     * | 0 | 1 |
+     * |---+---|
+     * | 2 | 3 |
+     * |-------|
+     */
+    @ColorInt
+    private fun ColorScheme.getDarkColorPreview(): IntArray {
+        return intArrayOf(setAlphaComponent(this.accent1[2], ALPHA_MASK),
+                setAlphaComponent(this.accent1[2], ALPHA_MASK),
+                ColorStateList.valueOf(this.accent3[6]).withLStar(85f).colors[0],
+                setAlphaComponent(this.accent1[6], ALPHA_MASK))
+    }
+
+    private fun ColorScheme.getPresetColorPreview(seed: Int): IntArray {
+        return when(this.style) {
+            Style.FRUIT_SALAD -> intArrayOf(seed, this.accent1[2])
+            Style.TONAL_SPOT -> intArrayOf(this.accentColor, this.accentColor)
+            else -> intArrayOf(this.accent1[2], this.accent1[2])
+        }
+    }
+
+    private suspend fun loadPreset() = withContext(Dispatchers.IO) {
+        val extractor = ColorBundlePreviewExtractor(mContext)
+        val bundles: MutableList<ColorOption> = ArrayList()
+
+        val bundleNames = getItemsFromStub(COLOR_BUNDLES_ARRAY_NAME)
+        // Color option index value starts from 1.
+        var index = 1
+        val maxPresetColors = if (themeStyleEnabled) bundleNames.size else MAX_PRESET_COLORS
+        for (bundleName in bundleNames.take(maxPresetColors)) {
+            val builder = ColorBundle.Builder()
+            builder.title = getItemStringFromStub(COLOR_BUNDLE_NAME_PREFIX, bundleName)
+            builder.setIndex(index)
+            val colorFromStub = getItemColorFromStub(COLOR_BUNDLE_MAIN_COLOR_PREFIX, bundleName)
+            extractor.addPrimaryColor(builder, colorFromStub)
+            extractor.addSecondaryColor(builder, colorFromStub)
+            if (themeStyleEnabled) {
+                val styleName = try {
+                    getItemStringFromStub(COLOR_BUNDLE_STYLE_PREFIX, bundleName)
+                } catch (e: Resources.NotFoundException) {
+                    null
+                }
+                extractor.addColorStyle(builder, styleName)
+                val style = try {
+                    if (styleName != null) Style.valueOf(styleName) else Style.TONAL_SPOT
+                } catch (e: IllegalArgumentException) {
+                    Style.TONAL_SPOT
+                }
+
+                val darkColors = ColorScheme(colorFromStub, true, style)
+                        .getPresetColorPreview(colorFromStub)
+                val lightColors = ColorScheme(colorFromStub, false, style)
+                        .getPresetColorPreview(colorFromStub)
+                builder.setColorPrimaryDark(darkColors[0]).setColorSecondaryDark(darkColors[1])
+                builder.setColorPrimaryLight(lightColors[0]).setColorSecondaryLight(lightColors[1])
+            }
+
+            extractor.addAndroidIconOverlay(builder)
+            bundles.add(builder.build(mContext))
+            index++
+        }
+
+        colorBundles = bundles
+    }
+}
diff --git a/src/com/android/customization/model/color/ColorSectionController.java b/src/com/android/customization/model/color/ColorSectionController.java
new file mode 100644
index 0000000..afd5ebf
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorSectionController.java
@@ -0,0 +1,507 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import static android.view.View.IMPORTANT_FOR_ACCESSIBILITY_NO;
+import static android.view.View.VISIBLE;
+
+import static com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_HOME;
+import static com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_LOCK;
+import static com.android.customization.model.color.ColorOptionsProvider.COLOR_SOURCE_PRESET;
+import static com.android.customization.widget.OptionSelectorController.CheckmarkStyle.CENTER;
+
+import android.app.Activity;
+import android.app.WallpaperColors;
+import android.content.Context;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.SystemClock;
+import android.stats.style.StyleEnums;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.FrameLayout;
+
+import androidx.annotation.Nullable;
+import androidx.lifecycle.LifecycleOwner;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.viewpager2.widget.MarginPageTransformer;
+import androidx.viewpager2.widget.ViewPager2;
+
+import com.android.customization.model.CustomizationManager;
+import com.android.customization.model.theme.OverlayManagerCompat;
+import com.android.customization.module.CustomizationInjector;
+import com.android.customization.module.ThemesUserEventLogger;
+import com.android.customization.picker.color.ColorSectionView;
+import com.android.customization.widget.OptionSelectorController;
+import com.android.wallpaper.R;
+import com.android.wallpaper.model.CustomizationSectionController;
+import com.android.wallpaper.model.WallpaperColorsViewModel;
+import com.android.wallpaper.module.InjectorProvider;
+import com.android.wallpaper.module.LargeScreenMultiPanesChecker;
+import com.android.wallpaper.widget.PageIndicator;
+import com.android.wallpaper.widget.SeparatedTabLayout;
+
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * Color section view's controller for the logic of color customization.
+ */
+public class ColorSectionController implements CustomizationSectionController<ColorSectionView> {
+
+    private static final String TAG = "ColorSectionController";
+    private static final String KEY_COLOR_TAB_POSITION = "COLOR_TAB_POSITION";
+    private static final long MIN_COLOR_APPLY_PERIOD = 500L;
+
+    private static final int WALLPAPER_TAB_INDEX = 0;
+    private static final int PRESET_TAB_INDEX = 1;
+
+    private final ThemesUserEventLogger mEventLogger;
+    private final ColorCustomizationManager mColorManager;
+    private final WallpaperColorsViewModel mWallpaperColorsViewModel;
+    private final LifecycleOwner mLifecycleOwner;
+    private final ColorSectionAdapter mColorSectionAdapter = new ColorSectionAdapter();
+    private final List<ColorOption> mWallpaperColorOptions = new ArrayList<>();
+    private final List<ColorOption> mPresetColorOptions = new ArrayList<>();
+
+    private ViewPager2 mColorSectionViewPager;
+    private ColorOption mSelectedColor;
+    private SeparatedTabLayout mTabLayout;
+    @Nullable private WallpaperColors mHomeWallpaperColors;
+    @Nullable private WallpaperColors mLockWallpaperColors;
+    // Uses a boolean value to indicate whether wallpaper color is ready because WallpaperColors
+    // maybe be null when it's ready.
+    private boolean mHomeWallpaperColorsReady;
+    private boolean mLockWallpaperColorsReady;
+    private Optional<Integer> mTabPositionToRestore = Optional.empty();
+    private long mLastColorApplyingTime = 0L;
+    private ColorSectionView mColorSectionView;
+    private boolean mIsMultiPane;
+
+    private static int getNumPages(int optionsPerPage, int totalOptions) {
+        return (int) Math.ceil((float) totalOptions / optionsPerPage);
+    }
+
+    public ColorSectionController(Activity activity, WallpaperColorsViewModel viewModel,
+            LifecycleOwner lifecycleOwner, @Nullable Bundle savedInstanceState) {
+        CustomizationInjector injector = (CustomizationInjector) InjectorProvider.getInjector();
+        mEventLogger = (ThemesUserEventLogger) injector.getUserEventLogger(activity);
+        mColorManager = ColorCustomizationManager.getInstance(activity,
+                new OverlayManagerCompat(activity));
+        mWallpaperColorsViewModel = viewModel;
+        mLifecycleOwner = lifecycleOwner;
+        mIsMultiPane = new LargeScreenMultiPanesChecker().isMultiPanesEnabled(activity);
+
+        if (savedInstanceState != null && savedInstanceState.containsKey(KEY_COLOR_TAB_POSITION)) {
+            mTabPositionToRestore = Optional.of(savedInstanceState.getInt(KEY_COLOR_TAB_POSITION));
+        }
+    }
+
+    @Override
+    public boolean isAvailable(@Nullable Context context) {
+        return context != null && ColorUtils.isMonetEnabled(context) && mColorManager.isAvailable();
+    }
+
+    @Override
+    public ColorSectionView createView(Context context) {
+        mColorSectionView = (ColorSectionView) LayoutInflater.from(context).inflate(
+                R.layout.color_section_view, /* root= */ null);
+        mColorSectionViewPager = mColorSectionView.findViewById(R.id.color_section_view_pager);
+        mColorSectionViewPager.setAdapter(mColorSectionAdapter);
+        mColorSectionViewPager.setUserInputEnabled(false);
+        if (ColorProvider.themeStyleEnabled) {
+            mColorSectionViewPager.setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_NO);
+        }
+        mTabLayout = mColorSectionView.findViewById(R.id.separated_tabs);
+        mColorSectionAdapter.setNumColors(context.getResources().getInteger(
+                R.integer.options_grid_num_columns));
+        // TODO(b/202145216): Use just 2 views when tapping either button on top.
+        mTabLayout.setViewPager(mColorSectionViewPager);
+
+        mWallpaperColorsViewModel.getHomeWallpaperColors().observe(mLifecycleOwner,
+                homeColors -> {
+                    mHomeWallpaperColors = homeColors;
+                    mHomeWallpaperColorsReady = true;
+                    maybeLoadColors();
+                });
+        mWallpaperColorsViewModel.getLockWallpaperColors().observe(mLifecycleOwner,
+                lockColors -> {
+                    mLockWallpaperColors = lockColors;
+                    mLockWallpaperColorsReady = true;
+                    maybeLoadColors();
+                });
+        return mColorSectionView;
+    }
+
+    @Override
+    public void onSaveInstanceState(Bundle savedInstanceState) {
+        if (mColorSectionViewPager != null) {
+            savedInstanceState.putInt(KEY_COLOR_TAB_POSITION,
+                    mColorSectionViewPager.getCurrentItem());
+        }
+    }
+
+    private void maybeLoadColors() {
+        if (mHomeWallpaperColorsReady && mLockWallpaperColorsReady) {
+            mColorManager.setWallpaperColors(mHomeWallpaperColors, mLockWallpaperColors);
+            loadColorOptions(/* reload= */ false);
+        }
+    }
+
+    private void loadColorOptions(boolean reload) {
+        mColorManager.fetchOptions(new CustomizationManager.OptionsFetchedListener<ColorOption>() {
+            @Override
+            public void onOptionsLoaded(List<ColorOption> options) {
+                mWallpaperColorOptions.clear();
+                mPresetColorOptions.clear();
+
+                for (ColorOption option : options) {
+                    if (option instanceof ColorSeedOption) {
+                        mWallpaperColorOptions.add(option);
+                    } else if (option instanceof ColorBundle) {
+                        mPresetColorOptions.add(option);
+                    }
+                }
+                mSelectedColor = findActiveColorOption(mWallpaperColorOptions,
+                        mPresetColorOptions);
+                mTabLayout.post(()-> setUpColorViewPager());
+            }
+
+            @Override
+            public void onError(@Nullable Throwable throwable) {
+                if (throwable != null) {
+                    Log.e(TAG, "Error loading theme bundles", throwable);
+                }
+            }
+        }, reload);
+    }
+
+    private void setUpColorViewPager() {
+        mColorSectionAdapter.notifyDataSetChanged();
+
+        if (mTabLayout != null && mTabLayout.getTabCount() == 0) {
+            mTabLayout.addTab(mTabLayout.newTab().setText(R.string.wallpaper_color_tab),
+                    WALLPAPER_TAB_INDEX);
+            mTabLayout.addTab(mTabLayout.newTab().setText(R.string.preset_color_tab),
+                    PRESET_TAB_INDEX);
+        }
+
+        if (mWallpaperColorOptions.isEmpty()) {
+            // Select preset tab and disable wallpaper tab.
+            mTabLayout.getTabAt(WALLPAPER_TAB_INDEX).view.setEnabled(false);
+            mColorSectionViewPager.setCurrentItem(PRESET_TAB_INDEX, /* smoothScroll= */ false);
+            return;
+        }
+
+        mColorSectionViewPager.setCurrentItem(
+                mTabPositionToRestore.orElseGet(
+                        () -> COLOR_SOURCE_PRESET.equals(mColorManager.getCurrentColorSource())
+                                ? PRESET_TAB_INDEX
+                                : WALLPAPER_TAB_INDEX),
+                /* smoothScroll= */ false);
+
+        // Disable "wallpaper colors" and "basic colors" swiping for new color style.
+        mColorSectionViewPager.setUserInputEnabled(!ColorProvider.themeStyleEnabled);
+    }
+
+    private void setupWallpaperColorPages(ViewPager2 container, int colorsPerPage,
+            PageIndicator pageIndicator) {
+        container.setAdapter(new ColorPageAdapter(mWallpaperColorOptions, /* pageEnabled= */ true,
+                colorsPerPage));
+        if (ColorProvider.themeStyleEnabled) {
+            // Update page index to show selected items.
+            int selectedIndex = mWallpaperColorOptions.indexOf(mSelectedColor);
+            if (selectedIndex >= 0 && colorsPerPage != 0) {
+                int pageIndex = selectedIndex / colorsPerPage;
+                container.setCurrentItem(pageIndex, /* smoothScroll= */ false);
+            }
+            pageIndicator.setNumPages(getNumPages(colorsPerPage, mWallpaperColorOptions.size()));
+            registerOnPageChangeCallback(container, pageIndicator);
+        }
+    }
+
+    private void setupPresetColorPages(ViewPager2 container, int colorsPerPage,
+            PageIndicator pageIndicator) {
+        container.setAdapter(new ColorPageAdapter(mPresetColorOptions, /* pageEnabled= */ true,
+                colorsPerPage));
+        if (ColorProvider.themeStyleEnabled) {
+            // Update page index to show selected items.
+            int selectedIndex = mPresetColorOptions.indexOf(mSelectedColor);
+            if (selectedIndex >= 0 && colorsPerPage != 0) {
+                int pageIndex = selectedIndex / colorsPerPage;
+                container.setCurrentItem(pageIndex, /* smoothScroll= */ false);
+            }
+            pageIndicator.setNumPages(getNumPages(colorsPerPage, mPresetColorOptions.size()));
+            registerOnPageChangeCallback(container, pageIndicator);
+        }
+    }
+
+    private void registerOnPageChangeCallback(ViewPager2 container, PageIndicator pageIndicator) {
+        container.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
+            @Override
+            public void onPageSelected(int position) {
+                super.onPageSelected(position);
+                pageIndicator.setLocation(getPagePosition(pageIndicator, position));
+            }
+
+            @Override
+            public void onPageScrolled(int position, float positionOffset,
+                    int positionOffsetPixels) {
+                super.onPageScrolled(position, positionOffset, positionOffsetPixels);
+                pageIndicator.setLocation(getPagePosition(pageIndicator, position));
+            }
+
+            private int getPagePosition(PageIndicator pageIndicator, int position) {
+                return pageIndicator.isLayoutRtl() ? pageIndicator.getChildCount() - 1 - position
+                        : position;
+            }
+        });
+    }
+
+    private void setupColorOptions(RecyclerView container, List<ColorOption> colorOptions,
+            boolean pageEnabled, int index, int colorsPerPage) {
+        int totalSize = colorOptions.size();
+        if (totalSize == 0) {
+            return;
+        }
+
+        List<ColorOption> subOptions;
+        if (pageEnabled && ColorProvider.themeStyleEnabled) {
+            subOptions = colorOptions.subList(colorsPerPage * index,
+                    Math.min(colorsPerPage * (index + 1), totalSize));
+        } else {
+            subOptions = colorOptions;
+        }
+
+        OptionSelectorController<ColorOption> adaptiveController = new OptionSelectorController<>(
+                container, subOptions, /* useGrid= */ true, CENTER);
+        adaptiveController.initOptions(mColorManager);
+        setUpColorOptionsController(adaptiveController);
+    }
+
+    private ColorOption findActiveColorOption(List<ColorOption> wallpaperColorOptions,
+            List<ColorOption> presetColorOptions) {
+        ColorOption activeColorOption = null;
+        for (ColorOption colorOption : Lists.newArrayList(
+                Iterables.concat(wallpaperColorOptions, presetColorOptions))) {
+            if (colorOption.isActive(mColorManager)) {
+                activeColorOption = colorOption;
+                break;
+            }
+        }
+        // Use the first one option by default. This should not happen as above should have an
+        // active option found.
+        if (activeColorOption == null) {
+            activeColorOption = wallpaperColorOptions.isEmpty()
+                    ? presetColorOptions.get(0)
+                    : wallpaperColorOptions.get(0);
+        }
+        return activeColorOption;
+    }
+
+    private void setUpColorOptionsController(
+            OptionSelectorController<ColorOption> optionSelectorController) {
+        if (mSelectedColor != null && optionSelectorController.containsOption(mSelectedColor)) {
+            optionSelectorController.setSelectedOption(mSelectedColor);
+        }
+
+        optionSelectorController.addListener(selectedOption -> {
+            ColorOption selectedColor = (ColorOption) selectedOption;
+            if (mSelectedColor.equals(selectedColor)) {
+                return;
+            }
+            mSelectedColor = (ColorOption) selectedOption;
+            // Post with delay for color option to run ripple.
+            new Handler().postDelayed(()-> applyColor(mSelectedColor), /* delayMillis= */ 100);
+        });
+    }
+
+    private void applyColor(ColorOption colorOption) {
+        if (SystemClock.elapsedRealtime() - mLastColorApplyingTime < MIN_COLOR_APPLY_PERIOD) {
+            return;
+        }
+        mLastColorApplyingTime = SystemClock.elapsedRealtime();
+        mColorManager.apply(colorOption, new CustomizationManager.Callback() {
+            @Override
+            public void onSuccess() {
+                mColorSectionView.announceForAccessibility(
+                        mColorSectionView.getContext().getString(R.string.color_changed));
+                mEventLogger.logColorApplied(getColorAction(colorOption), colorOption.getIndex());
+            }
+
+            @Override
+            public void onError(@Nullable Throwable throwable) {
+                Log.w(TAG, "Apply theme with error: " + throwable);
+            }
+        });
+    }
+
+    private int getColorAction(ColorOption colorOption) {
+        int action = StyleEnums.DEFAULT_ACTION;
+        boolean isForBoth = mLockWallpaperColors == null || mLockWallpaperColors.equals(
+                mHomeWallpaperColors);
+
+        if (TextUtils.equals(colorOption.getSource(), COLOR_SOURCE_PRESET)) {
+            action = StyleEnums.COLOR_PRESET_APPLIED;
+        } else if (isForBoth) {
+            action = StyleEnums.COLOR_WALLPAPER_HOME_LOCK_APPLIED;
+        } else {
+            switch (colorOption.getSource()) {
+                case COLOR_SOURCE_HOME:
+                    action = StyleEnums.COLOR_WALLPAPER_HOME_APPLIED;
+                    break;
+                case COLOR_SOURCE_LOCK:
+                    action = StyleEnums.COLOR_WALLPAPER_LOCK_APPLIED;
+                    break;
+            }
+        }
+        return action;
+    }
+
+    private class ColorSectionAdapter extends
+            RecyclerView.Adapter<ColorSectionAdapter.ColorPageViewHolder> {
+
+        private final int mItemCounts = new int[]{WALLPAPER_TAB_INDEX, PRESET_TAB_INDEX}.length;
+        private int mNumColors;
+
+        @Override
+        public int getItemCount() {
+            return mItemCounts;
+        }
+
+        @Override
+        public void onBindViewHolder(ColorPageViewHolder viewHolder, int position) {
+            switch (position) {
+                case WALLPAPER_TAB_INDEX:
+                    setupWallpaperColorPages(viewHolder.mContainer, mNumColors,
+                            viewHolder.mPageIndicator);
+                    break;
+                case PRESET_TAB_INDEX:
+                    setupPresetColorPages(viewHolder.mContainer, mNumColors,
+                            viewHolder.mPageIndicator);
+                    break;
+                default:
+                    break;
+            }
+        }
+
+        @Override
+        public ColorPageViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
+            return new ColorPageViewHolder(LayoutInflater.from(viewGroup.getContext()).inflate(
+                    viewType, viewGroup, false));
+        }
+
+        @Override
+        public int getItemViewType(int position) {
+            return R.layout.color_pages_view;
+        }
+
+        public void setNumColors(int numColors) {
+            mNumColors = numColors;
+        }
+
+        private class ColorPageViewHolder extends RecyclerView.ViewHolder {
+            private ViewPager2 mContainer;
+            private PageIndicator mPageIndicator;
+
+            ColorPageViewHolder(View itemView) {
+                super(itemView);
+                mContainer = itemView.findViewById(R.id.color_page_container);
+                /**
+                 * Sets page transformer with margin to separate color pages and
+                 * sets color pages' padding to not scroll to window boundary if multi-pane case
+                 */
+                if (mIsMultiPane) {
+                    final int padding = itemView.getContext().getResources().getDimensionPixelSize(
+                            R.dimen.section_horizontal_padding);
+                    mContainer.setPageTransformer(new MarginPageTransformer(padding * 2));
+                    mContainer.setPadding(padding, /* top= */ 0, padding, /* bottom= */ 0);
+                }
+                mPageIndicator = itemView.findViewById(R.id.color_page_indicator);
+                if (ColorProvider.themeStyleEnabled) {
+                    mPageIndicator.setVisibility(VISIBLE);
+                }
+            }
+        }
+    }
+
+    private class ColorPageAdapter extends
+            RecyclerView.Adapter<ColorPageAdapter.ColorOptionViewHolder> {
+
+        private final boolean mPageEnabled;
+        private final List<ColorOption> mColorOptions;
+        private final int mColorsPerPage;
+
+        private ColorPageAdapter(List<ColorOption> colorOptions, boolean pageEnabled,
+                int colorsPerPage) {
+            mPageEnabled = pageEnabled;
+            mColorOptions = colorOptions;
+            mColorsPerPage = colorsPerPage;
+        }
+
+        @Override
+        public int getItemCount() {
+            if (!mPageEnabled || !ColorProvider.themeStyleEnabled) {
+                return 1;
+            }
+            // Color page size.
+            return getNumPages(mColorsPerPage, mColorOptions.size());
+        }
+
+        @Override
+        public void onBindViewHolder(ColorOptionViewHolder viewHolder, int position) {
+            setupColorOptions(viewHolder.mContainer, mColorOptions, mPageEnabled, position,
+                    mColorsPerPage);
+        }
+
+        @Override
+        public ColorOptionViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
+            return new ColorOptionViewHolder(
+                    LayoutInflater.from(viewGroup.getContext()).inflate(viewType, viewGroup,
+                            false));
+        }
+
+        @Override
+        public int getItemViewType(int position) {
+            return R.layout.color_options_view;
+        }
+
+        private class ColorOptionViewHolder extends RecyclerView.ViewHolder {
+            private RecyclerView mContainer;
+
+            ColorOptionViewHolder(View itemView) {
+                super(itemView);
+                mContainer = itemView.findViewById(R.id.color_option_container);
+                // Sets layout with margins for non multi-pane case to separate color options.
+                if (!mIsMultiPane) {
+                    final FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(
+                            mContainer.getLayoutParams());
+                    final int margin = itemView.getContext().getResources().getDimensionPixelSize(
+                            R.dimen.section_horizontal_padding);
+                    layoutParams.setMargins(margin, /* top= */ 0, margin, /* bottom= */ 0);
+                    mContainer.setLayoutParams(layoutParams);
+                }
+            }
+        }
+    }
+}
diff --git a/src/com/android/customization/model/color/ColorSeedOption.java b/src/com/android/customization/model/color/ColorSeedOption.java
new file mode 100644
index 0000000..7bddcb0
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorSeedOption.java
@@ -0,0 +1,244 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import android.content.Context;
+import android.content.res.Configuration;
+import android.content.res.Resources;
+import android.graphics.PorterDuff.Mode;
+import android.view.View;
+import android.widget.ImageView;
+
+import androidx.annotation.ColorInt;
+import androidx.annotation.VisibleForTesting;
+
+import com.android.customization.model.color.ColorOptionsProvider.ColorSource;
+import com.android.systemui.monet.Style;
+import com.android.wallpaper.R;
+
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Represents a seed color obtained from WallpaperColors, for the user to chose as their theming
+ * option.
+ */
+public class ColorSeedOption extends ColorOption {
+
+    private final PreviewInfo mPreviewInfo;
+    @ColorSource
+    private final String mSource;
+
+    @VisibleForTesting
+    ColorSeedOption(String title, Map<String, String> overlayPackages, boolean isDefault,
+            @ColorSource String source, Style style, int index, PreviewInfo previewInfo) {
+        super(title, overlayPackages, isDefault, style, index);
+        mSource = source;
+        mPreviewInfo = previewInfo;
+    }
+
+    @Override
+    public PreviewInfo getPreviewInfo() {
+        return mPreviewInfo;
+    }
+
+    @Override
+    public String getSource() {
+        return mSource;
+    }
+
+    @Override
+    public int getLayoutResId() {
+        return R.layout.color_option;
+    }
+
+    @Override
+    public void bindThumbnailTile(View view) {
+        Resources res = view.getContext().getResources();
+        @ColorInt int[] colors = mPreviewInfo.resolveColors(res);
+
+        int padding = view.isActivated()
+                ? res.getDimensionPixelSize(R.dimen.color_seed_option_tile_padding_selected)
+                : res.getDimensionPixelSize(R.dimen.color_seed_option_tile_padding);
+        for (int i = 0; i < mPreviewColorIds.length; i++) {
+            ImageView colorPreviewImageView = view.findViewById(mPreviewColorIds[i]);
+            colorPreviewImageView.getDrawable().setColorFilter(colors[i], Mode.SRC);
+            colorPreviewImageView.setPadding(padding, padding, padding, padding);
+        }
+
+        view.setContentDescription(getContentDescription(view.getContext()));
+    }
+
+    @Override
+    protected CharSequence getContentDescription(Context context) {
+        // Override because we want all options with the same description.
+        return context.getString(R.string.wallpaper_color_title);
+    }
+
+    /**
+     * The preview information of {@link ColorOption}
+     */
+    public static class PreviewInfo implements ColorOption.PreviewInfo {
+        @ColorInt public int[] lightColors;
+        @ColorInt public int[] darkColors;
+
+        private PreviewInfo(@ColorInt int[] lightColors, @ColorInt int[] darkColors) {
+            this.lightColors = lightColors;
+            this.darkColors = darkColors;
+        }
+
+        /**
+         * Returns the colors to be applied corresponding with the current
+         * configuration's UI mode.
+         * @return one of {@link #lightColors} or {@link #darkColors}
+         */
+        @ColorInt
+        public int[] resolveColors(Resources res) {
+            boolean night = (res.getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK)
+                    == Configuration.UI_MODE_NIGHT_YES;
+            return night ? darkColors : lightColors;
+        }
+    }
+
+    /**
+     * The builder of ColorSeedOption
+     */
+    public static class Builder {
+        protected String mTitle;
+        @ColorInt
+        private int[] mLightColors;
+        @ColorInt
+        private int[] mDarkColors;
+        @ColorSource
+        private String mSource;
+        private boolean mIsDefault;
+        private Style mStyle = Style.TONAL_SPOT;
+        private int mIndex;
+        protected Map<String, String> mPackages = new HashMap<>();
+
+        /**
+         * Builds the ColorSeedOption
+         * @return new {@link ColorOption} object
+         */
+        public ColorSeedOption build() {
+            return new ColorSeedOption(mTitle, mPackages, mIsDefault, mSource, mStyle, mIndex,
+                    createPreviewInfo());
+        }
+
+        /**
+         * Creates preview information
+         * @return the {@link PreviewInfo} object
+         */
+        public PreviewInfo createPreviewInfo() {
+            return new PreviewInfo(mLightColors, mDarkColors);
+        }
+
+        public Map<String, String> getPackages() {
+            return Collections.unmodifiableMap(mPackages);
+        }
+
+        /**
+         * Gets title of {@link ColorOption} object
+         * @return title string
+         */
+        public String getTitle() {
+            return mTitle;
+        }
+
+        /**
+         * Sets title of bundle
+         * @param title specified title
+         * @return this of {@link ColorBundle.Builder}
+         */
+        public Builder setTitle(String title) {
+            mTitle = title;
+            return this;
+        }
+
+        /**
+         * Sets the colors for preview in light mode
+         * @param lightColors  {@link ColorInt} colors for light mode
+         * @return this of {@link Builder}
+         */
+        public Builder setLightColors(@ColorInt int[] lightColors) {
+            mLightColors = lightColors;
+            return this;
+        }
+
+        /**
+         * Sets the colors for preview in light mode
+         * @param darkColors  {@link ColorInt} colors for light mode
+         * @return this of {@link Builder}
+         */
+        public Builder setDarkColors(@ColorInt int[] darkColors) {
+            mDarkColors = darkColors;
+            return this;
+        }
+
+
+        /**
+         * Sets overlay package for bundle
+         * @param category the category of bundle
+         * @param packageName tha name of package in the category
+         * @return this of {@link Builder}
+         */
+        public Builder addOverlayPackage(String category, String packageName) {
+            mPackages.put(category, packageName);
+            return this;
+        }
+
+        /**
+         * Sets the source of this color seed
+         * @param source typically either {@link ColorOptionsProvider#COLOR_SOURCE_HOME} or
+         *              {@link ColorOptionsProvider#COLOR_SOURCE_LOCK}
+         * @return this of {@link Builder}
+         */
+        public Builder setSource(@ColorSource String source) {
+            mSource = source;
+            return this;
+        }
+
+        /**
+         * Sets the source of this color seed
+         * @param style color style of {@link Style}
+         * @return this of {@link Builder}
+         */
+        public Builder setStyle(Style style) {
+            mStyle = style;
+            return this;
+        }
+
+        /**
+         * Sets color option index of seed
+         * @param index color option index
+         * @return this of {@link ColorBundle.Builder}
+         */
+        public Builder setIndex(int index) {
+            mIndex = index;
+            return this;
+        }
+
+        /**
+         * Sets as default bundle
+         * @return this of {@link Builder}
+         */
+        public Builder asDefault() {
+            mIsDefault = true;
+            return this;
+        }
+    }
+}
diff --git a/src/com/android/customization/model/color/ColorUtils.kt b/src/com/android/customization/model/color/ColorUtils.kt
new file mode 100644
index 0000000..f07ff31
--- /dev/null
+++ b/src/com/android/customization/model/color/ColorUtils.kt
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color
+
+import android.content.Context
+import android.content.pm.PackageManager
+import android.content.res.Resources
+import android.os.SystemProperties
+import android.util.Log
+import androidx.annotation.ColorInt
+
+/**
+ * Utility to wrap Monet's color extraction
+ */
+object ColorUtils {
+    private const val TAG = "ColorUtils"
+    private const val MONET_FLAG = "flag_monet"
+    private var sSysuiRes: Resources? = null
+    private var sFlagId = 0
+
+    /**
+     * Returns true if color extraction is enabled in systemui.
+     */
+    @JvmStatic
+    fun isMonetEnabled(context: Context): Boolean {
+        var monetEnabled = SystemProperties.getBoolean("persist.systemui.flag_monet", false)
+        if (!monetEnabled) {
+            if (sSysuiRes == null) {
+                try {
+                    val pm = context.packageManager
+                    val sysUIInfo = pm.getApplicationInfo("com.android.systemui",
+                            PackageManager.GET_META_DATA or PackageManager.MATCH_SYSTEM_ONLY)
+                    if (sysUIInfo != null) {
+                        sSysuiRes = pm.getResourcesForApplication(sysUIInfo)
+                    }
+                } catch (e: PackageManager.NameNotFoundException) {
+                    Log.w(TAG, "Couldn't read color flag, skipping section", e)
+                }
+            }
+            if (sFlagId == 0) {
+                sFlagId = if (sSysuiRes == null) 0 else sSysuiRes!!.getIdentifier(
+                        MONET_FLAG, "bool", "com.android.systemui")
+            }
+            if (sFlagId > 0) {
+                monetEnabled = sSysuiRes!!.getBoolean(sFlagId)
+            }
+        }
+        return monetEnabled
+    }
+
+    @JvmStatic
+    fun toColorString(@ColorInt color: Int): String {
+        return String.format("%06X", 0xFFFFFF and color)
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/customization/model/color/WallpaperColorResources.java b/src/com/android/customization/model/color/WallpaperColorResources.java
new file mode 100644
index 0000000..eb8b39b
--- /dev/null
+++ b/src/com/android/customization/model/color/WallpaperColorResources.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.model.color;
+
+import android.app.WallpaperColors;
+import android.content.Context;
+import android.util.SparseIntArray;
+import android.widget.RemoteViews.ColorResources;
+
+import com.android.systemui.monet.ColorScheme;
+
+import java.util.List;
+
+/** A class to override colors in a {@link Context} with wallpaper colors. */
+public class WallpaperColorResources {
+
+    private final SparseIntArray mColorOverlay = new SparseIntArray();
+
+    public WallpaperColorResources(WallpaperColors wallpaperColors) {
+        ColorScheme wallpaperColorScheme = new ColorScheme(wallpaperColors, /* darkTheme= */ false);
+        addOverlayColor(wallpaperColorScheme.getNeutral1(), android.R.color.system_neutral1_10);
+        addOverlayColor(wallpaperColorScheme.getNeutral2(), android.R.color.system_neutral2_10);
+        addOverlayColor(wallpaperColorScheme.getAccent1(), android.R.color.system_accent1_10);
+        addOverlayColor(wallpaperColorScheme.getAccent2(), android.R.color.system_accent2_10);
+        addOverlayColor(wallpaperColorScheme.getAccent3(), android.R.color.system_accent3_10);
+    }
+
+    /** Applies the wallpaper color resources to the {@code context}. */
+    public void apply(Context context) {
+        ColorResources.create(context, mColorOverlay).apply(context);
+    }
+
+    private void addOverlayColor(List<Integer> colors, int firstResourceColorId) {
+        int resourceColorId = firstResourceColorId;
+        for (int color : colors) {
+            mColorOverlay.put(resourceColorId, color);
+            resourceColorId++;
+        }
+    }
+}
diff --git a/src/com/android/customization/model/grid/GridOptionsManager.java b/src/com/android/customization/model/grid/GridOptionsManager.java
index da1139e..7f15d83 100644
--- a/src/com/android/customization/model/grid/GridOptionsManager.java
+++ b/src/com/android/customization/model/grid/GridOptionsManager.java
@@ -16,11 +16,11 @@
 package com.android.customization.model.grid;
 
 import android.content.Context;
-import android.os.AsyncTask;
 import android.os.Bundle;
+import android.os.Handler;
+import android.os.Looper;
+import android.util.Log;
 
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
 import androidx.annotation.VisibleForTesting;
 
 import com.android.customization.model.CustomizationManager;
@@ -31,12 +31,18 @@
 import com.android.wallpaper.util.PreviewUtils;
 
 import java.util.List;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
 
 /**
  * {@link CustomizationManager} for interfacing with the launcher to handle {@link GridOption}s.
  */
 public class GridOptionsManager implements CustomizationManager<GridOption> {
 
+    private static final ExecutorService sExecutorService = Executors.newSingleThreadExecutor();
+    private static final String TAG = "GridOptionsManager";
+
     private static GridOptionsManager sGridOptionsManager;
 
     private final LauncherGridOptionsProvider mProvider;
@@ -65,7 +71,16 @@
 
     @Override
     public boolean isAvailable() {
-        return mProvider.areGridsAvailable();
+        int gridOptionSize = 0;
+        try {
+            gridOptionSize = sExecutorService.submit(() -> {
+                List<GridOption> gridOptions = mProvider.fetch(/* reload= */true);
+                return gridOptions == null ? 0 : gridOptions.size();
+            }).get();
+        } catch (InterruptedException | ExecutionException e) {
+            Log.w(TAG, "could not get gridOptionSize", e);
+        }
+        return gridOptionSize > 1 && mProvider.areGridsAvailable();
     }
 
     @Override
@@ -81,7 +96,18 @@
 
     @Override
     public void fetchOptions(OptionsFetchedListener<GridOption> callback, boolean reload) {
-        new FetchTask(mProvider, callback, reload).execute();
+        sExecutorService.submit(() -> {
+            List<GridOption> gridOptions = mProvider.fetch(reload);
+            new Handler(Looper.getMainLooper()).post(() -> {
+                if (callback != null) {
+                    if (gridOptions != null && !gridOptions.isEmpty()) {
+                        callback.onOptionsLoaded(gridOptions);
+                    } else {
+                        callback.onError(null);
+                    }
+                }
+            });
+        });
     }
 
     /** Call through content provider API to render preview */
@@ -89,41 +115,4 @@
             PreviewUtils.WorkspacePreviewCallback callback) {
         mProvider.renderPreview(gridName, bundle, callback);
     }
-
-    private static class FetchTask extends AsyncTask<Void, Void, List<GridOption>> {
-        private final LauncherGridOptionsProvider mProvider;
-        @Nullable private final OptionsFetchedListener<GridOption> mCallback;
-        private final boolean mReload;
-
-        private FetchTask(@NonNull LauncherGridOptionsProvider provider,
-                @Nullable OptionsFetchedListener<GridOption> callback, boolean reload) {
-            mCallback = callback;
-            mProvider = provider;
-            mReload = reload;
-        }
-
-        @Override
-        protected List<GridOption> doInBackground(Void[] params) {
-            return mProvider.fetch(mReload);
-        }
-
-        @Override
-        protected void onPostExecute(List<GridOption> gridOptions) {
-            if (mCallback != null) {
-                if (gridOptions != null && !gridOptions.isEmpty()) {
-                    mCallback.onOptionsLoaded(gridOptions);
-                } else {
-                    mCallback.onError(null);
-                }
-            }
-        }
-
-        @Override
-        protected void onCancelled() {
-            super.onCancelled();
-            if (mCallback != null) {
-                mCallback.onError(null);
-            }
-        }
-    }
 }
diff --git a/src/com/android/customization/model/grid/GridSectionController.java b/src/com/android/customization/model/grid/GridSectionController.java
index 64a6cce..2f54a1b 100644
--- a/src/com/android/customization/model/grid/GridSectionController.java
+++ b/src/com/android/customization/model/grid/GridSectionController.java
@@ -72,7 +72,7 @@
                 sectionDescription.setText(R.string.something_went_wrong);
                 sectionTile.setVisibility(View.GONE);
             }
-        }, /* reload= */ true);
+        }, /* The result is getting when calling isAvailable(), so reload= */ false);
 
         gridSectionView.setOnClickListener(
                 v -> mSectionNavigationController.navigateTo(new GridFragment()));
diff --git a/src/com/android/customization/model/theme/DefaultThemeProvider.java b/src/com/android/customization/model/theme/DefaultThemeProvider.java
index 404130f..89067c6 100644
--- a/src/com/android/customization/model/theme/DefaultThemeProvider.java
+++ b/src/com/android/customization/model/theme/DefaultThemeProvider.java
@@ -44,10 +44,6 @@
 import com.android.customization.model.theme.custom.CustomTheme;
 import com.android.customization.module.CustomizationPreferences;
 import com.android.wallpaper.R;
-import com.android.wallpaper.asset.ResourceAsset;
-
-import com.bumptech.glide.request.RequestOptions;
-import com.google.android.apps.wallpaper.asset.ThemeBundleThumbAsset;
 
 import org.json.JSONArray;
 import org.json.JSONException;
@@ -425,18 +421,4 @@
     private String getOverlayPackage(String prefix, String themeName) {
         return getItemStringFromStub(prefix, themeName);
     }
-
-    private ResourceAsset getDrawableResourceAsset(String prefix, String themeName) {
-        int drawableResId = mStubApkResources.getIdentifier(prefix + themeName,
-                "drawable", mStubPackageName);
-        return drawableResId == 0 ? null : new ResourceAsset(mStubApkResources, drawableResId,
-                RequestOptions.fitCenterTransform());
-    }
-
-    private ThemeBundleThumbAsset getThumbAsset(String prefix, String themeName) {
-        int drawableResId = mStubApkResources.getIdentifier(prefix + themeName,
-                "drawable", mStubPackageName);
-        return drawableResId == 0 ? null : new ThemeBundleThumbAsset(mStubApkResources,
-                drawableResId);
-    }
 }
diff --git a/src/com/android/customization/module/DefaultCustomizationInjector.java b/src/com/android/customization/module/DefaultCustomizationInjector.java
index c906281..220c406 100644
--- a/src/com/android/customization/module/DefaultCustomizationInjector.java
+++ b/src/com/android/customization/module/DefaultCustomizationInjector.java
@@ -70,7 +70,7 @@
     @Override
     public synchronized ThemesUserEventLogger getUserEventLogger(Context context) {
         if (mUserEventLogger == null) {
-            mUserEventLogger = new StatsLogUserEventLogger();
+            mUserEventLogger = new StatsLogUserEventLogger(context);
         }
         return mUserEventLogger;
     }
diff --git a/src/com/android/customization/module/StatsLogUserEventLogger.java b/src/com/android/customization/module/StatsLogUserEventLogger.java
index fecf19b..751edf3 100644
--- a/src/com/android/customization/module/StatsLogUserEventLogger.java
+++ b/src/com/android/customization/module/StatsLogUserEventLogger.java
@@ -38,8 +38,10 @@
 import static com.android.wallpaper.util.LaunchSourceUtils.WALLPAPER_LAUNCH_SOURCE;
 
 import android.app.WallpaperManager;
+import android.content.Context;
 import android.content.Intent;
 import android.stats.style.StyleEnums;
+import android.text.TextUtils;
 
 import androidx.annotation.Nullable;
 
@@ -47,7 +49,11 @@
 import com.android.customization.model.grid.GridOption;
 import com.android.customization.model.theme.ThemeBundle;
 import com.android.systemui.shared.system.SysUiStatsLog;
+import com.android.wallpaper.module.Injector;
+import com.android.wallpaper.module.InjectorProvider;
 import com.android.wallpaper.module.NoOpUserEventLogger;
+import com.android.wallpaper.module.WallpaperPreferences;
+import com.android.wallpaper.module.WallpaperStatusChecker;
 
 import java.util.Map;
 import java.util.Objects;
@@ -58,51 +64,63 @@
 public class StatsLogUserEventLogger extends NoOpUserEventLogger implements ThemesUserEventLogger {
 
     private static final String TAG = "StatsLogUserEventLogger";
+    private final Context mContext;
+    private final WallpaperPreferences mPreferences;
+    private final WallpaperStatusChecker mWallpaperStatusChecker;
+
+    public StatsLogUserEventLogger(Context appContext) {
+        mContext = appContext;
+        Injector injector = InjectorProvider.getInjector();
+        mPreferences = injector.getPreferences(appContext);
+        mWallpaperStatusChecker = injector.getWallpaperStatusChecker();
+    }
 
     @Override
     public void logAppLaunched(Intent launchSource) {
-        SysUiStatsLog.write(STYLE_UI_CHANGED, STYLE_UICHANGED__ACTION__APP_LAUNCHED, 0, 0, 0, 0, 0,
-                0, 0, 0, 0, 0, getAppLaunchSource(launchSource));
+        SysUiStatsLog.write(STYLE_UI_CHANGED, STYLE_UICHANGED__ACTION__APP_LAUNCHED,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, getAppLaunchSource(launchSource), 0, 0,
+                0, 0, 0, 0, 0);
     }
 
     @Override
     public void logResumed(boolean provisioned, boolean wallpaper) {
-        SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.ONRESUME, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-                0);
+        SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.ONRESUME,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
     public void logStopped() {
-        SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.ONSTOP, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+        SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.ONSTOP,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
     public void logActionClicked(String collectionId, int actionLabelResId) {
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.WALLPAPER_EXPLORE, 0, 0, 0, 0, 0,
-                getCollectionIdHashCode(collectionId), 0, 0, 0, 0, 0);
+                getIdHashCode(collectionId), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
     public void logIndividualWallpaperSelected(String collectionId) {
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.WALLPAPER_SELECT, 0, 0, 0, 0, 0,
-                getCollectionIdHashCode(collectionId), 0, 0, 0, 0, 0);
+                getIdHashCode(collectionId), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
     public void logCategorySelected(String collectionId) {
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.WALLPAPER_OPEN_CATEGORY,
                 0, 0, 0, 0, 0,
-                getCollectionIdHashCode(collectionId),
-                0, 0, 0, 0, 0);
+                getIdHashCode(collectionId),
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
     public void logLiveWallpaperInfoSelected(String collectionId, @Nullable String wallpaperId) {
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.LIVE_WALLPAPER_INFO_SELECT,
                 0, 0, 0, 0, 0,
-                getCollectionIdHashCode(collectionId),
-                wallpaperId != null ? wallpaperId.hashCode() : 0,
-                0, 0, 0, 0);
+                getIdHashCode(collectionId),
+                getIdHashCode(wallpaperId),
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
@@ -110,18 +128,51 @@
             @Nullable String wallpaperId) {
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.LIVE_WALLPAPER_CUSTOMIZE_SELECT,
                 0, 0, 0, 0, 0,
-                getCollectionIdHashCode(collectionId),
-                wallpaperId != null ? wallpaperId.hashCode() : 0,
-                0, 0, 0, 0);
+                getIdHashCode(collectionId),
+                getIdHashCode(wallpaperId),
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
-    public void logWallpaperSet(String collectionId, @Nullable String wallpaperId) {
+    public void logSnapshot() {
+        final boolean isLockWallpaperSet = mWallpaperStatusChecker.isLockWallpaperSet(mContext);
+        final String homeCollectionId = mPreferences.getHomeWallpaperCollectionId();
+        final String homeRemoteId = mPreferences.getHomeWallpaperRemoteId();
+        String homeWallpaperId = TextUtils.isEmpty(homeRemoteId)
+                ? mPreferences.getHomeWallpaperServiceName() : homeRemoteId;
+        String lockCollectionId = isLockWallpaperSet ? mPreferences.getLockWallpaperCollectionId()
+                : homeCollectionId;
+        String lockWallpaperId = isLockWallpaperSet ? mPreferences.getLockWallpaperRemoteId()
+                : homeWallpaperId;
+
+        SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.SNAPSHOT,
+                0, 0, 0, 0, 0,
+                getIdHashCode(homeCollectionId),
+                getIdHashCode(homeWallpaperId),
+                0, 0, 0, 0, 0, 0,
+                getIdHashCode(lockCollectionId),
+                getIdHashCode(lockWallpaperId),
+                mPreferences.getFirstLaunchDateSinceSetup(),
+                mPreferences.getFirstWallpaperApplyDateSinceSetup(),
+                mPreferences.getAppLaunchCount());
+    }
+
+    @Override
+    public void logWallpaperSet(String collectionId, @Nullable String wallpaperId,
+            @Nullable String effects) {
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.WALLPAPER_APPLIED,
                 0, 0, 0, 0, 0,
-                getCollectionIdHashCode(collectionId),
-                wallpaperId != null ? wallpaperId.hashCode() : 0,
-                0, 0, 0, 0);
+                getIdHashCode(collectionId),
+                getIdHashCode(wallpaperId),
+                0, 0, 0, 0, 0, effects != null ? effects.hashCode() : 0,
+                0, 0, 0, 0, 0);
+    }
+
+    @Override
+    public void logEffectApply(String effect, @EffectStatus int status) {
+        SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.WALLPAPER_EFFECT_APPLIED,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, status, effect != null ? effect.hashCode() : 0,
+                0, 0, 0, 0, 0);
     }
 
     @Nullable
@@ -136,7 +187,7 @@
                 Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_COLOR)),
                 Objects.hashCode(getThemePackage(theme,OVERLAY_CATEGORY_FONT)),
                 Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_SHAPE)),
-                0, 0, 0, 0, 0, 0, 0, 0);
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
@@ -145,7 +196,7 @@
                 Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_COLOR)),
                 Objects.hashCode(getThemePackage(theme,OVERLAY_CATEGORY_FONT)),
                 Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_SHAPE)),
-                0, 0, 0, 0, 0, 0, 0, 0);
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
@@ -153,7 +204,7 @@
         SysUiStatsLog.write(STYLE_UI_CHANGED, action,
                 0, 0, 0, 0, 0, 0, 0,
                 colorIndex,
-                0, 0, 0);
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
@@ -161,7 +212,7 @@
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.PICKER_SELECT,
                 0, 0, 0,
                 Objects.hashCode(clock.getId()),
-                0, 0, 0, 0, 0, 0, 0);
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
@@ -169,7 +220,7 @@
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.PICKER_APPLIED,
                 0, 0, 0,
                 Objects.hashCode(clock.getId()),
-                0, 0, 0, 0, 0, 0, 0);
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
@@ -177,7 +228,7 @@
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.PICKER_SELECT,
                 0, 0, 0, 0,
                 grid.cols,
-                0, 0, 0, 0, 0, 0);
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     @Override
@@ -185,7 +236,7 @@
         SysUiStatsLog.write(STYLE_UI_CHANGED, StyleEnums.PICKER_APPLIED,
                 0, 0, 0, 0,
                 grid.cols,
-                0, 0, 0, 0, 0, 0);
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
     }
 
     private int getAppLaunchSource(Intent launchSource) {
@@ -217,7 +268,7 @@
         }
     }
 
-    private int getCollectionIdHashCode(String collectionId) {
-        return collectionId != null ? collectionId.hashCode() : 0;
+    private int getIdHashCode(String id) {
+        return id != null ? id.hashCode() : 0;
     }
 }
diff --git a/src/com/android/customization/picker/color/ColorSectionView.java b/src/com/android/customization/picker/color/ColorSectionView.java
new file mode 100644
index 0000000..b8ba2e4
--- /dev/null
+++ b/src/com/android/customization/picker/color/ColorSectionView.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.customization.picker.color;
+
+import android.content.Context;
+import android.util.AttributeSet;
+
+import androidx.annotation.Nullable;
+
+import com.android.wallpaper.picker.SectionView;
+
+/**
+ * The class inherits from {@link SectionView} as the view representing the color section of the
+ * customization picker.
+ */
+public final class ColorSectionView extends SectionView {
+    public ColorSectionView(Context context, @Nullable AttributeSet attrs) {
+        super(context, attrs);
+    }
+}
diff --git a/src/com/android/customization/picker/grid/GridFragment.java b/src/com/android/customization/picker/grid/GridFragment.java
index cb04fc3..c4029d6 100644
--- a/src/com/android/customization/picker/grid/GridFragment.java
+++ b/src/com/android/customization/picker/grid/GridFragment.java
@@ -18,6 +18,7 @@
 import static com.android.wallpaper.widget.BottomActionBar.BottomAction.APPLY_TEXT;
 
 import android.content.Context;
+import android.graphics.Point;
 import android.os.Bundle;
 import android.util.Log;
 import android.view.LayoutInflater;
@@ -29,6 +30,8 @@
 
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
+import androidx.constraintlayout.widget.ConstraintLayout;
+import androidx.constraintlayout.widget.ConstraintSet;
 import androidx.core.widget.ContentLoadingProgressBar;
 import androidx.lifecycle.ViewModelProvider;
 import androidx.recyclerview.widget.RecyclerView;
@@ -49,11 +52,13 @@
 import com.android.wallpaper.module.InjectorProvider;
 import com.android.wallpaper.picker.AppbarFragment;
 import com.android.wallpaper.util.LaunchUtils;
+import com.android.wallpaper.util.ScreenSizeCalculator;
 import com.android.wallpaper.widget.BottomActionBar;
 
 import com.bumptech.glide.Glide;
 
 import java.util.List;
+import java.util.Locale;
 
 /**
  * Fragment that contains the UI for selecting and applying a GridOption.
@@ -67,7 +72,7 @@
     private OptionSelectorController<GridOption> mOptionsController;
     private GridOptionsManager mGridManager;
     private ContentLoadingProgressBar mLoading;
-    private View mContent;
+    private ConstraintLayout mContent;
     private View mError;
     private BottomActionBar mBottomActionBar;
     private ThemesUserEventLogger mEventLogger;
@@ -117,6 +122,18 @@
             // Make Talkback focus won't reset when notifyDataSetChange
             mOptionsContainer.setItemAnimator(null);
         }
+
+        // Set aspect ratio on the preview card dynamically.
+        Point mScreenSize;
+        ScreenSizeCalculator screenSizeCalculator = ScreenSizeCalculator.getInstance();
+        mScreenSize = screenSizeCalculator.getScreenSize(
+                requireActivity().getWindowManager().getDefaultDisplay());
+        ConstraintSet set = new ConstraintSet();
+        set.clone(mContent);
+        String ratio = String.format(Locale.US, "%d:%d", mScreenSize.x, mScreenSize.y);
+        set.setDimensionRatio(R.id.preview_card_container, ratio);
+        set.applyTo(mContent);
+
         mLoading = view.findViewById(R.id.loading_indicator);
         mError = view.findViewById(R.id.error_section);
 
@@ -182,6 +199,8 @@
         mBottomActionBar.showActionsOnly(APPLY_TEXT);
         mBottomActionBar.setActionClickListener(APPLY_TEXT,
                 v -> applyGridOption(mGridOptionViewModel.getSelectedOption()));
+        mBottomActionBar.setActionAccessibilityTraversalAfter(APPLY_TEXT,
+                mOptionsContainer.getId());
     }
 
     private void applyGridOption(GridOption gridOption) {
diff --git a/src/com/android/customization/picker/grid/GridOptionPreviewer.java b/src/com/android/customization/picker/grid/GridOptionPreviewer.java
index 8de08cf..5cf327e 100644
--- a/src/com/android/customization/picker/grid/GridOptionPreviewer.java
+++ b/src/com/android/customization/picker/grid/GridOptionPreviewer.java
@@ -64,16 +64,17 @@
         if (mSurfaceCallback != null) {
             mSurfaceCallback.cleanUp();
             mSurfaceCallback.resetLastSurface();
+            if (mGridOptionSurface != null) {
+                mGridOptionSurface.getHolder().removeCallback(mSurfaceCallback);
+            }
         }
-        if (mGridOptionSurface == null) {
-            mGridOptionSurface = new SurfaceView(mPreviewContainer.getContext());
-            mGridOptionSurface.setLayoutParams(new ViewGroup.LayoutParams(
-                    ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
-            mGridOptionSurface.setZOrderMediaOverlay(true);
-            mSurfaceCallback = new GridOptionSurfaceHolderCallback(mGridOptionSurface,
-                    mGridOptionSurface.getContext());
-            mGridOptionSurface.getHolder().addCallback(mSurfaceCallback);
-        }
+        mGridOptionSurface = new SurfaceView(mPreviewContainer.getContext());
+        mGridOptionSurface.setLayoutParams(new ViewGroup.LayoutParams(
+                ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
+        mGridOptionSurface.setZOrderMediaOverlay(true);
+        mSurfaceCallback = new GridOptionSurfaceHolderCallback(mGridOptionSurface,
+                mGridOptionSurface.getContext());
+        mGridOptionSurface.getHolder().addCallback(mSurfaceCallback);
         mPreviewContainer.addView(mGridOptionSurface);
     }
 
diff --git a/src/com/android/customization/widget/OptionSelectorController.java b/src/com/android/customization/widget/OptionSelectorController.java
index 952bc55..a66dd44 100644
--- a/src/com/android/customization/widget/OptionSelectorController.java
+++ b/src/com/android/customization/widget/OptionSelectorController.java
@@ -24,6 +24,7 @@
 import android.graphics.drawable.LayerDrawable;
 import android.text.TextUtils;
 import android.util.DisplayMetrics;
+import android.util.TypedValue;
 import android.view.Gravity;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -43,6 +44,7 @@
 import com.android.customization.model.CustomizationManager;
 import com.android.customization.model.CustomizationOption;
 import com.android.wallpaper.R;
+import com.android.wallpaper.widget.GridPaddingDecoration;
 
 import java.util.HashSet;
 import java.util.List;
@@ -77,7 +79,7 @@
         int CENTER_CHANGE_COLOR_WHEN_NOT_SELECTED = 3;
     }
 
-    private static final float LINEAR_LAYOUT_HORIZONTAL_DISPLAY_OPTIONS_MAX = 4.35f;
+    private float mLinearLayoutHorizontalDisplayOptionsMax;
 
     private final RecyclerView mContainer;
     private final List<T> mOptions;
@@ -99,6 +101,10 @@
         mOptions = options;
         mUseGrid = useGrid;
         mCheckmarkStyle = checkmarkStyle;
+        TypedValue typedValue = new TypedValue();
+        mContainer.getResources().getValue(R.dimen.linear_layout_horizontal_display_options_max,
+                typedValue, true);
+        mLinearLayoutHorizontalDisplayOptionsMax = typedValue.getFloat();
     }
 
     public void addListener(OptionSelectedListener listener) {
@@ -312,6 +318,11 @@
             if (mContainer.getLayoutManager() != null) {
                 ((GridLayoutManager) mContainer.getLayoutManager()).setSpanCount(numColumns);
             }
+            if (mContainer.getItemDecorationCount() == 0) {
+                mContainer.addItemDecoration(new GridPaddingDecoration(
+                        mContainer.getContext().getResources().getDimensionPixelSize(
+                                R.dimen.option_tile_grid_padding_horizontal), 0));
+            }
             return;
         }
 
@@ -320,12 +331,12 @@
             mContainer.setOverScrollMode(View.OVER_SCROLL_NEVER);
         }
 
-        if (mAdapter.getItemCount() >= LINEAR_LAYOUT_HORIZONTAL_DISPLAY_OPTIONS_MAX) {
+        if (mAdapter.getItemCount() >= mLinearLayoutHorizontalDisplayOptionsMax) {
             int spaceBetweenItems = availableWidth
-                    - Math.round(widthPerItem * LINEAR_LAYOUT_HORIZONTAL_DISPLAY_OPTIONS_MAX)
+                    - Math.round(widthPerItem * mLinearLayoutHorizontalDisplayOptionsMax)
                     - mContainer.getPaddingLeft();
             int itemEndMargin =
-                    spaceBetweenItems / (int) LINEAR_LAYOUT_HORIZONTAL_DISPLAY_OPTIONS_MAX;
+                    spaceBetweenItems / (int) mLinearLayoutHorizontalDisplayOptionsMax;
             if (itemEndMargin <= 0) {
                 itemEndMargin = res.getDimensionPixelOffset(R.dimen.option_tile_margin_horizontal);
             }
diff --git a/src/com/google/android/apps/wallpaper/asset/ThemeBundleThumbAsset.java b/src/com/google/android/apps/wallpaper/asset/ThemeBundleThumbAsset.java
deleted file mode 100644
index d941854..0000000
--- a/src/com/google/android/apps/wallpaper/asset/ThemeBundleThumbAsset.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.google.android.apps.wallpaper.asset;
-
-import android.app.Activity;
-import android.content.res.Resources;
-import android.graphics.Bitmap;
-import android.graphics.Rect;
-import android.graphics.drawable.BitmapDrawable;
-import android.graphics.drawable.Drawable;
-import android.graphics.drawable.LayerDrawable;
-import android.os.AsyncTask;
-
-import androidx.annotation.Nullable;
-
-import com.android.wallpaper.asset.Asset;
-import com.android.wallpaper.module.DrawableLayerResolver;
-import com.android.wallpaper.module.InjectorProvider;
-
-public class ThemeBundleThumbAsset extends Asset {
-    private final Resources mRes;
-    private final int mResId;
-    private final DrawableLayerResolver mLayerResolver;
-
-    public ThemeBundleThumbAsset(Resources res, int resId) {
-        mRes = res;
-        mResId = resId;
-        mLayerResolver = InjectorProvider.getInjector().getDrawableLayerResolver();
-    }
-
-    @Override
-    public void decodeBitmap(int targetWidth, int targetHeight, BitmapReceiver receiver) {
-        // No scaling is needed, as the thumbnail is already a thumbnail.
-        LoadThumbnailTask task = new LoadThumbnailTask(mRes, mResId, mLayerResolver, receiver);
-        task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
-    }
-
-    @Override
-    public void decodeBitmapRegion(Rect rect, int targetWidth, int targetHeight,
-            boolean shouldAdjustForRtl, BitmapReceiver receiver) {
-
-    }
-
-    @Override
-    public void decodeRawDimensions(@Nullable Activity activity, DimensionsReceiver receiver) {
-
-    }
-
-    @Override
-    public boolean supportsTiling() {
-        return false;
-    }
-
-    /**
-     * AsyncTask subclass which loads the live wallpaper's thumbnail bitmap off the main UI thread.
-     * Resolves with null if live wallpaper thumbnail is not a bitmap.
-     */
-    private static class LoadThumbnailTask extends AsyncTask<Void, Void, Bitmap> {
-        private final DrawableLayerResolver mLayerResolver;
-        private final Resources mResources;
-        private final int mResId;
-        private BitmapReceiver mReceiver;
-
-        public LoadThumbnailTask(Resources res, int resId, DrawableLayerResolver resolver,
-                BitmapReceiver receiver) {
-            mLayerResolver = resolver;
-            mReceiver = receiver;
-            mResources = res;
-            mResId = resId;
-        }
-
-        @Override
-        protected Bitmap doInBackground(Void... unused) {
-            Drawable thumb = mResources.getDrawable(mResId, null);
-
-            // Live wallpaper components may or may not specify a thumbnail drawable.
-            if (thumb instanceof BitmapDrawable) {
-                return ((BitmapDrawable) thumb).getBitmap();
-            } else if (thumb instanceof LayerDrawable) {
-                Drawable layer = mLayerResolver.resolveLayer((LayerDrawable) thumb);
-                if (layer instanceof BitmapDrawable) {
-                    return ((BitmapDrawable) layer).getBitmap();
-                }
-            }
-
-            // If no thumbnail was specified, return a null bitmap.
-            return null;
-        }
-
-        @Override
-        protected void onPostExecute(Bitmap bitmap) {
-            mReceiver.onBitmapDecoded(bitmap);
-        }
-    }
-}
diff --git a/src_override/com/android/wallpaper/module/WallpapersInjector.java b/src_override/com/android/wallpaper/module/WallpapersInjector.java
index f8a4182..9f8fe9c 100755
--- a/src_override/com/android/wallpaper/module/WallpapersInjector.java
+++ b/src_override/com/android/wallpaper/module/WallpapersInjector.java
@@ -24,8 +24,8 @@
 import com.android.wallpaper.model.CategoryProvider;
 import com.android.wallpaper.model.WallpaperInfo;
 import com.android.wallpaper.monitor.PerformanceMonitor;
+import com.android.wallpaper.picker.CustomizationPickerActivity;
 import com.android.wallpaper.picker.ImagePreviewFragment;
-import com.android.wallpaper.picker.TopLevelPickerActivity;
 
 /**
  * A concrete, real implementation of the dependency provider.
@@ -81,7 +81,7 @@
     @Override
     public Intent getDeepLinkRedirectIntent(Context context, Uri uri) {
         Intent intent = new Intent();
-        intent.setClass(context, TopLevelPickerActivity.class);
+        intent.setClass(context, CustomizationPickerActivity.class);
         intent.setData(uri);
         intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
         return intent;
