summaryrefslogtreecommitdiffstats
path: root/src/input/frontend/qmouseevent.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/input/frontend/qmouseevent.cpp')
-rw-r--r--src/input/frontend/qmouseevent.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/input/frontend/qmouseevent.cpp b/src/input/frontend/qmouseevent.cpp
index 2033eed36..2b06c824d 100644
--- a/src/input/frontend/qmouseevent.cpp
+++ b/src/input/frontend/qmouseevent.cpp
@@ -49,7 +49,7 @@ template<typename EventClass, typename QtEventClass>
typename EventClass::Modifiers modifiersForEvent(const QtEventClass &event)
{
const Qt::KeyboardModifiers eventModifiers = event.modifiers();
- typename EventClass::Modifiers modifiers = EventClass::NoModifier;
+ int modifiers = EventClass::NoModifier;
if (eventModifiers & Qt::ShiftModifier)
modifiers |= EventClass::ShiftModifier;
@@ -66,7 +66,9 @@ typename EventClass::Modifiers modifiersForEvent(const QtEventClass &event)
if (eventModifiers & Qt::KeypadModifier)
modifiers |= EventClass::KeypadModifier;
- return modifiers;
+ // Abuse the int used to store an enum to store multiple
+ // modifiers into one
+ return static_cast<typename EventClass::Modifiers>(modifiers);
}
} // anonymous