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>
This commit is contained in:
parent
7fef5fe293
commit
37f99502f9
@ -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();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user