diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2017-08-15 17:33:25 +0200 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2017-08-21 10:18:12 +0000 |
commit | 0a7eb034f402637e139072dc19579775a416e2a8 (patch) | |
tree | a1b0b5f4d25c9d47e98035e3970b920807419e75 /src/plugins/platforms/cocoa/qnsview.mm | |
parent | 23697466cae8f1a49537fed1e60db8cea79207b4 (diff) |
macOS: Restore support for layered mode
After 871966 we now do drawing as a result of drawRect calls, but layer
backed mode was not taken into account. This restores support for both
pull and push-mode drawing in layer-backed mode.
Change-Id: I35039ee9eb4486206f9f92f8230df104473368c9
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Diffstat (limited to 'src/plugins/platforms/cocoa/qnsview.mm')
-rw-r--r-- | src/plugins/platforms/cocoa/qnsview.mm | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm index 4c485dc807..8d3cb6cc05 100644 --- a/src/plugins/platforms/cocoa/qnsview.mm +++ b/src/plugins/platforms/cocoa/qnsview.mm @@ -384,6 +384,22 @@ static QTouchDevice *touchDevice = 0; m_platformWindow->handleExposeEvent(exposedRegion); } +- (BOOL)wantsUpdateLayer +{ + return YES; +} + +- (void)updateLayer +{ + if (!m_platformWindow) + return; + + qCDebug(lcQpaCocoaWindow) << "[QNSView updateLayer]" << m_platformWindow->window(); + + // FIXME: Find out if there's a way to resolve the dirty rect like in drawRect: + m_platformWindow->handleExposeEvent(QRectF::fromCGRect(self.bounds).toRect()); +} + - (BOOL)isFlipped { return YES; |