diff options
author | Chris Poultney <poultney@google.com> | 2023-04-04 19:22:52 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2023-04-04 19:22:52 +0000 |
commit | 4894e95179abe8d0329bc3afb51b49beaf2f29db (patch) | |
tree | d83774e2b6c7edc7e9222c1fa6c2541a35d29163 /src | |
parent | 68c91ab0af4801a3faab3de89bb926b7886efb7d (diff) | |
parent | ba38d4f8f570c0db618348a1deabbe8c19f69707 (diff) |
Merge "Shows blurred thumbnail before fading to live preview" into tm-qpr-dev
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/wallpaper/model/WallpaperSectionController.java | 22 | ||||
-rw-r--r-- | src/com/android/wallpaper/util/VideoWallpaperUtils.java | 2 |
2 files changed, 16 insertions, 8 deletions
diff --git a/src/com/android/wallpaper/model/WallpaperSectionController.java b/src/com/android/wallpaper/model/WallpaperSectionController.java index c9e867e6..d61330e2 100644 --- a/src/com/android/wallpaper/model/WallpaperSectionController.java +++ b/src/com/android/wallpaper/model/WallpaperSectionController.java @@ -26,6 +26,8 @@ import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.res.Resources; +import android.graphics.RenderEffect; +import android.graphics.Shader.TileMode; import android.net.Uri; import android.os.Bundle; import android.provider.Settings; @@ -89,12 +91,12 @@ public class WallpaperSectionController implements private WorkspaceSurfaceHolderCallback mWorkspaceSurfaceCallback; private SurfaceView mHomeWallpaperSurface; private WallpaperSurfaceCallback mHomeWallpaperSurfaceCallback; - private View mHomeFadeInScrim; + private ImageView mHomeFadeInScrim; private SurfaceView mLockWallpaperSurface; private WallpaperSurfaceCallback mLockWallpaperSurfaceCallback; private CardView mLockscreenPreviewCard; private ViewGroup mLockPreviewContainer; - private View mLockFadeInScrim; + private ImageView mLockFadeInScrim; private ContentLoadingProgressBar mLockscreenPreviewProgress; private WallpaperConnection mHomeWallpaperConnection; private WallpaperConnection mLockWallpaperConnection; @@ -191,7 +193,7 @@ public class WallpaperSectionController implements mHomeWallpaperSurface, colorFuture, () -> { if (mHomePreviewWallpaperInfo != null) { maybeLoadThumbnail(mHomePreviewWallpaperInfo, mHomeWallpaperSurfaceCallback, - mDisplayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(mActivity)); + mDisplayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(mActivity), true); } }); @@ -207,7 +209,7 @@ public class WallpaperSectionController implements mLockscreenPreviewCard, mLockWallpaperSurface, colorFuture, () -> { if (mLockPreviewWallpaperInfo != null) { maybeLoadThumbnail(mLockPreviewWallpaperInfo, mLockWallpaperSurfaceCallback, - mDisplayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(mActivity)); + mDisplayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(mActivity), false); } }); mLockPreviewContainer = mLockscreenPreviewCard.findViewById( @@ -442,7 +444,7 @@ public class WallpaperSectionController implements // Load thumb regardless of live wallpaper to make sure we have a placeholder while // the live wallpaper initializes in that case. maybeLoadThumbnail(wallpaperInfo, surfaceCallback, - mDisplayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(mActivity)); + mDisplayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(mActivity), isHomeWallpaper); WallpaperManager wallpaperManager = WallpaperManager.getInstance(mActivity); if (wallpaperManager.isLockscreenLiveWallpaperEnabled()) { @@ -472,13 +474,19 @@ public class WallpaperSectionController implements @NonNull private Asset maybeLoadThumbnail(WallpaperInfo wallpaperInfo, - WallpaperSurfaceCallback surfaceCallback, boolean offsetToStart) { - ImageView imageView = surfaceCallback.getHomeImageWallpaper(); + WallpaperSurfaceCallback surfaceCallback, boolean offsetToStart, boolean isHome) { + ImageView liveThumbnailView = isHome ? mHomeFadeInScrim : mLockFadeInScrim; + ImageView imageView = VideoWallpaperUtils.needsFadeIn(wallpaperInfo) ? liveThumbnailView + : surfaceCallback.getHomeImageWallpaper(); Asset thumbAsset = wallpaperInfo.getThumbAsset(mAppContext); // Respect offsetToStart only for CurrentWallpaperAssetVN otherwise true. offsetToStart = !(thumbAsset instanceof CurrentWallpaperAssetVN) || offsetToStart; thumbAsset = new BitmapCachingAsset(mAppContext, thumbAsset); if (imageView != null && imageView.getDrawable() == null) { + if (VideoWallpaperUtils.needsFadeIn(wallpaperInfo)) { + imageView.setRenderEffect( + RenderEffect.createBlurEffect(50f, 50f, TileMode.CLAMP)); + } thumbAsset.loadPreviewImage(mActivity, imageView, ResourceUtils.getColorAttr(mActivity, android.R.attr.colorSecondary), offsetToStart); diff --git a/src/com/android/wallpaper/util/VideoWallpaperUtils.java b/src/com/android/wallpaper/util/VideoWallpaperUtils.java index 7acffda7..2093fe83 100644 --- a/src/com/android/wallpaper/util/VideoWallpaperUtils.java +++ b/src/com/android/wallpaper/util/VideoWallpaperUtils.java @@ -29,7 +29,7 @@ public class VideoWallpaperUtils { /** * Transition time for fade-in animation. */ - public static final int TRANSITION_MILLIS = 175; + public static final int TRANSITION_MILLIS = 250; /** * Returns true if the is a video wallpaper that requires the fade-in workaround. |