diff options
Diffstat (limited to 'src/gui/kernel/qwindow_p.h')
-rw-r--r-- | src/gui/kernel/qwindow_p.h | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/gui/kernel/qwindow_p.h b/src/gui/kernel/qwindow_p.h index b8a9f5d3de..95c6abf428 100644 --- a/src/gui/kernel/qwindow_p.h +++ b/src/gui/kernel/qwindow_p.h @@ -123,19 +123,7 @@ public: void deliverUpdateRequest(); - QPoint globalPosition() const { - Q_Q(const QWindow); - QPoint offset = q->position(); - for (const QWindow *p = q->parent(); p; p = p->parent()) { - if (p->type() != Qt::ForeignWindow) { - offset += p->position(); - } else { // QTBUG-43252, mapToGlobal() for foreign children. - offset += p->mapToGlobal(QPoint(0, 0)); - break; - } - } - return offset; - } + QPoint globalPosition() const; QWindow *topLevelWindow() const; @@ -144,6 +132,9 @@ public: void updateVisibility(); void _q_clearAlert(); + enum SiblingPosition { PositionTop, PositionBottom }; + void updateSiblingPosition(SiblingPosition); + bool windowRecreationRequired(QScreen *newScreen) const; void create(bool recursive); void setTopLevelScreen(QScreen *newScreen, bool recreate); |