WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Commit 80ed75d

Browse files
committed
Finish animation when releasing Tobii hotkey.
1 parent 9659282 commit 80ed75d

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/com/esotericsoftware/clippy/Tobii.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,12 @@ synchronized boolean hotkeyPressedTick (int vk) {
210210
robot.mousePress(InputEvent.BUTTON1_MASK);
211211
robot.mouseRelease(InputEvent.BUTTON1_MASK);
212212
} else if (!mouseDrag) {
213+
// Finish animation.
214+
if (mouseMoveTime > 0) {
215+
mouseMoveTime = 0;
216+
setMousePosition(mouseEndX, mouseEndY, false);
217+
}
218+
213219
if (storeHeadAdjustment) {
214220
// Store head adjustment to snap or offset future gazes.
215221
if (mouse.distance(gazeSnappedX, gazeSnappedY) > snapStoreDistance) {
@@ -242,6 +248,12 @@ synchronized boolean hotkeyPressedTick (int vk) {
242248
}
243249

244250
void hotkeyReleased (int vk) {
251+
// Stop animation.
252+
if (mouseMoveTime > 0) {
253+
mouseMoveTime = 0;
254+
setMousePosition(mouseEndX, mouseEndY, false);
255+
}
256+
245257
// Stop mouse control.
246258
boolean mouseDown;
247259
synchronized (this) {
@@ -326,6 +338,8 @@ void setMousePosition (double xd, double yd, boolean animate) {
326338
y = clamp(y, screenTop, screen.height - 1 - screenBottom);
327339
if (!animate || mouseAnimationMillis == 0) {
328340
setMouse(x, y);
341+
mouse.x = x;
342+
mouse.y = y;
329343
mouseLastX = x;
330344
mouseLastY = y;
331345
return;

0 commit comments

Comments
 (0)