diff options
| -rw-r--r-- | core/java/android/service/wallpaper/WallpaperService.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/core/java/android/service/wallpaper/WallpaperService.java b/core/java/android/service/wallpaper/WallpaperService.java index 324d1abf24bb..66f2dd5729b7 100644 --- a/core/java/android/service/wallpaper/WallpaperService.java +++ b/core/java/android/service/wallpaper/WallpaperService.java @@ -1466,9 +1466,12 @@ public abstract class WallpaperService extends Service { void updatePage(EngineWindowPage currentPage, int pageIndx, int numPages, float xOffsetStep) { // to save creating a runnable, check twice - long current = System.nanoTime() / 1_000_000; + long current = SystemClock.elapsedRealtime(); long lapsed = current - currentPage.getLastUpdateTime(); - if (lapsed < DEFAULT_UPDATE_SCREENSHOT_DURATION) { + // Always update the page when the last update time is <= 0 + // This is important especially when the device first boots + if (lapsed < DEFAULT_UPDATE_SCREENSHOT_DURATION + && currentPage.getLastUpdateTime() > 0) { return; } Surface surface = mSurfaceHolder.getSurface(); |