[Scummvm-git-logs] scummvm master -> 801d9f288909ea9b2fdfb539c1a20fcc0fefe8f9

aquadran noreply at scummvm.org
Sun Sep 14 17:35:49 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:
801d9f2889 WINTERMUTE: Import code from wmelite related touch interface mode


Commit: 801d9f288909ea9b2fdfb539c1a20fcc0fefe8f9
    https://github.com/scummvm/scummvm/commit/801d9f288909ea9b2fdfb539c1a20fcc0fefe8f9
Author: Paweł Kołodziejski (aquadran at gmail.com)
Date: 2025-09-14T19:35:43+02:00

Commit Message:
WINTERMUTE: Import code from wmelite related touch interface mode

Changed paths:
    engines/wintermute/ad/ad_object.cpp
    engines/wintermute/ad/ad_response_box.cpp
    engines/wintermute/base/base_game.cpp
    engines/wintermute/base/base_game.h
    engines/wintermute/persistent.h


diff --git a/engines/wintermute/ad/ad_object.cpp b/engines/wintermute/ad/ad_object.cpp
index 8d713496683..33a579d099f 100644
--- a/engines/wintermute/ad/ad_object.cpp
+++ b/engines/wintermute/ad/ad_object.cpp
@@ -944,7 +944,7 @@ void AdObject::talk(const char *text, const char *sound, uint32 duration, const
 	if (_subtitlesWidth > 0) {
 		width = _subtitlesWidth;
 	} else {
-		if ((x < _game->_renderer->getWidth() / 4 || x > _game->_renderer->getWidth() * 0.75)) {
+		if ((x < _game->_renderer->getWidth() / 4 || x > _game->_renderer->getWidth() * 0.75) && !_game->_touchInterface) {
 			width = MAX(_game->_renderer->getWidth() / 4, MIN(x * 2, (_game->_renderer->getWidth() - x) * 2));
 		} else {
 			width = _game->_renderer->getWidth() / 2;
diff --git a/engines/wintermute/ad/ad_response_box.cpp b/engines/wintermute/ad/ad_response_box.cpp
index f8d47761b69..8a8e0b62d56 100644
--- a/engines/wintermute/ad/ad_response_box.cpp
+++ b/engines/wintermute/ad/ad_response_box.cpp
@@ -161,6 +161,10 @@ bool AdResponseBox::createButtons() {
 				btn->_fontPress = btn->_fontHover;
 				btn->_align = _align;
 
+				if (_game->_touchInterface) {
+					btn->_fontHover = btn->_font;
+				}
+
 				if (_responses[i]->_font) {
 					btn->_font = _responses[i]->_font;
 				}
@@ -184,6 +188,12 @@ bool AdResponseBox::createButtons() {
 
 			btn->setName("response");
 			btn->correctSize();
+
+			// make the responses touchable
+			if (_game->_touchInterface) {
+				btn->_height = MAX(btn->_height, 50);
+			}
+
 			//btn->setListener(this, btn, _responses[i]->_id);
 			btn->setListener(this, btn, i);
 			btn->_visible = false;
diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp
index 4a3fcfe0ed7..eab96efe44f 100644
--- a/engines/wintermute/base/base_game.cpp
+++ b/engines/wintermute/base/base_game.cpp
@@ -319,6 +319,8 @@ BaseGame::BaseGame(const Common::String &targetName) : BaseObject(this), _target
 #ifdef ENABLE_HEROCRAFT
 	_rndHc = new Common::RandomSource("HeroCraft");
 #endif
+
+	_touchInterface = false;
 }
 
 
@@ -1530,7 +1532,6 @@ bool BaseGame::scCallMethod(ScScript *script, ScStack *stack, ScStack *thisStack
 
 		_musicCrossfadeRunning = true;
 
-		 // FoxTail:
 		_musicCrossfadeVolume1 = 0;
 		_musicCrossfadeVolume2 = 100;
 
diff --git a/engines/wintermute/base/base_game.h b/engines/wintermute/base/base_game.h
index 458c18c1f4f..a3d47fe4877 100644
--- a/engines/wintermute/base/base_game.h
+++ b/engines/wintermute/base/base_game.h
@@ -423,6 +423,7 @@ public:
 	bool getBilinearFiltering() { return _bilinearFiltering; }
 	void addMem(int32 bytes);
 
+	bool _touchInterface;
 	bool _bilinearFiltering{};
 #ifdef ENABLE_WME3D
 	bool _force2dRenderer{};
diff --git a/engines/wintermute/persistent.h b/engines/wintermute/persistent.h
index 6ec9163e087..b0bc4890f4d 100644
--- a/engines/wintermute/persistent.h
+++ b/engines/wintermute/persistent.h
@@ -82,7 +82,7 @@ namespace Wintermute {
 
 #define TMEMBER(memberName) #memberName, &memberName
 #define TMEMBER_PTR(memberName) #memberName, &memberName
-#define TMEMBER_INT(memberName) #memberName, (int32*)&memberName
+#define TMEMBER_INT(memberName) #memberName, (int32 *)&memberName
 
 } // End of namespace Wintermute
 




More information about the Scummvm-git-logs mailing list