Merge changes from topic "am-acaafc0086a64d01a48d5fafba82c641"
* changes: Merge "Add a flag to enable independent lock screen live wallpaper" into tm-qpr-dev am:cb69035ca9am:80c0576162Merge "Lock screen live wallpaper: adds home/lock screen flag as argument." into tm-qpr-dev am:0f8f2d726bam:e5e1aa95a5
This commit is contained in:
committed by
Android (Google) Code Review
commit
dcae7d9f7c
@@ -2077,6 +2077,21 @@ public class WallpaperManager {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the live wallpaper for the given screen(s).
|
||||
*
|
||||
* This can only be called by packages with android.permission.SET_WALLPAPER_COMPONENT
|
||||
* permission. The caller must hold the INTERACT_ACROSS_USERS_FULL permission to change
|
||||
* another user's wallpaper.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@RequiresPermission(android.Manifest.permission.SET_WALLPAPER_COMPONENT)
|
||||
public boolean setWallpaperComponentWithFlags(@NonNull ComponentName name,
|
||||
@SetWallpaperFlags int which) {
|
||||
return setWallpaperComponent(name);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the display position of the current wallpaper within any larger space, when
|
||||
* that wallpaper is visible behind the given window. The X and Y offsets
|
||||
|
||||
@@ -25,6 +25,6 @@ import android.service.wallpaper.IWallpaperConnection;
|
||||
oneway interface IWallpaperService {
|
||||
void attach(IWallpaperConnection connection,
|
||||
IBinder windowToken, int windowType, boolean isPreview,
|
||||
int reqWidth, int reqHeight, in Rect padding, int displayId);
|
||||
int reqWidth, int reqHeight, in Rect padding, int displayId, int which);
|
||||
void detach();
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ package android.service.wallpaper;
|
||||
|
||||
import static android.app.WallpaperManager.COMMAND_FREEZE;
|
||||
import static android.app.WallpaperManager.COMMAND_UNFREEZE;
|
||||
import static android.app.WallpaperManager.SetWallpaperFlags;
|
||||
import static android.graphics.Matrix.MSCALE_X;
|
||||
import static android.graphics.Matrix.MSCALE_Y;
|
||||
import static android.graphics.Matrix.MSKEW_X;
|
||||
@@ -2429,7 +2430,7 @@ public abstract class WallpaperService extends Service {
|
||||
@Override
|
||||
public void attach(IWallpaperConnection conn, IBinder windowToken,
|
||||
int windowType, boolean isPreview, int reqWidth, int reqHeight, Rect padding,
|
||||
int displayId) {
|
||||
int displayId, @SetWallpaperFlags int which) {
|
||||
mEngineWrapper = new IWallpaperEngineWrapper(mTarget, conn, windowToken,
|
||||
windowType, isPreview, reqWidth, reqHeight, padding, displayId);
|
||||
}
|
||||
|
||||
@@ -5933,4 +5933,8 @@
|
||||
TODO(b/236022708) Move rear display state to device state config file
|
||||
-->
|
||||
<integer name="config_deviceStateRearDisplay">-1</integer>
|
||||
|
||||
<!-- Whether the lock screen is allowed to run its own live wallpaper,
|
||||
different from the home screen wallpaper. -->
|
||||
<bool name="config_independentLockscreenLiveWallpaper">false</bool>
|
||||
</resources>
|
||||
|
||||
@@ -4892,6 +4892,7 @@
|
||||
<java-symbol type="array" name="config_deviceStatesAvailableForAppRequests" />
|
||||
<java-symbol type="array" name="config_serviceStateLocationAllowedPackages" />
|
||||
<java-symbol type="integer" name="config_deviceStateRearDisplay"/>
|
||||
<java-symbol type="bool" name="config_independentLockscreenLiveWallpaper"/>
|
||||
|
||||
<!-- For app language picker -->
|
||||
<java-symbol type="string" name="system_locale_title" />
|
||||
|
||||
@@ -1166,7 +1166,7 @@ public class WallpaperManagerService extends IWallpaperManager.Stub
|
||||
try {
|
||||
connection.mService.attach(connection, mToken, TYPE_WALLPAPER, false,
|
||||
wpdData.mWidth, wpdData.mHeight,
|
||||
wpdData.mPadding, mDisplayId);
|
||||
wpdData.mPadding, mDisplayId, FLAG_SYSTEM | FLAG_LOCK);
|
||||
} catch (RemoteException e) {
|
||||
Slog.w(TAG, "Failed attaching wallpaper on display", e);
|
||||
if (wallpaper != null && !wallpaper.wallpaperUpdating
|
||||
|
||||
Reference in New Issue
Block a user