[Scummvm-git-logs] scummvm master -> 5ceb3be771dc38fe7c6a8c51c605aea005b5f500

sev- sev at scummvm.org
Mon Jul 23 23:28:33 CEST 2018


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

Summary:
6fc6ce3ac4 PINK: Rely on MacWindoManager to restore screen after menu
c48489f6d2 GRAPHICS: MACGUI: Restore screen on exiting from menu
5ceb3be771 ILLUSIONS: Fix copy/paste bug. CID 1394433


Commit: 6fc6ce3ac413d220a56da27a15c24792bde31838
    https://github.com/scummvm/scummvm/commit/6fc6ce3ac413d220a56da27a15c24792bde31838
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2018-07-23T14:47:27+02:00

Commit Message:
PINK: Rely on MacWindoManager to restore screen after menu

Changed paths:
    engines/pink/pink.cpp


diff --git a/engines/pink/pink.cpp b/engines/pink/pink.cpp
index 895300a..aa40c3e 100644
--- a/engines/pink/pink.cpp
+++ b/engines/pink/pink.cpp
@@ -163,9 +163,6 @@ Common::Error Pink::PinkEngine::run() {
 void PinkEngine::pauseEngine(void *engine, bool pause) {
 	PinkEngine *vm = (PinkEngine*)engine;
 	vm->pauseEngineIntern(pause);
-	if (!pause) {
-		vm->_director->addDirtyRect(Common::Rect(0, 0, 640, 480));
-	}
 }
 
 void PinkEngine::load(Archive &archive) {


Commit: c48489f6d244091ac238c30760829ed675913b10
    https://github.com/scummvm/scummvm/commit/c48489f6d244091ac238c30760829ed675913b10
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2018-07-23T14:47:46+02:00

Commit Message:
GRAPHICS: MACGUI: Restore screen on exiting from menu

Changed paths:
    graphics/macgui/macmenu.cpp
    graphics/macgui/macwindowmanager.cpp
    graphics/macgui/macwindowmanager.h


diff --git a/graphics/macgui/macmenu.cpp b/graphics/macgui/macmenu.cpp
index d48a7f4..cb44772 100644
--- a/graphics/macgui/macmenu.cpp
+++ b/graphics/macgui/macmenu.cpp
@@ -673,6 +673,8 @@ bool MacMenu::mouseMove(int x, int y) {
 		_isVisible = false;
 		if (_wm->_mode & kWMModalMenuMode) {
 			_wm->pauseEngine(false);
+			_wm->_screen = _wm->_screenCopy; // restore screen
+			g_system->copyRectToScreen(_wm->_screenCopy->getBasePtr(0, 0), _wm->_screenCopy->pitch, 0, 0, _wm->_screenCopy->w, _wm->_screenCopy->h);
 		}
 	}
 
@@ -686,6 +688,8 @@ bool MacMenu::mouseRelease(int x, int y) {
 
 		if (_wm->_mode & kWMModalMenuMode) {
 			_wm->pauseEngine(false);
+			_wm->_screen = _wm->_screenCopy; // restore screen
+			g_system->copyRectToScreen(_wm->_screenCopy->getBasePtr(0, 0), _wm->_screenCopy->pitch, 0, 0, _wm->_screenCopy->w, _wm->_screenCopy->h);
 		}
 
 		if (_activeItem != -1 && _activeSubItem != -1 && _items[_activeItem]->subitems[_activeSubItem]->enabled) {
diff --git a/graphics/macgui/macwindowmanager.cpp b/graphics/macgui/macwindowmanager.cpp
index fea6565..8998262 100644
--- a/graphics/macgui/macwindowmanager.cpp
+++ b/graphics/macgui/macwindowmanager.cpp
@@ -149,6 +149,7 @@ static void menuTimerHandler(void *refCon);
 
 MacWindowManager::MacWindowManager() {
 	_screen = 0;
+	_screenCopy = 0;
 	_lastId = 0;
 	_activeWindow = -1;
 
@@ -184,6 +185,7 @@ MacWindowManager::~MacWindowManager() {
 		delete _windows[i];
 
 	delete _fontMan;
+	delete _screenCopy;
 
 	g_system->getTimerManager()->removeTimerProc(&menuTimerHandler);
 }
@@ -338,6 +340,7 @@ static void menuTimerHandler(void *refCon) {
 	if (wm->_menuHotzone.contains(wm->_lastMousePos)) {
 		wm->activateMenu();
 		if (wm->_mode & kWMModalMenuMode) {
+			wm->_screenCopy = new ManagedSurface(*wm->_screen);	// Create a copy
 			wm->pauseEngine(true);
 		}
 	}
diff --git a/graphics/macgui/macwindowmanager.h b/graphics/macgui/macwindowmanager.h
index a889816..0a8a5a4 100644
--- a/graphics/macgui/macwindowmanager.h
+++ b/graphics/macgui/macwindowmanager.h
@@ -235,9 +235,11 @@ private:
 	void removeFromStack(BaseMacWindow *target);
 	void removeFromWindowList(BaseMacWindow *target);
 
-private:
+public:
 	ManagedSurface *_screen;
+	ManagedSurface *_screenCopy;
 
+private:
 	Common::List<BaseMacWindow *> _windowStack;
 	Common::Array<BaseMacWindow *> _windows;
 


Commit: 5ceb3be771dc38fe7c6a8c51c605aea005b5f500
    https://github.com/scummvm/scummvm/commit/5ceb3be771dc38fe7c6a8c51c605aea005b5f500
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2018-07-23T23:27:50+02:00

Commit Message:
ILLUSIONS: Fix copy/paste bug. CID 1394433

Changed paths:
    engines/illusions/bbdou/bbdou_specialcode.cpp


diff --git a/engines/illusions/bbdou/bbdou_specialcode.cpp b/engines/illusions/bbdou/bbdou_specialcode.cpp
index 542b3d8..d7003af 100644
--- a/engines/illusions/bbdou/bbdou_specialcode.cpp
+++ b/engines/illusions/bbdou/bbdou_specialcode.cpp
@@ -976,7 +976,7 @@ bool BbdouSpecialCode::testVerbId(uint32 verbId, uint32 holdingObjectId, uint32
 	if (holdingObjectId) {
 		if (interactMode == 9)
 			verbIds = kVerbIdsH9;
-		else if (interactMode == 9)
+		else if (interactMode == 8)
 			verbIds = kVerbIdsH8;
 		else
 			verbIds = kVerbIdsHE;





More information about the Scummvm-git-logs mailing list