5#ifndef QWAYLANDXDGSHELL_H
6#define QWAYLANDXDGSHELL_H
19#include "qwayland-xdg-shell.h"
24#include <QtWaylandClient/qtwaylandclientglobal.h>
25#include <QtWaylandClient/private/qwaylandshellsurface_p.h>
26#include <QtWaylandClient/private/qwaylandwindow_p.h>
28#include <QtCore/QSize>
29#include <QtGui/QRegion>
38class QWaylandInputDevice;
40class QWaylandXdgExportedV2;
41class QWaylandXdgExporterV2;
54 void setAppId(
const QString &appId)
override;
55 void setWindowFlags(Qt::WindowFlags
flags)
override;
57 bool isExposed()
const override;
58 bool handleExpose(
const QRegion &)
override;
60 void applyConfigure()
override;
61 bool wantsDecorations()
const override;
62 void propagateSizeHints()
override;
63 void setWindowGeometry(
const QRect &
rect)
override;
64 bool requestActivate()
override;
65 void setXdgActivationToken(
const QString &
token)
override;
66 void requestXdgActivationToken(
quint32 serial)
override;
67 void setAlertState(
bool enabled)
override;
69 QString externWindowHandle()
override;
73 void *nativeResource(
const QByteArray &resource);
75 std::any surfaceRole()
const override;
78 void requestWindowStates(Qt::WindowStates
states)
override;
79 void xdg_surface_configure(uint32_t serial)
override;
82 class Toplevel:
public QtWayland::xdg_toplevel
88 void applyConfigure();
89 bool wantsDecorations();
91 void xdg_toplevel_configure(int32_t
width, int32_t
height, wl_array *
states)
override;
92 void xdg_toplevel_close()
override;
93 void xdg_toplevel_configure_bounds(int32_t
width, int32_t
height)
override;
95 void requestWindowFlags(Qt::WindowFlags
flags);
96 void requestWindowStates(Qt::WindowStates
states);
98 static resize_edge convertToResizeEdges(Qt::Edges edges);
101 QSize bounds = {0, 0};
104 } m_pending, m_applied;
105 QWaylandWindow::ToplevelWindowTilingStates m_toplevelStates = QWaylandWindow::WindowNoState;
113 class Popup :
public QtWayland::xdg_popup {
118 void applyConfigure();
119 void resetConfiguration();
121 void grab(QWaylandInputDevice *seat,
uint serial);
122 void xdg_popup_configure(int32_t
x, int32_t
y, int32_t
width, int32_t
height)
override;
123 void xdg_popup_popup_done()
override;
127 QWaylandWindow *m_parent =
nullptr;
128 bool m_grabbing =
false;
130 QRect m_pendingGeometry;
134 void setPopup(QWaylandWindow *
parent);
135 void setGrabPopup(QWaylandWindow *
parent, QWaylandInputDevice *
device,
int serial);
138 QWaylandWindow *m_window =
nullptr;
139 Toplevel *m_toplevel =
nullptr;
140 Popup *m_popup =
nullptr;
141 bool m_configured =
false;
143 uint m_pendingConfigureSerial = 0;
144 uint m_appliedConfigureSerial = 0;
147 bool m_alertState =
false;
166 static void handleRegistryGlobal(
void *
data, ::wl_registry *registry,
uint id,
170 QtWayland::xdg_wm_base *m_xdgWmBase =
nullptr;
174 QWaylandXdgSurface::Popup *m_topmostGrabbingPopup =
nullptr;
IOBluetoothDevice * device
\inmodule QtCore\reentrant
The QRegion class specifies a clip region for a painter.
\macro QT_RESTRICTED_CAST_FROM_ASCII
\qmltype XdgShell \instantiates QWaylandXdgShell \inqmlmodule QtWayland.Compositor....
\qmltype XdgSurface \instantiates QWaylandXdgSurface \inqmlmodule QtWayland.Compositor....
QWaylandXdgDecorationManagerV1 * decorationManager()
QWaylandDisplay * display() const
QWaylandXdgSurface * getXdgSurface(QWaylandWindow *window)
QWaylandXdgActivationV1 * activation() const
QWaylandXdgExporterV2 * exporter() const
bool isAlertState() const override
bool handlesActiveState() const
struct wl_display * display
Combined button and popup list for selecting options.
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char * interface
GLint GLint GLint GLint GLint x
[0]
GLint GLsizei GLsizei height
GLenum GLuint GLintptr GLsizeiptr size
[1]
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent