summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video/allegro_v.cpp4
-rw-r--r--src/video/sdl_v.cpp4
-rw-r--r--src/video/win32_v.cpp8
3 files changed, 8 insertions, 8 deletions
diff --git a/src/video/allegro_v.cpp b/src/video/allegro_v.cpp
index 542422aef..4dc588159 100644
--- a/src/video/allegro_v.cpp
+++ b/src/video/allegro_v.cpp
@@ -379,8 +379,8 @@ static void PollEvent()
int dy = mouse_y - _cursor.pos.y;
if (dx != 0 || dy != 0) {
if (_cursor.fix_at) {
- _cursor.delta.x += dx;
- _cursor.delta.y += dy;
+ _cursor.delta.x = dx;
+ _cursor.delta.y = dy;
position_mouse(_cursor.pos.x, _cursor.pos.y);
} else {
_cursor.delta.x = dx;
diff --git a/src/video/sdl_v.cpp b/src/video/sdl_v.cpp
index 984556237..0e347645e 100644
--- a/src/video/sdl_v.cpp
+++ b/src/video/sdl_v.cpp
@@ -385,8 +385,8 @@ static int PollEvent()
int dx = ev.motion.x - _screen.width / 2;
int dy = ev.motion.y - _screen.height / 2;
if (dx != 0 || dy != 0) {
- _cursor.delta.x += dx;
- _cursor.delta.y += dy;
+ _cursor.delta.x = dx;
+ _cursor.delta.y = dy;
SDL_CALL SDL_WarpMouse(_screen.width / 2, _screen.height / 2);
}
} else {
diff --git a/src/video/win32_v.cpp b/src/video/win32_v.cpp
index 31cc01471..57108f355 100644
--- a/src/video/win32_v.cpp
+++ b/src/video/win32_v.cpp
@@ -433,8 +433,8 @@ static LRESULT CALLBACK WndProcGdi(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lP
int dx = x - _cursor.pos.x;
int dy = y - _cursor.pos.y;
if (dx != 0 || dy != 0) {
- _cursor.delta.x += dx;
- _cursor.delta.y += dy;
+ _cursor.delta.x = dx;
+ _cursor.delta.y = dy;
pt.x = _cursor.pos.x;
pt.y = _cursor.pos.y;
@@ -443,8 +443,8 @@ static LRESULT CALLBACK WndProcGdi(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lP
SetCursorPos(pt.x, pt.y);
}
} else {
- _cursor.delta.x += x - _cursor.pos.x;
- _cursor.delta.y += y - _cursor.pos.y;
+ _cursor.delta.x = x - _cursor.pos.x;
+ _cursor.delta.y = y - _cursor.pos.y;
_cursor.pos.x = x;
_cursor.pos.y = y;
_cursor.dirty = true;