OmniControl: use OmniPreferenceTheme for material switch style

since this cant be build without other deps anyway
we dont need to add the styles locally

Change-Id: I6abcfdcc4c6720a3447f645eb55fd9fa4e66400a
diff --git a/Android.bp b/Android.bp
index 5e32685..8ea60ce 100644
--- a/Android.bp
+++ b/Android.bp
@@ -22,6 +22,7 @@
     "androidx.recyclerview_recyclerview",
     "OmniLib",
     "OmniLibCore",
+    "OmniPreferenceTheme"
   ],
 
   kotlincflags: ["-Xjvm-default=enable"],
diff --git a/app/src/main/java/org/omnirom/control/AbstractSettingsFragment.kt b/app/src/main/java/org/omnirom/control/AbstractSettingsFragment.kt
index 28875f4..53cc3f0 100644
--- a/app/src/main/java/org/omnirom/control/AbstractSettingsFragment.kt
+++ b/app/src/main/java/org/omnirom/control/AbstractSettingsFragment.kt
@@ -48,7 +48,8 @@
         (activity as? SettingsActivity)?.updateFragmentTitle(
             getFragmentTitle(),
             getFragmentSummary(),
-            getFragmentIcon()
+            getFragmentIcon(),
+            false
         )
     }
 }
\ No newline at end of file
diff --git a/app/src/main/java/org/omnirom/control/ApplicationManager.kt b/app/src/main/java/org/omnirom/control/ApplicationManager.kt
index 25a30fb..0d1268b 100644
--- a/app/src/main/java/org/omnirom/control/ApplicationManager.kt
+++ b/app/src/main/java/org/omnirom/control/ApplicationManager.kt
@@ -21,14 +21,12 @@
 import android.content.Context
 import android.content.Intent
 import android.content.pm.PackageManager
-import android.graphics.drawable.Drawable
-import android.graphics.drawable.BitmapDrawable
-
 import android.graphics.Bitmap
 import android.graphics.Canvas
 import android.graphics.Paint
-
 import android.graphics.PaintFlagsDrawFilter
