summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Prabir Pradhan <prabirmsp@google.com> 2024-05-06 15:39:51 +0000
committer Prabir Pradhan <prabirmsp@google.com> 2024-05-08 18:39:00 +0000
commite9858f7d6b9d533c0135fb152e4cc65dad39940e (patch)
tree0469d86c807a6887733f853331d5463ce00876f2
parent0affab46ea0f6bc31a42392b8ab24f650855becd (diff)
VirtualDeviceManager: Cleanup after PointerChoreogpraher refactor
Bug: 311416205 Test: build, presubmit Change-Id: I7b2bc9feecedf26d5c2d89bce77962e3658bd471
-rw-r--r--services/companion/java/com/android/server/companion/virtual/InputController.java64
-rw-r--r--services/core/java/com/android/server/input/InputManagerInternal.java23
-rw-r--r--services/core/java/com/android/server/input/InputManagerService.java10
-rw-r--r--services/tests/servicestests/src/com/android/server/companion/virtual/InputControllerTest.java8
-rw-r--r--services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java2
5 files changed, 0 insertions, 107 deletions
diff --git a/services/companion/java/com/android/server/companion/virtual/InputController.java b/services/companion/java/com/android/server/companion/virtual/InputController.java
index 9b72288955a7..d7c65c748d8f 100644
--- a/services/companion/java/com/android/server/companion/virtual/InputController.java
+++ b/services/companion/java/com/android/server/companion/virtual/InputController.java
@@ -41,7 +41,6 @@ import android.os.RemoteException;
import android.util.ArrayMap;
import android.util.Log;
import android.util.Slog;
-import android.view.Display;
import android.view.InputDevice;
import android.view.WindowManager;
@@ -169,7 +168,6 @@ class InputController {
createDeviceInternal(InputDeviceDescriptor.TYPE_MOUSE, deviceName, vendorId, productId,
deviceToken, displayId, phys,
() -> mNativeWrapper.openUinputMouse(deviceName, vendorId, productId, phys));
- setVirtualMousePointerDisplayId(displayId);
}
void createTouchscreen(@NonNull String deviceName, int vendorId, int productId,
@@ -236,15 +234,6 @@ class InputController {
if (inputDeviceDescriptor.getType() == InputDeviceDescriptor.TYPE_KEYBOARD) {
mInputManagerInternal.removeKeyboardLayoutAssociation(phys);
}
-
- // Reset values to the default if all virtual mice are unregistered, or set display
- // id if there's another mouse (choose the most recent). The inputDeviceDescriptor must be
- // removed from the mInputDeviceDescriptors instance variable prior to this point.
- if (inputDeviceDescriptor.isMouse()) {
- if (getVirtualMousePointerDisplayId() == inputDeviceDescriptor.getDisplayId()) {
- updateActivePointerDisplayIdLocked();
- }
- }
}
/**
@@ -276,29 +265,6 @@ class InputController {
mWindowManager.setDisplayImePolicy(displayId, policy);
}
- // TODO(b/293587049): Remove after pointer icon refactor is complete.
- @GuardedBy("mLock")
- private void updateActivePointerDisplayIdLocked() {
- InputDeviceDescriptor mostRecentlyCreatedMouse = null;
- for (int i = 0; i < mInputDeviceDescriptors.size(); ++i) {
- InputDeviceDescriptor otherInputDeviceDescriptor = mInputDeviceDescriptors.valueAt(i);
- if (otherInputDeviceDescriptor.isMouse()) {
- if (mostRecentlyCreatedMouse == null
- || (otherInputDeviceDescriptor.getCreationOrderNumber()
- > mostRecentlyCreatedMouse.getCreationOrderNumber())) {
- mostRecentlyCreatedMouse = otherInputDeviceDescriptor;
- }
- }
- }
- if (mostRecentlyCreatedMouse != null) {
- setVirtualMousePointerDisplayId(
- mostRecentlyCreatedMouse.getDisplayId());
- } else {
- // All mice have been unregistered
- setVirtualMousePointerDisplayId(Display.INVALID_DISPLAY);
- }
- }
-
/**
* Validates a device name by checking whether a device with the same name already exists.
* @param deviceName The name of the device to be validated
@@ -355,9 +321,6 @@ class InputController {
if (inputDeviceDescriptor == null) {
return false;
}
- if (inputDeviceDescriptor.getDisplayId() != getVirtualMousePointerDisplayId()) {
- setVirtualMousePointerDisplayId(inputDeviceDescriptor.getDisplayId());
- }
return mNativeWrapper.writeButtonEvent(inputDeviceDescriptor.getNativePointer(),
event.getButtonCode(), event.getAction(), event.getEventTimeNanos());
}
@@ -384,9 +347,6 @@ class InputController {
if (inputDeviceDescriptor == null) {
return false;
}
- if (inputDeviceDescriptor.getDisplayId() != getVirtualMousePointerDisplayId()) {
- setVirtualMousePointerDisplayId(inputDeviceDescriptor.getDisplayId());
- }
return mNativeWrapper.writeRelativeEvent(inputDeviceDescriptor.getNativePointer(),
event.getRelativeX(), event.getRelativeY(), event.getEventTimeNanos());
}
@@ -399,9 +359,6 @@ class InputController {
if (inputDeviceDescriptor == null) {
return false;
}
- if (inputDeviceDescriptor.getDisplayId() != getVirtualMousePointerDisplayId()) {
- setVirtualMousePointerDisplayId(inputDeviceDescriptor.getDisplayId());
- }
return mNativeWrapper.writeScrollEvent(inputDeviceDescriptor.getNativePointer(),
event.getXAxisMovement(), event.getYAxisMovement(), event.getEventTimeNanos());
}
@@ -415,9 +372,6 @@ class InputController {
throw new IllegalArgumentException(
"Could not get cursor position for input device for given token");
}
- if (inputDeviceDescriptor.getDisplayId() != getVirtualMousePointerDisplayId()) {
- setVirtualMousePointerDisplayId(inputDeviceDescriptor.getDisplayId());
- }
return LocalServices.getService(InputManagerInternal.class).getCursorPosition(
inputDeviceDescriptor.getDisplayId());
}
@@ -878,22 +832,4 @@ class InputController {
/** Returns true if the calling thread is a valid thread for device creation. */
boolean isValidThread();
}
-
- // TODO(b/293587049): Remove after pointer icon refactor is complete.
- private void setVirtualMousePointerDisplayId(int displayId) {
- if (com.android.input.flags.Flags.enablePointerChoreographer()) {
- // We no longer need to set the pointer display when pointer choreographer is enabled.
- return;
- }
- mInputManagerInternal.setVirtualMousePointerDisplayId(displayId);
- }
-
- // TODO(b/293587049): Remove after pointer icon refactor is complete.
- private int getVirtualMousePointerDisplayId() {
- if (com.android.input.flags.Flags.enablePointerChoreographer()) {
- // We no longer need to get the pointer display when pointer choreographer is enabled.
- return Display.INVALID_DISPLAY;
- }
- return mInputManagerInternal.getVirtualMousePointerDisplayId();
- }
}
diff --git a/services/core/java/com/android/server/input/InputManagerInternal.java b/services/core/java/com/android/server/input/InputManagerInternal.java
index 4e9cf51fda56..b47631c35e38 100644
--- a/services/core/java/com/android/server/input/InputManagerInternal.java
+++ b/services/core/java/com/android/server/input/InputManagerInternal.java
@@ -84,29 +84,6 @@ public abstract class InputManagerInternal {
@NonNull IBinder toChannelToken);
/**
- * Sets the display id that the MouseCursorController will be forced to target. Pass
- * {@link android.view.Display#INVALID_DISPLAY} to clear the override.
- *
- * Note: This method generally blocks until the pointer display override has propagated.
- * When setting a new override, the caller should ensure that an input device that can control
- * the mouse pointer is connected. If a new override is set when no such input device is
- * connected, the caller may be blocked for an arbitrary period of time.
- *
- * @return true if the pointer displayId was set successfully, or false if it fails.
- *
- * @deprecated TODO(b/293587049): Not needed - remove after Pointer Icon Refactor is complete.
- */
- public abstract boolean setVirtualMousePointerDisplayId(int pointerDisplayId);
-
- /**
- * Gets the display id that the MouseCursorController is being forced to target. Returns
- * {@link android.view.Display#INVALID_DISPLAY} if there is no override
- *
- * @deprecated TODO(b/293587049): Not needed - remove after Pointer Icon Refactor is complete.
- */
- public abstract int getVirtualMousePointerDisplayId();
-
- /**
* Gets the current position of the mouse cursor.
*
* Returns NaN-s as the coordinates if the cursor is not available.
diff --git a/services/core/java/com/android/server/input/InputManagerService.java b/services/core/java/com/android/server/input/InputManagerService.java
index caa2c8d84c6e..cbd309e1f957 100644
--- a/services/core/java/com/android/server/input/InputManagerService.java
+++ b/services/core/java/com/android/server/input/InputManagerService.java
@@ -3138,16 +3138,6 @@ public class InputManagerService extends IInputManager.Stub
}
@Override
- public boolean setVirtualMousePointerDisplayId(int pointerDisplayId) {
- return false;
- }
-
- @Override
- public int getVirtualMousePointerDisplayId() {
- return Display.INVALID_DISPLAY;
- }
-
- @Override
public PointF getCursorPosition(int displayId) {
final float[] p = mNative.getMouseCursorPosition(displayId);
if (p == null || p.length != 2) {
diff --git a/services/tests/servicestests/src/com/android/server/companion/virtual/InputControllerTest.java b/services/tests/servicestests/src/com/android/server/companion/virtual/InputControllerTest.java
index fd880dd23f25..178e7ec649c6 100644
--- a/services/tests/servicestests/src/com/android/server/companion/virtual/InputControllerTest.java
+++ b/services/tests/servicestests/src/com/android/server/companion/virtual/InputControllerTest.java
@@ -33,7 +33,6 @@ import android.os.Binder;
import android.os.Handler;
import android.os.IBinder;
import android.platform.test.annotations.Presubmit;
-import android.platform.test.flag.junit.SetFlagsRule;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;
import android.view.DisplayInfo;
@@ -41,13 +40,11 @@ import android.view.WindowManager;
import androidx.test.InstrumentationRegistry;
-import com.android.input.flags.Flags;
import com.android.server.LocalServices;
import com.android.server.input.InputManagerInternal;
import org.junit.After;
import org.junit.Before;
-import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -60,9 +57,6 @@ public class InputControllerTest {
private static final String LANGUAGE_TAG = "en-US";
private static final String LAYOUT_TYPE = "qwerty";
- @Rule
- public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();
-
@Mock
private InputManagerInternal mInputManagerInternalMock;
@Mock
@@ -77,8 +71,6 @@ public class InputControllerTest {
@Before
public void setUp() throws Exception {
- mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_POINTER_CHOREOGRAPHER);
-
MockitoAnnotations.initMocks(this);
mInputManagerMockHelper = new InputManagerMockHelper(
TestableLooper.get(this), mNativeWrapperMock, mIInputManagerMock);
diff --git a/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java b/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java
index 2b81d78a9163..da8961df38a8 100644
--- a/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/companion/virtual/VirtualDeviceManagerServiceTest.java
@@ -339,8 +339,6 @@ public class VirtualDeviceManagerServiceTest {
LocalServices.removeServiceForTest(DisplayManagerInternal.class);
LocalServices.addService(DisplayManagerInternal.class, mDisplayManagerInternalMock);
- mSetFlagsRule.enableFlags(com.android.input.flags.Flags.FLAG_ENABLE_POINTER_CHOREOGRAPHER);
-
doNothing().when(mInputManagerInternalMock)
.setMousePointerAccelerationEnabled(anyBoolean(), anyInt());
doNothing().when(mInputManagerInternalMock).setPointerIconVisible(anyBoolean(), anyInt());