KWayland::Client::PlasmaWindowManagement
#include <plasmawindowmanagement.h>

Signals | |
void | activeWindowChanged () |
void | interfaceAboutToBeDestroyed () |
void | interfaceAboutToBeReleased () |
void | removed () |
void | showingDesktopChanged (bool) |
void | stackingOrderChanged () |
void | stackingOrderUuidsChanged () |
void | windowCreated (KWayland::Client::PlasmaWindow *window) |
Public Member Functions | |
PlasmaWindowManagement (QObject *parent=nullptr) | |
PlasmaWindow * | activeWindow () const |
PlasmaWindowModel * | createWindowModel () |
void | destroy () |
EventQueue * | eventQueue () |
void | hideDesktop () |
bool | isShowingDesktop () const |
bool | isValid () const |
operator org_kde_plasma_window_management * () | |
operator org_kde_plasma_window_management * () const | |
void | release () |
void | setEventQueue (EventQueue *queue) |
void | setShowingDesktop (bool show) |
void | setup (org_kde_plasma_window_management *shell) |
void | showDesktop () |
QVector< quint32 > | stackingOrder () const |
QVector< QByteArray > | stackingOrderUuids () const |
QList< PlasmaWindow * > | windows () const |
![]() | |
QObject (QObject *parent) | |
bool | blockSignals (bool block) |
const QObjectList & | children () 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< QByteArray > | dynamicPropertyNames () const const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegExp ®Exp, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, 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 QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () 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 | |
T | qFindChild (const QObject *obj, const QString &name) |
QList< T > | qFindChildren (const QObject *obj, const QRegExp ®Exp) |
QList< T > | qFindChildren (const QObject *obj, const QString &name) |
T | qobject_cast (const QObject *object) |
T | qobject_cast (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) |
QThread * | thread () const const |
Additional Inherited Members | |
![]() | |
objectName | |
![]() | |
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 *context, Functor functor, 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) |
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, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
![]() | |
typedef | QObjectList |
![]() | |
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 |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Detailed Description
Wrapper for the org_kde_plasma_window_management interface.
PlasmaWindowManagement is a privileged interface. A Wayland compositor is allowed to ignore any requests. The PlasmaWindowManagement allows to get information about the overall windowing system. It allows to see which windows are currently available and thus is the base to implement e.g. a task manager.
This class provides a convenient wrapper for the org_kde_plasma_window_management interface. It's main purpose is to create a PlasmaWindowManagementSurface.
To use this class one needs to interact with the Registry. There are two possible ways to create the Shell interface:
This creates the PlasmaWindowManagement and sets it up directly. As an alternative this can also be done in a more low level way:
The PlasmaWindowManagement can be used as a drop-in replacement for any org_kde_plasma_window_management pointer as it provides matching cast operators.
- See also
- Registry
- PlasmaWindowManagementSurface
Definition at line 61 of file plasmawindowmanagement.h.
Member Function Documentation
◆ activeWindow()
PlasmaWindow * KWayland::Client::PlasmaWindowManagement::activeWindow | ( | ) | const |
- Returns
- The currently active PlasmaWindow, the PlasmaWindow which returns
true
in PlasmaWindow::isActive ornullptr
in case there is no active window.
Definition at line 402 of file plasmawindowmanagement.cpp.
◆ activeWindowChanged
|
signal |
The active window changed.
- See also
- activeWindow
◆ createWindowModel()
PlasmaWindowModel * KWayland::Client::PlasmaWindowManagement::createWindowModel | ( | ) |
Factory method to create a PlasmaWindowModel.
- Returns
- a new created PlasmaWindowModel
Definition at line 407 of file plasmawindowmanagement.cpp.
◆ destroy()
void KWayland::Client::PlasmaWindowManagement::destroy | ( | ) |
Destroys the data held by this PlasmaWindowManagement.
This method is supposed to be used when the connection to the Wayland server goes away. Once the connection becomes invalid, 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 org_kde_plasma_window_management interface once there is a new connection available.
This method is automatically invoked when the Registry which created this PlasmaWindowManagement gets destroyed.
Right before the data is destroyed, the signal interfaceAboutToBeDestroyed is emitted.
- See also
- release
- interfaceAboutToBeDestroyed
Definition at line 327 of file plasmawindowmanagement.cpp.
◆ eventQueue()
EventQueue * KWayland::Client::PlasmaWindowManagement::eventQueue | ( | ) |
- Returns
- The event queue to use for creating a Surface.
Definition at line 355 of file plasmawindowmanagement.cpp.
◆ hideDesktop()
void KWayland::Client::PlasmaWindowManagement::hideDesktop | ( | ) |
Same as calling setShowingDesktop with false
.
- See also
- setShowingDesktop
Definition at line 375 of file plasmawindowmanagement.cpp.
◆ interfaceAboutToBeDestroyed
|
signal |
This signal is emitted right before the data is destroyed.
◆ interfaceAboutToBeReleased
|
signal |
This signal is emitted right before the interface is released.
◆ isShowingDesktop()
bool KWayland::Client::PlasmaWindowManagement::isShowingDesktop | ( | ) | const |
Whether the system is currently showing the desktop.
This means that the system focuses on the desktop and hides other windows.
Definition at line 392 of file plasmawindowmanagement.cpp.
◆ isValid()
bool KWayland::Client::PlasmaWindowManagement::isValid | ( | ) | const |
- Returns
true
if managing a org_kde_plasma_window_management.
Definition at line 360 of file plasmawindowmanagement.cpp.
◆ release()
void KWayland::Client::PlasmaWindowManagement::release | ( | ) |
Releases the org_kde_plasma_window_management interface.
After the interface has been released the PlasmaWindowManagement instance is no longer valid and can be setup with another org_kde_plasma_window_management interface.
Right before the interface is released the signal interfaceAboutToBeReleased is emitted.
- See also
- interfaceAboutToBeReleased
Definition at line 336 of file plasmawindowmanagement.cpp.
◆ removed
|
signal |
The corresponding global for this interface on the Registry got removed.
This signal gets only emitted if the Compositor got created by Registry::createPlasmaWindowManagement
- Since
- 5.5
◆ setEventQueue()
void KWayland::Client::PlasmaWindowManagement::setEventQueue | ( | EventQueue * | queue | ) |
Sets the queue
to use for creating a Surface.
Definition at line 350 of file plasmawindowmanagement.cpp.
◆ setShowingDesktop()
void KWayland::Client::PlasmaWindowManagement::setShowingDesktop | ( | bool | show | ) |
Requests to change the showing desktop state to show
.
- See also
- isShowingDesktop
- showDesktop
- hideDesktop
Definition at line 385 of file plasmawindowmanagement.cpp.
◆ setup()
void KWayland::Client::PlasmaWindowManagement::setup | ( | org_kde_plasma_window_management * | shell | ) |
Setup this Shell to manage the shell
.
When using Registry::createShell there is no need to call this method.
Definition at line 345 of file plasmawindowmanagement.cpp.
◆ showDesktop()
void KWayland::Client::PlasmaWindowManagement::showDesktop | ( | ) |
Same as calling setShowingDesktop with true
.
- See also
- setShowingDesktop
Definition at line 380 of file plasmawindowmanagement.cpp.
◆ showingDesktopChanged
|
signal |
The showing desktop state changed.
- See also
- isShowingDesktop
◆ stackingOrder()
QVector< quint32 > KWayland::Client::PlasmaWindowManagement::stackingOrder | ( | ) | const |
- Returns
- windows stacking order
- Deprecated:
- Since 5.73, use stackingOrderUuids()
Definition at line 413 of file plasmawindowmanagement.cpp.
◆ stackingOrderChanged
|
signal |
◆ stackingOrderUuids()
QVector< QByteArray > KWayland::Client::PlasmaWindowManagement::stackingOrderUuids | ( | ) | const |
◆ stackingOrderUuidsChanged
|
signal |
The stacking order uuids changed.
- Since
- 5.73
◆ windowCreated
|
signal |
A new window
got created.
- See also
- windows
◆ windows()
QList< PlasmaWindow * > KWayland::Client::PlasmaWindowManagement::windows | ( | ) | const |
- Returns
- All windows currently known to the PlasmaWindowManagement
- See also
- windowCreated
Definition at line 397 of file plasmawindowmanagement.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2023 The KDE developers.
Generated on Wed Sep 27 2023 04:08:17 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.