summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Wren <cwren@android.com>2014-01-14 14:58:43 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-01-14 14:58:43 +0000
commitdc9c125236c9eab434b7c909d18f748c645c8118 (patch)
treef0e16d8803b338803ece84c99750589f52d82862
parent4808aa6b42ff31aa792b6dc0601bd6f24a554e21 (diff)
parent4b171361ca4ef2d88cd9493c6d92bb390df45289 (diff)
downloadandroid_packages_apps_Trebuchet-dc9c125236c9eab434b7c909d18f748c645c8118.tar.gz
android_packages_apps_Trebuchet-dc9c125236c9eab434b7c909d18f748c645c8118.tar.bz2
android_packages_apps_Trebuchet-dc9c125236c9eab434b7c909d18f748c645c8118.zip
Merge "hide launcher restore behind a flag." into jb-ub-now-kermit
-rw-r--r--src/com/android/launcher3/LauncherBackupAgentHelper.java15
-rw-r--r--src/com/android/launcher3/LauncherBackupHelper.java5
-rw-r--r--src/com/android/launcher3/LauncherPreferencesBackupHelper.java39
3 files changed, 55 insertions, 4 deletions
diff --git a/src/com/android/launcher3/LauncherBackupAgentHelper.java b/src/com/android/launcher3/LauncherBackupAgentHelper.java
index 83e4a60d4..876cf0887 100644
--- a/src/com/android/launcher3/LauncherBackupAgentHelper.java
+++ b/src/com/android/launcher3/LauncherBackupAgentHelper.java
@@ -21,6 +21,7 @@ import android.app.backup.BackupManager;
import android.app.backup.SharedPreferencesBackupHelper;
import android.content.Context;
import android.content.SharedPreferences;
+import android.provider.Settings;
public class LauncherBackupAgentHelper extends BackupAgentHelper {
@@ -28,6 +29,8 @@ public class LauncherBackupAgentHelper extends BackupAgentHelper {
private static BackupManager sBackupManager;
+ protected static final String SETTING_RESTORE_ENABLED = "launcher_restore_enabled";
+
/**
* Notify the backup manager that out database is dirty.
*
@@ -54,9 +57,15 @@ public class LauncherBackupAgentHelper extends BackupAgentHelper {
@Override
public void onCreate() {
+
+ boolean restoreEnabled = 0 != Settings.Secure.getInt(
+ getContentResolver(), SETTING_RESTORE_ENABLED, 0);
+
addHelper(LauncherBackupHelper.LAUNCHER_PREFS_PREFIX,
- new SharedPreferencesBackupHelper(this,
- LauncherAppState.getSharedPreferencesKey()));
- addHelper(LauncherBackupHelper.LAUNCHER_PREFIX, new LauncherBackupHelper(this));
+ new LauncherPreferencesBackupHelper(this,
+ LauncherAppState.getSharedPreferencesKey(),
+ restoreEnabled));
+ addHelper(LauncherBackupHelper.LAUNCHER_PREFIX,
+ new LauncherBackupHelper(this, restoreEnabled));
}
}
diff --git a/src/com/android/launcher3/LauncherBackupHelper.java b/src/com/android/launcher3/LauncherBackupHelper.java
index a081c2191..704d790da 100644
--- a/src/com/android/launcher3/LauncherBackupHelper.java
+++ b/src/com/android/launcher3/LauncherBackupHelper.java
@@ -137,12 +137,15 @@ public class LauncherBackupHelper implements BackupHelper {
private final Context mContext;
+ private final boolean mRestoreEnabled;
+
private HashMap<ComponentName, AppWidgetProviderInfo> mWidgetMap;
private ArrayList<Key> mKeys;
- public LauncherBackupHelper(Context context) {
+ public LauncherBackupHelper(Context context, boolean restoreEnabled) {
mContext = context;
+ mRestoreEnabled = restoreEnabled;
}
private void dataChanged() {
diff --git a/src/com/android/launcher3/LauncherPreferencesBackupHelper.java b/src/com/android/launcher3/LauncherPreferencesBackupHelper.java
new file mode 100644
index 000000000..1ac6ff962
--- /dev/null
+++ b/src/com/android/launcher3/LauncherPreferencesBackupHelper.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.launcher3;
+
+import android.app.backup.BackupDataInputStream;
+import android.app.backup.SharedPreferencesBackupHelper;
+import android.content.Context;
+
+public class LauncherPreferencesBackupHelper extends SharedPreferencesBackupHelper {
+
+ private final boolean mRestoreEnabled;
+
+ public LauncherPreferencesBackupHelper(Context context, String sharedPreferencesKey,
+ boolean restoreEnabled) {
+ super(context, sharedPreferencesKey);
+ mRestoreEnabled = restoreEnabled;
+ }
+
+ @Override
+ public void restoreEntity(BackupDataInputStream data) {
+ if (mRestoreEnabled) {
+ super.restoreEntity(data);
+ }
+ }
+}