[Scummvm-git-logs] scummvm master -> 44f19d74be7f37ab148aa533483a738eeed15a90
sev-
noreply at scummvm.org
Tue Jun 28 21:36:32 UTC 2022
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
44f19d74be COMMON: MACGUI: Fix transparency artifacts in subMenu
Commit: 44f19d74be7f37ab148aa533483a738eeed15a90
https://github.com/scummvm/scummvm/commit/44f19d74be7f37ab148aa533483a738eeed15a90
Author: Avijeet (am388488 at gmail.com)
Date: 2022-06-28T23:36:29+02:00
Commit Message:
COMMON: MACGUI: Fix transparency artifacts in subMenu
Changed paths:
graphics/macgui/macmenu.cpp
graphics/macgui/macmenu.h
diff --git a/graphics/macgui/macmenu.cpp b/graphics/macgui/macmenu.cpp
index ea9c3ba8264..3a7b258e3c2 100644
--- a/graphics/macgui/macmenu.cpp
+++ b/graphics/macgui/macmenu.cpp
@@ -1000,7 +1000,7 @@ bool MacMenu::draw(ManagedSurface *g, bool forceRedraw) {
for (uint i = 0; i < _menustack.size(); i++) {
- renderSubmenu(_menustack[i], (i == _menustack.size() - 1));
+ renderSubmenu(g, _menustack[i], (i == _menustack.size() - 1));
}
if (g)
@@ -1012,7 +1012,7 @@ bool MacMenu::draw(ManagedSurface *g, bool forceRedraw) {
return true;
}
-void MacMenu::renderSubmenu(MacMenuSubMenu *menu, bool recursive) {
+void MacMenu::renderSubmenu(ManagedSurface *g, MacMenuSubMenu *menu, bool recursive) {
Common::Rect *r = &menu->bbox;
if (r->width() == 0 || r->height() == 0)
@@ -1123,7 +1123,7 @@ void MacMenu::renderSubmenu(MacMenuSubMenu *menu, bool recursive) {
}
if (recursive && menu->highlight != -1 && menu->items[menu->highlight]->submenu != nullptr)
- renderSubmenu(menu->items[menu->highlight]->submenu, false);
+ renderSubmenu(g, menu->items[menu->highlight]->submenu, false);
if (_wm->_mode & kWMModalMenuMode) {
// TODO: Instead of cropping, reposition the submenu
@@ -1135,7 +1135,8 @@ void MacMenu::renderSubmenu(MacMenuSubMenu *menu, bool recursive) {
if (r->top + h >= _screen.h)
h = _screen.h - 1 - r->top;
- g_system->copyRectToScreen(_screen.getBasePtr(r->left, r->top), _screen.pitch, r->left, r->top, w, h);
+ g->transBlitFrom(_screen, _wm->_colorGreen);
+ g_system->copyRectToScreen(g->getBasePtr(r->left, r->top), g->pitch, r->left, r->top, w, h);
}
}
diff --git a/graphics/macgui/macmenu.h b/graphics/macgui/macmenu.h
index 0205c019110..83ca1a433a8 100644
--- a/graphics/macgui/macmenu.h
+++ b/graphics/macgui/macmenu.h
@@ -136,7 +136,7 @@ private:
int calcSubMenuWidth(MacMenuSubMenu *menu);
void calcSubMenuBounds(MacMenuSubMenu *menu, int x, int y);
- void renderSubmenu(MacMenuSubMenu *menu, bool recursive = true);
+ void renderSubmenu(ManagedSurface *g, MacMenuSubMenu *menu, bool recursive = true);
bool keyEvent(Common::Event &event);
bool mouseClick(int x, int y);
More information about the Scummvm-git-logs
mailing list