Merge "Fix wallpaper zoom regression" into sc-dev am: 201eec73fc

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15111771

Change-Id: Ie71a03a34583424f1e727a750f10f0b943a84a30
This commit is contained in:
Lucas Dupin
2021-06-25 22:06:45 +00:00
committed by Automerger Merge Worker
2 changed files with 15 additions and 1 deletions

View File

@@ -185,11 +185,15 @@ class NotificationShadeDepthController @Inject constructor(
var blur = shadeRadius.toInt()
// Make blur be 0 if it is necessary to stop blur effect.
if (scrimsVisible || !blurUtils.supportsBlursOnWindows()) {
if (scrimsVisible) {
blur = 0
}
val zoomOut = blurUtils.ratioOfBlurRadius(blur)
if (!blurUtils.supportsBlursOnWindows()) {
blur = 0
}
// Brightness slider removes blur, but doesn't affect zooms
blur = (blur * (1f - brightnessMirrorSpring.ratio)).toInt()

View File

@@ -198,9 +198,19 @@ class NotificationShadeDepthControllerTest : SysuiTestCase() {
@Test
fun setFullShadeTransition_appliesBlur_onlyIfSupported() {
reset(blurUtils)
`when`(blurUtils.blurRadiusOfRatio(anyFloat())).then { answer ->
(answer.arguments[0] as Float * maxBlur).toInt()
}
`when`(blurUtils.ratioOfBlurRadius(anyInt())).then { answer ->
answer.arguments[0] as Int / maxBlur.toFloat()
}
`when`(blurUtils.maxBlurRadius).thenReturn(maxBlur)
`when`(blurUtils.maxBlurRadius).thenReturn(maxBlur)
notificationShadeDepthController.transitionToFullShadeProgress = 1f
notificationShadeDepthController.updateBlurCallback.doFrame(0)
verify(blurUtils).applyBlur(any(), eq(0), eq(false))
verify(wallpaperManager).setWallpaperZoomOut(any(), eq(1f))
}
@Test