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