summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanesh Mondegarian <daneshm90@gmail.com>2014-06-08 19:29:35 -0700
committerAbhisek Devkota <ciwrl@cyanogenmod.com>2014-06-16 14:01:53 -0700
commit0268e23e92a18769e8f837588c61e91d1ee893ea (patch)
tree703171814653f6967949a902294c1340eb4d6b9d
parent5b2ed54a3d4249c90e2d2cdf1863979c0a671980 (diff)
downloadandroid_packages_apps_Trebuchet-0268e23e92a18769e8f837588c61e91d1ee893ea.tar.gz
android_packages_apps_Trebuchet-0268e23e92a18769e8f837588c61e91d1ee893ea.tar.bz2
android_packages_apps_Trebuchet-0268e23e92a18769e8f837588c61e91d1ee893ea.zip
Trebuchet : Persist sorting mode
Change-Id: I62e0e79785e7e4c56b8e31df78909c4522e229c7
-rw-r--r--src/com/android/launcher3/AppsCustomizePagedView.java30
-rw-r--r--src/com/android/launcher3/Launcher.java2
-rw-r--r--src/com/android/launcher3/settings/SettingsProvider.java9
3 files changed, 38 insertions, 3 deletions
diff --git a/src/com/android/launcher3/AppsCustomizePagedView.java b/src/com/android/launcher3/AppsCustomizePagedView.java
index 0390f106a..6015de624 100644
--- a/src/com/android/launcher3/AppsCustomizePagedView.java
+++ b/src/com/android/launcher3/AppsCustomizePagedView.java
@@ -171,9 +171,29 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
* The different sort modes than can be used to order items.
*/
public enum SortMode {
- Title,
- LaunchCount,
- InstallTime
+ Title(0),
+ LaunchCount(1),
+ InstallTime(2);
+
+ private final int mValue;
+ private SortMode(int value) {
+ mValue = value;
+ }
+
+ public int getValue() {
+ return mValue;
+ }
+
+ public static SortMode getModeForValue(int value) {
+ switch (value) {
+ case 1:
+ return LaunchCount;
+ case 2:
+ return InstallTime;
+ default :
+ return Title;
+ }
+ }
}
private SortMode mSortMode = SortMode.Title;
@@ -1937,6 +1957,10 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
public void setup(Launcher launcher, DragController dragController) {
mLauncher = launcher;
mDragController = dragController;
+ int sortMode = SettingsProvider.getIntCustomDefault(mLauncher, SettingsProvider.SETTINGS_UI_DRAWER_SORT_MODE, -1);
+ if (sortMode != -1) {
+ setSortMode(SortMode.getModeForValue(sortMode));
+ }
}
/**
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index ea6333479..1ea2c9fdc 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -1245,6 +1245,8 @@ public class Launcher extends Activity
break;
}
mOverviewSettingsPanel.notifyDataSetInvalidated();
+ SettingsProvider.putInt(getBaseContext(), SettingsProvider.SETTINGS_UI_DRAWER_SORT_MODE,
+ mAppsCustomizeContent.getSortMode().getValue());
return true;
}
});
diff --git a/src/com/android/launcher3/settings/SettingsProvider.java b/src/com/android/launcher3/settings/SettingsProvider.java
index 6e5f9d9b3..c827ae478 100644
--- a/src/com/android/launcher3/settings/SettingsProvider.java
+++ b/src/com/android/launcher3/settings/SettingsProvider.java
@@ -40,6 +40,7 @@ public final class SettingsProvider {
public static final String SETTINGS_UI_GENERAL_ICONS_LARGE = "ui_general_icons_large";
public static final String SETTINGS_UI_GENERAL_ICONS_TEXT_FONT_FAMILY = "ui_general_icons_text_font";
public static final String SETTINGS_UI_GENERAL_ICONS_TEXT_FONT_STYLE = "ui_general_icons_text_font_style";
+ public static final String SETTINGS_UI_DRAWER_SORT_MODE = "ui_drawer_sort_mode";
public static SharedPreferences get(Context context) {
return context.getSharedPreferences(SETTINGS_KEY, Context.MODE_MULTI_PROCESS);
@@ -76,4 +77,12 @@ public final class SettingsProvider {
public static String getString(Context context, String key, int resource) {
return getStringCustomDefault(context, key, context.getResources().getString(resource));
}
+
+ public static void putString(Context context, String key, String value) {
+ get(context).edit().putString(key, value).commit();
+ }
+
+ public static void putInt(Context context, String key, int value) {
+ get(context).edit().putInt(key, value).commit();
+ }
}