From d6fb64267fd90a95a64355e610f89eec480d1c1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= Date: Mon, 9 Jul 2018 14:27:11 +0200 Subject: macOS: Correctly restart display-link when window is moved between screens Change-Id: I4b9cdd3d259965f9094ef1bbbca3ebed8df18443 Reviewed-by: Simon Hausmann --- src/plugins/platforms/cocoa/qcocoawindow.mm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/plugins/platforms/cocoa') diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 47e13a9e8c..065431f0ca 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -1070,10 +1070,12 @@ void QCocoaWindow::windowDidChangeScreen() if (!window()) return; + const bool wasRunningDisplayLink = static_cast(screen())->isRunningDisplayLink(); + if (QCocoaScreen *cocoaScreen = QCocoaIntegration::instance()->screenForNSScreen(m_view.window.screen)) { QWindowSystemInterface::handleWindowScreenChanged(window(), cocoaScreen->screen()); - if (hasPendingUpdateRequest() && cocoaScreen->isRunningDisplayLink()) + if (hasPendingUpdateRequest() && wasRunningDisplayLink) requestUpdate(); // Restart display-link on new screen } } -- cgit v1.2.3