diff --git a/MacPass/Base.lproj/DatabaseSettingsWindow.xib b/MacPass/Base.lproj/DatabaseSettingsWindow.xib
index 4992e117..f8fe9a69 100644
--- a/MacPass/Base.lproj/DatabaseSettingsWindow.xib
+++ b/MacPass/Base.lproj/DatabaseSettingsWindow.xib
@@ -14,6 +14,7 @@
+
@@ -52,11 +53,11 @@
-
+
-
+
@@ -213,11 +214,11 @@ Gw
-
+
-
+
@@ -228,7 +229,7 @@ Gw
-
+
@@ -236,20 +237,20 @@ Gw
-
+
-
+
-
+
@@ -296,7 +297,7 @@ Gw
-
+
@@ -304,7 +305,7 @@ Gw
-
+
@@ -342,15 +343,13 @@ Gw
-
-
-
+
-
+
@@ -393,7 +392,7 @@ Gw
-
+
@@ -404,7 +403,7 @@ Gw
-
+
@@ -728,7 +727,7 @@ Gw
-
+
diff --git a/MacPass/MPDatabaseSettingsWindowController.h b/MacPass/MPDatabaseSettingsWindowController.h
index 9e739deb..bbd85033 100644
--- a/MacPass/MPDatabaseSettingsWindowController.h
+++ b/MacPass/MPDatabaseSettingsWindowController.h
@@ -54,6 +54,7 @@ typedef NS_ENUM(NSUInteger, MPDatabaseSettingsTab) {
@property (weak) IBOutlet NSTextField *argon2ThreadsTextField;
@property (weak) IBOutlet NSTextField *argon2IterationsTextField;
@property (weak) IBOutlet NSTextField *argon2MemoryTextField;
+@property (weak) IBOutlet NSStepper *argon2MemoryStepper;
/* Advanced Tab*/
@property (weak) IBOutlet NSButton *enableHistoryCheckButton;
diff --git a/MacPass/MPDatabaseSettingsWindowController.m b/MacPass/MPDatabaseSettingsWindowController.m
index 010e1944..2a8c4a63 100644
--- a/MacPass/MPDatabaseSettingsWindowController.m
+++ b/MacPass/MPDatabaseSettingsWindowController.m
@@ -39,6 +39,8 @@
NSString *_missingFeature;
}
+@property (assign) NSInteger argon2Memory;
+
@property (assign) BOOL enableHistory;
@property (assign) NSInteger maxiumHistoryItems;
@property (assign) NSInteger maxiumHistorySize;
@@ -170,7 +172,7 @@
}
else if([selectedKdfUUID isEqual:argon2Kdf.uuid]) {
argon2Kdf.iterations = self.argon2IterationsTextField.integerValue;
- argon2Kdf.memory = self.argon2MemoryTextField.integerValue;
+ argon2Kdf.memory = self.argon2Memory;
argon2Kdf.threads = self.argon2ThreadsTextField.intValue;
metaData.keyDerivationParameters = argon2Kdf.parameters;
}
@@ -259,12 +261,12 @@
/* fill defaults for Argon2 */
KPKArgon2KeyDerivation *argon2Kdf = [[KPKArgon2KeyDerivation alloc] initWithParameters:[KPKArgon2KeyDerivation defaultParameters]];
self.argon2IterationsTextField.integerValue = argon2Kdf.iterations;
- self.argon2MemoryTextField.integerValue = argon2Kdf.memory;
+ self.argon2Memory = argon2Kdf.memory;
self.argon2ThreadsTextField.integerValue = argon2Kdf.threads;
}
else if([keyDerivation isKindOfClass:[KPKArgon2KeyDerivation class]]) {
KPKArgon2KeyDerivation *argon2Kdf = (KPKArgon2KeyDerivation *)keyDerivation;
- self.argon2MemoryTextField.integerValue = argon2Kdf.memory;
+ self.argon2Memory = argon2Kdf.memory;
self.argon2ThreadsTextField.integerValue = argon2Kdf.threads;
self.argon2IterationsTextField.integerValue = argon2Kdf.iterations;
@@ -276,6 +278,13 @@
NSAssert(NO, @"Unkown key derivation");
}
+ self.argon2MemoryStepper.minValue = 8*1024; // 8KB minimum
+ self.argon2MemoryStepper.maxValue = NSIntegerMax;
+ self.argon2MemoryStepper.increment = 1024*1024; // 1 megabytes steps
+ [self.argon2MemoryTextField bind:NSValueBinding toObject:self withKeyPath:NSStringFromSelector(@selector(argon2Memory)) options:nil];
+ [self.argon2MemoryStepper bind:NSValueBinding toObject:self withKeyPath:NSStringFromSelector(@selector(argon2Memory)) options:nil];
+
+
NSUInteger cipherIndex = [self.cipherPopupButton.menu indexOfItemWithRepresentedObject:metaData.cipherUUID];
[self.cipherPopupButton selectItemAtIndex:cipherIndex];
}
diff --git a/MacPass/de.lproj/DatabaseSettingsWindow.strings b/MacPass/de.lproj/DatabaseSettingsWindow.strings
index 0b9ba884..11e14f16 100644
--- a/MacPass/de.lproj/DatabaseSettingsWindow.strings
+++ b/MacPass/de.lproj/DatabaseSettingsWindow.strings
@@ -2,13 +2,13 @@
"1.title" = "Fenster";
/* Class = "NSTextFieldCell"; title = "Threads"; ObjectID = "2QI-ne-N5d"; */
-"2QI-ne-N5d.title" = "ThreadsThreads";
+"2QI-ne-N5d.title" = "Threads";
/* Class = "NSTextFieldCell"; title = "Iterations"; ObjectID = "2ZA-Gc-JdZ"; */
-"2ZA-Gc-JdZ.title" = "WiederholungenWiederholungen";
+"2ZA-Gc-JdZ.title" = "Wiederholungen";
/* Class = "NSTextFieldCell"; title = "Enforce key change"; ObjectID = "5QH-N1-FHK"; */
-"5QH-N1-FHK.title" = "Erzwingen der Änderung des SchlüsselsErzwingen der Änderung des Schlüssels";
+"5QH-N1-FHK.title" = "Erzwingen der Änderung des Schlüssels";
/* Class = "NSTabViewItem"; label = "Argon2"; ObjectID = "6qB-sH-9FI"; */
"6qB-sH-9FI.label" = "Argon 2";
@@ -32,14 +32,11 @@
"370.label" = "Sicherheit";
/* Class = "NSButtonCell"; title = "Enable Entry History"; ObjectID = "532"; */
-"532.title" = "Eintragsversionen aktivieren";
+"532.title" = "Historie für Einträge aktivieren";
/* Class = "NSButtonCell"; title = "Enable Recycle Bin"; ObjectID = "536"; */
"536.title" = "Papierkorb aktivieren";
-/* (No Comment) */
-"540.title" = "Papierkorb beim Beenden leeren";
-
/* Class = "NSTextFieldCell"; title = "Maximum items in history:"; ObjectID = "558"; */
"558.title" = "Maximale Einträge:";
@@ -79,18 +76,6 @@
/* Class = "NSMenu"; title = "OtherViews"; ObjectID = "1740"; */
"1740.title" = "OtherViews";
-/* Class = "NSMenuItem"; title = "Item 1"; ObjectID = "1741"; */
-"1741.title" = "Eintrag 1";
-
-/* Class = "NSMenuItem"; title = "Item 2"; ObjectID = "1742"; */
-"1742.title" = "Eintrag 2";
-
-/* Class = "NSMenuItem"; title = "Item 3"; ObjectID = "1743"; */
-"1743.title" = "Eintrag 3";
-
-/* (No Comment) */
-"1775.title" = "Benchmark";
-
/* Class = "NSButtonCell"; title = "Recommend key change"; ObjectID = "CtU-Eq-dgy"; */
"CtU-Eq-dgy.title" = "Änderung des Schlüssels empfehlen";
diff --git a/MacPass/en.lproj/DatabaseSettingsWindow.strings b/MacPass/en.lproj/DatabaseSettingsWindow.strings
index 76fb9ce5..6ab46019 100644
--- a/MacPass/en.lproj/DatabaseSettingsWindow.strings
+++ b/MacPass/en.lproj/DatabaseSettingsWindow.strings
@@ -26,9 +26,6 @@
/* Class = "NSButtonCell"; title = "Enable Recycle Bin"; ObjectID = "536"; */
"536.title" = "Enable Recycle Bin";
-/* Class = "NSButtonCell"; title = "Empty Recycle Bin on Quit"; ObjectID = "540"; */
-"540.title" = "Empty Recycle Bin on Quit";
-
/* Class = "NSTextFieldCell"; title = "Maximum Items:"; ObjectID = "558"; */
"558.title" = "Maximum Items:";
@@ -67,6 +64,3 @@
/* Class = "NSMenu"; title = "OtherViews"; ObjectID = "1740"; */
"1740.title" = "OtherViews";
-
-/* Class = "NSButtonCell"; title = "Benchmark"; ObjectID = "1775"; */
-"1775.title" = "Benchmark";