diff options
Diffstat (limited to 'src/input/frontend/qmouseevent.cpp')
-rw-r--r-- | src/input/frontend/qmouseevent.cpp | 6 |
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 |