diff --git a/MacPass/MPAppDelegate.m b/MacPass/MPAppDelegate.m index 645047cd..d2b5c36c 100644 --- a/MacPass/MPAppDelegate.m +++ b/MacPass/MPAppDelegate.m @@ -156,6 +156,10 @@ NSString *const MPDidChangeStoredKeyFilesSettings = @"com.hicknhack.macpass.MPDi } +- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)sender { + return [NSUserDefaults.standardUserDefaults boolForKey:kMPSettingsKeyQuitOnLastWindowClose]; +} + - (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender { if([[MPTemporaryFileStorageCenter defaultCenter] hasPendingStorages]) { dispatch_async(dispatch_get_main_queue(), ^{ diff --git a/MacPass/MPSettingsHelper.h b/MacPass/MPSettingsHelper.h index 6cbf4de8..9ceac17a 100644 --- a/MacPass/MPSettingsHelper.h +++ b/MacPass/MPSettingsHelper.h @@ -30,6 +30,7 @@ APPKIT_EXTERN NSString *const kMPSettingsKeyClearPasteboardOnQuit; APPKIT_EXTERN NSString *const kMPSettingsKeyPasswordEncoding; APPKIT_EXTERN NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch; APPKIT_EXTERN NSString *const kMPSettingsKeyReopenLastDatabaseOnLaunch; +APPKIT_EXTERN NSString *const kMPSettingsKeyQuitOnLastWindowClose; // Quit MacPass when the user closes the last window APPKIT_EXTERN NSString *const kMPSettingsKeyFileChangeStrategy; /* URL handling */ diff --git a/MacPass/MPSettingsHelper.m b/MacPass/MPSettingsHelper.m index 74fc61db..2848ae15 100644 --- a/MacPass/MPSettingsHelper.m +++ b/MacPass/MPSettingsHelper.m @@ -31,6 +31,7 @@ NSString *const kMPSettingsKeyClearPasteboardOnQuit = @"ClearC NSString *const kMPSettingsKeyBrowserBundleId = @"BrowserBundleId"; NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch = @"OpenEmptyDatabaseOnLaunch"; NSString *const kMPSettingsKeyReopenLastDatabaseOnLaunch = @"ReopenLastDatabaseOnLaunch"; +NSString *const kMPSettingsKeyQuitOnLastWindowClose = @"QuitOnLastWindowClose"; NSString *const kMPSettingsKeyFileChangeStrategy = @"FileChangeStrategy"; NSString *const kMPSettingsKeyLockOnSleep = @"LockOnSleep"; NSString *const kMPSettingskeyLockOnLogout = @"LockOnLogout"; @@ -150,7 +151,8 @@ NSString *const kMPDepricatedSettingsKeyLoadUnsecurePlugins = @"MP kMPSettingsKeyLoadUnsecurePlugins: @NO, kMPSettingsKeyUpdatePasswordOnTemplateEntries: @YES, kMPSettingsKeyDisabledPlugins: @[], - kMPSettingsKeyLoadIncompatiblePlugins: @NO + kMPSettingsKeyLoadIncompatiblePlugins: @NO, + kMPSettingsKeyQuitOnLastWindowClose: @NO }; }); return standardDefaults;