summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChris Poultney <poultney@google.com>2023-04-04 19:22:52 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2023-04-04 19:22:52 +0000
commit4894e95179abe8d0329bc3afb51b49beaf2f29db (patch)
treed83774e2b6c7edc7e9222c1fa6c2541a35d29163 /src
parent68c91ab0af4801a3faab3de89bb926b7886efb7d (diff)
parentba38d4f8f570c0db618348a1deabbe8c19f69707 (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.java22
-rw-r--r--src/com/android/wallpaper/util/VideoWallpaperUtils.java2
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.