KWayland::Client::LockedPointer

KWayland::Client::LockedPointer Class Reference

#include <pointerconstraints.h>

Inheritance diagram for KWayland::Client::LockedPointer:

Signals

void locked ()
 
void unlocked ()
 

Public Member Functions

void destroy ()
 
bool isValid () const
 
 operator zwp_locked_pointer_v1 * ()
 
 operator zwp_locked_pointer_v1 * () const
 
void release ()
 
void setCursorPositionHint (const QPointF &surfaceLocal)
 
void setRegion (Region *region)
 
void setup (zwp_locked_pointer_v1 *lockedpointer)
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo ()
 
void dumpObjectInfo () const const
 
void dumpObjectTree ()
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
QThreadthread () const const
 

Additional Inherited Members

- Properties inherited from QObject
 objectName
 
- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 

Detailed Description

Wrapper for the zwp_locked_pointer_v1 interface.

The LockedPointer represents a locked pointer state.

While the lock of this object is active, the Pointer objects of the associated seat will not emit any Pointer::motion events.

This object will send the signal locked when the lock is activated. Whenever the lock is activated, it is guaranteed that the locked surface will already have received pointer focus and that the pointer will be within the region passed to the request creating this object.

To unlock the pointer, delete the object.

If the compositor decides to unlock the pointer the unlocked signal is emitted.

When unlocking, the compositor may warp the cursor position to the set cursor position hint. If it does, it will not result in any relative motion events emitted via RelativePointer::relativeMotion.

If the Surface the lock was requested on is destroyed and the lock is not yet activated, the LockedPointer object is now defunct and must be deleted.

See also
PointerConstraints::lockedPointer
Since
5.29

Definition at line 247 of file pointerconstraints.h.

Member Function Documentation

void KWayland::Client::LockedPointer::destroy ( )

Destroys the data held by this LockedPointer.

This method is supposed to be used when the connection to the Wayland server goes away. If the connection is not valid anymore, it's not possible to call release anymore as that calls into the Wayland connection and the call would fail. This method cleans up the data, so that the instance can be deleted or set up to a new zwp_locked_pointer_v1 interface once there is a new connection available.

It is suggested to connect this method to ConnectionThread::connectionDied:

See also
release

Definition at line 215 of file pointerconstraints.cpp.

bool KWayland::Client::LockedPointer::isValid ( ) const
Returns
true if managing a zwp_locked_pointer_v1.

Definition at line 228 of file pointerconstraints.cpp.

void KWayland::Client::LockedPointer::locked ( )
signal

Notification that the pointer lock of the seat's pointer is activated.

See also
unlocked
void KWayland::Client::LockedPointer::release ( )

Releases the zwp_locked_pointer_v1 interface.

After the interface has been released the LockedPointer instance is no longer valid and can be setup with another zwp_locked_pointer_v1 interface.

Definition at line 210 of file pointerconstraints.cpp.

void KWayland::Client::LockedPointer::setCursorPositionHint ( const QPointF surfaceLocal)

Set the cursor position hint relative to the top left corner of the Surface.

If the client is drawing its own cursor, it should update the position hint to the position of its own cursor. A compositor may use this information to warp the pointer upon unlock in order to avoid pointer jumps.

The cursor position hint is double buffered. The new hint will only take effect when the associated surface gets it pending state applied. See Surface::commit for details.

Parameters
surfaceLocalThe new position hint in surface local coordinates
See also
Surface::commit

Definition at line 233 of file pointerconstraints.cpp.

void KWayland::Client::LockedPointer::setRegion ( Region region)

Set a new region used to lock the pointer.

The new lock region is double-buffered. The new lock region will only take effect when the associated Surface gets its pending state applied. See Surface::commit for details.

Parameters
regionThe new lock region.
See also
Surface::commit
PointerConstraints::lockPointer

Definition at line 239 of file pointerconstraints.cpp.

void KWayland::Client::LockedPointer::setup ( zwp_locked_pointer_v1 *  lockedpointer)

Setup this LockedPointer to manage the lockedpointer.

When using PointerConstraints::createLockedPointer there is no need to call this method.

Definition at line 205 of file pointerconstraints.cpp.

void KWayland::Client::LockedPointer::unlocked ( )
signal

Notification that the pointer lock of the seat's pointer is no longer active.

If this is a oneshot pointer lock (see wp_pointer_constraints.lifetime) this object is now defunct and should be destroyed. If this is a persistent pointer lock (see wp_pointer_constraints.lifetime) this pointer lock may again reactivate in the future.

See also
locked

The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Fri Jul 10 2020 22:48:36 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.