I’ve also tried this…and the code in the dispatch_async never gets called. I’ve seen other code on github that does something similar so obviously it *should* work.
- (IBAction)enterRegCode:(id)sender { registrationWindowController = [[RegistrationWindow alloc] initWithWindowNibName:@"RegistrationWindow"]; __weak PIIntroWindowController* weakSelf = self; [self.window beginSheet:registrationWindowController.window completionHandler:^(NSModalResponse returnCode) { registrationWindowController = nil; if (returnCode == 1) { quitMeansCloseWindow = YES; dispatch_async(dispatch_get_main_queue(), ^{ NSLog(@“Do I get called?”); }); } }]; } > On Aug 24, 2015, at 11:41 AM, Alex Kac <a...@webis.net> wrote: > > I’ve got a modal window which opens a sheet to let the user enter a > registration code. If the Reg code is accepted, I want to close the window > after the sheet ends. However it doesn’t. I’ve tried a ton of different > things and I believe it has something to do with the runLoop because dispatch > timers, async, etc… do not work in the completionHandler at all. Neither does > performSelector:afterDelay:. Nothing that seems to use a timer works. > > Here is how I present the main window: > [[NSApplication sharedApplication] > runModalForWindow:introSheetController.window]; > > and then when the user selects “Enter Registration Code”: > > - (IBAction)enterRegCode:(id)sender { > > registrationWindowController = [[RegistrationWindow alloc] > initWithWindowNibName:@"RegistrationWindow"]; > > [self.window beginSheet:registrationWindowController.window > completionHandler:^(NSModalResponse returnCode) { > registrationWindowController = nil; > > if (returnCode == 1) > { > [[NSApplication sharedApplication] stopModal]; > [self.window close]; > //[self.window orderOut:nil] > } > }]; > } > > What do you think? I think I know what’s wrong, but I’ve tried enough things > that don’t work that I’m sure its something basic and simple. _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com