diff options
author | Chris Wren <cwren@android.com> | 2013-12-20 17:22:11 -0500 |
---|---|---|
committer | Danesh M <daneshm90@gmail.com> | 2014-06-06 22:54:25 -0700 |
commit | 60f748d669be4794afb2b41add3a399973553429 (patch) | |
tree | 4d79c6fa1d8790658f07ce6d0afc1b09c3936b98 /src/com/android/launcher3/LauncherProvider.java | |
parent | 03aec6cf90e244fb88b1b01a3543d4da56742a39 (diff) | |
download | android_packages_apps_Trebuchet-60f748d669be4794afb2b41add3a399973553429.tar.gz android_packages_apps_Trebuchet-60f748d669be4794afb2b41add3a399973553429.tar.bz2 android_packages_apps_Trebuchet-60f748d669be4794afb2b41add3a399973553429.zip |
restore app favorites and screens
version 0: restore assuming apps are already installed.
Bug: 10779035
Change-Id: I7f9aa418a7d3d5460a79a229c0fbc80305b5eb5c
Diffstat (limited to 'src/com/android/launcher3/LauncherProvider.java')
-rw-r--r-- | src/com/android/launcher3/LauncherProvider.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java index 78ad84ecf..e689b2e4c 100644 --- a/src/com/android/launcher3/LauncherProvider.java +++ b/src/com/android/launcher3/LauncherProvider.java @@ -141,9 +141,10 @@ public class LauncherProvider extends ContentProvider { if (values == null) { throw new RuntimeException("Error: attempting to insert null values"); } - if (!values.containsKey(LauncherSettings.Favorites._ID)) { + if (!values.containsKey(LauncherSettings.BaseLauncherColumns._ID)) { throw new RuntimeException("Error: attempting to add item without specifying an id"); } + helper.checkId(table, values); return db.insert(table, nullColumnHack, values); } @@ -274,6 +275,7 @@ public class LauncherProvider extends ContentProvider { SharedPreferences sp = getContext().getSharedPreferences(spKey, Context.MODE_PRIVATE); if (sp.getBoolean(EMPTY_DATABASE_CREATED, false)) { + Log.d(TAG, "loading default workspace"); int workspaceResId = origWorkspaceResId; // Use default workspace resource if none provided @@ -960,6 +962,15 @@ public class LauncherProvider extends ContentProvider { mMaxItemId = id + 1; } + public void checkId(String table, ContentValues values) { + long id = values.getAsLong(LauncherSettings.BaseLauncherColumns._ID); + if (table == LauncherProvider.TABLE_WORKSPACE_SCREENS) { + mMaxScreenId = Math.max(id, mMaxScreenId); + } else { + mMaxItemId = Math.max(id, mMaxItemId); + } + } + private long initializeMaxItemId(SQLiteDatabase db) { Cursor c = db.rawQuery("SELECT MAX(_id) FROM favorites", null); |