Merge pull request #10746 from electron/removeuserdefault

Add systemPreferences.removeUserDefault()
This commit is contained in:
Birunthan Mohanathas 2017-10-12 16:08:57 +03:00 committed by GitHub
commit 13b9b5c0c0
5 changed files with 35 additions and 4 deletions

View file

@ -67,6 +67,7 @@ void SystemPreferences::BuildPrototype(
&SystemPreferences::UnsubscribeLocalNotification)
.SetMethod("getUserDefault", &SystemPreferences::GetUserDefault)
.SetMethod("setUserDefault", &SystemPreferences::SetUserDefault)
.SetMethod("removeUserDefault", &SystemPreferences::RemoveUserDefault)
.SetMethod("isSwipeTrackingFromScrollEventsEnabled",
&SystemPreferences::IsSwipeTrackingFromScrollEventsEnabled)
#endif

View file

@ -76,6 +76,7 @@ class SystemPreferences : public mate::EventEmitter<SystemPreferences>
void SetUserDefault(const std::string& name,
const std::string& type,
mate::Arguments* args);
void RemoveUserDefault(const std::string& name);
bool IsSwipeTrackingFromScrollEventsEnabled();
#endif
bool IsDarkMode();

View file

@ -229,6 +229,11 @@ void SystemPreferences::SetUserDefault(const std::string& name,
}
}
void SystemPreferences::RemoveUserDefault(const std::string& name) {
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
[defaults removeObjectForKey:base::SysUTF8ToNSString(name)];
}
bool SystemPreferences::IsDarkMode() {
NSString* mode = [[NSUserDefaults standardUserDefaults]
stringForKey:@"AppleInterfaceStyle"];