diff options
author | Tor Arne Vestbø <tor.arne.vestbo@digia.com> | 2013-12-09 15:09:29 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-12-11 13:40:14 +0100 |
commit | 37f99502f9006c5681686e4a43bc80c2b1d0b089 (patch) | |
tree | a9f33c841648f00131d638daf1aa2b70a62420c6 /src/plugins/platforms/ios/qioswindow.mm | |
parent | 7fef5fe2932401294dea8edac7a64f4e5864c98f (diff) |
iOS: Fix failing assert in QUIView displayLayer()
In layoutSubviews we take the root viewcontroller position into account
when determening the new QWindow geometry, but we were missing this logic
in displayLayer, and would assert if the in-call statusbar was visible.
Since we don't really need the position of the window in displayLayer,
we change the assert to only check the size of the exposed area, which
is independent of the position of the root viewcontroller.
Change-Id: I774b8d9b075518e729f488a789b3a9e584c3f4d3
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Diffstat (limited to 'src/plugins/platforms/ios/qioswindow.mm')
-rw-r--r-- | src/plugins/platforms/ios/qioswindow.mm | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/plugins/platforms/ios/qioswindow.mm b/src/plugins/platforms/ios/qioswindow.mm index 1acd9ee354..7a0ff055ec 100644 --- a/src/plugins/platforms/ios/qioswindow.mm +++ b/src/plugins/platforms/ios/qioswindow.mm @@ -204,11 +204,12 @@ - (void)displayLayer:(CALayer *)layer { - QRect geometry = fromCGRect(layer.frame).toRect(); - Q_ASSERT(m_qioswindow->geometry() == geometry); + QSize bounds = fromCGRect(layer.bounds).toRect().size(); + + Q_ASSERT(m_qioswindow->geometry().size() == bounds); Q_ASSERT(self.hidden == !m_qioswindow->window()->isVisible()); - QRegion region = self.hidden ? QRegion() : QRect(QPoint(), geometry.size()); + QRegion region = self.hidden ? QRegion() : QRect(QPoint(), bounds); QWindowSystemInterface::handleExposeEvent(m_qioswindow->window(), region); QWindowSystemInterface::flushWindowSystemEvents(); } |