diff options
Diffstat (limited to 'src/gui/kernel/qwindow_p.h')
-rw-r--r-- | src/gui/kernel/qwindow_p.h | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/gui/kernel/qwindow_p.h b/src/gui/kernel/qwindow_p.h index cf6a6934eb..f6c8aee9f6 100644 --- a/src/gui/kernel/qwindow_p.h +++ b/src/gui/kernel/qwindow_p.h @@ -23,7 +23,10 @@ #include <QtCore/private/qobject_p.h> #include <QtCore/qelapsedtimer.h> #include <QtCore/qxpfunctional.h> -#include <QtGui/QIcon> +#include <QtGui/qicon.h> +#include <QtGui/qpalette.h> + +#include <QtCore/qpointer.h> QT_BEGIN_NAMESPACE @@ -41,7 +44,7 @@ public: QWindowPrivate(); ~QWindowPrivate() override; - void init(QScreen *targetScreen = nullptr); + void init(QWindow *parent, QScreen *targetScreen = nullptr); #ifndef QT_NO_CURSOR void setCursor(const QCursor *c = nullptr); @@ -53,6 +56,7 @@ public: QWindow *topLevelWindow(QWindow::AncestorMode mode = QWindow::IncludeTransients) const; virtual QWindow *eventReceiver() { Q_Q(QWindow); return q; } + virtual QPalette windowPalette() const { return QPalette(); } virtual void setVisible(bool visible); void updateVisibility(); @@ -62,7 +66,7 @@ public: void updateSiblingPosition(SiblingPosition); bool windowRecreationRequired(QScreen *newScreen) const; - void create(bool recursive, WId nativeHandle = 0); + void create(bool recursive); void destroy(); void setTopLevelScreen(QScreen *newScreen, bool recreate); void connectToScreen(QScreen *topLevelScreen); @@ -72,6 +76,16 @@ public: void setTransientParent(QWindow *parent); virtual void clearFocusObject(); + + enum class FocusTarget { + First, + Last, + Current, + Next, + Prev + }; + virtual void setFocusToTarget(QWindowPrivate::FocusTarget) {} + virtual QRectF closestAcceptableGeometry(const QRectF &rect) const; void setMinOrMaxSize(QSize *oldSizeMember, const QSize &size, @@ -87,6 +101,8 @@ public: void setAutomaticPositionAndResizeEnabled(bool a) { positionAutomatic = resizeAutomatic = a; } + bool updateDevicePixelRatio(); + static QWindowPrivate *get(QWindow *window) { return window->d_func(); } static Qt::WindowState effectiveState(Qt::WindowStates); @@ -104,6 +120,7 @@ public: QString windowFilePath; QIcon windowIcon; QRect geometry; + qreal devicePixelRatio = 1.0; Qt::WindowStates windowState = Qt::WindowNoState; QWindow::Visibility visibility = QWindow::Hidden; bool resizeEventPending = true; @@ -138,7 +155,6 @@ public: bool hasCursor = false; #endif - bool compositing = false; QElapsedTimer lastComposeTime; #if QT_CONFIG(vulkan) |