From 12670b5fb401733d14684b8d02259462eb640dc7 Mon Sep 17 00:00:00 2001 From: Craig Mautner Date: Tue, 3 Jul 2012 19:15:35 -0700 Subject: [PATCH] Make setting wallpaper offset immediate. Wallpaper offset was passing through H Handler before being set. It isn't part of animation and wasn't going through animation anyways. This change goes back to original implementation of setting wallpaper offset directly from call. Change-Id: Ied88e2dc042af814b5ba91c7efb839bd82682567 --- .../server/wm/WindowManagerService.java | 29 ++----------------- 1 file changed, 2 insertions(+), 27 deletions(-) diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index 0f87d8e00ca4d..5f5c9b3c6f93e 100755 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -2045,11 +2045,6 @@ public class WindowManagerService extends IWindowManager.Stub } } - // TODO(cmautner): Move to WindowAnimator. - void setWallpaperOffset(final WindowStateAnimator winAnimator, final int left, final int top) { - mH.sendMessage(mH.obtainMessage(H.SET_WALLPAPER_OFFSET, left, top, winAnimator)); - } - void updateWallpaperOffsetLocked(WindowState changingTarget, boolean sync) { final int dw = mAppDisplayWidth; final int dh = mAppDisplayHeight; @@ -2084,19 +2079,8 @@ public class WindowManagerService extends IWindowManager.Stub // TODO(cmautner): Don't move this from here, just lock the WindowAnimator. if (winAnimator.mSurfaceX != wallpaper.mShownFrame.left || winAnimator.mSurfaceY != wallpaper.mShownFrame.top) { - Surface.openTransaction(); - try { - if (SHOW_TRANSACTIONS) logSurface(wallpaper, - "POS " + wallpaper.mShownFrame.left - + ", " + wallpaper.mShownFrame.top, null); - setWallpaperOffset(winAnimator, (int) wallpaper.mShownFrame.left, + winAnimator.setWallpaperOffset((int) wallpaper.mShownFrame.left, (int) wallpaper.mShownFrame.top); - } catch (RuntimeException e) { - Slog.w(TAG, "Error positioning surface of " + wallpaper - + " pos=(" + wallpaper.mShownFrame.left - + "," + wallpaper.mShownFrame.top + ")", e); - } - Surface.closeTransaction(); } // We only want to be synchronous with one wallpaper. sync = false; @@ -6913,8 +6897,7 @@ public class WindowManagerService extends IWindowManager.Stub public static final int ANIMATOR_WHAT_OFFSET = 100000; public static final int SET_TRANSPARENT_REGION = ANIMATOR_WHAT_OFFSET + 1; - public static final int SET_WALLPAPER_OFFSET = ANIMATOR_WHAT_OFFSET + 2; - public static final int CLEAR_PENDING_ACTIONS = ANIMATOR_WHAT_OFFSET + 3; + public static final int CLEAR_PENDING_ACTIONS = ANIMATOR_WHAT_OFFSET + 2; private Session mLastReportedHold; @@ -7403,14 +7386,6 @@ public class WindowManagerService extends IWindowManager.Stub break; } - case SET_WALLPAPER_OFFSET: { - final WindowStateAnimator winAnimator = (WindowStateAnimator) msg.obj; - winAnimator.setWallpaperOffset(msg.arg1, msg.arg2); - - scheduleAnimationLocked(); - break; - } - case CLEAR_PENDING_ACTIONS: { mAnimator.clearPendingActions(); break;