diff --git a/desmume/src/frontend/cocoa/userinterface/EmuControllerDelegate.mm b/desmume/src/frontend/cocoa/userinterface/EmuControllerDelegate.mm index 4a96a55e3..cf6c41554 100644 --- a/desmume/src/frontend/cocoa/userinterface/EmuControllerDelegate.mm +++ b/desmume/src/frontend/cocoa/userinterface/EmuControllerDelegate.mm @@ -2049,10 +2049,12 @@ CocoaDSCore *cdsCore = (CocoaDSCore *)[cdsCoreController content]; [self setCurrentSaveStateURL:nil]; + [self setIsWorking:YES]; isSaveStateEdited = NO; for (DisplayWindowController *windowController in windowList) { [[windowController window] setDocumentEdited:isSaveStateEdited]; + [[windowController window] displayIfNeeded]; } // Save the ROM's cheat list before unloading. @@ -2072,13 +2074,6 @@ [cheatWindowBindings setValue:@"---" forKey:@"cheatDBItemCount"]; [cheatWindowBindings setValue:nil forKey:@"cheatList"]; - [self setIsWorking:YES]; - - for (DisplayWindowController *windowController in windowList) - { - [[windowController window] displayIfNeeded]; - } - // Unload the ROM. if (![cdsCore emuFlagUseExternalBios] || ![cdsCore emuFlagUseExternalFirmware]) { @@ -2114,11 +2109,6 @@ [slot2WindowDelegate setAutoSelectedDeviceText:[[slot2WindowDelegate deviceManager] autoSelectedDeviceName]]; [[slot2WindowDelegate deviceManager] updateStatus]; - for (DisplayWindowController *windowController in windowList) - { - [[windowController window] displayIfNeeded]; - } - [cdsCore setSlot1StatusText:NSSTRING_STATUS_EMULATION_NOT_RUNNING]; [cdsCore updateCurrentSessionMACAddressString:NO]; [[cdsCore cdsController] reset];