Merge "Don't restore debug preferences"

main
Sandeep Siddhartha 2014-10-14 02:28:49 +00:00 committed by Android (Google) Code Review
commit cbd59e02a9
3 changed files with 35 additions and 12 deletions

View File

@ -48,8 +48,7 @@ public final class BackupAgent extends BackupAgentHelper {
// Remove the preferences that we don't want restored.
final SharedPreferences.Editor prefEditor = getSharedPreferences(
getPackageName() + PREF_SUFFIX, MODE_PRIVATE).edit();
final String[] prefsToRemove = LocalSettingsConstants.PREFS_TO_SKIP_RESTORING;
for (final String key : prefsToRemove) {
for (final String key : LocalSettingsConstants.PREFS_TO_SKIP_RESTORING) {
prefEditor.remove(key);
}
// Flush the changes to disk.

View File

@ -16,29 +16,37 @@
package com.android.inputmethod.latin.settings;
/**
* Debug settings for the application.
*
* Note: Even though these settings are stored in the default shared preferences file,
* they shouldn't be restored across devices.
* If a new key is added here, it should also be blacklisted for restore in
* {@link LocalSettingsConstants}.
*/
public final class DebugSettings {
public static final String PREF_DEBUG_MODE = "debug_mode";
public static final String PREF_FORCE_NON_DISTINCT_MULTITOUCH = "force_non_distinct_multitouch";
public static final String PREF_FORCE_PHYSICAL_KEYBOARD_SPECIAL_KEY =
"force_physical_keyboard_special_key";
public static final String PREF_SHOULD_SHOW_LXX_SUGGESTION_UI =
"pref_should_show_lxx_suggestion_ui";
public static final String PREF_HAS_CUSTOM_KEY_PREVIEW_ANIMATION_PARAMS =
"pref_has_custom_key_preview_animation_params";
public static final String PREF_KEY_PREVIEW_SHOW_UP_START_X_SCALE =
"pref_key_preview_show_up_start_x_scale";
public static final String PREF_KEY_PREVIEW_SHOW_UP_START_Y_SCALE =
"pref_key_preview_show_up_start_y_scale";
public static final String PREF_KEY_LONGPRESS_TIMEOUT = "pref_key_longpress_timeout";
public static final String PREF_KEY_PREVIEW_DISMISS_DURATION =
"pref_key_preview_dismiss_duration";
public static final String PREF_KEY_PREVIEW_DISMISS_END_X_SCALE =
"pref_key_preview_dismiss_end_x_scale";
public static final String PREF_KEY_PREVIEW_DISMISS_END_Y_SCALE =
"pref_key_preview_dismiss_end_y_scale";
public static final String PREF_KEY_PREVIEW_SHOW_UP_DURATION =
"pref_key_preview_show_up_duration";
public static final String PREF_KEY_PREVIEW_DISMISS_DURATION =
"pref_key_preview_dismiss_duration";
public static final String PREF_KEY_PREVIEW_SHOW_UP_START_X_SCALE =
"pref_key_preview_show_up_start_x_scale";
public static final String PREF_KEY_PREVIEW_SHOW_UP_START_Y_SCALE =
"pref_key_preview_show_up_start_y_scale";
public static final String PREF_SHOULD_SHOW_LXX_SUGGESTION_UI =
"pref_should_show_lxx_suggestion_ui";
public static final String PREF_SLIDING_KEY_INPUT_PREVIEW = "pref_sliding_key_input_preview";
public static final String PREF_KEY_LONGPRESS_TIMEOUT = "pref_key_longpress_timeout";
private DebugSettings() {
// This class is not publicly instantiable.

View File

@ -40,6 +40,22 @@ public class LocalSettingsConstants {
// a different shared preferences file.
public static final String[] PREFS_TO_SKIP_RESTORING = new String[] {
PREF_ACCOUNT_NAME,
PREF_ENABLE_CLOUD_SYNC
PREF_ENABLE_CLOUD_SYNC,
// The debug settings are not restored on a new device.
// If a feature relies on these, it should ensure that the defaults are
// correctly set for it to work on a new device.
DebugSettings.PREF_DEBUG_MODE,
DebugSettings.PREF_FORCE_NON_DISTINCT_MULTITOUCH,
DebugSettings.PREF_FORCE_PHYSICAL_KEYBOARD_SPECIAL_KEY,
DebugSettings.PREF_HAS_CUSTOM_KEY_PREVIEW_ANIMATION_PARAMS,
DebugSettings.PREF_KEY_LONGPRESS_TIMEOUT,
DebugSettings.PREF_KEY_PREVIEW_DISMISS_DURATION,
DebugSettings.PREF_KEY_PREVIEW_DISMISS_END_X_SCALE,
DebugSettings.PREF_KEY_PREVIEW_DISMISS_END_Y_SCALE,
DebugSettings.PREF_KEY_PREVIEW_SHOW_UP_DURATION,
DebugSettings.PREF_KEY_PREVIEW_SHOW_UP_START_X_SCALE,
DebugSettings.PREF_KEY_PREVIEW_SHOW_UP_START_Y_SCALE,
DebugSettings.PREF_SHOULD_SHOW_LXX_SUGGESTION_UI,
DebugSettings.PREF_SLIDING_KEY_INPUT_PREVIEW
};
}