Reverted the relative coordinate 'bug' - that's the required behaviour when Window.update is calling Mouse.poll. Consider the case where we call Window.update twice before checking getD*: with the old behaviour, only the deltas between the updates are reported, not those before the first update
This commit is contained in:
parent
86eb042b81
commit
6f1f14facb
|
@ -348,9 +348,9 @@ public class Mouse {
|
|||
// set absolute position
|
||||
x += poll_dx;
|
||||
y += poll_dy;
|
||||
dx = poll_dx;
|
||||
dy = poll_dy;
|
||||
dwheel = poll_dwheel;
|
||||
dx += poll_dx;
|
||||
dy += poll_dy;
|
||||
dwheel += poll_dwheel;
|
||||
|
||||
// if window has been created, clamp to edges
|
||||
if (Window.isCreated()) {
|
||||
|
@ -502,21 +502,27 @@ public class Mouse {
|
|||
* @return Movement on the x axis since last time getDX() was called
|
||||
*/
|
||||
public static int getDX() {
|
||||
return dx;
|
||||
int result = dx;
|
||||
dx = 0;
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Movement on the y axis since last time getDY() was called
|
||||
*/
|
||||
public static int getDY() {
|
||||
return dy;
|
||||
int result = dy;
|
||||
dy = 0;
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Movement of the wheel since last time getDWheel() was called
|
||||
*/
|
||||
public static int getDWheel() {
|
||||
return dwheel;
|
||||
int result = dwheel;
|
||||
dwheel = 0;
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue