summaryrefslogtreecommitdiff
path: root/src/video/allegro_v.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/video/allegro_v.cpp')
-rw-r--r--src/video/allegro_v.cpp18
1 files changed, 3 insertions, 15 deletions
diff --git a/src/video/allegro_v.cpp b/src/video/allegro_v.cpp
index c75bcfb2e..01628f99c 100644
--- a/src/video/allegro_v.cpp
+++ b/src/video/allegro_v.cpp
@@ -388,22 +388,10 @@ static void PollEvent()
}
/* Mouse movement */
- int dx = mouse_x - _cursor.pos.x;
- int dy = mouse_y - _cursor.pos.y;
- if (dx != 0 || dy != 0) {
- if (_cursor.fix_at) {
- _cursor.delta.x = dx;
- _cursor.delta.y = dy;
- position_mouse(_cursor.pos.x, _cursor.pos.y);
- } else {
- _cursor.delta.x = dx;
- _cursor.delta.y = dy;
- _cursor.pos.x = mouse_x;
- _cursor.pos.y = mouse_y;
- _cursor.dirty = true;
- }
- mouse_action = true;
+ if (_cursor.UpdateCursorPosition(mouse_x, mouse_y, false)) {
+ position_mouse(_cursor.pos.x, _cursor.pos.y);
}
+ if (_cursor.delta.x != 0 || _cursor.delta.y) mouse_action = true;
static int prev_mouse_z = 0;
if (prev_mouse_z != mouse_z) {