aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/gui_v2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/kyra/gui_v2.cpp')
-rw-r--r--engines/kyra/gui_v2.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/engines/kyra/gui_v2.cpp b/engines/kyra/gui_v2.cpp
index 6b472a66ad..7afed9eb04 100644
--- a/engines/kyra/gui_v2.cpp
+++ b/engines/kyra/gui_v2.cpp
@@ -376,10 +376,8 @@ int KyraEngine_v2::processButtonList(Button *buttonList, uint16 inputFlag) {
// but did some other magic, which looks like it depends on how the handle
// key input... so we just enable 0x1000 and 0x4000 here to allow
// all GUI buttons to work (for now at least...)
- if (inFlags == 199 || inFlags == 198) {
+ if (inFlags == 199 || inFlags == 198)
temp = 0x1000 | 0x4000;
- removeInputTop();
- }
//if (inputFlag & 0x800)
// temp <<= 2;
@@ -555,9 +553,12 @@ int KyraEngine_v2::processButtonList(Button *buttonList, uint16 inputFlag) {
buttonList->flags2 &= 0xFF;
buttonList->flags2 |= flags;
- if (buttonList->buttonCallback)
+ if (buttonList->buttonCallback) {
+ removeInputTop();
if ((this->*buttonList->buttonCallback)(buttonList))
break;
+ }
+
if (buttonList->flags & 0x20)
break;
}