소스 검색

New Tab AutoLock in VaultOptions

Martin Beyer 4 년 전
부모
커밋
c82e5577a1

+ 1 - 0
main/ui/src/main/java/org/cryptomator/ui/controls/FontAwesome5Icon.java

@@ -41,6 +41,7 @@ public enum FontAwesome5Icon {
 	TIMES("\uF00D"), //
 	TRASH("\uF1F8"), //
 	UNLINK("\uf127"), //
+	USER_LOCK("\uF502"), //
 	WRENCH("\uF0AD"), //
 	WINDOW_MINIMIZE("\uF2D1"), //
 	;

+ 6 - 0
main/ui/src/main/java/org/cryptomator/ui/vaultoptions/SelectedVaultOptionsTab.java

@@ -20,4 +20,10 @@ public enum SelectedVaultOptionsTab {
 	 * Show password tab
 	 */
 	KEY,
+
+	/**
+	 * Show Auto-Lock tab
+	 *
+	 */
+	AUTOLOCK,
 }

+ 2 - 0
main/ui/src/main/java/org/cryptomator/ui/vaultoptions/VaultOptionsController.java

@@ -23,6 +23,7 @@ public class VaultOptionsController implements FxController {
 	public Tab generalTab;
 	public Tab mountTab;
 	public Tab keyTab;
+	public Tab autoLockTab;
 
 	@Inject
 	VaultOptionsController(@VaultOptionsWindow Stage window, ObjectProperty<SelectedVaultOptionsTab> selectedTabProperty) {
@@ -47,6 +48,7 @@ public class VaultOptionsController implements FxController {
 			case ANY, GENERAL -> generalTab;
 			case MOUNT -> mountTab;
 			case KEY -> keyTab;
+			case AUTOLOCK ->  autoLockTab;
 		};
 	}
 

+ 5 - 0
main/ui/src/main/java/org/cryptomator/ui/vaultoptions/VaultOptionsModule.java

@@ -84,4 +84,9 @@ abstract class VaultOptionsModule {
 	@FxControllerKey(MasterkeyOptionsController.class)
 	abstract FxController bindMasterkeyOptionsController(MasterkeyOptionsController controller);
 
+	@Binds
+	@IntoMap
+	@FxControllerKey(AutoLockVaultOptionsController.class)
+	abstract FxController bindAutoLockVaultOptionsController(AutoLockVaultOptionsController controller);
+
 }

+ 8 - 0
main/ui/src/main/resources/fxml/vault_options.fxml

@@ -36,5 +36,13 @@
 				<fx:include source="/fxml/vault_options_masterkey.fxml"/>
 			</content>
 		</Tab>
+		<Tab fx:id="autoLockTab" id="AUTOLOCK" text="%vaultOptions.autoLock">
+			<graphic>
+				<FontAwesome5IconView glyph="USER_LOCK"/>
+			</graphic>
+			<content>
+				<fx:include source="/fxml/vault_options_autolock.fxml"/>
+			</content>
+		</Tab>
 	</tabs>
 </TabPane>

+ 12 - 0
main/ui/src/main/resources/fxml/vault_options_autolock.fxml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<?import javafx.scene.layout.VBox?>
+<?import javafx.geometry.Insets?>
+<VBox xmlns:fx="http://javafx.com/fxml"
+	  xmlns="http://javafx.com/javafx"
+	  fx:controller="org.cryptomator.ui.vaultoptions.AutoLockVaultOptionsController"
+	  spacing="6">
+	<padding>
+		<Insets topRightBottomLeft="12"/>
+	</padding>
+</VBox>

+ 2 - 0
main/ui/src/main/resources/i18n/strings.properties

@@ -292,6 +292,8 @@ vaultOptions.masterkey.forgetSavedPasswordBtn=Forget Saved Password
 vaultOptions.masterkey.recoveryKeyExpanation=A recovery key is your only means to restore access to a vault if you lose your password.
 vaultOptions.masterkey.showRecoveryKeyBtn=Display Recovery Key
 vaultOptions.masterkey.recoverPasswordBtn=Recover Password
+## Auto Lock
+vaultOptions.autoLock=Auto-Lock
 
 # Recovery Key
 recoveryKey.title=Recovery Key