[Scummvm-git-logs] scummvm master -> efb34d45ce975dc86522c1f70f27bee6c7ef587a

elasota noreply at scummvm.org
Fri Jun 13 02:53:57 UTC 2025


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .

Summary:
efb34d45ce MTROPOLIS: Drop mouse tracking when an object is deactivated


Commit: efb34d45ce975dc86522c1f70f27bee6c7ef587a
    https://github.com/scummvm/scummvm/commit/efb34d45ce975dc86522c1f70f27bee6c7ef587a
Author: elasota (1137273+elasota at users.noreply.github.com)
Date: 2025-06-12T22:53:29-04:00

Commit Message:
MTROPOLIS: Drop mouse tracking when an object is deactivated

Fixes scene hot-loads triggering from Mouse Outside events firing on objects from deactivated scenes, causing all kinds of problems.

Changed paths:
    engines/mtropolis/runtime.cpp


diff --git a/engines/mtropolis/runtime.cpp b/engines/mtropolis/runtime.cpp
index 0997ef1ff2d..0a9b567b41e 100644
--- a/engines/mtropolis/runtime.cpp
+++ b/engines/mtropolis/runtime.cpp
@@ -5695,6 +5695,12 @@ void Runtime::recursiveDeactivateStructural(Structural *structural) {
 		recursiveDeactivateStructural(child.get());
 	}
 
+	// If a mouseover object is deactivated, then it no longer receives events.
+	// (Otherwise hot-loading causes a bunch of problems with Mouse Outside events
+	// hot-loading scenes)
+	if (_mouseOverObject.lock().get() == structural)
+		_mouseOverObject.reset();
+
 	structural->deactivate();
 }
 




More information about the Scummvm-git-logs mailing list