aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/kyra/screen.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/kyra/screen.cpp b/engines/kyra/screen.cpp
index b4c9cd2ce0..bc19717d1d 100644
--- a/engines/kyra/screen.cpp
+++ b/engines/kyra/screen.cpp
@@ -1775,8 +1775,13 @@ void Screen::hideMouse() {
void Screen::showMouse() {
debugC( 9, kDebugLevelScreen, "Screen::showMouse()");
- if (_mouseLockCount == 1)
+ if (_mouseLockCount == 1) {
+ // HACK: Flush the event queue before showing the mouse, so
+ // that the mouse cursor won't do a little dance catching
+ // up with the mouse movements when entering a new room.
+ _vm->delay(0);
_system->showMouse(true);
+ }
if (_mouseLockCount > 0)
_mouseLockCount--;