4#ifndef QQUICKDELIVERYAGENT_P_P_H
5#define QQUICKDELIVERYAGENT_P_P_H
18#include <QtQuick/private/qquickdeliveryagent_p.h>
19#include <QtGui/qevent.h>
20#include <QtCore/qstack.h>
22#include <private/qevent_p.h>
23#include <private/qpointingdevice_p.h>
24#include <private/qobject_p.h>
57 DontChangeFocusProperty = 0x01,
58 DontChangeSubFocusItem = 0x02
65 void clearFocusObject();
66 void updateFocusItemTransform();
69#if QT_CONFIG(quick_draganddrop)
82#if QT_CONFIG(wheelevent)
83 uint lastWheelEventAccepted = 0;
86 bool allowChildEventFiltering =
true;
87 bool frameSynchronousHoverEnabled =
true;
88 bool hoveredLeafItemFound =
false;
90 bool isSubsceneAgent =
false;
97 int pointerEventRecursionGuard = 0;
99 int touchMouseId = -1;
108 void cancelTouchMouseSynthesis();
110 bool checkIfDoubleTapped(
ulong newPressEventTimestamp,
QPoint newPressPos);
118 void removeGrabber(
QQuickItem *grabber,
bool mouse =
true,
bool touch =
true,
bool cancel =
false);
132 void deliverDelayedTouchEvent();
147 static bool isEventFromMouseOrTouchpad(
const QPointerEvent *ev);
156 bool deliverPressOrReleaseEvent(
QPointerEvent *,
bool handlersOnly =
false);
161 bool checkMouseButtons,
bool checkAcceptsTouch)
const;
170 bool clearHover(
ulong timestamp = 0);
172#if QT_CONFIG(quick_draganddrop)
176 QObject *formerTarget =
nullptr);
183 static bool dragOverThreshold(
QVector2D delta);
IOBluetoothDevice * device
The QEventPoint class provides information about a point in a QPointerEvent.
Type
This enum type defines the valid event types in Qt.
The QKeyEvent class describes a key event.
\inmodule QtCore\reentrant
\inmodule QtCore\reentrant
A base class for pointer events.
The QPointingDevice class describes a device from which mouse, touch or tablet events originate.
GrabTransition
This enum represents a transition of exclusive or passive grab from one object (possibly nullptr) to ...
QFlatMap< QPointer< QQuickItem >, uint > hoverItems
static bool subsceneAgentsExist
QStack< QPointerEvent * > eventsInDelivery
QList< const QPointingDevice * > knownPointingDevices
QVector< QQuickItem * > hasFiltered
std::unique_ptr< QMutableTouchEvent > delayedTouch
QPointF lastMousePosition
static QQuickDeliveryAgent * currentEventDeliveryAgent
bool isDeliveringTouchAsMouse() const
QPoint touchMousePressPos
QVector< QQuickItem * > skipDelivery
The QQuickItem class provides the most basic of all visual items in \l {Qt Quick}.
\qmltype Window \instantiates QQuickWindow \inqmlmodule QtQuick
The QTouchEvent class contains parameters that describe a touch event.
The QVector2D class represents a vector or vertex in 2D space.
EGLImageKHR int int EGLuint64KHR * modifiers
Combined button and popup list for selecting options.
#define Q_DECLARE_FLAGS(Flags, Enum)
#define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags)
static bool isMouseEvent(NSEvent *ev)
const QQuickItem * rootItem(const I &item)
rect sceneTransform().map(QPointF(0