src/java.desktop/macosx/native/libsplashscreen/splashscreen_sys.m
Print this page
@@ -129,11 +129,18 @@
char* SplashGetScaledImageName(const char* jar, const char* file,
float *scaleFactor) {
NSAutoreleasePool *pool = [NSAutoreleasePool new];
*scaleFactor = 1;
char* scaledFile = nil;
- float screenScaleFactor = 1;
+ __block float screenScaleFactor = 1;
+
+ [ThreadUtilities performOnMainThreadWaiting:YES block:^(){
+ // initialize the display environment and connect the program
+ // to the window and the display servers
+ [NSApplicationAWT sharedApplication];
+ screenScaleFactor = [SplashNSScreen() backingScaleFactor];
+ }];
if (screenScaleFactor > 1) {
NSString *fileName = [NSString stringWithUTF8String: file];
NSUInteger length = [fileName length];
NSRange range = [fileName rangeOfString: @"."