From 5213701e18128b6fa79037f8dc1d6324d38e09b2 Mon Sep 17 00:00:00 2001
From: Charles Lombardo <clombardo169@gmail.com>
Date: Thu, 11 May 2023 17:51:27 -0400
Subject: [PATCH] android: Move theme options out of advanced settings

---
 .../features/settings/ui/SettingsFragmentPresenter.kt    | 8 --------
 .../org/yuzu/yuzu_emu/fragments/HomeSettingsFragment.kt  | 6 ++++++
 src/android/app/src/main/res/drawable/ic_palette.xml     | 9 +++++++++
 src/android/app/src/main/res/values/strings.xml          | 3 ++-
 4 files changed, 17 insertions(+), 9 deletions(-)
 create mode 100644 src/android/app/src/main/res/drawable/ic_palette.xml

diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt
index c2eb63dac..f6ab92294 100644
--- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt
+++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/SettingsFragmentPresenter.kt
@@ -109,14 +109,6 @@ class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView)
                     Settings.SECTION_AUDIO
                 )
             )
-            add(
-                SubmenuSetting(
-                    null,
-                    R.string.preferences_theme,
-                    0,
-                    Settings.SECTION_THEME
-                )
-            )
         }
     }
 
diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/HomeSettingsFragment.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/HomeSettingsFragment.kt
index 7507d4635..09628634d 100644
--- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/HomeSettingsFragment.kt
+++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/HomeSettingsFragment.kt
@@ -34,6 +34,7 @@ import org.yuzu.yuzu_emu.R
 import org.yuzu.yuzu_emu.adapters.HomeSettingAdapter
 import org.yuzu.yuzu_emu.databinding.FragmentHomeSettingsBinding
 import org.yuzu.yuzu_emu.features.DocumentProvider
+import org.yuzu.yuzu_emu.features.settings.model.Settings
 import org.yuzu.yuzu_emu.features.settings.ui.SettingsActivity
 import org.yuzu.yuzu_emu.features.settings.utils.SettingsFile
 import org.yuzu.yuzu_emu.model.HomeSetting
@@ -77,6 +78,11 @@ class HomeSettingsFragment : Fragment() {
                 R.string.open_user_folder_description,
                 R.drawable.ic_folder_open
             ) { openFileManager() },
+            HomeSetting(
+                R.string.preferences_theme,
+                R.string.theme_and_color_description,
+                R.drawable.ic_palette
+            ) { SettingsActivity.launch(requireContext(), Settings.SECTION_THEME, "") },
             HomeSetting(
                 R.string.install_gpu_driver,
                 R.string.install_gpu_driver_description,
diff --git a/src/android/app/src/main/res/drawable/ic_palette.xml b/src/android/app/src/main/res/drawable/ic_palette.xml
new file mode 100644
index 000000000..43daec1ff
--- /dev/null
+++ b/src/android/app/src/main/res/drawable/ic_palette.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:fillColor="?attr/colorControlNormal"
+        android:pathData="M12,2C6.49,2 2,6.49 2,12s4.49,10 10,10c1.38,0 2.5,-1.12 2.5,-2.5c0,-0.61 -0.23,-1.2 -0.64,-1.67c-0.08,-0.1 -0.13,-0.21 -0.13,-0.33c0,-0.28 0.22,-0.5 0.5,-0.5H16c3.31,0 6,-2.69 6,-6C22,6.04 17.51,2 12,2zM17.5,13c-0.83,0 -1.5,-0.67 -1.5,-1.5c0,-0.83 0.67,-1.5 1.5,-1.5s1.5,0.67 1.5,1.5C19,12.33 18.33,13 17.5,13zM14.5,9C13.67,9 13,8.33 13,7.5C13,6.67 13.67,6 14.5,6S16,6.67 16,7.5C16,8.33 15.33,9 14.5,9zM5,11.5C5,10.67 5.67,10 6.5,10S8,10.67 8,11.5C8,12.33 7.33,13 6.5,13S5,12.33 5,11.5zM11,7.5C11,8.33 10.33,9 9.5,9S8,8.33 8,7.5C8,6.67 8.67,6 9.5,6S11,6.67 11,7.5z" />
+</vector>
diff --git a/src/android/app/src/main/res/values/strings.xml b/src/android/app/src/main/res/values/strings.xml
index 8ee067ffd..c5f4483d1 100644
--- a/src/android/app/src/main/res/values/strings.xml
+++ b/src/android/app/src/main/res/values/strings.xml
@@ -69,6 +69,7 @@
     <string name="search_homebrew">Homebrew</string>
     <string name="open_user_folder">Open yuzu folder</string>
     <string name="open_user_folder_description">Manage yuzu\'s internal files</string>
+    <string name="theme_and_color_description">Modify the look of the app</string>
     <string name="no_file_manager">No file manager found</string>
     <string name="notification_no_directory_link">Couldn\'t open yuzu directory</string>
     <string name="notification_no_directory_link_description">Please locate the user folder with the file manager\'s side panel manually.</string>
@@ -158,7 +159,7 @@
     <string name="preferences_system">System</string>
     <string name="preferences_graphics">Graphics</string>
     <string name="preferences_audio">Audio</string>
-    <string name="preferences_theme">Theme and Color</string>
+    <string name="preferences_theme">Theme and color</string>
 
     <!-- ROM loading errors -->
     <string name="loader_error_encrypted">Your ROM is encrypted</string>