diff --git a/engines/wage/gui.cpp b/engines/wage/gui.cpp index 0771cb0d315d..09468f571cf4 100644 --- a/engines/wage/gui.cpp +++ b/engines/wage/gui.cpp @@ -596,8 +596,12 @@ void Gui::mouseMove(int x, int y) { Designed *Gui::getClickTarget(int x, int y) { if (_menu->_menuActivated) { - if (_menu->mouseRelease(x, y)) + if (_menu->mouseRelease(x, y)) { + _sceneDirty = true; + _consoleDirty = true; + _bordersDirty = true; _menuDirty = true; + } return NULL; } diff --git a/engines/wage/menu.cpp b/engines/wage/menu.cpp index f775a4d64ce7..fe5de5a5a435 100644 --- a/engines/wage/menu.cpp +++ b/engines/wage/menu.cpp @@ -211,6 +211,9 @@ bool Menu::mouseClick(int x, int y) { if (_bbox.contains(x, y)) { for (int i = 0; i < _items.size(); i++) if (_items[i]->bbox.contains(x, y)) { + if (_activeItem == i) + return false; + _activeItem = i; _activeSubItem = -1; _menuActivated = true;