diff options
author | weijiew <weijiew@codeaurora.org> | 2016-11-10 14:13:29 +0800 |
---|---|---|
committer | weijiew <weijiew@codeaurora.org> | 2016-11-18 11:21:03 +0800 |
commit | 99531a0cef9b846134802940de64174696703778 (patch) | |
tree | 486172b079b6cdb0c9124090ede574181b5117e6 /src/com/android/camera/SettingsActivity.java | |
parent | c6fb74a0f63210f1991686e4303ed928b23e5b4b (diff) | |
download | android_packages_apps_Snap-99531a0cef9b846134802940de64174696703778.tar.gz android_packages_apps_Snap-99531a0cef9b846134802940de64174696703778.tar.bz2 android_packages_apps_Snap-99531a0cef9b846134802940de64174696703778.zip |
SnapdragonCamera: Selfie mirror doesn't work when open the Continuous shot
Selfie mirror doesn't support continuous shot. Disable continuous shot
when selfie mirror is turned on
Change-Id: I4e17895f0b15d04dd6f0f56eae17f091104e3a59
CRs-Fixed: 1086429
Diffstat (limited to 'src/com/android/camera/SettingsActivity.java')
-rw-r--r-- | src/com/android/camera/SettingsActivity.java | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/src/com/android/camera/SettingsActivity.java b/src/com/android/camera/SettingsActivity.java index 503927904..e97073f58 100644 --- a/src/com/android/camera/SettingsActivity.java +++ b/src/com/android/camera/SettingsActivity.java @@ -89,6 +89,20 @@ public class SettingsActivity extends PreferenceActivity { } }; + private SettingsManager.Listener mListener = new SettingsManager.Listener(){ + @Override + public void onSettingsChanged(List<SettingsManager.SettingState> settings){ + Map<String, SettingsManager.Values> map = mSettingsManager.getValuesMap(); + for( SettingsManager.SettingState state : settings) { + SettingsManager.Values values = map.get(state.key); + boolean enabled = values.overriddenValue == null; + Preference pref = findPreference(state.key); + if (pref != null) { + pref.setEnabled(enabled); + } + } + } + }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -102,6 +116,7 @@ public class SettingsActivity extends PreferenceActivity { finish(); return; } + mSettingsManager.registerListener(mListener); addPreferencesFromResource(R.xml.setting_menu_preferences); mSharedPreferences = getPreferenceManager().getSharedPreferences(); @@ -207,12 +222,16 @@ public class SettingsActivity extends PreferenceActivity { private void updatePreferenceButton(String key) { Preference pref = findPreference(key); - if (pref != null && pref instanceof ListPreference) { - ListPreference pref2 = (ListPreference) pref; - if (pref2.getEntryValues().length == 1) { - pref2.setEnabled(false); - } else { - pref2.setEnabled(true); + if (pref != null ) { + if( pref instanceof ListPreference) { + ListPreference pref2 = (ListPreference) pref; + if (pref2.getEntryValues().length == 1) { + pref2.setEnabled(false); + } else { + pref2.setEnabled(true); + } + }else { + pref.setEnabled(false); } } } @@ -243,6 +262,12 @@ public class SettingsActivity extends PreferenceActivity { finish(); } + @Override + protected void onDestroy() { + super.onDestroy(); + mSettingsManager.unregisterListener(mListener); + } + private void setShowInLockScreen() { // Change the window flags so that secure camera can show when locked Window win = getWindow(); |