Loading packages/SystemUI/src/com/android/systemui/qs/QSAnimator.java +17 −1 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import com.android.systemui.qs.TouchAnimator.Builder; import com.android.systemui.qs.TouchAnimator.Listener; import com.android.systemui.qs.dagger.QSScope; import com.android.systemui.qs.tileimpl.HeightOverrideable; import com.android.systemui.statusbar.CrossFadeHelper; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.tuner.TunerService; import com.android.systemui.tuner.TunerService.Tunable; Loading @@ -54,6 +55,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha private static final String MOVE_FULL_ROWS = "sysui_qs_move_whole_rows"; public static final float EXPANDED_TILE_DELAY = .86f; private static final long QQS_FADE_IN_DURATION = 200L; // Fade out faster than fade in to finish before QQS hides. private static final long QQS_FADE_OUT_DURATION = 50L; private final ArrayList<View> mAllViews = new ArrayList<>(); Loading Loading @@ -87,7 +91,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha private HeightExpansionAnimator mOtherTilesExpandAnimator; private boolean mNeedsAnimatorUpdate = false; private boolean mToShowing; private boolean mOnKeyguard; private boolean mAllowFancy; Loading Loading @@ -150,6 +154,18 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha } } void startAlphaAnimation(boolean show) { if (show == mToShowing) { return; } mToShowing = show; if (show) { CrossFadeHelper.fadeIn(mQs.getView(), QQS_FADE_IN_DURATION, 0 /* delay */); } else { CrossFadeHelper.fadeOut(mQs.getView(), QQS_FADE_OUT_DURATION, 0 /* delay */, null /* endRunnable */); } } /** * Sets whether or not the keyguard is currently being shown with a collapsed header. Loading packages/SystemUI/src/com/android/systemui/qs/QSContainerImpl.java +5 −0 Original line number Diff line number Diff line Loading @@ -92,6 +92,11 @@ public class QSContainerImpl extends FrameLayout { setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_NO); } @Override public boolean hasOverlappingRendering() { return false; } void onMediaVisibilityChanged(boolean qsVisible) { mAnimateBottomOnNextLayout = qsVisible; } Loading packages/SystemUI/src/com/android/systemui/qs/QSFragment.java +7 −1 Original line number Diff line number Diff line Loading @@ -190,7 +190,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca (v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> { boolean sizeChanged = (oldTop - oldBottom) != (top - bottom); if (sizeChanged) { setQsExpansion(mLastQSExpansion, mLastQSExpansion); setQsExpansion(mLastQSExpansion, mLastHeaderTranslation); } }); } Loading Loading @@ -395,6 +395,12 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca @Override public void setQsExpansion(float expansion, float headerTranslation) { if (DEBUG) Log.d(TAG, "setQSExpansion " + expansion + " " + headerTranslation); if (mQSAnimator != null) { final boolean showQSOnLockscreen = expansion > 0; final boolean showQSUnlocked = headerTranslation == 0; mQSAnimator.startAlphaAnimation(showQSOnLockscreen || showQSUnlocked); } mContainer.setExpansion(expansion); final float translationScaleY = expansion - 1; boolean onKeyguardAndExpanded = isKeyguardShowing() && !mShowCollapsedOnKeyguard; Loading Loading
packages/SystemUI/src/com/android/systemui/qs/QSAnimator.java +17 −1 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import com.android.systemui.qs.TouchAnimator.Builder; import com.android.systemui.qs.TouchAnimator.Listener; import com.android.systemui.qs.dagger.QSScope; import com.android.systemui.qs.tileimpl.HeightOverrideable; import com.android.systemui.statusbar.CrossFadeHelper; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.tuner.TunerService; import com.android.systemui.tuner.TunerService.Tunable; Loading @@ -54,6 +55,9 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha private static final String MOVE_FULL_ROWS = "sysui_qs_move_whole_rows"; public static final float EXPANDED_TILE_DELAY = .86f; private static final long QQS_FADE_IN_DURATION = 200L; // Fade out faster than fade in to finish before QQS hides. private static final long QQS_FADE_OUT_DURATION = 50L; private final ArrayList<View> mAllViews = new ArrayList<>(); Loading Loading @@ -87,7 +91,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha private HeightExpansionAnimator mOtherTilesExpandAnimator; private boolean mNeedsAnimatorUpdate = false; private boolean mToShowing; private boolean mOnKeyguard; private boolean mAllowFancy; Loading Loading @@ -150,6 +154,18 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha } } void startAlphaAnimation(boolean show) { if (show == mToShowing) { return; } mToShowing = show; if (show) { CrossFadeHelper.fadeIn(mQs.getView(), QQS_FADE_IN_DURATION, 0 /* delay */); } else { CrossFadeHelper.fadeOut(mQs.getView(), QQS_FADE_OUT_DURATION, 0 /* delay */, null /* endRunnable */); } } /** * Sets whether or not the keyguard is currently being shown with a collapsed header. Loading
packages/SystemUI/src/com/android/systemui/qs/QSContainerImpl.java +5 −0 Original line number Diff line number Diff line Loading @@ -92,6 +92,11 @@ public class QSContainerImpl extends FrameLayout { setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_NO); } @Override public boolean hasOverlappingRendering() { return false; } void onMediaVisibilityChanged(boolean qsVisible) { mAnimateBottomOnNextLayout = qsVisible; } Loading
packages/SystemUI/src/com/android/systemui/qs/QSFragment.java +7 −1 Original line number Diff line number Diff line Loading @@ -190,7 +190,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca (v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> { boolean sizeChanged = (oldTop - oldBottom) != (top - bottom); if (sizeChanged) { setQsExpansion(mLastQSExpansion, mLastQSExpansion); setQsExpansion(mLastQSExpansion, mLastHeaderTranslation); } }); } Loading Loading @@ -395,6 +395,12 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca @Override public void setQsExpansion(float expansion, float headerTranslation) { if (DEBUG) Log.d(TAG, "setQSExpansion " + expansion + " " + headerTranslation); if (mQSAnimator != null) { final boolean showQSOnLockscreen = expansion > 0; final boolean showQSUnlocked = headerTranslation == 0; mQSAnimator.startAlphaAnimation(showQSOnLockscreen || showQSUnlocked); } mContainer.setExpansion(expansion); final float translationScaleY = expansion - 1; boolean onKeyguardAndExpanded = isKeyguardShowing() && !mShowCollapsedOnKeyguard; Loading