17#include "WindowMargins.h"
19#include <QGuiApplication>
20#include <QQuickWindow>
21#include <qpa/qplatformnativeinterface.h>
23void WindowMargins::setNormal(QRectF value)
25 if (m_normal == value) {
32 QPlatformNativeInterface *nativeInterface = QGuiApplication::platformNativeInterface();
33 nativeInterface->setWindowProperty(window()->handle(),
"normalWindowMargins", QVariant(m_normal.toRect()));
36 Q_EMIT normalChanged();
39QRectF WindowMargins::normal()
const
44void WindowMargins::setDialog(QRectF value)
46 if (m_dialog == value) {
53 QPlatformNativeInterface *nativeInterface = QGuiApplication::platformNativeInterface();
54 nativeInterface->setWindowProperty(window()->handle(),
"dialogWindowMargins", QVariant(m_dialog.toRect()));
57 Q_EMIT dialogChanged();
60QRectF WindowMargins::dialog()
const
65void WindowMargins::itemChange(ItemChange change,
const ItemChangeData &data)
67 if (change == ItemSceneChange && data.window !=
nullptr) {
68 QPlatformNativeInterface *nativeInterface = QGuiApplication::platformNativeInterface();
69 if (!m_normal.isNull()) {
70 nativeInterface->setWindowProperty(data.window->handle(),
"normalWindowMargins", QVariant(m_normal.toRect()));
71 nativeInterface->setWindowProperty(data.window->handle(),
"dialogWindowMargins", QVariant(m_dialog.toRect()));