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