Do not block main process for async dialog (#12404)
This commit is contained in:
parent
642f5a84d4
commit
c50a460ce6
1 changed files with 6 additions and 4 deletions
|
@ -283,8 +283,9 @@ void ShowOpenDialog(const DialogSettings& settings,
|
|||
|
||||
if (!settings.parent_window || !settings.parent_window->GetNativeWindow() ||
|
||||
settings.force_detached) {
|
||||
int chosen = [dialog runModal];
|
||||
OpenDialogCompletion(chosen, dialog, settings, callback);
|
||||
[dialog beginWithCompletionHandler:^(NSInteger chosen) {
|
||||
OpenDialogCompletion(chosen, dialog, settings, callback);
|
||||
}];
|
||||
} else {
|
||||
NSWindow* window = settings.parent_window->GetNativeWindow();
|
||||
[dialog beginSheetModalForWindow:window
|
||||
|
@ -343,8 +344,9 @@ void ShowSaveDialog(const DialogSettings& settings,
|
|||
|
||||
if (!settings.parent_window || !settings.parent_window->GetNativeWindow() ||
|
||||
settings.force_detached) {
|
||||
int chosen = [dialog runModal];
|
||||
SaveDialogCompletion(chosen, dialog, settings, callback);
|
||||
[dialog beginWithCompletionHandler:^(NSInteger chosen) {
|
||||
SaveDialogCompletion(chosen, dialog, settings, callback);
|
||||
}];
|
||||
} else {
|
||||
NSWindow* window = settings.parent_window->GetNativeWindow();
|
||||
[dialog beginSheetModalForWindow:window
|
||||
|
|
Loading…
Add table
Reference in a new issue