diff options
-rw-r--r-- | services/java/com/android/server/wm/DragState.java | 12 | ||||
-rw-r--r-- | services/java/com/android/server/wm/Session.java | 2 |
2 files changed, 6 insertions, 8 deletions
diff --git a/services/java/com/android/server/wm/DragState.java b/services/java/com/android/server/wm/DragState.java index 26ea7c1..3fcf680 100644 --- a/services/java/com/android/server/wm/DragState.java +++ b/services/java/com/android/server/wm/DragState.java @@ -71,12 +71,6 @@ class DragState { mFlags = flags; mLocalWin = localWin; mNotifiedWindows = new ArrayList<WindowState>(); - WindowState win = service.mWindowMap.get(token); - if (win != null) { - mDisplayContent = win.mDisplayContent; - } else { - Slog.e(WindowManagerService.TAG, "No window associated with token"); - } } void reset() { @@ -92,7 +86,11 @@ class DragState { mNotifiedWindows = null; } - void register() { + /** + * @param displayContent The display parameters associated with the window being dragged. + */ + void register(DisplayContent displayContent) { + mDisplayContent = displayContent; if (WindowManagerService.DEBUG_DRAG) Slog.d(WindowManagerService.TAG, "registering drag input channel"); if (mClientChannel != null) { Slog.e(WindowManagerService.TAG, "Duplicate register of drag input channel"); diff --git a/services/java/com/android/server/wm/Session.java b/services/java/com/android/server/wm/Session.java index d44b170..1ffbecc 100644 --- a/services/java/com/android/server/wm/Session.java +++ b/services/java/com/android/server/wm/Session.java @@ -280,7 +280,7 @@ final class Session extends IWindowSession.Stub // !!! FIXME: put all this heavy stuff onto the mH looper, as well as // the actual drag event dispatch stuff in the dragstate - mService.mDragState.register(); + mService.mDragState.register(callingWin.mDisplayContent); mService.mInputMonitor.updateInputWindowsLw(true /*force*/); if (!mService.mInputManager.transferTouchFocus(callingWin.mInputChannel, mService.mDragState.mServerChannel)) { |