Merge "Deferring wallpaper update to improve workspace scrolling (issue 5506959)" into ics-mr1
This commit is contained in:
@@ -212,7 +212,11 @@ public class WallpaperManager {
|
||||
*/
|
||||
mHandler.sendEmptyMessage(MSG_CLEAR_WALLPAPER);
|
||||
}
|
||||
|
||||
|
||||
public Handler getHandler() {
|
||||
return mHandler;
|
||||
}
|
||||
|
||||
public Bitmap peekWallpaperBitmap(Context context, boolean returnDefault) {
|
||||
synchronized (this) {
|
||||
if (mWallpaper != null) {
|
||||
@@ -604,7 +608,7 @@ public class WallpaperManager {
|
||||
// Ignore
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Set the position of the current wallpaper within any larger space, when
|
||||
* that wallpaper is visible behind the given window. The X and Y offsets
|
||||
@@ -619,16 +623,23 @@ public class WallpaperManager {
|
||||
* @param yOffset The offset along the Y dimension, from 0 to 1.
|
||||
*/
|
||||
public void setWallpaperOffsets(IBinder windowToken, float xOffset, float yOffset) {
|
||||
try {
|
||||
//Log.v(TAG, "Sending new wallpaper offsets from app...");
|
||||
ViewRootImpl.getWindowSession(mContext.getMainLooper()).setWallpaperPosition(
|
||||
windowToken, xOffset, yOffset, mWallpaperXStep, mWallpaperYStep);
|
||||
//Log.v(TAG, "...app returning after sending offsets!");
|
||||
} catch (RemoteException e) {
|
||||
// Ignore.
|
||||
}
|
||||
final IBinder fWindowToken = windowToken;
|
||||
final float fXOffset = xOffset;
|
||||
final float fYOffset = yOffset;
|
||||
sGlobals.getHandler().post(new Runnable() {
|
||||
public void run() {
|
||||
try {
|
||||
//Log.v(TAG, "Sending new wallpaper offsets from app...");
|
||||
ViewRootImpl.getWindowSession(mContext.getMainLooper()).setWallpaperPosition(
|
||||
fWindowToken, fXOffset, fYOffset, mWallpaperXStep, mWallpaperYStep);
|
||||
//Log.v(TAG, "...app returning after sending offsets!");
|
||||
} catch (RemoteException e) {
|
||||
// Ignore.
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* For applications that use multiple virtual screens showing a wallpaper,
|
||||
* specify the step size between virtual screens. For example, if the
|
||||
|
||||
Reference in New Issue
Block a user