[Scummvm-git-logs] scummvm master -> 639e3c7a1371510de698c138313d59e9ef411e05
sev-
noreply at scummvm.org
Sat Feb 28 23:08:04 UTC 2026
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
509c12ba1b COMMON: Cleanup icon after 2 seconds in OSDMessageQueue
179c9706a6 NEWS: Mention MT-32 display
639e3c7a13 DIRECTOR: DT: Fix warning
Commit: 509c12ba1bd437ce5e4987d00cfb950f96e6f61f
https://github.com/scummvm/scummvm/commit/509c12ba1bd437ce5e4987d00cfb950f96e6f61f
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2026-03-01T00:07:51+01:00
Commit Message:
COMMON: Cleanup icon after 2 seconds in OSDMessageQueue
Changed paths:
common/osd_message_queue.cpp
common/osd_message_queue.h
diff --git a/common/osd_message_queue.cpp b/common/osd_message_queue.cpp
index 9e1dc8a5086..6174b847209 100644
--- a/common/osd_message_queue.cpp
+++ b/common/osd_message_queue.cpp
@@ -48,7 +48,7 @@ OSDMessageQueue::OSDQueueEntry::~OSDQueueEntry() {
}
}
-OSDMessageQueue::OSDMessageQueue() : _lastUpdate(0) {
+OSDMessageQueue::OSDMessageQueue() : _lastUpdate(0), _iconWasShown(false) {
}
OSDMessageQueue::~OSDMessageQueue() {
@@ -79,20 +79,30 @@ void OSDMessageQueue::addImage(const Graphics::Surface *surface) {
bool OSDMessageQueue::pollEvent(Common::Event &event) {
_mutex.lock();
+
+ uint t = g_system->getMillis(true);
+
if (!_messages.empty()) {
- uint t = g_system->getMillis(true);
if (t - _lastUpdate >= kMinimumDelay) {
_lastUpdate = t;
OSDQueueEntry *entry = _messages.pop();
- if (entry->_image)
+ if (entry->_image) {
g_system->displayActivityIconOnOSD(entry->_image);
- else if (entry->_text)
+ _iconWasShown = true;
+ } else if (entry->_text) {
g_system->displayMessageOnOSD(*(entry->_text));
+ }
delete entry;
}
+ } else if (t - _lastUpdate >= kIconCleanupDelay) {
+ // If there are no messages, but the last message was an icon that was shown, clear it after a delay
+ if (_iconWasShown) {
+ g_system->displayActivityIconOnOSD(nullptr);
+ _iconWasShown = false;
+ }
}
_mutex.unlock();
diff --git a/common/osd_message_queue.h b/common/osd_message_queue.h
index 27d205f3be8..b24cb136da6 100644
--- a/common/osd_message_queue.h
+++ b/common/osd_message_queue.h
@@ -54,7 +54,8 @@ public:
void registerEventSource();
enum {
- kMinimumDelay = 1000 /** < Minimum delay between two OSD messages (in milliseconds) */
+ kMinimumDelay = 1000, /** < Minimum delay between two OSD messages (in milliseconds) */
+ kIconCleanupDelay = 2 * 1000, /** < Delay after which an OSD icon is removed if it hasn't been shown (in milliseconds) */
};
/**
@@ -91,6 +92,7 @@ private:
Mutex _mutex;
Queue<OSDQueueEntry *> _messages;
uint32 _lastUpdate;
+ bool _iconWasShown;
};
/** @} */
Commit: 179c9706a6a6c35f434c28af8eb08a8b0d8b273f
https://github.com/scummvm/scummvm/commit/179c9706a6a6c35f434c28af8eb08a8b0d8b273f
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2026-03-01T00:07:51+01:00
Commit Message:
NEWS: Mention MT-32 display
Changed paths:
NEWS.md
diff --git a/NEWS.md b/NEWS.md
index d0c69d42e14..d1d5f076656 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -8,6 +8,7 @@ For a more comprehensive changelog of the latest experimental code, see:
- Implemented multiselect in the GUI launcher games list.
- Updated ImGui library to 1.92.6-docker.
- Fixed Smart Search in the Icons Grid view in the launcher.
+ - Simulate MT-32 display for on-screen messages.
Bagel:
- Fix Enter/Escape keys in The Guessing Game guess dialog.
Commit: 639e3c7a1371510de698c138313d59e9ef411e05
https://github.com/scummvm/scummvm/commit/639e3c7a1371510de698c138313d59e9ef411e05
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2026-03-01T00:07:51+01:00
Commit Message:
DIRECTOR: DT: Fix warning
Changed paths:
engines/director/debugger/dt-score.cpp
diff --git a/engines/director/debugger/dt-score.cpp b/engines/director/debugger/dt-score.cpp
index be2aae69962..0f8e951bb5c 100644
--- a/engines/director/debugger/dt-score.cpp
+++ b/engines/director/debugger/dt-score.cpp
@@ -932,7 +932,7 @@ static void drawLabelBar(ImDrawList *dl, ImVec2 pos, Score *score) {
dl->AddText(ImVec2(textX, textY), U32(_state->_colors._type_color), labelName->c_str());
float px = pos.x + f * cfg._cellWidth;
- ImGui::SetCursorScreenPos(ImVec2(pos.x + f * cfg._cellWidth, y));
+ ImGui::SetCursorScreenPos(ImVec2(px, y));
ImGui::InvisibleButton(Common::String::format("##labelcell_%d", f).c_str(), ImVec2(cfg._cellWidth, cfg._labelBarHeight));
if (ImGui::IsItemHovered())
More information about the Scummvm-git-logs
mailing list