Loading packages/SystemUI/src/com/android/systemui/qs/QSAnimator.java +5 −3 Original line number Diff line number Diff line Loading @@ -140,9 +140,11 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha updateAnimators(); } public void onQsScrollingChanged() { // Lazily update animators whenever the scrolling changes /** * Request an update to the animators. This will update them lazily next time the position * is changed. */ public void requestAnimatorUpdate() { mNeedsAnimatorUpdate = true; } Loading packages/SystemUI/src/com/android/systemui/qs/QSFragment.java +9 −1 Original line number Diff line number Diff line Loading @@ -173,7 +173,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca mQSPanelScrollView.setOnScrollChangeListener( (v, scrollX, scrollY, oldScrollX, oldScrollY) -> { // Lazily update animators whenever the scrolling changes mQSAnimator.onQsScrollingChanged(); mQSAnimator.requestAnimatorUpdate(); mHeader.setExpandedScrollAmount(scrollY); if (mScrollListener != null) { mScrollListener.onQsPanelScrollChanged(scrollY); Loading Loading @@ -215,6 +215,14 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca setQsExpansion(mLastQSExpansion, mLastHeaderTranslation); } }); mQSPanelController.setUsingHorizontalLayoutChangeListener( () -> { // The hostview may be faded out in the horizontal layout. Let's make sure to // reset the alpha when switching layouts. This is fine since the animator will // update the alpha if it's not supposed to be 1.0f mQSPanelController.getMediaHost().getHostView().setAlpha(1.0f); mQSAnimator.requestAnimatorUpdate(); }); } @Override Loading packages/SystemUI/src/com/android/systemui/qs/QSPanelControllerBase.java +20 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,9 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr private boolean mUsingHorizontalLayout; @Nullable private Runnable mUsingHorizontalLayoutChangedListener; protected QSPanelControllerBase( T view, QSTileHost host, Loading Loading @@ -135,6 +138,13 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr mQSLogger.logAllTilesChangeListening(mView.isListening(), mView.getDumpableTag(), ""); } /** * @return the media host for this panel */ public MediaHost getMediaHost() { return mMediaHost; } @Override protected void onViewAttached() { mQsTileRevealController = createTileRevealController(); Loading Loading @@ -303,6 +313,9 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr mUsingHorizontalLayout = horizontal; mView.setUsingHorizontalLayout(mUsingHorizontalLayout, mMediaHost.getHostView(), force); updateMediaDisappearParameters(); if (mUsingHorizontalLayoutChangedListener != null) { mUsingHorizontalLayoutChangedListener.run(); } return true; } return false; Loading Loading @@ -386,6 +399,13 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr mMediaVisibilityChangedListener = listener; } /** * Add a listener when the horizontal layout changes */ public void setUsingHorizontalLayoutChangeListener(Runnable listener) { mUsingHorizontalLayoutChangedListener = listener; } /** */ public static final class TileRecord extends QSPanel.Record { public QSTile tile; Loading Loading
packages/SystemUI/src/com/android/systemui/qs/QSAnimator.java +5 −3 Original line number Diff line number Diff line Loading @@ -140,9 +140,11 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha updateAnimators(); } public void onQsScrollingChanged() { // Lazily update animators whenever the scrolling changes /** * Request an update to the animators. This will update them lazily next time the position * is changed. */ public void requestAnimatorUpdate() { mNeedsAnimatorUpdate = true; } Loading
packages/SystemUI/src/com/android/systemui/qs/QSFragment.java +9 −1 Original line number Diff line number Diff line Loading @@ -173,7 +173,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca mQSPanelScrollView.setOnScrollChangeListener( (v, scrollX, scrollY, oldScrollX, oldScrollY) -> { // Lazily update animators whenever the scrolling changes mQSAnimator.onQsScrollingChanged(); mQSAnimator.requestAnimatorUpdate(); mHeader.setExpandedScrollAmount(scrollY); if (mScrollListener != null) { mScrollListener.onQsPanelScrollChanged(scrollY); Loading Loading @@ -215,6 +215,14 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca setQsExpansion(mLastQSExpansion, mLastHeaderTranslation); } }); mQSPanelController.setUsingHorizontalLayoutChangeListener( () -> { // The hostview may be faded out in the horizontal layout. Let's make sure to // reset the alpha when switching layouts. This is fine since the animator will // update the alpha if it's not supposed to be 1.0f mQSPanelController.getMediaHost().getHostView().setAlpha(1.0f); mQSAnimator.requestAnimatorUpdate(); }); } @Override Loading
packages/SystemUI/src/com/android/systemui/qs/QSPanelControllerBase.java +20 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,9 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr private boolean mUsingHorizontalLayout; @Nullable private Runnable mUsingHorizontalLayoutChangedListener; protected QSPanelControllerBase( T view, QSTileHost host, Loading Loading @@ -135,6 +138,13 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr mQSLogger.logAllTilesChangeListening(mView.isListening(), mView.getDumpableTag(), ""); } /** * @return the media host for this panel */ public MediaHost getMediaHost() { return mMediaHost; } @Override protected void onViewAttached() { mQsTileRevealController = createTileRevealController(); Loading Loading @@ -303,6 +313,9 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr mUsingHorizontalLayout = horizontal; mView.setUsingHorizontalLayout(mUsingHorizontalLayout, mMediaHost.getHostView(), force); updateMediaDisappearParameters(); if (mUsingHorizontalLayoutChangedListener != null) { mUsingHorizontalLayoutChangedListener.run(); } return true; } return false; Loading Loading @@ -386,6 +399,13 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr mMediaVisibilityChangedListener = listener; } /** * Add a listener when the horizontal layout changes */ public void setUsingHorizontalLayoutChangeListener(Runnable listener) { mUsingHorizontalLayoutChangedListener = listener; } /** */ public static final class TileRecord extends QSPanel.Record { public QSTile tile; Loading