Specify workspace resource in preload broadcast
Bug 7203884
Allow specifying the workspace XML layout in the PRELOAD_WORKSPACE
broadcast.
Change-Id: Iec01c6fa2dde4635f624f040b0772ee11fcd88dc
diff --git a/src/com/android/launcher2/LauncherProvider.java b/src/com/android/launcher2/LauncherProvider.java
index ccc126a..74cf7a4 100644
--- a/src/com/android/launcher2/LauncherProvider.java
+++ b/src/com/android/launcher2/LauncherProvider.java
@@ -203,14 +203,22 @@
return mOpenHelper.generateNewId();
}
- synchronized public void loadDefaultFavoritesIfNecessary() {
+ /**
+ * @param workspaceResId that can be 0 to use default or non-zero for specific resource
+ */
+ synchronized public void loadDefaultFavoritesIfNecessary(int workspaceResId) {
String spKey = LauncherApplication.getSharedPreferencesKey();
SharedPreferences sp = getContext().getSharedPreferences(spKey, Context.MODE_PRIVATE);
if (sp.getBoolean(DB_CREATED_BUT_DEFAULT_WORKSPACE_NOT_LOADED, false)) {
+ // Use default workspace resource if none provided
+ if (workspaceResId == 0) {
+ workspaceResId = R.xml.default_workspace;
+ }
+
// Populate favorites table with initial favorites
SharedPreferences.Editor editor = sp.edit();
editor.remove(DB_CREATED_BUT_DEFAULT_WORKSPACE_NOT_LOADED);
- mOpenHelper.loadFavorites(mOpenHelper.getWritableDatabase(), R.xml.default_workspace);
+ mOpenHelper.loadFavorites(mOpenHelper.getWritableDatabase(), workspaceResId);
editor.commit();
}
}