--- old/modules/javafx.graphics/src/main/native-glass/mac/GlassScreen.m 2016-08-04 02:44:33.000000000 +0300 +++ new/modules/javafx.graphics/src/main/native-glass/mac/GlassScreen.m 2016-08-04 02:44:33.000000000 +0300 @@ -39,6 +39,8 @@ #define MAX_DISPLAY_COUNT 1024 +NSSize maxScreenDimensions; + CGFloat GetScreenScaleFactor(NSScreen *screen) { if ([screen respondsToSelector:@selector(backingScaleFactor)]) { @@ -132,7 +134,17 @@ jScreenClass, NULL); GLASS_CHECK_EXCEPTION(env); + maxScreenDimensions = NSMakeSize(0.f,0.f); for (NSUInteger index = 0; index < [screens count]; index++) { + NSRect screenRect = [[screens objectAtIndex:index] frame]; + + if (screenRect.size.width > maxScreenDimensions.width) { + maxScreenDimensions.width = screenRect.size.width; + } + if (screenRect.size.height > maxScreenDimensions.height) { + maxScreenDimensions.height = screenRect.size.height; + } + jobject javaScreen = createJavaScreen(env, [screens objectAtIndex:index]); (*env)->SetObjectArrayElement(env, screenArray, index, javaScreen); GLASS_CHECK_EXCEPTION(env);