> Currently on macOS when mouseMove is given an offscreen coordinate to move > the mouse to, mouseMove will physically clamp to the edge of the screen, but > if you try to grab the mouse location immediately after by using > MouseInfo.getPointerInfo().getLocation() you will get the value of the > offscreen point. > > Windows and linux do this clamping and coordinate handling for us, but new > distributions may not necessarily handle clamping the same way, so Robot > should be checking for clamping rather than delegating it to native. > > This fix updates shared code to cache the screen bounds and adds a check to > not exceed the bounds in mouseMove. The caching is done in the Robot > constructor, so if the screen bounds changes the constructor must be called > again to update to the new bounds.
Alisen Chung has updated the pull request incrementally with three additional commits since the last revision: - robot update - Revert "robot multimonitor fix" This reverts commit 5734165881a66dc48d5a9f19e02bf63fac57cdc9. - Revert "init finX, finY" This reverts commit 0eb4226fe6d3cf7406bf0124d4871388fb04a77e. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/22781/files - new: https://git.openjdk.org/jdk/pull/22781/files/0eb4226f..1bd09930 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=22781&range=06 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=22781&range=05-06 Stats: 184 lines in 2 files changed: 20 ins; 25 del; 139 mod Patch: https://git.openjdk.org/jdk/pull/22781.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/22781/head:pull/22781 PR: https://git.openjdk.org/jdk/pull/22781