diff options
author | Andy Nichols <andy.nichols@digia.com> | 2014-08-18 18:32:46 +0200 |
---|---|---|
committer | Andy Nichols <andy.nichols@digia.com> | 2014-08-25 16:47:25 +0200 |
commit | 5afebb05b49a57afc252c9df9b633673269c9463 (patch) | |
tree | ce269dabbad8f51ae5cccf78aa91edb731f98c57 /src/plugins | |
parent | 6e7e73c014fe7799f22d8bac2d26360fab04c6d1 (diff) |
DirectFB Fix issue with showing dialogs
If the window was not visible when the geometry was set, then the
DirectFB window would not be resized.
Change-Id: I7790c90ed0fb755aebee0e32c877ebd9e48417cd
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbwindow.cpp | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/src/plugins/platforms/directfb/qdirectfbwindow.cpp b/src/plugins/platforms/directfb/qdirectfbwindow.cpp index 51382593e9..52ff1a7704 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindow.cpp +++ b/src/plugins/platforms/directfb/qdirectfbwindow.cpp @@ -110,21 +110,9 @@ QDirectFbWindow::~QDirectFbWindow() void QDirectFbWindow::setGeometry(const QRect &rect) { -// bool isMoveOnly = (rect.topLeft() != geometry().topLeft()) && (rect.size() == geometry().size()); - QPlatformWindow::setGeometry(rect); - if (window()->isVisible()) { - m_dfbWindow->SetBounds(m_dfbWindow.data(), rect.x(),rect.y(), - rect.width(), rect.height()); -// ### TODO port, verify if this is needed -#if 0 - //Hack. When moving since the WindowSurface of a window becomes invalid when moved - if (isMoveOnly) { //if resize then windowsurface is updated. - widget()->windowSurface()->resize(rect.size()); - window()->update(); - } -#endif - } + m_dfbWindow->SetBounds(m_dfbWindow.data(), rect.x(),rect.y(), + rect.width(), rect.height()); } void QDirectFbWindow::setOpacity(qreal level) @@ -150,7 +138,7 @@ void QDirectFbWindow::setVisible(bool visible) } if (window()->isTopLevel() && visible) - QWindowSystemInterface::handleExposeEvent(window(), QRect(QPoint(0, 0), window()->geometry().size())); + QPlatformWindow::setVisible(visible); } } |