summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/LauncherProvider.java
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2015-03-10 13:14:47 -0700
committerSunny Goyal <sunnygoyal@google.com>2015-03-17 14:49:38 -0700
commit5d85c44fd873c740dc191b28424c2ee367d730a2 (patch)
tree293001622c1888852f148a138b542563c6131dd4 /src/com/android/launcher3/LauncherProvider.java
parentce53e6dd12f5fa9e16ea77fbdafed3f8c2f448ac (diff)
downloadandroid_packages_apps_Trebuchet-5d85c44fd873c740dc191b28424c2ee367d730a2.tar.gz
android_packages_apps_Trebuchet-5d85c44fd873c740dc191b28424c2ee367d730a2.tar.bz2
android_packages_apps_Trebuchet-5d85c44fd873c740dc191b28424c2ee367d730a2.zip
Adding sort switch in FolderPagedView
> Adding options column in DB to store generation purpose flags > Storing isSorted flag in FolderInfo > Adding a switch for A-Z sorting (only visible if pageCount > 1) > When in sorted mode, spring-load snaps to the target location for 1.5 seconds Change-Id: I8c7c778d2cc3ccbd35a2890a1a705e1c1a7e9a66
Diffstat (limited to 'src/com/android/launcher3/LauncherProvider.java')
-rw-r--r--src/com/android/launcher3/LauncherProvider.java43
1 files changed, 21 insertions, 22 deletions
diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java
index b7a271e4f..59c8d929a 100644
--- a/src/com/android/launcher3/LauncherProvider.java
+++ b/src/com/android/launcher3/LauncherProvider.java
@@ -57,7 +57,7 @@ public class LauncherProvider extends ContentProvider {
private static final String TAG = "Launcher.LauncherProvider";
private static final boolean LOGD = false;
- private static final int DATABASE_VERSION = 22;
+ private static final int DATABASE_VERSION = 23;
static final String OLD_AUTHORITY = "com.android.launcher2.settings";
static final String AUTHORITY = ProviderConfig.AUTHORITY;
@@ -413,7 +413,8 @@ public class LauncherProvider extends ContentProvider {
"modified INTEGER NOT NULL DEFAULT 0," +
"restored INTEGER NOT NULL DEFAULT 0," +
"profileId INTEGER DEFAULT " + userSerialNumber + "," +
- "rank INTEGER NOT NULL DEFAULT 0" +
+ "rank INTEGER NOT NULL DEFAULT 0," +
+ "options INTEGER NOT NULL DEFAULT 0" +
");");
addWorkspacesTable(db);
@@ -524,18 +525,9 @@ public class LauncherProvider extends ContentProvider {
}
}
case 15: {
- db.beginTransaction();
- try {
- // Insert new column for holding restore status
- db.execSQL("ALTER TABLE favorites " +
- "ADD COLUMN restored INTEGER NOT NULL DEFAULT 0;");
- db.setTransactionSuccessful();
- } catch (SQLException ex) {
- Log.e(TAG, ex.getMessage(), ex);
+ if (!addIntegerColumn(db, Favorites.RESTORED, 0)) {
// Old version remains, which means we wipe old data
break;
- } finally {
- db.endTransaction();
}
}
case 16: {
@@ -573,6 +565,12 @@ public class LauncherProvider extends ContentProvider {
break;
}
case 22: {
+ if (!addIntegerColumn(db, Favorites.OPTIONS, 0)) {
+ // Old version remains, which means we wipe old data
+ break;
+ }
+ }
+ case 23: {
// DB Upgraded successfully
return;
}
@@ -682,20 +680,21 @@ public class LauncherProvider extends ContentProvider {
}
private boolean addProfileColumn(SQLiteDatabase db) {
+ UserManagerCompat userManager = UserManagerCompat.getInstance(mContext);
+ // Default to the serial number of this user, for older
+ // shortcuts.
+ long userSerialNumber = userManager.getSerialNumberForUser(
+ UserHandleCompat.myUserHandle());
+ return addIntegerColumn(db, Favorites.PROFILE_ID, userSerialNumber);
+ }
+
+ private boolean addIntegerColumn(SQLiteDatabase db, String columnName, long defaultValue) {
db.beginTransaction();
try {
- UserManagerCompat userManager = UserManagerCompat.getInstance(mContext);
- // Default to the serial number of this user, for older
- // shortcuts.
- long userSerialNumber = userManager.getSerialNumberForUser(
- UserHandleCompat.myUserHandle());
- // Insert new column for holding user serial number
- db.execSQL("ALTER TABLE favorites " +
- "ADD COLUMN profileId INTEGER DEFAULT "
- + userSerialNumber + ";");
+ db.execSQL("ALTER TABLE favorites ADD COLUMN "
+ + columnName + " INTEGER NOT NULL DEFAULT " + defaultValue + ";");
db.setTransactionSuccessful();
} catch (SQLException ex) {
- // Old version remains, which means we wipe old data
Log.e(TAG, ex.getMessage(), ex);
return false;
} finally {