aboutsummaryrefslogtreecommitdiff
path: root/engines/draci/mouse.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/draci/mouse.cpp')
-rw-r--r--engines/draci/mouse.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/draci/mouse.cpp b/engines/draci/mouse.cpp
index f5eb2bbf4d..69943faa3c 100644
--- a/engines/draci/mouse.cpp
+++ b/engines/draci/mouse.cpp
@@ -34,6 +34,7 @@ Mouse::Mouse(DraciEngine *vm) {
_y = 0;
_lButton = false;
_rButton = false;
+ _modifierState = 0;
_cursorType = kNormalCursor;
_vm = vm;
}
@@ -41,8 +42,13 @@ Mouse::Mouse(DraciEngine *vm) {
void Mouse::handleEvent(Common::Event event) {
switch (event.type) {
case Common::EVENT_LBUTTONDOWN:
- debugC(6, kDraciGeneralDebugLevel, "Left button down (x: %u y: %u)", _x, _y);
- _lButton = true;
+ if (!(_modifierState & 3)) {
+ debugC(6, kDraciGeneralDebugLevel, "Left button down (x: %u y: %u)", _x, _y);
+ _lButton = true;
+ } else { // any Ctrl pressed
+ debugC(6, kDraciGeneralDebugLevel, "Ctrl-Left button down (x: %u y: %u)", _x, _y);
+ _rButton = true;
+ }
break;
case Common::EVENT_LBUTTONUP: