File tree Expand file tree Collapse file tree 1 file changed +9
-3
lines changed
core/java/android/preference Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -37,6 +37,7 @@ public abstract class TwoStatePreference extends Preference {
3737 private CharSequence mSummaryOn ;
3838 private CharSequence mSummaryOff ;
3939 boolean mChecked ;
40+ private boolean mCheckedSet ;
4041 private boolean mSendClickAccessibilityEvent ;
4142 private boolean mDisableDependentsState ;
4243
@@ -74,11 +75,16 @@ protected void onClick() {
7475 * @param checked The checked state.
7576 */
7677 public void setChecked (boolean checked ) {
77- if (mChecked != checked ) {
78+ // Always persist/notify the first time; don't assume the field's default of false.
79+ final boolean changed = mChecked != checked ;
80+ if (changed || !mCheckedSet ) {
7881 mChecked = checked ;
82+ mCheckedSet = true ;
7983 persistBoolean (checked );
80- notifyDependencyChange (shouldDisableDependents ());
81- notifyChanged ();
84+ if (changed ) {
85+ notifyDependencyChange (shouldDisableDependents ());
86+ notifyChanged ();
87+ }
8288 }
8389 }
8490
You can’t perform that action at this time.
0 commit comments