Merge "Don't set ImageWallpaper to home only the first time" into udc-qpr-dev

This commit is contained in:
Aurélien Pomini
2023-06-30 10:45:03 +00:00
committed by Android (Google) Code Review

View File

@@ -3113,7 +3113,10 @@ public class WallpaperManagerService extends IWallpaperManager.Stub
if (which == FLAG_SYSTEM && systemIsStatic && systemIsBoth) { if (which == FLAG_SYSTEM && systemIsStatic && systemIsBoth) {
Slog.i(TAG, "Migrating current wallpaper to be lock-only before" Slog.i(TAG, "Migrating current wallpaper to be lock-only before"
+ " updating system wallpaper"); + " updating system wallpaper");
migrateStaticSystemToLockWallpaperLocked(userId); if (!migrateStaticSystemToLockWallpaperLocked(userId)
&& !isLockscreenLiveWallpaperEnabled()) {
which |= FLAG_LOCK;
}
} }
wallpaper = getWallpaperSafeLocked(userId, which); wallpaper = getWallpaperSafeLocked(userId, which);
@@ -3141,13 +3144,13 @@ public class WallpaperManagerService extends IWallpaperManager.Stub
} }
} }
private void migrateStaticSystemToLockWallpaperLocked(int userId) { private boolean migrateStaticSystemToLockWallpaperLocked(int userId) {
WallpaperData sysWP = mWallpaperMap.get(userId); WallpaperData sysWP = mWallpaperMap.get(userId);
if (sysWP == null) { if (sysWP == null) {
if (DEBUG) { if (DEBUG) {
Slog.i(TAG, "No system wallpaper? Not tracking for lock-only"); Slog.i(TAG, "No system wallpaper? Not tracking for lock-only");
} }
return; return true;
} }
// We know a-priori that there is no lock-only wallpaper currently // We know a-priori that there is no lock-only wallpaper currently
@@ -3174,9 +3177,12 @@ public class WallpaperManagerService extends IWallpaperManager.Stub
SELinux.restorecon(lockWP.getWallpaperFile()); SELinux.restorecon(lockWP.getWallpaperFile());
mLastLockWallpaper = lockWP; mLastLockWallpaper = lockWP;
} }
return true;
} catch (ErrnoException e) { } catch (ErrnoException e) {
Slog.e(TAG, "Can't migrate system wallpaper: " + e.getMessage()); // can happen when migrating default wallpaper (which is not stored in wallpaperFile)
Slog.w(TAG, "Couldn't migrate system wallpaper: " + e.getMessage());
clearWallpaperBitmaps(lockWP); clearWallpaperBitmaps(lockWP);
return false;
} }
} }
@@ -3388,7 +3394,9 @@ public class WallpaperManagerService extends IWallpaperManager.Stub
// therefore it's a shared system+lock image that we need to migrate. // therefore it's a shared system+lock image that we need to migrate.
Slog.i(TAG, "Migrating current wallpaper to be lock-only before" Slog.i(TAG, "Migrating current wallpaper to be lock-only before"
+ "updating system wallpaper"); + "updating system wallpaper");
migrateStaticSystemToLockWallpaperLocked(userId); if (!migrateStaticSystemToLockWallpaperLocked(userId)) {
which |= FLAG_LOCK;
}
} }
} }