summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/kernel/qwidgetwindow_qpa.cpp20
-rw-r--r--src/gui/kernel/qwidgetwindow_qpa_p.h2
2 files changed, 22 insertions, 0 deletions
diff --git a/src/gui/kernel/qwidgetwindow_qpa.cpp b/src/gui/kernel/qwidgetwindow_qpa.cpp
index ec53b794f2..d19decc6e9 100644
--- a/src/gui/kernel/qwidgetwindow_qpa.cpp
+++ b/src/gui/kernel/qwidgetwindow_qpa.cpp
@@ -63,6 +63,14 @@ bool QWidgetWindow::event(QEvent *event)
handleKeyEvent(static_cast<QKeyEvent *>(event));
return true;
+ case QEvent::Move:
+ handleMoveEvent(static_cast<QMoveEvent *>(event));
+ return true;
+
+ case QEvent::Resize:
+ handleResizeEvent(static_cast<QResizeEvent *>(event));
+ return true;
+
default:
break;
}
@@ -96,4 +104,16 @@ void QWidgetWindow::handleKeyEvent(QKeyEvent *event)
QGuiApplication::sendSpontaneousEvent(widget, event);
}
+void QWidgetWindow::handleMoveEvent(QMoveEvent *event)
+{
+ m_widget->data->crect = geometry();
+ QGuiApplication::sendSpontaneousEvent(m_widget, event);
+}
+
+void QWidgetWindow::handleResizeEvent(QResizeEvent *event)
+{
+ m_widget->data->crect = geometry();
+ QGuiApplication::sendSpontaneousEvent(m_widget, event);
+}
+
QT_END_NAMESPACE
diff --git a/src/gui/kernel/qwidgetwindow_qpa_p.h b/src/gui/kernel/qwidgetwindow_qpa_p.h
index 607879dcf5..c6cd9c81a6 100644
--- a/src/gui/kernel/qwidgetwindow_qpa_p.h
+++ b/src/gui/kernel/qwidgetwindow_qpa_p.h
@@ -65,6 +65,8 @@ protected:
void handleMouseEvent(QMouseEvent *);
void handleKeyEvent(QKeyEvent *);
+ void handleMoveEvent(QMoveEvent *);
+ void handleResizeEvent(QResizeEvent *);
private:
QWidget *m_widget;