OmniGears: disable custom charging attributes for theme battery

theme is responsible for that

and while we are here remove those two useless list preferences
with switch and checkbox

Change-Id: I707ff4b5977f60b3e00aaca27f6fc6ebfa08713b
diff --git a/res/values/custom_arrays.xml b/res/values/custom_arrays.xml
index 837eaab..87aa59f 100644
--- a/res/values/custom_arrays.xml
+++ b/res/values/custom_arrays.xml
@@ -135,19 +135,6 @@
         <item>#FFFF0000</item>
     </string-array>
 
-    <!-- show battery percent -->
-    <string-array name="entries_battery_percent" translatable="false">
-        <item>@string/battery_percent_none</item>
-        <item>@string/battery_percent_always</item>
-        <!--<item>@string/battery_percent_expanded</item>-->
-    </string-array>
-
-    <string-array name="values_battery_percent" translatable="false">
-        <item>0</item>
-        <item>1</item>
-        <!--<item>2</item>-->
-    </string-array>
-
     <string-array name="navbar_recents_style_entries" translatable="false">
         <item>@string/keys_action_app_switch_card</item>
         <item>@string/keys_action_app_switch_grid</item>
diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index 0f2d2da..9e282f7 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -182,9 +182,6 @@
     <string name="statusbar_battery_summary">Set style of status bar battery display</string>
     <string name="battery_style_title">Style</string>
     <string name="battery_percent_title">Show percent</string>
-    <string name="battery_percent_none">Never</string>
-    <string name="battery_percent_always">Always</string>
-    <string name="battery_percent_expanded">Expanded</string>
     <string name="statusbar_percent_inside_title">Percent overlay</string>
     <string name="statusbar_percent_inside_summary">Display percent on top of the the battery image</string>
     <string name="statusbar_charging_image_title">Charging indicator</string>
diff --git a/res/xml/statusbar_battery_settings.xml b/res/xml/statusbar_battery_settings.xml
index 1e3c7b0..95b10eb 100644
--- a/res/xml/statusbar_battery_settings.xml
+++ b/res/xml/statusbar_battery_settings.xml
@@ -17,13 +17,11 @@
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:settings="http://schemas.android.com/apk/res/com.android.settings">
 
-        <ListPreference
+        <SwitchPreference
             android:key="statusbar_battery_enable"
             android:title="@string/battery_enable_title"
-            android:entries="@array/entries_battery_percent"
-            android:entryValues="@array/values_battery_percent"
             android:persistent="false"
-            android:defaultValue="1"/>
+            android:defaultValue="true"/>
         <ListPreference
             android:key="statusbar_battery_style"
             android:title="@string/battery_style_title"
@@ -31,13 +29,11 @@
             android:entryValues="@*android:array/values_battery_styles"
             android:persistent="false"
             android:defaultValue="0"/>
-        <ListPreference
+        <CheckBoxPreference
             android:key="statusbar_battery_percent"
             android:title="@string/battery_percent_title"
-            android:entries="@array/entries_battery_percent"
-            android:entryValues="@array/values_battery_percent"
             android:persistent="false"
-            android:defaultValue="1"/>
+            android:defaultValue="false"/>
         <org.omnirom.omnigears.preference.SystemCheckBoxPreference
             android:key="statusbar_battery_percent_inside"
             android:title="@string/statusbar_percent_inside_title"
diff --git a/src/org/omnirom/omnigears/interfacesettings/StatusbarBatterySettings.java b/src/org/omnirom/omnigears/interfacesettings/StatusbarBatterySettings.java
index 326e46e..00dc9d6 100644
--- a/src/org/omnirom/omnigears/interfacesettings/StatusbarBatterySettings.java
+++ b/src/org/omnirom/omnigears/interfacesettings/StatusbarBatterySettings.java
@@ -32,6 +32,7 @@
 import android.support.v7.preference.PreferenceScreen;
 import android.support.v7.preference.PreferenceCategory;
 import android.support.v14.preference.PreferenceFragment;
+import android.support.v14.preference.SwitchPreference;
 import android.provider.SearchIndexableResource;
 import android.provider.Settings;
 import android.provider.Settings.SettingNotFoundException;
@@ -67,13 +68,13 @@
     private static final String STATUSBAR_CATEGORY_CHARGING = "statusbar_category_charging";
 
     private ListPreference mBatteryStyle;
-    private ListPreference mBatteryPercent;
+    private CheckBoxPreference mBatteryPercent;
     private ColorPickerPreference mChargingColor;
     private CheckBoxPreference mPercentInside;
     private CheckBoxPreference mShowBolt;
     private int mShowPercent;
     private int mBatteryStyleValue;
-    private ListPreference mBatteryEnable;
+    private SwitchPreference mBatteryEnable;
     private int mShowBattery = 1;
     private PreferenceCategory mChargingCategory;
 
@@ -98,12 +99,10 @@
         mBatteryStyle.setSummary(mBatteryStyle.getEntry());
         mBatteryStyle.setOnPreferenceChangeListener(this);
 
