summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/windows
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2020-07-24 14:53:38 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2020-07-24 17:26:51 +0200
commitff97e083ed4dd233f499f72da4ed83e3a7f2b380 (patch)
treed586d48f4304b3974bf938a63b9a2069d4abd0e8 /src/plugins/platforms/windows
parentc692f41ae51d3f2296d06178b98fe73476a51bc5 (diff)
Windows QPA: Move window properties to the new interfaces
Affects the custom margin used by QWizard. Task-number: QTBUG-83252 Change-Id: Iffda043f106282f682e119ec955fa2b2eb0f259e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/plugins/platforms/windows')
-rw-r--r--src/plugins/platforms/windows/qwindowsnativeinterface.cpp31
-rw-r--r--src/plugins/platforms/windows/qwindowsnativeinterface.h5
-rw-r--r--src/plugins/platforms/windows/qwindowswindow.cpp10
-rw-r--r--src/plugins/platforms/windows/qwindowswindow.h7
4 files changed, 15 insertions, 38 deletions
diff --git a/src/plugins/platforms/windows/qwindowsnativeinterface.cpp b/src/plugins/platforms/windows/qwindowsnativeinterface.cpp
index a62ce1323f..103db19a69 100644
--- a/src/plugins/platforms/windows/qwindowsnativeinterface.cpp
+++ b/src/plugins/platforms/windows/qwindowsnativeinterface.cpp
@@ -144,37 +144,6 @@ void *QWindowsNativeInterface::nativeResourceForCursor(const QByteArray &resourc
}
#endif // !QT_NO_CURSOR
-static const char customMarginPropertyC[] = "WindowsCustomMargins";
-
-QVariant QWindowsNativeInterface::windowProperty(QPlatformWindow *window, const QString &name) const
-{
- auto *platformWindow = static_cast<QWindowsWindow *>(window);
- if (name == QLatin1String(customMarginPropertyC))
- return QVariant::fromValue(platformWindow->customMargins());
- return QVariant();
-}
-
-QVariant QWindowsNativeInterface::windowProperty(QPlatformWindow *window, const QString &name, const QVariant &defaultValue) const
-{
- const QVariant result = windowProperty(window, name);
- return result.isValid() ? result : defaultValue;
-}
-
-void QWindowsNativeInterface::setWindowProperty(QPlatformWindow *window, const QString &name, const QVariant &value)
-{
- auto *platformWindow = static_cast<QWindowsWindow *>(window);
- if (name == QLatin1String(customMarginPropertyC))
- platformWindow->setCustomMargins(qvariant_cast<QMargins>(value));
-}
-
-QVariantMap QWindowsNativeInterface::windowProperties(QPlatformWindow *window) const
-{
- QVariantMap result;
- const QString customMarginProperty = QLatin1String(customMarginPropertyC);
- result.insert(customMarginProperty, windowProperty(window, customMarginProperty));
- return result;
-}
-
void *QWindowsNativeInterface::nativeResourceForIntegration(const QByteArray &resource)
{
#ifdef QT_NO_OPENGL
diff --git a/src/plugins/platforms/windows/qwindowsnativeinterface.h b/src/plugins/platforms/windows/qwindowsnativeinterface.h
index 95b6bf847c..6b3740a17b 100644
--- a/src/plugins/platforms/windows/qwindowsnativeinterface.h
+++ b/src/plugins/platforms/windows/qwindowsnativeinterface.h
@@ -98,11 +98,6 @@ public:
QVariant gpu() const;
QVariant gpuList() const;
- QVariantMap windowProperties(QPlatformWindow *window) const override;
- QVariant windowProperty(QPlatformWindow *window, const QString &name) const override;
- QVariant windowProperty(QPlatformWindow *window, const QString &name, const QVariant &defaultValue) const override;
- void setWindowProperty(QPlatformWindow *window, const QString &name, const QVariant &value) override;
-
Q_SIGNALS:
void darkModeChanged(bool);
};
diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp
index 9668f58112..2da4251179 100644
--- a/src/plugins/platforms/windows/qwindowswindow.cpp
+++ b/src/plugins/platforms/windows/qwindowswindow.cpp
@@ -1193,6 +1193,16 @@ bool QWindowsBaseWindow::hasBorderInFullScreen() const
return false;
}
+QMargins QWindowsBaseWindow::customMargins() const
+{
+ return {};
+}
+
+void QWindowsBaseWindow::setCustomMargins(const QMargins &)
+{
+ Q_UNIMPLEMENTED();
+}
+
/*!
\class QWindowsDesktopWindow
\brief Window wrapping GetDesktopWindow not allowing any manipulation.
diff --git a/src/plugins/platforms/windows/qwindowswindow.h b/src/plugins/platforms/windows/qwindowswindow.h
index 6c6c86ef47..beed3e17df 100644
--- a/src/plugins/platforms/windows/qwindowswindow.h
+++ b/src/plugins/platforms/windows/qwindowswindow.h
@@ -144,6 +144,9 @@ public:
void setHasBorderInFullScreen(bool border) override;
bool hasBorderInFullScreen() const override;
+ QMargins customMargins() const override;
+ void setCustomMargins(const QMargins &margins) override;
+
using QPlatformWindow::screenForGeometry;
virtual HWND handle() const = 0;
@@ -304,8 +307,8 @@ public:
QWindowsMenuBar *menuBar() const;
void setMenuBar(QWindowsMenuBar *mb);
- QMargins customMargins() const { return m_data.customMargins; }
- void setCustomMargins(const QMargins &m);
+ QMargins customMargins() const override { return m_data.customMargins; }
+ void setCustomMargins(const QMargins &m) override;
void setStyle(unsigned s) const;
void setExStyle(unsigned s) const;