diff --git a/ShadowsocksX-NG/Base.lproj/PreferencesWindowController.xib b/ShadowsocksX-NG/Base.lproj/PreferencesWindowController.xib
index 87e7efb..536322e 100644
--- a/ShadowsocksX-NG/Base.lproj/PreferencesWindowController.xib
+++ b/ShadowsocksX-NG/Base.lproj/PreferencesWindowController.xib
@@ -10,6 +10,7 @@
+
@@ -168,7 +169,7 @@
-
+
@@ -193,13 +194,22 @@
+
+
+
@@ -214,15 +224,16 @@
-
+
-
+
-
+
+
diff --git a/ShadowsocksX-NG/PreferencesWindowController.swift b/ShadowsocksX-NG/PreferencesWindowController.swift
index f8de37b..b3afebf 100644
--- a/ShadowsocksX-NG/PreferencesWindowController.swift
+++ b/ShadowsocksX-NG/PreferencesWindowController.swift
@@ -22,6 +22,8 @@ class PreferencesWindowController: NSWindowController
@IBOutlet weak var passwordTextField: NSTextField!
@IBOutlet weak var remarkTextField: NSTextField!
+ @IBOutlet weak var otaCheckBoxBtn: NSButton!
+
@IBOutlet weak var copyURLBtn: NSButton!
var defaults: NSUserDefaults!
@@ -146,6 +148,9 @@ class PreferencesWindowController: NSWindowController
remarkTextField.bind("value", toObject: editingProfile, withKeyPath: "remark"
, options: [NSContinuouslyUpdatesValueBindingOption: true])
+
+ otaCheckBoxBtn.bind("value", toObject: editingProfile, withKeyPath: "ota"
+ , options: [NSContinuouslyUpdatesValueBindingOption: true])
} else {
editingProfile = nil
hostTextField.unbind("value")
@@ -155,6 +160,8 @@ class PreferencesWindowController: NSWindowController
passwordTextField.unbind("value")
remarkTextField.unbind("value")
+
+ otaCheckBoxBtn.unbind("value")
}
}
diff --git a/ShadowsocksX-NG/ServerProfile.swift b/ShadowsocksX-NG/ServerProfile.swift
index 5efc841..c71d717 100644
--- a/ShadowsocksX-NG/ServerProfile.swift
+++ b/ShadowsocksX-NG/ServerProfile.swift
@@ -38,6 +38,9 @@ class ServerProfile: NSObject {
if let remark = data["Remark"] {
profile.remark = remark as! String
}
+ if let ota = data["OTA"] {
+ profile.ota = ota as! Bool
+ }
}
if let id = data["Id"] as? String {
@@ -59,6 +62,7 @@ class ServerProfile: NSObject {
d["Method"] = method
d["Password"] = password
d["Remark"] = remark
+ d["OTA"] = ota
return d
}
@@ -72,6 +76,7 @@ class ServerProfile: NSObject {
conf["local_port"] = NSNumber(unsignedShort: UInt16(defaults.integerForKey("LocalSocks5.ListenPort")))
conf["local_address"] = defaults.stringForKey("LocalSocks5.ListenAddress")
conf["timeout"] = NSNumber(unsignedInt: UInt32(defaults.integerForKey("LocalSocks5.Timeout")))
+ conf["auth"] = NSNumber(bool: ota)
return conf
}