Merge pull request #33989 from LnL7/darwin-qt

qt510-qtbase: fix darwin build

authored by Thomas Tuegel and committed by GitHub a97eaae9 b57981e1

+58 -1
+1 -1
pkgs/development/libraries/qt-5/5.10/default.nix
··· 37 37 srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; }; 38 38 39 39 patches = { 40 - qtbase = [ ./qtbase.patch ]; 40 + qtbase = [ ./qtbase.patch ] ++ optional stdenv.isDarwin ./qtbase-darwin.patch; 41 41 qtdeclarative = [ ./qtdeclarative.patch ]; 42 42 qtscript = [ ./qtscript.patch ]; 43 43 qtserialport = [ ./qtserialport.patch ];
+57
pkgs/development/libraries/qt-5/5.10/qtbase-darwin.patch
··· 1 + diff --git a/src/plugins/bearer/corewlan/qcorewlanengine.mm b/src/plugins/bearer/corewlan/qcorewlanengine.mm 2 + index 341d3bccf2..3368234c26 100644 3 + --- a/src/plugins/bearer/corewlan/qcorewlanengine.mm 4 + +++ b/src/plugins/bearer/corewlan/qcorewlanengine.mm 5 + @@ -287,7 +287,7 @@ void QScanThread::getUserConfigurations() 6 + QMacAutoReleasePool pool; 7 + userProfiles.clear(); 8 + 9 + - NSArray<NSString *> *wifiInterfaces = [CWWiFiClient interfaceNames]; 10 + + NSArray *wifiInterfaces = [CWWiFiClient interfaceNames]; 11 + for (NSString *ifName in wifiInterfaces) { 12 + 13 + CWInterface *wifiInterface = [[CWWiFiClient sharedWiFiClient] interfaceWithName:ifName]; 14 + @@ -602,7 +602,7 @@ void QCoreWlanEngine::doRequestUpdate() 15 + 16 + QMacAutoReleasePool pool; 17 + 18 + - NSArray<NSString *> *wifiInterfaces = [CWWiFiClient interfaceNames]; 19 + + NSArray *wifiInterfaces = [CWWiFiClient interfaceNames]; 20 + for (NSString *ifName in wifiInterfaces) { 21 + scanThread->interfaceName = QString::fromNSString(ifName); 22 + scanThread->start(); 23 + diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm 24 + index d1f19f2..1ac2cf1 100644 25 + --- a/src/plugins/platforms/cocoa/qcocoawindow.mm 26 + +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm 27 + @@ -1699,7 +1699,7 @@ void QCocoaWindow::applyContentBorderThickness(NSWindow *window) 28 + 29 + if (!m_drawContentBorderGradient) { 30 + window.styleMask = window.styleMask & ~NSTexturedBackgroundWindowMask; 31 + - [window.contentView.superview setNeedsDisplay:YES]; 32 + + [[window.contentView superview] setNeedsDisplay:YES]; 33 + window.titlebarAppearsTransparent = NO; 34 + return; 35 + } 36 + diff --git a/src/plugins/platforms/cocoa/qnswindow.mm b/src/plugins/platforms/cocoa/qnswindow.mm 37 + index e846fa0..4171cd4 100644 38 + --- a/src/plugins/platforms/cocoa/qnswindow.mm 39 + +++ b/src/plugins/platforms/cocoa/qnswindow.mm 40 + @@ -224,7 +224,7 @@ static bool isMouseEvent(NSEvent *ev) 41 + if (pw->frameStrutEventsEnabled() && isMouseEvent(theEvent)) { 42 + NSPoint loc = [theEvent locationInWindow]; 43 + NSRect windowFrame = [self convertRectFromScreen:self.frame]; 44 + - NSRect contentFrame = self.contentView.frame; 45 + + NSRect contentFrame = [self.contentView frame]; 46 + if (NSMouseInRect(loc, windowFrame, NO) && !NSMouseInRect(loc, contentFrame, NO)) 47 + [qnsview_cast(pw->view()) handleFrameStrutMouseEvent:theEvent]; 48 + } 49 + @@ -253,7 +253,7 @@ static bool isMouseEvent(NSEvent *ev) 50 + + (void)applicationActivationChanged:(NSNotification*)notification 51 + { 52 + const id sender = self; 53 + - NSEnumerator<NSWindow*> *windowEnumerator = nullptr; 54 + + NSEnumerator *windowEnumerator = nullptr; 55 + NSApplication *application = [NSApplication sharedApplication]; 56 + 57 + #if QT_MACOS_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_10_12)