Loading packages/SystemUI/src/com/android/systemui/qs/QSDetail.java +11 −10 Original line number Diff line number Diff line Loading @@ -67,7 +67,7 @@ public class QSDetail extends LinearLayout { private boolean mTriggeredExpand; private int mOpenX; private int mOpenY; private boolean mAnimating; private boolean mAnimatingOpen; private boolean mSwitchState; public QSDetail(Context context, @Nullable AttributeSet attrs) { Loading Loading @@ -160,7 +160,7 @@ public class QSDetail extends LinearLayout { mQsDetailHeader.setClickable(false); } else { mQsDetailHeaderSwitch.setVisibility(VISIBLE); handleToggleStateChanged(toggleState); handleToggleStateChanged(toggleState, adapter.getToggleEnabled()); mQsDetailHeader.setClickable(true); mQsDetailHeader.setOnClickListener(new OnClickListener() { @Override Loading Loading @@ -230,7 +230,7 @@ public class QSDetail extends LinearLayout { } sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED); if (visibleDiff) { mAnimating = true; mAnimatingOpen = adapter != null; if (mFullyExpanded || mDetailAdapter != null) { setAlpha(1); mClipper.animateCircularClip(x, y, mDetailAdapter != null, listener); Loading @@ -243,13 +243,12 @@ public class QSDetail extends LinearLayout { } } private void handleToggleStateChanged(boolean state) { private void handleToggleStateChanged(boolean state, boolean toggleEnabled) { mSwitchState = state; if (mAnimating) { if (mAnimatingOpen) { return; } mQsDetailHeaderSwitch.setChecked(state); final boolean toggleEnabled = mDetailAdapter != null && mDetailAdapter.getToggleEnabled(); mQsDetailHeader.setEnabled(toggleEnabled); mQsDetailHeaderSwitch.setEnabled(toggleEnabled); } Loading @@ -268,7 +267,8 @@ public class QSDetail extends LinearLayout { } private void checkPendingAnimations() { handleToggleStateChanged(mSwitchState); handleToggleStateChanged(mSwitchState, mDetailAdapter != null && mDetailAdapter.getToggleEnabled()); } private final QSPanel.Callback mQsPanelCallback = new QSPanel.Callback() { Loading @@ -277,7 +277,8 @@ public class QSDetail extends LinearLayout { post(new Runnable() { @Override public void run() { handleToggleStateChanged(state); handleToggleStateChanged(state, mDetailAdapter != null && mDetailAdapter.getToggleEnabled()); } }); } Loading Loading @@ -308,7 +309,7 @@ public class QSDetail extends LinearLayout { // If we have been cancelled, remove the listener so that onAnimationEnd doesn't get // called, this will avoid accidentally turning off the grid when we don't want to. animation.removeListener(this); mAnimating = false; mAnimatingOpen = false; checkPendingAnimations(); }; Loading @@ -319,7 +320,7 @@ public class QSDetail extends LinearLayout { mQsPanel.setGridContentVisibility(false); mHeader.setVisibility(View.INVISIBLE); } mAnimating = false; mAnimatingOpen = false; checkPendingAnimations(); } }; Loading Loading
packages/SystemUI/src/com/android/systemui/qs/QSDetail.java +11 −10 Original line number Diff line number Diff line Loading @@ -67,7 +67,7 @@ public class QSDetail extends LinearLayout { private boolean mTriggeredExpand; private int mOpenX; private int mOpenY; private boolean mAnimating; private boolean mAnimatingOpen; private boolean mSwitchState; public QSDetail(Context context, @Nullable AttributeSet attrs) { Loading Loading @@ -160,7 +160,7 @@ public class QSDetail extends LinearLayout { mQsDetailHeader.setClickable(false); } else { mQsDetailHeaderSwitch.setVisibility(VISIBLE); handleToggleStateChanged(toggleState); handleToggleStateChanged(toggleState, adapter.getToggleEnabled()); mQsDetailHeader.setClickable(true); mQsDetailHeader.setOnClickListener(new OnClickListener() { @Override Loading Loading @@ -230,7 +230,7 @@ public class QSDetail extends LinearLayout { } sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED); if (visibleDiff) { mAnimating = true; mAnimatingOpen = adapter != null; if (mFullyExpanded || mDetailAdapter != null) { setAlpha(1); mClipper.animateCircularClip(x, y, mDetailAdapter != null, listener); Loading @@ -243,13 +243,12 @@ public class QSDetail extends LinearLayout { } } private void handleToggleStateChanged(boolean state) { private void handleToggleStateChanged(boolean state, boolean toggleEnabled) { mSwitchState = state; if (mAnimating) { if (mAnimatingOpen) { return; } mQsDetailHeaderSwitch.setChecked(state); final boolean toggleEnabled = mDetailAdapter != null && mDetailAdapter.getToggleEnabled(); mQsDetailHeader.setEnabled(toggleEnabled); mQsDetailHeaderSwitch.setEnabled(toggleEnabled); } Loading @@ -268,7 +267,8 @@ public class QSDetail extends LinearLayout { } private void checkPendingAnimations() { handleToggleStateChanged(mSwitchState); handleToggleStateChanged(mSwitchState, mDetailAdapter != null && mDetailAdapter.getToggleEnabled()); } private final QSPanel.Callback mQsPanelCallback = new QSPanel.Callback() { Loading @@ -277,7 +277,8 @@ public class QSDetail extends LinearLayout { post(new Runnable() { @Override public void run() { handleToggleStateChanged(state); handleToggleStateChanged(state, mDetailAdapter != null && mDetailAdapter.getToggleEnabled()); } }); } Loading Loading @@ -308,7 +309,7 @@ public class QSDetail extends LinearLayout { // If we have been cancelled, remove the listener so that onAnimationEnd doesn't get // called, this will avoid accidentally turning off the grid when we don't want to. animation.removeListener(this); mAnimating = false; mAnimatingOpen = false; checkPendingAnimations(); }; Loading @@ -319,7 +320,7 @@ public class QSDetail extends LinearLayout { mQsPanel.setGridContentVisibility(false); mHeader.setVisibility(View.INVISIBLE); } mAnimating = false; mAnimatingOpen = false; checkPendingAnimations(); } }; Loading