Merge "Fix scrim opacity in the brightness mirror" into oc-dr1-dev
am: c393be76d9
Change-Id: I37af2f178220bc7cd0b6fbac51d6cf3f84193ab9
This commit is contained in:
@@ -617,9 +617,9 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener,
|
||||
return alpha * expandFactor;
|
||||
}
|
||||
|
||||
public void forceHideScrims(boolean hide) {
|
||||
public void forceHideScrims(boolean hide, boolean animated) {
|
||||
mForceHideScrims = hide;
|
||||
mAnimateChange = false;
|
||||
mAnimateChange = animated;
|
||||
scheduleUpdate();
|
||||
}
|
||||
|
||||
|
||||
@@ -1155,7 +1155,8 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
.build());
|
||||
final QSTileHost qsh = SystemUIFactory.getInstance().createQSTileHost(mContext, this,
|
||||
mIconController);
|
||||
mBrightnessMirrorController = new BrightnessMirrorController(mStatusBarWindow);
|
||||
mBrightnessMirrorController = new BrightnessMirrorController(mStatusBarWindow,
|
||||
mScrimController);
|
||||
fragmentHostManager.addTagListener(QS.TAG, (tag, f) -> {
|
||||
QS qs = (QS) f;
|
||||
if (qs instanceof QSFragment) {
|
||||
@@ -4271,7 +4272,7 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
releaseGestureWakeLock();
|
||||
runLaunchTransitionEndRunnable();
|
||||
mLaunchTransitionFadingAway = false;
|
||||
mScrimController.forceHideScrims(false /* hide */);
|
||||
mScrimController.forceHideScrims(false /* hide */, false /* animated */);
|
||||
updateMediaMetaData(true /* metaDataChanged */, true);
|
||||
}
|
||||
|
||||
@@ -4306,7 +4307,7 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
if (beforeFading != null) {
|
||||
beforeFading.run();
|
||||
}
|
||||
mScrimController.forceHideScrims(true /* hide */);
|
||||
mScrimController.forceHideScrims(true /* hide */, false /* animated */);
|
||||
updateMediaMetaData(false, true);
|
||||
mNotificationPanel.setAlpha(1);
|
||||
mStackScroller.setParentNotFullyVisible(true);
|
||||
|
||||
@@ -24,6 +24,7 @@ import android.widget.FrameLayout;
|
||||
import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.statusbar.ScrimView;
|
||||
import com.android.systemui.statusbar.phone.ScrimController;
|
||||
import com.android.systemui.statusbar.phone.StatusBarWindowView;
|
||||
import com.android.systemui.statusbar.stack.NotificationStackScrollLayout;
|
||||
|
||||
@@ -37,30 +38,31 @@ public class BrightnessMirrorController {
|
||||
public long TRANSITION_DURATION_IN = 200;
|
||||
|
||||
private final StatusBarWindowView mStatusBarWindow;
|
||||
private final ScrimView mScrimBehind;
|
||||
private final ScrimController mScrimController;
|
||||
private final View mNotificationPanel;
|
||||
private final int[] mInt2Cache = new int[2];
|
||||
private View mBrightnessMirror;
|
||||
|
||||
public BrightnessMirrorController(StatusBarWindowView statusBarWindow) {
|
||||
public BrightnessMirrorController(StatusBarWindowView statusBarWindow,
|
||||
ScrimController scrimController) {
|
||||
mStatusBarWindow = statusBarWindow;
|
||||
mScrimBehind = (ScrimView) statusBarWindow.findViewById(R.id.scrim_behind);
|
||||
mBrightnessMirror = statusBarWindow.findViewById(R.id.brightness_mirror);
|
||||
mNotificationPanel = statusBarWindow.findViewById(R.id.notification_panel);
|
||||
mStackScroller = (NotificationStackScrollLayout) statusBarWindow.findViewById(
|
||||
R.id.notification_stack_scroller);
|
||||
mScrimController = scrimController;
|
||||
}
|
||||
|
||||
public void showMirror() {
|
||||
mBrightnessMirror.setVisibility(View.VISIBLE);
|
||||
mStackScroller.setFadingOut(true);
|
||||
mScrimBehind.animateViewAlpha(0.0f, TRANSITION_DURATION_OUT, Interpolators.ALPHA_OUT);
|
||||
mScrimController.forceHideScrims(true /* hide */, true /* animated */);
|
||||
outAnimation(mNotificationPanel.animate())
|
||||
.withLayer();
|
||||
}
|
||||
|
||||
public void hideMirror() {
|
||||
mScrimBehind.animateViewAlpha(1.0f, TRANSITION_DURATION_IN, Interpolators.ALPHA_IN);
|
||||
mScrimController.forceHideScrims(false /* hide */, true /* animated */);
|
||||
inAnimation(mNotificationPanel.animate())
|
||||
.withLayer()
|
||||
.withEndAction(new Runnable() {
|
||||
|
||||
Reference in New Issue
Block a user