diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2018-03-19 11:51:03 +0100 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2018-03-21 02:03:12 +0000 |
commit | c8c8cc790a315710b0dae2282dc32e3472e107ee (patch) | |
tree | f25e63bd9c09d381fde339c57ca2a050cba0349c /src/plugins | |
parent | 62f053c19b917a369c4aad5b71ab150911b589aa (diff) |
macOS: Make [QNSView wantsLayer] declarative
Change-Id: Ib5dc8178293d13542a54d51484181debd57580f5
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoawindow.mm | 3 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qnsview_drawing.mm | 12 |
2 files changed, 12 insertions, 3 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 457a40ff03..e201f1eb04 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -195,9 +195,6 @@ void QCocoaWindow::initialize() [m_view setWantsBestResolutionOpenGLSurface:enable]; // See also QCocoaGLContext::makeCurrent for software renderer workarounds. } - BOOL enable = qt_mac_resolveOption(NO, window(), "_q_mac_wantsLayer", - "QT_MAC_WANTS_LAYER"); - [m_view setWantsLayer:enable]; } setGeometry(initialGeometry(window(), windowGeometry(), defaultWindowWidth, defaultWindowHeight)); diff --git a/src/plugins/platforms/cocoa/qnsview_drawing.mm b/src/plugins/platforms/cocoa/qnsview_drawing.mm index 68c41ba5f1..a2509ccb72 100644 --- a/src/plugins/platforms/cocoa/qnsview_drawing.mm +++ b/src/plugins/platforms/cocoa/qnsview_drawing.mm @@ -136,6 +136,18 @@ } } +- (BOOL)wantsLayer +{ + Q_ASSERT(m_platformWindow); + + // Toggling the private QWindow property or the environment variable + // on and off is not a supported use-case, so this code is effectively + // returning a constant for the lifetime of our QSNSView, which means + // we don't care about emitting KVO signals for @"wantsLayer". + return qt_mac_resolveOption(false, m_platformWindow->window(), + "_q_mac_wantsLayer", "QT_MAC_WANTS_LAYER"); +} + - (void)displayLayer:(CALayer *)layer { Q_ASSERT(layer == self.layer); |