diff options
-rw-r--r-- | hw/xquartz/X11Application.m | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m index 63b6c05fd..e745f53d7 100644 --- a/hw/xquartz/X11Application.m +++ b/hw/xquartz/X11Application.m @@ -1063,12 +1063,15 @@ X11ApplicationCanEnterRandR(void) if (!XQuartzIsRootless) QuartzShowFullscreen(FALSE); - switch (NSRunAlertPanel(title, @"%@", - NSLocalizedString(@"Allow", - @""), - NSLocalizedString(@"Cancel", - @""), - NSLocalizedString(@"Always Allow", @""), msg)) { + NSInteger __block alert_result; + dispatch_sync(dispatch_get_main_queue(), ^{ + alert_result = NSRunAlertPanel(title, @"%@", + NSLocalizedString(@"Allow", @""), + NSLocalizedString(@"Cancel", @""), + NSLocalizedString(@"Always Allow", @""), msg); + }); + + switch (alert_result) { case NSAlertOtherReturn: [X11App prefs_set_boolean:@PREFS_NO_RANDR_ALERT value:YES]; [X11App prefs_synchronize]; |