[CD Cursor] Apply selection logic to change cursor displayId
In connected displays scenario, this tracks the latest display the
cursor is at, within the DisplayTopology. By default, this will be set
to topology primary display, and updated when mouse crossed to another
display.
Note: If associatedDisplay is in different topology, mouse will simply
be on the associatedDisplay, keeping existing behavior
Doc: go/connected-displays-cursor-behavior
Bug: 396568321
Test: atest inputflinger_tests
Test: atest InputTests
Test: atest CtsInputTestCases
Flag: com.android.input.flags.connected_displays_associated_display_cursor_bugfix
Change-Id: I6a68d9cd5a4de06896e0e29104c25b8a4493b852
diff --git a/libs/input/InputFlags.cpp b/libs/input/InputFlags.cpp
index 555b138..f866f9b 100644
--- a/libs/input/InputFlags.cpp
+++ b/libs/input/InputFlags.cpp
@@ -39,4 +39,9 @@
return com::android::input::flags::connected_displays_cursor();
}
+bool InputFlags::connectedDisplaysCursorAndAssociatedDisplayCursorBugfixEnabled() {
+ return connectedDisplaysCursorEnabled() &&
+ com::android::input::flags::connected_displays_associated_display_cursor_bugfix();
+}
+
} // namespace android
\ No newline at end of file