diff options
author | Samuel Rødal <samuel.rodal@nokia.com> | 2011-06-10 16:04:22 +0200 |
---|---|---|
committer | Samuel Rødal <samuel.rodal@nokia.com> | 2011-06-10 16:05:04 +0200 |
commit | 1ee96f093a5ecbbdc9030c769aa9b7c3f2642619 (patch) | |
tree | b83e45575af5d19f3b927804501d5762ddcdcc14 | |
parent | 11dc006328140e2dc91280ad350087b5cf970edb (diff) |
Use XCB_GRAVITY_STATIC in XCB plugin for frame independent geometry.
-rw-r--r-- | src/plugins/platforms/xcb/qxcbwindow.cpp | 2 | ||||
-rw-r--r-- | src/widgets/kernel/qwidgetwindow_qpa.cpp | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/platforms/xcb/qxcbwindow.cpp b/src/plugins/platforms/xcb/qxcbwindow.cpp index d635ee8bcb..3cf78d00c3 100644 --- a/src/plugins/platforms/xcb/qxcbwindow.cpp +++ b/src/plugins/platforms/xcb/qxcbwindow.cpp @@ -149,6 +149,7 @@ void QXcbWindow::create() }; QRect rect = window()->geometry(); + QPlatformWindow::setGeometry(rect); xcb_window_t xcb_parent_id = m_screen->root(); if (parent()) @@ -993,6 +994,7 @@ void QXcbWindow::propagateSizeHints() xcb_size_hints_set_position(&hints, true, rect.x(), rect.y()); xcb_size_hints_set_size(&hints, true, rect.width(), rect.height()); + xcb_size_hints_set_win_gravity(&hints, XCB_GRAVITY_STATIC); QWindow *win = window(); diff --git a/src/widgets/kernel/qwidgetwindow_qpa.cpp b/src/widgets/kernel/qwidgetwindow_qpa.cpp index 27f9c9e2f8..dcd0618a55 100644 --- a/src/widgets/kernel/qwidgetwindow_qpa.cpp +++ b/src/widgets/kernel/qwidgetwindow_qpa.cpp @@ -273,7 +273,7 @@ void QWidgetWindow::updateGeometry() QMargins margins = frameMargins(); - m_widget->data->crect = geometry().translated(-margins.left(), -margins.top()); + m_widget->data->crect = geometry(); m_widget->d_func()->topData()->frameStrut.setCoords(margins.left(), margins.top(), margins.right(), margins.bottom()); } |