Loading packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTileView.java +13 −1 Original line number Diff line number Diff line Loading @@ -26,14 +26,26 @@ import com.android.systemui.plugins.qs.QSTile.State; @DependsOn(target = QSIconView.class) @DependsOn(target = QSTile.class) public abstract class QSTileView extends LinearLayout { public static final int VERSION = 1; public static final int VERSION = 2; public QSTileView(Context context) { super(context); } public abstract View updateAccessibilityOrder(View previousView); /** * Returns a {@link QSIconView} containing only the icon for this tile. Use * {@link #getIconWithBackground()} to retrieve the entire tile (background & peripherals * included). */ public abstract QSIconView getIcon(); /** * Returns a {@link View} containing the icon for this tile along with the accompanying * background circle/peripherals. To retrieve only the inner icon, use {@link #getIcon()}. */ public abstract View getIconWithBackground(); public abstract void init(QSTile tile); public abstract void onStateChanged(State state); Loading packages/SystemUI/src/com/android/systemui/qs/QSAnimator.java +13 −9 Original line number Diff line number Diff line Loading @@ -44,7 +44,11 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha public static final float EXPANDED_TILE_DELAY = .86f; private final ArrayList<View> mAllViews = new ArrayList<>(); private final ArrayList<View> mTopFiveQs = new ArrayList<>(); /** * List of {@link View}s representing Quick Settings that are being animated from the quick QS * position to the normal QS panel. */ private final ArrayList<View> mQuickQsViews = new ArrayList<>(); private final QuickQSPanel mQuickQsPanel; private final QSPanel mQsPanel; private final QS mQs; Loading Loading @@ -157,7 +161,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha clearAnimationState(); mAllViews.clear(); mTopFiveQs.clear(); mQuickQsViews.clear(); QSTileLayout tileLayout = mQsPanel.getTileLayout(); mAllViews.add((View) tileLayout); Loading Loading @@ -198,7 +202,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha translationXBuilder.addFloat(tileView, "translationX", -xDiff, 0); translationYBuilder.addFloat(tileView, "translationY", -yDiff, 0); mTopFiveQs.add(tileView.getIcon()); mQuickQsViews.add(tileView.getIconWithBackground()); mAllViews.add(tileView.getIcon()); mAllViews.add(quickTileView); } else if (mFullRows && isIconInAnimatedRow(count)) { Loading Loading @@ -322,9 +326,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha @Override public void onAnimationAtEnd() { mQuickQsPanel.setVisibility(View.INVISIBLE); final int N = mTopFiveQs.size(); final int N = mQuickQsViews.size(); for (int i = 0; i < N; i++) { mTopFiveQs.get(i).setVisibility(View.VISIBLE); mQuickQsViews.get(i).setVisibility(View.VISIBLE); } } Loading @@ -332,9 +336,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha public void onAnimationStarted() { mQuickQsPanel.setVisibility(mOnKeyguard ? View.INVISIBLE : View.VISIBLE); if (mOnFirstPage) { final int N = mTopFiveQs.size(); final int N = mQuickQsViews.size(); for (int i = 0; i < N; i++) { mTopFiveQs.get(i).setVisibility(View.INVISIBLE); mQuickQsViews.get(i).setVisibility(View.INVISIBLE); } } } Loading @@ -348,9 +352,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha v.setTranslationX(0); v.setTranslationY(0); } final int N2 = mTopFiveQs.size(); final int N2 = mQuickQsViews.size(); for (int i = 0; i < N2; i++) { mTopFiveQs.get(i).setVisibility(View.VISIBLE); mQuickQsViews.get(i).setVisibility(View.VISIBLE); } } Loading packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileBaseView.java +4 −0 Original line number Diff line number Diff line Loading @@ -236,6 +236,10 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { return mIcon; } public View getIconWithBackground() { return mIconFrame; } @Override public boolean performClick() { mClicked = true; Loading Loading
packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSTileView.java +13 −1 Original line number Diff line number Diff line Loading @@ -26,14 +26,26 @@ import com.android.systemui.plugins.qs.QSTile.State; @DependsOn(target = QSIconView.class) @DependsOn(target = QSTile.class) public abstract class QSTileView extends LinearLayout { public static final int VERSION = 1; public static final int VERSION = 2; public QSTileView(Context context) { super(context); } public abstract View updateAccessibilityOrder(View previousView); /** * Returns a {@link QSIconView} containing only the icon for this tile. Use * {@link #getIconWithBackground()} to retrieve the entire tile (background & peripherals * included). */ public abstract QSIconView getIcon(); /** * Returns a {@link View} containing the icon for this tile along with the accompanying * background circle/peripherals. To retrieve only the inner icon, use {@link #getIcon()}. */ public abstract View getIconWithBackground(); public abstract void init(QSTile tile); public abstract void onStateChanged(State state); Loading
packages/SystemUI/src/com/android/systemui/qs/QSAnimator.java +13 −9 Original line number Diff line number Diff line Loading @@ -44,7 +44,11 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha public static final float EXPANDED_TILE_DELAY = .86f; private final ArrayList<View> mAllViews = new ArrayList<>(); private final ArrayList<View> mTopFiveQs = new ArrayList<>(); /** * List of {@link View}s representing Quick Settings that are being animated from the quick QS * position to the normal QS panel. */ private final ArrayList<View> mQuickQsViews = new ArrayList<>(); private final QuickQSPanel mQuickQsPanel; private final QSPanel mQsPanel; private final QS mQs; Loading Loading @@ -157,7 +161,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha clearAnimationState(); mAllViews.clear(); mTopFiveQs.clear(); mQuickQsViews.clear(); QSTileLayout tileLayout = mQsPanel.getTileLayout(); mAllViews.add((View) tileLayout); Loading Loading @@ -198,7 +202,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha translationXBuilder.addFloat(tileView, "translationX", -xDiff, 0); translationYBuilder.addFloat(tileView, "translationY", -yDiff, 0); mTopFiveQs.add(tileView.getIcon()); mQuickQsViews.add(tileView.getIconWithBackground()); mAllViews.add(tileView.getIcon()); mAllViews.add(quickTileView); } else if (mFullRows && isIconInAnimatedRow(count)) { Loading Loading @@ -322,9 +326,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha @Override public void onAnimationAtEnd() { mQuickQsPanel.setVisibility(View.INVISIBLE); final int N = mTopFiveQs.size(); final int N = mQuickQsViews.size(); for (int i = 0; i < N; i++) { mTopFiveQs.get(i).setVisibility(View.VISIBLE); mQuickQsViews.get(i).setVisibility(View.VISIBLE); } } Loading @@ -332,9 +336,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha public void onAnimationStarted() { mQuickQsPanel.setVisibility(mOnKeyguard ? View.INVISIBLE : View.VISIBLE); if (mOnFirstPage) { final int N = mTopFiveQs.size(); final int N = mQuickQsViews.size(); for (int i = 0; i < N; i++) { mTopFiveQs.get(i).setVisibility(View.INVISIBLE); mQuickQsViews.get(i).setVisibility(View.INVISIBLE); } } } Loading @@ -348,9 +352,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha v.setTranslationX(0); v.setTranslationY(0); } final int N2 = mTopFiveQs.size(); final int N2 = mQuickQsViews.size(); for (int i = 0; i < N2; i++) { mTopFiveQs.get(i).setVisibility(View.VISIBLE); mQuickQsViews.get(i).setVisibility(View.VISIBLE); } } Loading
packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSTileBaseView.java +4 −0 Original line number Diff line number Diff line Loading @@ -236,6 +236,10 @@ public class QSTileBaseView extends com.android.systemui.plugins.qs.QSTileView { return mIcon; } public View getIconWithBackground() { return mIconFrame; } @Override public boolean performClick() { mClicked = true; Loading