summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChris Wren <cwren@android.com>2013-10-17 15:16:48 -0400
committerChris Wren <cwren@android.com>2013-12-03 23:46:13 -0500
commit45297f851af715b2a0367459089a7a8f9c39b8fd (patch)
tree49d3e1546d7bee2d4c8456d5306292acbb133d0d /src
parent658e56fccae72413b8cb1a3f3a1a425f4d4dd57f (diff)
downloadandroid_packages_apps_Trebuchet-45297f851af715b2a0367459089a7a8f9c39b8fd.tar.gz
android_packages_apps_Trebuchet-45297f851af715b2a0367459089a7a8f9c39b8fd.tar.bz2
android_packages_apps_Trebuchet-45297f851af715b2a0367459089a7a8f9c39b8fd.zip
backup launcher preferences
Bug: 11267816 Change-Id: I12a32477164fe2205bc8cb02e0a23c561a7f9189
Diffstat (limited to 'src')
-rw-r--r--src/com/android/launcher3/LauncherBackupAgentHelper.java16
-rw-r--r--src/com/android/launcher3/LauncherBackupHelper.java2
2 files changed, 18 insertions, 0 deletions
diff --git a/src/com/android/launcher3/LauncherBackupAgentHelper.java b/src/com/android/launcher3/LauncherBackupAgentHelper.java
index 2b5059b72..83e4a60d4 100644
--- a/src/com/android/launcher3/LauncherBackupAgentHelper.java
+++ b/src/com/android/launcher3/LauncherBackupAgentHelper.java
@@ -18,10 +18,14 @@ package com.android.launcher3;
import android.app.backup.BackupAgentHelper;
import android.app.backup.BackupManager;
+import android.app.backup.SharedPreferencesBackupHelper;
import android.content.Context;
+import android.content.SharedPreferences;
public class LauncherBackupAgentHelper extends BackupAgentHelper {
+ private static final String TAG = "LauncherBackupAgentHelper";
+
private static BackupManager sBackupManager;
/**
@@ -38,9 +42,21 @@ public class LauncherBackupAgentHelper extends BackupAgentHelper {
sBackupManager.dataChanged();
}
+ @Override
+ public void onDestroy() {
+ // There is only one process accessing this preference file, but the restore
+ // modifies the file outside the normal codepaths, so it looks like another
+ // process. This forces a reload of the file, in case this process persists.
+ String spKey = LauncherAppState.getSharedPreferencesKey();
+ SharedPreferences sp = getSharedPreferences(spKey, Context.MODE_MULTI_PROCESS);
+ super.onDestroy();
+ }
@Override
public void onCreate() {
+ addHelper(LauncherBackupHelper.LAUNCHER_PREFS_PREFIX,
+ new SharedPreferencesBackupHelper(this,
+ LauncherAppState.getSharedPreferencesKey()));
addHelper(LauncherBackupHelper.LAUNCHER_PREFIX, new LauncherBackupHelper(this));
}
}
diff --git a/src/com/android/launcher3/LauncherBackupHelper.java b/src/com/android/launcher3/LauncherBackupHelper.java
index 8023fcd36..2a5ed6961 100644
--- a/src/com/android/launcher3/LauncherBackupHelper.java
+++ b/src/com/android/launcher3/LauncherBackupHelper.java
@@ -82,6 +82,8 @@ public class LauncherBackupHelper implements BackupHelper {
public static final String LAUNCHER_PREFIX = "L";
+ public static final String LAUNCHER_PREFS_PREFIX = "LP";
+
private static final Bitmap.CompressFormat IMAGE_FORMAT =
android.graphics.Bitmap.CompressFormat.PNG;