Add toString overrides to all virtual input objects.
- VirtualInputDevice and all the relevant subclasses
- VirtualInputDeviceConfig and all the relevant subclasses
- All Virtual*Event
Fix: 304349031
Test: presubmit
Change-Id: I8e30a7db240532ea973822398f08d433d99a470c
diff --git a/core/java/android/companion/virtual/VirtualDeviceInternal.java b/core/java/android/companion/virtual/VirtualDeviceInternal.java
index f6a7d2a..da8277c 100644
--- a/core/java/android/companion/virtual/VirtualDeviceInternal.java
+++ b/core/java/android/companion/virtual/VirtualDeviceInternal.java
@@ -271,7 +271,7 @@
final IBinder token = new Binder(
"android.hardware.input.VirtualDpad:" + config.getInputDeviceName());
mVirtualDevice.createVirtualDpad(config, token);
- return new VirtualDpad(mVirtualDevice, token);
+ return new VirtualDpad(config, mVirtualDevice, token);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -283,7 +283,7 @@
final IBinder token = new Binder(
"android.hardware.input.VirtualKeyboard:" + config.getInputDeviceName());
mVirtualDevice.createVirtualKeyboard(config, token);
- return new VirtualKeyboard(mVirtualDevice, token);
+ return new VirtualKeyboard(config, mVirtualDevice, token);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -295,7 +295,7 @@
final IBinder token = new Binder(
"android.hardware.input.VirtualMouse:" + config.getInputDeviceName());
mVirtualDevice.createVirtualMouse(config, token);
- return new VirtualMouse(mVirtualDevice, token);
+ return new VirtualMouse(config, mVirtualDevice, token);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -308,7 +308,7 @@
final IBinder token = new Binder(
"android.hardware.input.VirtualTouchscreen:" + config.getInputDeviceName());
mVirtualDevice.createVirtualTouchscreen(config, token);
- return new VirtualTouchscreen(mVirtualDevice, token);
+ return new VirtualTouchscreen(config, mVirtualDevice, token);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -322,7 +322,7 @@
"android.hardware.input.VirtualNavigationTouchpad:"
+ config.getInputDeviceName());
mVirtualDevice.createVirtualNavigationTouchpad(config, token);
- return new VirtualNavigationTouchpad(mVirtualDevice, token);
+ return new VirtualNavigationTouchpad(config, mVirtualDevice, token);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
diff --git a/core/java/android/hardware/input/VirtualDpad.java b/core/java/android/hardware/input/VirtualDpad.java
index 8133472..7f2d8a0 100644
--- a/core/java/android/hardware/input/VirtualDpad.java
+++ b/core/java/android/hardware/input/VirtualDpad.java
@@ -52,8 +52,8 @@
KeyEvent.KEYCODE_DPAD_CENTER)));
/** @hide */
- public VirtualDpad(IVirtualDevice virtualDevice, IBinder token) {
- super(virtualDevice, token);
+ public VirtualDpad(VirtualDpadConfig config, IVirtualDevice virtualDevice, IBinder token) {
+ super(config, virtualDevice, token);
}
/**
diff --git a/core/java/android/hardware/input/VirtualInputDevice.java b/core/java/android/hardware/input/VirtualInputDevice.java
index 772ba8e..931e1ff 100644
--- a/core/java/android/hardware/input/VirtualInputDevice.java
+++ b/core/java/android/hardware/input/VirtualInputDevice.java
@@ -42,9 +42,12 @@
*/
protected final IBinder mToken;
+ protected final VirtualInputDeviceConfig mConfig;
+
/** @hide */
- VirtualInputDevice(
+ VirtualInputDevice(VirtualInputDeviceConfig config,
IVirtualDevice virtualDevice, IBinder token) {
+ mConfig = config;
mVirtualDevice = virtualDevice;
mToken = token;
}
@@ -70,4 +73,9 @@
throw e.rethrowFromSystemServer();
}
}
+
+ @Override
+ public String toString() {
+ return mConfig.toString();
+ }
}
diff --git a/core/java/android/hardware/input/VirtualInputDeviceConfig.java b/core/java/android/hardware/input/VirtualInputDeviceConfig.java
index d3dacc9..a8caa58 100644
--- a/core/java/android/hardware/input/VirtualInputDeviceConfig.java
+++ b/core/java/android/hardware/input/VirtualInputDeviceConfig.java
@@ -91,6 +91,22 @@
dest.writeString8(mInputDeviceName);
}
+ @Override
+ public String toString() {
+ return getClass().getName() + "( "
+ + " name=" + mInputDeviceName
+ + " vendorId=" + mVendorId
+ + " productId=" + mProductId
+ + " associatedDisplayId=" + mAssociatedDisplayId
+ + additionalFieldsToString() + ")";
+ }
+
+ /** @hide */
+ @NonNull
+ String additionalFieldsToString() {
+ return "";
+ }
+
/**
* A builder for {@link VirtualInputDeviceConfig}
*
diff --git a/core/java/android/hardware/input/VirtualKeyEvent.java b/core/java/android/hardware/input/VirtualKeyEvent.java
index dc47f08..4d89508 100644
--- a/core/java/android/hardware/input/VirtualKeyEvent.java
+++ b/core/java/android/hardware/input/VirtualKeyEvent.java
@@ -205,6 +205,14 @@
return 0;
}
+ @Override
+ public String toString() {
+ return "VirtualKeyEvent("
+ + " action=" + KeyEvent.actionToString(mAction)
+ + " keyCode=" + KeyEvent.keyCodeToString(mKeyCode)
+ + " eventTime(ns)=" + mEventTimeNanos;
+ }
+
/**
* Returns the key code associated with this event.
*/
diff --git a/core/java/android/hardware/input/VirtualKeyboard.java b/core/java/android/hardware/input/VirtualKeyboard.java
index e569dbf..c90f893 100644
--- a/core/java/android/hardware/input/VirtualKeyboard.java
+++ b/core/java/android/hardware/input/VirtualKeyboard.java
@@ -39,8 +39,9 @@
private final int mUnsupportedKeyCode = KeyEvent.KEYCODE_DPAD_CENTER;
/** @hide */
- public VirtualKeyboard(IVirtualDevice virtualDevice, IBinder token) {
- super(virtualDevice, token);
+ public VirtualKeyboard(VirtualKeyboardConfig config,
+ IVirtualDevice virtualDevice, IBinder token) {
+ super(config, virtualDevice, token);
}
/**
diff --git a/core/java/android/hardware/input/VirtualKeyboardConfig.java b/core/java/android/hardware/input/VirtualKeyboardConfig.java
index 6d03065..96a1a36 100644
--- a/core/java/android/hardware/input/VirtualKeyboardConfig.java
+++ b/core/java/android/hardware/input/VirtualKeyboardConfig.java
@@ -99,6 +99,12 @@
dest.writeString8(mLayoutType);
}
+ @Override
+ @NonNull
+ String additionalFieldsToString() {
+ return " languageTag=" + mLanguageTag + " layoutType=" + mLayoutType;
+ }
+
/**
* Builder for creating a {@link VirtualKeyboardConfig}.
*/
diff --git a/core/java/android/hardware/input/VirtualMouse.java b/core/java/android/hardware/input/VirtualMouse.java
index 7eba2b8..51f3f69 100644
--- a/core/java/android/hardware/input/VirtualMouse.java
+++ b/core/java/android/hardware/input/VirtualMouse.java
@@ -38,8 +38,8 @@
public class VirtualMouse extends VirtualInputDevice {
/** @hide */
- public VirtualMouse(IVirtualDevice virtualDevice, IBinder token) {
- super(virtualDevice, token);
+ public VirtualMouse(VirtualMouseConfig config, IVirtualDevice virtualDevice, IBinder token) {
+ super(config, virtualDevice, token);
}
/**
diff --git a/core/java/android/hardware/input/VirtualMouseButtonEvent.java b/core/java/android/hardware/input/VirtualMouseButtonEvent.java
index dfdd3b4..fc42b15 100644
--- a/core/java/android/hardware/input/VirtualMouseButtonEvent.java
+++ b/core/java/android/hardware/input/VirtualMouseButtonEvent.java
@@ -110,6 +110,14 @@
return 0;
}
+ @Override
+ public String toString() {
+ return "VirtualMouseButtonEvent("
+ + " action=" + MotionEvent.actionToString(mAction)
+ + " button=" + MotionEvent.buttonStateToString(mButtonCode)
+ + " eventTime(ns)=" + mEventTimeNanos;
+ }
+
/**
* Returns the button code associated with this event.
*/
diff --git a/core/java/android/hardware/input/VirtualMouseRelativeEvent.java b/core/java/android/hardware/input/VirtualMouseRelativeEvent.java
index e6ad118..2a42cfc 100644
--- a/core/java/android/hardware/input/VirtualMouseRelativeEvent.java
+++ b/core/java/android/hardware/input/VirtualMouseRelativeEvent.java
@@ -61,6 +61,14 @@
return 0;
}
+ @Override
+ public String toString() {
+ return "VirtualMouseRelativeEvent("
+ + " x=" + mRelativeX
+ + " y=" + mRelativeY
+ + " eventTime(ns)=" + mEventTimeNanos;
+ }
+
/**
* Returns the relative x-axis movement, in pixels.
*/
diff --git a/core/java/android/hardware/input/VirtualMouseScrollEvent.java b/core/java/android/hardware/input/VirtualMouseScrollEvent.java
index 4d0a157..c89c188 100644
--- a/core/java/android/hardware/input/VirtualMouseScrollEvent.java
+++ b/core/java/android/hardware/input/VirtualMouseScrollEvent.java
@@ -65,6 +65,14 @@
return 0;
}
+ @Override
+ public String toString() {
+ return "VirtualMouseScrollEvent("
+ + " x=" + mXAxisMovement
+ + " y=" + mYAxisMovement
+ + " eventTime(ns)=" + mEventTimeNanos;
+ }
+
/**
* Returns the x-axis scroll movement, normalized from -1.0 to 1.0, inclusive. Positive values
* indicate scrolling upward; negative values, downward.
diff --git a/core/java/android/hardware/input/VirtualNavigationTouchpad.java b/core/java/android/hardware/input/VirtualNavigationTouchpad.java
index 2854034..61d72e2 100644
--- a/core/java/android/hardware/input/VirtualNavigationTouchpad.java
+++ b/core/java/android/hardware/input/VirtualNavigationTouchpad.java
@@ -40,8 +40,9 @@
public class VirtualNavigationTouchpad extends VirtualInputDevice {
/** @hide */
- public VirtualNavigationTouchpad(IVirtualDevice virtualDevice, IBinder token) {
- super(virtualDevice, token);
+ public VirtualNavigationTouchpad(VirtualNavigationTouchpadConfig config,
+ IVirtualDevice virtualDevice, IBinder token) {
+ super(config, virtualDevice, token);
}
/**
diff --git a/core/java/android/hardware/input/VirtualNavigationTouchpadConfig.java b/core/java/android/hardware/input/VirtualNavigationTouchpadConfig.java
index 8935efa..75f7b3e 100644
--- a/core/java/android/hardware/input/VirtualNavigationTouchpadConfig.java
+++ b/core/java/android/hardware/input/VirtualNavigationTouchpadConfig.java
@@ -70,6 +70,12 @@
dest.writeInt(mWidth);
}
+ @Override
+ @NonNull
+ String additionalFieldsToString() {
+ return " width=" + mWidth + " height=" + mHeight;
+ }
+
@NonNull
public static final Creator<VirtualNavigationTouchpadConfig> CREATOR =
new Creator<VirtualNavigationTouchpadConfig>() {
diff --git a/core/java/android/hardware/input/VirtualTouchEvent.java b/core/java/android/hardware/input/VirtualTouchEvent.java
index 2695a79..7936dfe 100644
--- a/core/java/android/hardware/input/VirtualTouchEvent.java
+++ b/core/java/android/hardware/input/VirtualTouchEvent.java
@@ -138,6 +138,19 @@
return 0;
}
+ @Override
+ public String toString() {
+ return "VirtualTouchEvent("
+ + " pointerId=" + mPointerId
+ + " toolType=" + MotionEvent.toolTypeToString(mToolType)
+ + " action=" + MotionEvent.actionToString(mAction)
+ + " x=" + mX
+ + " y=" + mY
+ + " pressure=" + mPressure
+ + " majorAxisSize=" + mMajorAxisSize
+ + " eventTime(ns)=" + mEventTimeNanos;
+ }
+
/**
* Returns the pointer id associated with this event.
*/
diff --git a/core/java/android/hardware/input/VirtualTouchscreen.java b/core/java/android/hardware/input/VirtualTouchscreen.java
index 0d07753..4ac439e 100644
--- a/core/java/android/hardware/input/VirtualTouchscreen.java
+++ b/core/java/android/hardware/input/VirtualTouchscreen.java
@@ -34,8 +34,9 @@
@SystemApi
public class VirtualTouchscreen extends VirtualInputDevice {
/** @hide */
- public VirtualTouchscreen(IVirtualDevice virtualDevice, IBinder token) {
- super(virtualDevice, token);
+ public VirtualTouchscreen(VirtualTouchscreenConfig config,
+ IVirtualDevice virtualDevice, IBinder token) {
+ super(config, virtualDevice, token);
}
/**
diff --git a/core/java/android/hardware/input/VirtualTouchscreenConfig.java b/core/java/android/hardware/input/VirtualTouchscreenConfig.java
index aac341cc..6308459 100644
--- a/core/java/android/hardware/input/VirtualTouchscreenConfig.java
+++ b/core/java/android/hardware/input/VirtualTouchscreenConfig.java
@@ -69,6 +69,12 @@
dest.writeInt(mHeight);
}
+ @Override
+ @NonNull
+ String additionalFieldsToString() {
+ return " width=" + mWidth + " height=" + mHeight;
+ }
+
@NonNull
public static final Creator<VirtualTouchscreenConfig> CREATOR =
new Creator<VirtualTouchscreenConfig>() {