summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2020-12-17 18:06:02 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-12-17 18:06:02 +0000
commit25d4114431d1b75e7022ba94dc6684dbeaaf37f5 (patch)
treef019d7ad7066fc03de9c0637677f6ac087b6513b
parent982fc7eb5c0b95b8877a487da6dabd7316dd2d88 (diff)
parenta26dd05602d9eeb2fc8c0f6ca80ecd3f59fe54d3 (diff)
Merge "SyncPointerCapture (7/n): Clean up unused code from old Pointer Capture"
-rw-r--r--core/java/android/view/IWindow.aidl5
-rw-r--r--core/java/android/view/ViewRootImpl.java10
-rw-r--r--core/java/com/android/internal/view/BaseIWindow.java4
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/common/SystemWindows.java3
-rw-r--r--services/core/java/com/android/server/input/InputManagerService.java11
-rw-r--r--services/core/java/com/android/server/wm/InputManagerCallback.java66
-rw-r--r--services/tests/wmtests/src/com/android/server/wm/TestIWindow.java4
7 files changed, 5 insertions, 98 deletions
diff --git a/core/java/android/view/IWindow.aidl b/core/java/android/view/IWindow.aidl
index e685b30421be..fb012ebbc3db 100644
--- a/core/java/android/view/IWindow.aidl
+++ b/core/java/android/view/IWindow.aidl
@@ -130,11 +130,6 @@ oneway interface IWindow {
void requestAppKeyboardShortcuts(IResultReceiver receiver, int deviceId);
/**
- * Tell the window that it is either gaining or losing pointer capture.
- */
- void dispatchPointerCaptureChanged(boolean hasCapture);
-
- /**
* Called when Scroll Capture support is requested for a window.
*
* @param callbacks to receive responses
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index d24380bfc2ac..52ce5e709990 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -8665,7 +8665,7 @@ public final class ViewRootImpl implements ViewParent,
MSG_REQUEST_KEYBOARD_SHORTCUTS, deviceId, 0, receiver).sendToTarget();
}
- public void dispatchPointerCaptureChanged(boolean on) {
+ private void dispatchPointerCaptureChanged(boolean on) {
final int what = MSG_POINTER_CAPTURE_CHANGED;
mHandler.removeMessages(what);
Message msg = mHandler.obtainMessage(what);
@@ -9438,14 +9438,6 @@ public final class ViewRootImpl implements ViewParent,
}
@Override
- public void dispatchPointerCaptureChanged(boolean hasCapture) {
- final ViewRootImpl viewAncestor = mViewAncestor.get();
- if (viewAncestor != null) {
- viewAncestor.dispatchPointerCaptureChanged(hasCapture);
- }
- }
-
- @Override
public void requestScrollCapture(IScrollCaptureCallbacks callbacks) {
final ViewRootImpl viewAncestor = mViewAncestor.get();
if (viewAncestor != null) {
diff --git a/core/java/com/android/internal/view/BaseIWindow.java b/core/java/com/android/internal/view/BaseIWindow.java
index 8962dc3d59da..ef2275d4218c 100644
--- a/core/java/com/android/internal/view/BaseIWindow.java
+++ b/core/java/com/android/internal/view/BaseIWindow.java
@@ -158,10 +158,6 @@ public class BaseIWindow extends IWindow.Stub {
}
@Override
- public void dispatchPointerCaptureChanged(boolean hasCapture) {
- }
-
- @Override
public void requestScrollCapture(IScrollCaptureCallbacks callbacks) {
try {
callbacks.onUnavailable();
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/SystemWindows.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/SystemWindows.java
index 4c06a2ca3bca..616f24a874bc 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/SystemWindows.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/SystemWindows.java
@@ -339,9 +339,6 @@ public class SystemWindows {
public void requestAppKeyboardShortcuts(IResultReceiver receiver, int deviceId) {}
@Override
- public void dispatchPointerCaptureChanged(boolean hasCapture) {}
-
- @Override
public void requestScrollCapture(IScrollCaptureCallbacks callbacks) {
try {
callbacks.onUnavailable();
diff --git a/services/core/java/com/android/server/input/InputManagerService.java b/services/core/java/com/android/server/input/InputManagerService.java
index bfc751ff46d6..122e282530a6 100644
--- a/services/core/java/com/android/server/input/InputManagerService.java
+++ b/services/core/java/com/android/server/input/InputManagerService.java
@@ -2592,17 +2592,8 @@ public class InputManagerService extends IInputManager.Stub
/**
* Called when the focused window has changed.
- *
- * @return true if we want to request a configuration refresh.
- */
- boolean notifyFocusChanged(IBinder oldToken, IBinder newToken);
-
- /**
- * Called by the client to request pointer capture.
- *
- * @return true if we want to request a configuration refresh.
*/
- boolean requestPointerCapture(IBinder windowToken, boolean enabled);
+ void notifyFocusChanged(IBinder oldToken, IBinder newToken);
}
/**
diff --git a/services/core/java/com/android/server/wm/InputManagerCallback.java b/services/core/java/com/android/server/wm/InputManagerCallback.java
index 35f5615347bb..6e89581bc34a 100644
--- a/services/core/java/com/android/server/wm/InputManagerCallback.java
+++ b/services/core/java/com/android/server/wm/InputManagerCallback.java
@@ -26,9 +26,7 @@ import static com.android.server.wm.WindowManagerService.H.ON_POINTER_DOWN_OUTSI
import android.annotation.NonNull;
import android.os.Debug;
import android.os.IBinder;
-import android.os.RemoteException;
import android.util.Slog;
-import android.view.IWindow;
import android.view.InputApplicationHandle;
import android.view.KeyEvent;
import android.view.WindowManager;
@@ -37,7 +35,6 @@ import com.android.internal.util.function.pooled.PooledLambda;
import com.android.server.input.InputManagerService;
import java.io.PrintWriter;
-import java.util.concurrent.atomic.AtomicReference;
final class InputManagerCallback implements InputManagerService.WindowManagerCallbacks {
private static final String TAG = TAG_WITH_CLASS_NAME ? "InputManagerCallback" : TAG_WM;
@@ -60,13 +57,6 @@ final class InputManagerCallback implements InputManagerService.WindowManagerCal
// which point the ActivityManager will enable dispatching.
private boolean mInputDispatchEnabled;
- // TODO(b/141749603)) investigate if this can be part of client focus change dispatch
- // Tracks the currently focused window used to update pointer capture state in clients
- private AtomicReference<IWindow> mFocusedWindow = new AtomicReference<>();
-
- // Tracks focused window pointer capture state
- private boolean mFocusedWindowHasCapture;
-
public InputManagerCallback(WindowManagerService service) {
mService = service;
}
@@ -234,59 +224,9 @@ final class InputManagerCallback implements InputManagerService.WindowManagerCal
}
@Override
- public boolean notifyFocusChanged(IBinder oldToken, IBinder newToken) {
- boolean requestRefreshConfiguration = false;
- final IWindow newFocusedWindow;
- final WindowState win;
-
- // TODO(b/141749603) investigate if this can be part of client focus change dispatch
- synchronized (mService.mGlobalLock) {
- win = mService.mInputToWindowMap.get(newToken);
- }
- newFocusedWindow = (win != null) ? win.mClient : null;
-
- final IWindow focusedWindow = mFocusedWindow.get();
- if (focusedWindow != null) {
- if (newFocusedWindow != null
- && newFocusedWindow.asBinder() == focusedWindow.asBinder()) {
- Slog.w(TAG, "notifyFocusChanged called with unchanged mFocusedWindow="
- + focusedWindow);
- return false;
- }
- requestRefreshConfiguration = dispatchPointerCaptureChanged(focusedWindow, false);
- }
- mFocusedWindow.set(newFocusedWindow);
- mService.mH.sendMessage(PooledLambda.obtainMessage(mService::reportFocusChanged,
- oldToken, newToken));
- return requestRefreshConfiguration;
- }
-
- @Override
- public boolean requestPointerCapture(IBinder windowToken, boolean enabled) {
- final IWindow focusedWindow = mFocusedWindow.get();
- if (focusedWindow == null || focusedWindow.asBinder() != windowToken) {
- Slog.e(TAG, "requestPointerCapture called for a window that has no focus: "
- + windowToken);
- return false;
- }
- if (mFocusedWindowHasCapture == enabled) {
- Slog.i(TAG, "requestPointerCapture: already " + (enabled ? "enabled" : "disabled"));
- return false;
- }
- return dispatchPointerCaptureChanged(focusedWindow, enabled);
- }
-
- private boolean dispatchPointerCaptureChanged(IWindow focusedWindow, boolean enabled) {
- if (mFocusedWindowHasCapture != enabled) {
- mFocusedWindowHasCapture = enabled;
- try {
- focusedWindow.dispatchPointerCaptureChanged(enabled);
- } catch (RemoteException ex) {
- /* ignore */
- }
- return true;
- }
- return false;
+ public void notifyFocusChanged(IBinder oldToken, IBinder newToken) {
+ mService.mH.sendMessage(PooledLambda.obtainMessage(
+ mService::reportFocusChanged, oldToken, newToken));
}
/** Waits until the built-in input devices have been configured. */
diff --git a/services/tests/wmtests/src/com/android/server/wm/TestIWindow.java b/services/tests/wmtests/src/com/android/server/wm/TestIWindow.java
index b78d6bb90817..001afe3e2637 100644
--- a/services/tests/wmtests/src/com/android/server/wm/TestIWindow.java
+++ b/services/tests/wmtests/src/com/android/server/wm/TestIWindow.java
@@ -116,10 +116,6 @@ public class TestIWindow extends IWindow.Stub {
}
@Override
- public void dispatchPointerCaptureChanged(boolean hasCapture) {
- }
-
- @Override
public void requestScrollCapture(IScrollCaptureCallbacks callbacks) throws RemoteException {
}