[2/2] OmniGears: move dashboard layout options inside OG
looks currently odd to have the context menu in every page
Change-Id: Ia5a978935cdf75a93e7d334503a0289002d59b8d
diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index 105b4e2..88184ae 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -605,4 +605,9 @@
<string name="logcat_app_summary">Start app to collect logs</string>
<string name="omni_theme_title">Omni Light/Dark theme</string>
<string name="omni_theme_summary">Substratum based theme</string>
+
+ <string name="show_dashboard_columns_title">Use columns layout</string>
+ <string name="show_dashboard_columns_summary">In settings main page</string>
+ <string name="hide_dashboard_summary_title">Hide summary</string>
+ <string name="hide_dashboard_summary_summary">In settings main page</string>
</resources>
diff --git a/res/xml/more_settings.xml b/res/xml/more_settings.xml
index 46ca535..a193dea 100644
--- a/res/xml/more_settings.xml
+++ b/res/xml/more_settings.xml
@@ -28,6 +28,16 @@
android:title="@string/volume_dialog_headers_title"
android:summary="@string/volume_dialog_headers_summary"
android:defaultValue="true" />
+ <SwitchPreference
+ android:key="show_dashboard_columns"
+ android:title="@string/show_dashboard_columns_title"
+ android:summary="@string/show_dashboard_columns_summary"
+ android:persistent="false" />
+ <SwitchPreference
+ android:key="hide_dashboard_summary"
+ android:title="@string/hide_dashboard_summary_title"
+ android:summary="@string/hide_dashboard_summary_summary"
+ android:persistent="false" />
</PreferenceCategory>
diff --git a/src/org/omnirom/omnigears/moresettings/MoreSettings.java b/src/org/omnirom/omnigears/moresettings/MoreSettings.java
index 1c8c1e3..ea8dd00 100644
--- a/src/org/omnirom/omnigears/moresettings/MoreSettings.java
+++ b/src/org/omnirom/omnigears/moresettings/MoreSettings.java
@@ -19,17 +19,21 @@
package org.omnirom.omnigears.moresettings;
import android.content.Context;
+import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.preference.ListPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceCategory;
import android.support.v7.preference.PreferenceScreen;
+import android.support.v7.preference.Preference.OnPreferenceChangeListener;
+import android.support.v14.preference.SwitchPreference;
import android.provider.SearchIndexableResource;
import android.util.Log;
import com.android.internal.util.omni.PackageUtils;
import com.android.settings.R;
+import com.android.settings.SettingsActivity;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
import com.android.internal.logging.MetricsLogger;
@@ -42,6 +46,10 @@
public class MoreSettings extends SettingsPreferenceFragment implements Indexable {
private static final String TAG = "MoreSettings";
+ private static final String KEY_SHOW_DASHBOARD_COLUMNS = "show_dashboard_columns";
+ private static final String KEY_HIDE_DASHBOARD_SUMMARY = "hide_dashboard_summary";
+
+ private SharedPreferences mAppPreferences;
@Override
public int getMetricsCategory() {
@@ -60,6 +68,30 @@
systemPrefs.removePreference(logcatApp);
}
}
+ mAppPreferences = getActivity().getSharedPreferences(SettingsActivity.APP_PREFERENCES_NAME,
+ Context.MODE_PRIVATE);
+
+ SwitchPreference showColumnsLayout = (SwitchPreference) findPreference(KEY_SHOW_DASHBOARD_COLUMNS);
+ showColumnsLayout.setChecked(mAppPreferences.getInt(SettingsActivity.KEY_COLUMNS_COUNT, 1) == 2);
+ showColumnsLayout.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ if ((Boolean) newValue ) {
+ mAppPreferences.edit().putInt(SettingsActivity.KEY_COLUMNS_COUNT, 2).commit();
+ } else {
+ mAppPreferences.edit().putInt(SettingsActivity.KEY_COLUMNS_COUNT, 1).commit();
+ }
+ return true;
+ }
+ });
+
+ SwitchPreference hideColumnSummary = (SwitchPreference) findPreference(KEY_HIDE_DASHBOARD_SUMMARY);
+ hideColumnSummary.setChecked(mAppPreferences.getBoolean(SettingsActivity.KEY_HIDE_SUMMARY, false));
+ hideColumnSummary.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ mAppPreferences.edit().putBoolean(SettingsActivity.KEY_HIDE_SUMMARY, ((Boolean) newValue)).commit();
+ return true;
+ }
+ });
}
public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =