From 467d629ca714cd74658043c1ddfec36c60d898c1 Mon Sep 17 00:00:00 2001 From: Alan Viverette Date: Tue, 12 Aug 2014 15:13:19 -0700 Subject: [PATCH] Use correct checked value when animating Switch BUG: 16984959 Change-Id: I1b4ffea568619663e26c097a28b86579d090c0ce --- core/java/android/widget/Switch.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/android/widget/Switch.java b/core/java/android/widget/Switch.java index 682f2ae1f311a..8b97329646b47 100644 --- a/core/java/android/widget/Switch.java +++ b/core/java/android/widget/Switch.java @@ -833,6 +833,10 @@ public class Switch extends CompoundButton { public void setChecked(boolean checked) { super.setChecked(checked); + // Calling the super method may result in setChecked() getting called + // recursively with a different value, so load the REAL value... + checked = isChecked(); + if (isAttachedToWindow() && isLaidOut()) { animateThumbToCheckedState(checked); } else {