+import android.graphics.drawable.BitmapDrawable
+import android.graphics.drawable.Drawable
 
 class ApplicationManager(context: Context) {
     private val mContext: Context = context
@@ -54,6 +52,7 @@
     fun startApp(app: Application) {
         val intent = Intent()
         intent.component = app.getComponentName()
+        intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
         try {
             mContext.startActivity(intent)
         } catch (e: Exception) {
@@ -63,6 +62,7 @@
     fun startApp(component: ComponentName) {
         val intent = Intent()
         intent.component = component
+        intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
         try {
             mContext.startActivity(intent)
         } catch (e: Exception) {
diff --git a/app/src/main/java/org/omnirom/control/GridViewFragment.kt b/app/src/main/java/org/omnirom/control/GridViewFragment.kt
index 87073fc..4330acc 100644
--- a/app/src/main/java/org/omnirom/control/GridViewFragment.kt
+++ b/app/src/main/java/org/omnirom/control/GridViewFragment.kt
@@ -285,9 +285,10 @@
         super.onResume()
         (activity as? AppCompatActivity)?.supportActionBar?.setDisplayHomeAsUpEnabled(false)
         (activity as? SettingsActivity)?.updateFragmentTitle(
-            resources.getString(R.string.app_title),
+            resources.getString(R.string.app_name),
             "",
-            R.drawable.ic_settings_grid
+            0,
+            true
         )
         createGridItems()
         gridItemsAdapter.notifyDataSetChanged()
diff --git a/app/src/main/java/org/omnirom/control/OverlaysFragment.kt b/app/src/main/java/org/omnirom/control/OverlaysFragment.kt
index c51e05c..88b32d8 100644
--- a/app/src/main/java/org/omnirom/control/OverlaysFragment.kt
+++ b/app/src/main/java/org/omnirom/control/OverlaysFragment.kt
@@ -480,7 +480,8 @@
         (activity as? SettingsActivity)?.updateFragmentTitle(
             getFragmentTitle(),
             getFragmentSummary(),
-            getFragmentIcon()
+            getFragmentIcon(),
+            false
         )
     }
 
diff --git a/app/src/main/java/org/omnirom/control/SettingsActivity.kt b/app/src/main/java/org/omnirom/control/SettingsActivity.kt
index 55965e7..5e1e4b7 100644
--- a/app/src/main/java/org/omnirom/control/SettingsActivity.kt
+++ b/app/src/main/java/org/omnirom/control/SettingsActivity.kt
@@ -18,6 +18,7 @@
 package org.omnirom.control
 
 import android.os.Bundle
+import android.util.TypedValue
 import android.view.MenuItem
 import android.view.View
 import android.widget.ImageView
@@ -58,8 +59,13 @@
         return super.onOptionsItemSelected(item)
     }
 
-    fun updateFragmentTitle(title: String, summary: String, icon: Int) {
+    fun updateFragmentTitle(title: String, summary: String, icon: Int, rootScreen: Boolean) {
         (findViewById<TextView>(R.id.fragment_title)).text = title
+        if (rootScreen) {
+            (findViewById<TextView>(R.id.fragment_title)).setTextAppearance(R.style.Theme_OmniControl_TitleTextStyle)
+        } else {
+            (findViewById<TextView>(R.id.fragment_title)).setTextAppearance(R.style.Theme_OmniControl_GridItem_TitleTextStyle)
+        }
         if (summary.isNotEmpty()) {
             (findViewById<TextView>(R.id.fragment_summary)).visibility = View.VISIBLE
             (findViewById<TextView>(R.id.fragment_summary)).text = summary
diff --git a/app/src/main/res/layout/settings_activity.xml b/app/src/main/res/layout/settings_activity.xml
index d909a2f..d5492cb 100644
--- a/app/src/main/res/layout/settings_activity.xml
+++ b/app/src/main/res/layout/settings_activity.xml
@@ -1,7 +1,7 @@
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    xmlns:tools="http://schemas.android.com/tools"
     android:orientation="vertical">
 
     <androidx.appcompat.widget.Toolbar
@@ -14,6 +14,7 @@
         android:layout_height="wrap_content"
         android:layout_gravity="center_vertical"
         android:layout_marginStart="@dimen/fragment_side_margin"
+        android:layout_marginEnd="@dimen/fragment_side_margin"
         android:orientation="horizontal">
 
         <ImageView
@@ -38,8 +39,8 @@
                 android:ellipsize="end"
                 android:gravity="center_vertical"
                 android:maxLines="1"
-                android:textAppearance="@style/Theme.OmniControl.TitleTextStyle"
-                tools:text="aaaa"/>
+                android:textAppearance="@style/Theme.OmniControl.GridItem.TitleTextStyle"
+                tools:text="aaaa" />
 
             <TextView
                 android:id="@+id/fragment_summary"
@@ -48,9 +49,9 @@
                 android:ellipsize="end"
                 android:gravity="center_vertical"
                 android:maxLines="1"
-                android:textColor="?android:attr/textColorSecondary"
                 android:textAppearance="@style/Theme.OmniControl.GridItem.SummaryTextStyle"
-                tools:text="vvvv"/>
+                android:textColor="?android:attr/textColorSecondary"
+                tools:text="vvvv" />
 
         </LinearLayout>
     </LinearLayout>
@@ -64,4 +65,4 @@
         android:layout_marginEnd="@dimen/fragment_side_margin"
         android:layout_weight="1" />
 
-</LinearLayout>
\ No newline at end of file
+</LinearLayout>
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 549961e..5375713 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -24,4 +24,8 @@
     <dimen name="overlay_fragment_side_margin">10dp</dimen>
     <dimen name="alert_dialog_padding_material">20dp</dimen>
     <dimen name="color_preset_item_size">40dp</dimen>
+    <dimen name="title_text_size">20sp</dimen>
+    <dimen name="summary_text_size">14sp</dimen>
+    <dimen name="pref_title_text_size">18sp</dimen>
+    <dimen name="root_title_text_size">32sp</dimen>
 </resources>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 4a71f20..c254185 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,11 +1,10 @@
 <resources>
     <string name="app_name">Control Center</string>
-    <string name="app_title">OmniROM Control Center</string>
 
     <string name="weather_config_title">Weather provider</string>
     <string name="weather_config_summary">Configure provider settings</string>
     <string name="omni_remote_title">Remote access</string>
-    <string name="omni_remote_summary">VNC server to allow remote connection to device</string>
+    <string name="omni_remote_summary">VNC server for remote connection</string>
     <string name="matlog_title">MatLog</string>
     <string name="matlog_summary">Show logcat</string>
     <string name="changelog_title">Changelog</string>
@@ -15,11 +14,11 @@
     <string name="omnistore_title">OmniStore</string>
     <string name="omnistore_summary">Download applications</string>
     <string name="wallpaper_title">Wallpapers</string>
-    <string name="wallpaper_summary">Browse OmniROM themed wallpapers</string>
+    <string name="wallpaper_summary">OmniROM themed wallpapers</string>
     <string name="applist_title">Applications</string>
     <string name="settings_title">Settings</string>
     <string name="weather_current_title">Current weather</string>
-    <string name="weather_current_summary">Show current weather and configure provider</string>
+    <string name="weather_current_summary">Weather service configuration</string>
 
     <string name="bars_settings_title">Bars</string>
     <string name="bars_settings_summary">Status bar options</string>
@@ -48,7 +47,7 @@
     <string name="device_settings_summary">Advanced device specific options</string>
 
     <string name="overlays_settings_title">Styles</string>
-    <string name="overlays_settings_summary">Change system default styles and colors</string>
+    <string name="overlays_settings_summary">System default styles and colors</string>
     <string name="icon_shape_title">Icon shape</string>
     <string name="primary_color_title">Neutral color</string>
     <string name="accent_color_title">Accent color</string>
@@ -58,13 +57,13 @@
     <string name="doze_on_charge_summary">Wake screen when charging</string>
 
     <string name="lockscreen_item_title">Lock screen items</string>
-    <string name="lockscreen_item_summary">Configure visibility of lock screen items</string>
+    <string name="lockscreen_item_summary">Visibility of lock screen items</string>
     <string name="lockscreen_weather_title">Show weather condition</string>
     <string name="lockscreen_weather_summary">Show current weather condition and temperature</string>
     <string name="lockscreen_weather_enabled_info">Requires enablement of weather service</string>
 
     <string name="system_update_title">System updates</string>
-    <string name="system_update_summary">Download and install OmniROM updates</string>
+    <string name="system_update_summary">Download and install updates</string>
 
     <string name="system_category">System</string>
     <string name="show_cpu_title">Show CPU info</string>
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index aa03fdc..ee8b266 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -8,17 +8,20 @@
         <item name="android:windowLightNavigationBar">?attr/isLightTheme</item>
         <item name="android:windowSplashScreenIconBackgroundColor">@color/ic_launcher_background</item>
         <item name="android:windowBackground">@color/windowBackground</item>
+        <item name="preferenceTheme">@style/Omni.PreferenceTheme</item>
+        <item name="android:switchStyle">@style/Omni.SwitchStyle</item>
+        <item name="android:textAppearanceListItem">@style/Omni.PreferenceTitle</item>
     </style>
 
-    <style name="Theme.OmniControl.TitleTextStyle" parent="TextAppearance.Material3.TitleMedium">
-        <item name="android:textSize">24sp</item>
+    <style name="Theme.OmniControl.TitleTextStyle" parent="TextAppearance.Material3.BodyMedium">
+        <item name="android:textSize">@dimen/root_title_text_size</item>
     </style>
 
     <style name="Theme.OmniControl.GridItem.TitleTextStyle" parent="TextAppearance.Material3.BodyMedium">
-        <item name="android:textSize">20sp</item>
+        <item name="android:textSize">@dimen/title_text_size</item>
     </style>
 
     <style name="Theme.OmniControl.GridItem.SummaryTextStyle" parent="TextAppearance.Material3.BodyMedium">
-        <item name="android:textSize">14sp</item>
+        <item name="android:textSize">@dimen/summary_text_size</item>
     </style>
 </resources>
\ No newline at end of file