-        mBatteryPercent = (ListPreference) findPreference(STATUSBAR_BATTERY_PERCENT);
+        mBatteryPercent = (CheckBoxPreference) findPreference(STATUSBAR_BATTERY_PERCENT);
         mShowPercent = Settings.System.getInt(resolver,
                 Settings.System.STATUSBAR_BATTERY_PERCENT, 0);
-
-        mBatteryPercent.setValue(Integer.toString(mShowPercent));
-        mBatteryPercent.setSummary(mBatteryPercent.getEntry());
+        mBatteryPercent.setChecked(mShowPercent == 1);
         mBatteryPercent.setOnPreferenceChangeListener(this);
 
         mChargingColor = (ColorPickerPreference) prefScreen.findPreference(STATUSBAR_CHARGING_COLOR);
@@ -118,12 +117,10 @@
 
         mShowBolt = (CheckBoxPreference) findPreference(STATUSBAR_BATTERY_SHOW_BOLT);
 
-        mBatteryEnable = (ListPreference) findPreference(STATUSBAR_BATTERY_ENABLE);
+        mBatteryEnable = (SwitchPreference) findPreference(STATUSBAR_BATTERY_ENABLE);
         mShowBattery = Settings.System.getInt(resolver,
                 Settings.System.STATUSBAR_BATTERY_ENABLE, 1);
-
-        mBatteryEnable.setValue(Integer.toString(mShowBattery));
-        mBatteryEnable.setSummary(mBatteryEnable.getEntry());
+        mBatteryEnable.setChecked(mShowBattery == 1);
         mBatteryEnable.setOnPreferenceChangeListener(this);
 
         mChargingCategory = (PreferenceCategory) findPreference(STATUSBAR_CATEGORY_CHARGING);
@@ -148,12 +145,10 @@
                     Settings.System.STATUSBAR_BATTERY_STYLE, mBatteryStyleValue);
             updateEnablement();
         } else if (preference == mBatteryPercent) {
-            mShowPercent = Integer.valueOf((String) newValue);
-            int index = mBatteryPercent.findIndexOfValue((String) newValue);
-            mBatteryPercent.setSummary(
-                    mBatteryPercent.getEntries()[index]);
+            Boolean value = (Boolean) newValue;
+            mShowPercent = value ? 1 : 0;
             Settings.System.putInt(getContentResolver(),
-                    Settings.System.STATUSBAR_BATTERY_PERCENT, mShowPercent);
+                    Settings.System.STATUSBAR_BATTERY_PERCENT, value ? 1 : 0);
             updateEnablement();
         } else if (preference == mChargingColor) {
             String hexColor = String.format("#%08X", mChargingColor.getColor());
@@ -161,23 +156,28 @@
             Settings.System.putInt(resolver,
                     Settings.System.STATUSBAR_BATTERY_CHARGING_COLOR, mChargingColor.getColor());
         } else if (preference == mBatteryEnable) {
-            mShowBattery = Integer.valueOf((String) newValue);
-            int index = mBatteryEnable.findIndexOfValue((String) newValue);
-            mBatteryEnable.setSummary(
-                    mBatteryEnable.getEntries()[index]);
+            Boolean value = (Boolean) newValue;
+            mShowBattery = value ? 1 : 0;
             Settings.System.putInt(getContentResolver(),
-                    Settings.System.STATUSBAR_BATTERY_ENABLE, mShowBattery);
+                    Settings.System.STATUSBAR_BATTERY_ENABLE, value ? 1 : 0);
             updateEnablement();
         }
         return true;
     }
 
     private void updateEnablement() {
-        mPercentInside.setEnabled(mShowBattery != 0 && mBatteryStyleValue != 3 && mBatteryStyleValue != 4 && mShowPercent != 0);
-        mShowBolt.setEnabled(mBatteryStyleValue != 3 && mBatteryStyleValue != 4);
+        if (mBatteryStyleValue == 5) {
+            // theme
+            mPercentInside.setEnabled(false);
+            mShowBolt.setEnabled(false);
+            mBatteryPercent.setEnabled(false);
+        } else {
+            mPercentInside.setEnabled(mShowBattery != 0 && mBatteryStyleValue != 3 && mBatteryStyleValue != 4 && mShowPercent != 0);
+            mShowBolt.setEnabled(mBatteryStyleValue != 3 && mBatteryStyleValue != 4);
+            mBatteryPercent.setEnabled(mShowBattery != 0 && mBatteryStyleValue != 3);
+        }
         mBatteryStyle.setEnabled(mShowBattery != 0);
-        mBatteryPercent.setEnabled(mShowBattery != 0 && mBatteryStyleValue != 3);
-        mChargingCategory.setEnabled(mShowBattery != 0);
+        mChargingCategory.setEnabled(mShowBattery != 0 && mBatteryStyleValue != 5);
     }
 
     public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =