7#include <qpa/qplatformwindow.h>
8#include <qpa/qplatformwindow_p.h>
9#include <QtCore/QObject>
10#include <QtCore/QPointer>
11#include <QtGui/QSurfaceFormat>
12#include <QtGui/QImage>
26 ,
public QNativeInterface::Private::QXcbWindow
31 NetWmStateAbove = 0x1,
32 NetWmStateBelow = 0x2,
33 NetWmStateFullScreen = 0x4,
34 NetWmStateMaximizedHorz = 0x8,
35 NetWmStateMaximizedVert = 0x10,
36 NetWmStateModal = 0x20,
37 NetWmStateStaysOnTop = 0x40,
38 NetWmStateDemandsAttention = 0x80,
39 NetWmStateHidden = 0x100
45 RecreationNotNeeded = 0,
46 WindowStaysOnTopHintChanged = 0x1,
47 WindowStaysOnBottomHintChanged = 0x2
61 WId
winId()
const override;
72 void raise()
override;
73 void lower()
override;
123 void updateNetWmUserTime(xcb_timestamp_t timestamp);
124 void updateWmTransientFor();
125 void registerWmTransientForChild(
QXcbWindow *);
127 WindowTypes wmWindowTypes()
const;
128 void setWmWindowType(WindowTypes
types, Qt::WindowFlags
flags);
130 void setWindowRole(
const QString &role)
override;
132 void setParentRelativeBackPixmap();
133 bool requestSystemTrayWindowDock();
134 uint visualId()
const override;
136 bool needsSync()
const;
138 void postSyncWindowRequest();
146 bool startSystemMoveResize(
const QPoint &
pos,
int edges);
147 void doStartSystemMoveResize(
const QPoint &globalPos,
int edges);
155 virtual void destroy();
164 void updateSyncRequestCounter();
168 virtual const xcb_visualtype_t *createVisual();
169 void setImageFormatForVisual(
const xcb_visualtype_t *visual);
174 void setNetWmState(
bool set, xcb_atom_t one, xcb_atom_t two = 0);
175 void setNetWmState(Qt::WindowFlags
flags);
176 void setNetWmState(Qt::WindowStates
state);
177 void setNetWmStateOnUnmappedWindow();
178 NetWmStates netWmStates();
180 void setMotifWmHints(Qt::WindowFlags
flags);
182 void setTransparentForMouseEvents(
bool transparent);
183 void updateDoesNotAcceptFocus(
bool doesNotAcceptFocus);
187 void handleXEmbedMessage(
const xcb_client_message_event_t *
event);
192 bool relayFocusToModalWindow()
const;
197 int detail, Qt::KeyboardModifiers
modifiers, xcb_timestamp_t timestamp,
201 int detail, Qt::KeyboardModifiers
modifiers, xcb_timestamp_t timestamp,
205 Qt::KeyboardModifiers
modifiers, xcb_timestamp_t timestamp,
214 xcb_window_t m_window = 0;
218 bool m_imageRgbSwap =
false;
221 xcb_sync_counter_t m_syncCounter = 0;
226 bool m_mapped =
false;
227 bool m_transparent =
false;
228 bool m_deferredActivation =
false;
229 bool m_embedded =
false;
230 bool m_alertState =
false;
231 bool m_minimized =
false;
232 bool m_trayIconWindow =
false;
233 bool m_ignorePressedWindowOnMouseLeave =
false;
234 xcb_window_t m_netWmUserTimeWindow = XCB_NONE;
238 mutable bool m_dirtyFrameMargins =
false;
246 xcb_visualid_t m_visualId = 0;
253 SyncAndConfigureReceived
258 int m_swapInterval = -1;
262 RecreationReasons m_recreationReasons = RecreationNotNeeded;
Type
This enum type defines the valid event types in Qt.
The QIcon class provides scalable icons in different modes and states.
Format
The following image formats are available in Qt.
@ Format_ARGB32_Premultiplied
void setParent(QObject *parent)
Makes the object a child of parent.
\inmodule QtCore\reentrant
\inmodule QtCore\reentrant
The QRegion class specifies a clip region for a painter.
\macro QT_RESTRICTED_CAST_FROM_ASCII
bool isForeignWindow() const override
QXcbForeignWindow(QWindow *window, WId nativeHandle)
virtual void handleConfigureNotifyEvent(const xcb_configure_notify_event_t *)
virtual void handleUnmapNotifyEvent(const xcb_unmap_notify_event_t *)
virtual void handleXIMouseEvent(xcb_ge_event_t *, Qt::MouseEventSource=Qt::MouseEventNotSynthesized)
virtual void handleButtonPressEvent(const xcb_button_press_event_t *)
virtual void handleEnterNotifyEvent(const xcb_enter_notify_event_t *)
virtual void handleMapNotifyEvent(const xcb_map_notify_event_t *)
virtual void handleClientMessageEvent(const xcb_client_message_event_t *)
virtual void handleXIEnterLeave(xcb_ge_event_t *)
virtual void handleMotionNotifyEvent(const xcb_motion_notify_event_t *)
virtual void handleLeaveNotifyEvent(const xcb_leave_notify_event_t *)
virtual void handleButtonReleaseEvent(const xcb_button_release_event_t *)
virtual void handleExposeEvent(const xcb_expose_event_t *)
virtual void handleFocusOutEvent(const xcb_focus_out_event_t *)
virtual void handleFocusInEvent(const xcb_focus_in_event_t *)
virtual void handlePropertyNotifyEvent(const xcb_property_notify_event_t *)
virtual bool handleNativeEvent(xcb_generic_event_t *)
virtual QXcbWindow * toWindow()
xcb_window_t xcb_window() const
QPoint lastPointerPosition() const
void clearSyncWindowRequest()
void setWindowType(WindowTypes windowTypes) override
QImage::Format imageFormat() const
void setSwapInterval(int swapInterval)
xcb_sync_int64_t m_syncValue
QList< QPointer< QXcbWindow > > m_wmTransientForChildren
bool imageNeedsRgbSwap() const
QPoint m_lastPointerPosition
QPoint m_lastPointerGlobalPosition
static bool isTrayIconWindow(QWindow *window)
bool isAlertState() const override
Reimplement this method return whether the window is in an alert state.
QPoint lastPointerGlobalPosition() const
virtual void resolveFormat(const QSurfaceFormat &format)
EGLImageKHR int int EGLuint64KHR * modifiers
Combined button and popup list for selecting options.
@ MouseEventNotSynthesized
#define Q_DECLARE_FLAGS(Flags, Enum)
GLenum GLuint GLint level
GLsizei GLenum GLenum * types
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLuint GLsizei const GLchar * message
GLint GLsizei GLsizei GLenum format
GLsizei GLsizei GLchar * source
static QString windowTitle(HWND hwnd)
QList< xcb_rectangle_t > qRegionToXcbRectangleList(const QRegion ®ion)
QFuture< QSet< QChar > > set
[10]