diff --git a/src/widgets/kernel/qwidgetwindow.cpp b/src/widgets/kernel/qwidgetwindow.cpp index 35a526e..d417e41 100644 --- a/src/widgets/kernel/qwidgetwindow.cpp +++ b/src/widgets/kernel/qwidgetwindow.cpp @@ -573,6 +573,14 @@ bool QWidgetWindow::updatePos() void QWidgetWindow::updateMargins() { const QMargins margins = frameMargins(); + + if (geometry().x() != m_widget->data->crect.x() || + geometry().y() != m_widget->data->crect.y()) + m_widget->setAttribute(Qt::WA_Moved); + if (geometry().width() != m_widget->data->crect.width() || + geometry().height() != m_widget->data->crect.height()) + m_widget->setAttribute(Qt::WA_Resized); + QTLWExtra *te = m_widget->d_func()->topData(); te->posIncludesFrame= false; te->frameStrut.setCoords(margins.left(), margins.top(), margins.right(), margins.bottom());