summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa/qcocoaintegration.mm
diff options
context:
space:
mode:
authorIikka Eklund <iikka.eklund@digia.com>2014-04-02 07:36:48 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-02 07:36:48 +0200
commitd6f58e5e17d58c640fc7779652008fda0d66f41d (patch)
treed50d27e260c9eaf4bc2bcb4480b8a069a3aed857 /src/plugins/platforms/cocoa/qcocoaintegration.mm
parent83de197a57ff6c3e5bbad26bd871981285384fcb (diff)
parent0ab63b035a649dc1982c867cd37d466d249004b9 (diff)
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoaintegration.mm')
-rw-r--r--src/plugins/platforms/cocoa/qcocoaintegration.mm10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm
index 65a9f87e2d..412818ae47 100644
--- a/src/plugins/platforms/cocoa/qcocoaintegration.mm
+++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm
@@ -316,11 +316,17 @@ QCocoaIntegration *QCocoaIntegration::instance()
*/
void QCocoaIntegration::updateScreens()
{
- NSArray *screens = [NSScreen screens];
+ NSArray *scrs = [NSScreen screens];
+ NSMutableArray *screens = [NSMutableArray arrayWithArray:scrs];
+ if ([screens count] == 0)
+ if ([NSScreen mainScreen])
+ [screens addObject:[NSScreen mainScreen]];
+ if ([screens count] == 0)
+ return;
QSet<QCocoaScreen*> remainingScreens = QSet<QCocoaScreen*>::fromList(mScreens);
QList<QPlatformScreen *> siblings;
for (uint i = 0; i < [screens count]; i++) {
- NSScreen* scr = [[NSScreen screens] objectAtIndex:i];
+ NSScreen* scr = [screens objectAtIndex:i];
CGDirectDisplayID dpy = [[[scr deviceDescription] objectForKey:@"NSScreenNumber"] unsignedIntValue];
// If this screen is a mirror and is not the primary one of the mirror set, ignore it.
if (CGDisplayIsInMirrorSet(dpy)) {