Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
TriggerParser.h File Reference
#include <phosphorcompositor_export.h>
#include <QDBusArgument>
#include <QVariant>
#include <QVariantList>
#include <QVariantMap>
#include <QVector>
#include <Qt>

Go to the source code of this file.

Classes

struct  PhosphorCompositor::ParsedTrigger
 Pre-parsed activation trigger (avoids QVariant unboxing in hot path) More...
 

Namespaces

namespace  PhosphorCompositor
 
namespace  PhosphorCompositor::TriggerParser
 Compositor-agnostic trigger parsing and modifier checking.
 

Functions

bool PhosphorCompositor::TriggerParser::checkModifier (int modifierSetting, Qt::KeyboardModifiers mods)
 Map DragModifier enum value to Qt modifier flags.
 
Qt::KeyboardModifiers PhosphorCompositor::TriggerParser::modifierMaskFor (int modifierSetting)
 The Qt modifier mask a DragModifier enumerator stands for.
 
bool PhosphorCompositor::TriggerParser::exactModifierMatch (int modifierSetting, Qt::KeyboardModifiers mods)
 Whether mods is EXACTLY the combination modifierSetting names.
 
bool PhosphorCompositor::TriggerParser::anyTriggerHeldExact (const QVector< ParsedTrigger > &triggers, Qt::KeyboardModifiers mods, Qt::MouseButtons mouseButtons)
 Whether any trigger matches the current state exactly on MODIFIERS.
 
bool PhosphorCompositor::TriggerParser::anyTriggerHeld (const QVector< ParsedTrigger > &triggers, Qt::KeyboardModifiers mods, Qt::MouseButtons mouseButtons)
 Check if any parsed trigger is currently held.
 
PHOSPHORCOMPOSITOR_EXPORT QVector< ParsedTriggerPhosphorCompositor::TriggerParser::parseTriggers (const QVariant &triggerVariant, const QString &modifierFieldName, const QString &mouseButtonFieldName)
 Parse trigger list from D-Bus QVariantList (handles QDBusArgument wrapping)