change translation keys to use unified dialog scheme

This commit is contained in:
Armin Schrenk
2022-06-29 10:07:03 +02:00
parent 737d98775b
commit dffd4d9dd9
18 changed files with 59 additions and 56 deletions

View File

@@ -81,7 +81,7 @@ abstract class HealthCheckModule {
Stage stage = factory.create();
stage.initModality(Modality.WINDOW_MODAL);
stage.initOwner(window);
stage.setTitle(String.format(resourceBundle.getString("unlock.windowTitle"), vault.getDisplayName()));
stage.setTitle(String.format(resourceBundle.getString("unlock.title"), vault.getDisplayName()));
stage.setResizable(false);
return stage;
}

View File

@@ -34,7 +34,7 @@ abstract class QuitModule {
@QuitScoped
static Stage provideStage(StageFactory factory, ResourceBundle resourceBundle) {
Stage stage = factory.create();
stage.setTitle(resourceBundle.getString("quit.windowTitle"));
stage.setTitle(resourceBundle.getString("quit.title"));
stage.setMinWidth(300);
stage.setMinHeight(100);
stage.initModality(Modality.APPLICATION_MODAL);

View File

@@ -20,6 +20,7 @@ import javafx.fxml.FXML;
import javafx.scene.Scene;
import javafx.stage.Stage;
import java.io.IOException;
import java.util.ResourceBundle;
import java.util.concurrent.ExecutorService;
@RecoveryKeyScoped
@@ -37,8 +38,9 @@ public class RecoveryKeyCreationController implements FxController {
public NiceSecurePasswordField passwordField;
@Inject
public RecoveryKeyCreationController(@RecoveryKeyWindow Stage window, @FxmlScene(FxmlFile.RECOVERYKEY_SUCCESS) Lazy<Scene> successScene, @RecoveryKeyWindow Vault vault, RecoveryKeyFactory recoveryKeyFactory, ExecutorService executor, @RecoveryKeyWindow StringProperty recoveryKey, FxApplicationWindows appWindows) {
public RecoveryKeyCreationController(@RecoveryKeyWindow Stage window, @FxmlScene(FxmlFile.RECOVERYKEY_SUCCESS) Lazy<Scene> successScene, @RecoveryKeyWindow Vault vault, RecoveryKeyFactory recoveryKeyFactory, ExecutorService executor, @RecoveryKeyWindow StringProperty recoveryKey, FxApplicationWindows appWindows, ResourceBundle resourceBundle) {
this.window = window;
window.setTitle(resourceBundle.getString("recoveryKey.display.title"));
this.successScene = successScene;
this.vault = vault;
this.executor = executor;

View File

@@ -53,9 +53,8 @@ abstract class RecoveryKeyModule {
@Provides
@RecoveryKeyWindow
@RecoveryKeyScoped
static Stage provideStage(StageFactory factory, ResourceBundle resourceBundle, @Named("keyRecoveryOwner") Stage owner) {
static Stage provideStage(StageFactory factory, @Named("keyRecoveryOwner") Stage owner) {
Stage stage = factory.create();
stage.setTitle(resourceBundle.getString("recoveryKey.title"));
stage.setResizable(false);
stage.initModality(Modality.WINDOW_MODAL);
stage.initOwner(owner);

View File

@@ -26,6 +26,7 @@ import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.stage.Stage;
import java.util.Optional;
import java.util.ResourceBundle;
@RecoveryKeyScoped
public class RecoveryKeyRecoverController implements FxController {
@@ -45,8 +46,9 @@ public class RecoveryKeyRecoverController implements FxController {
public TextArea textarea;
@Inject
public RecoveryKeyRecoverController(@RecoveryKeyWindow Stage window, @RecoveryKeyWindow Vault vault, @RecoveryKeyWindow @Nullable VaultConfig.UnverifiedVaultConfig unverifiedVaultConfig, @RecoveryKeyWindow StringProperty recoveryKey, RecoveryKeyFactory recoveryKeyFactory, @FxmlScene(FxmlFile.RECOVERYKEY_RESET_PASSWORD) Lazy<Scene> resetPasswordScene) {
public RecoveryKeyRecoverController(@RecoveryKeyWindow Stage window, @RecoveryKeyWindow Vault vault, @RecoveryKeyWindow @Nullable VaultConfig.UnverifiedVaultConfig unverifiedVaultConfig, @RecoveryKeyWindow StringProperty recoveryKey, RecoveryKeyFactory recoveryKeyFactory, @FxmlScene(FxmlFile.RECOVERYKEY_RESET_PASSWORD) Lazy<Scene> resetPasswordScene, ResourceBundle resourceBundle) {
this.window = window;
window.setTitle(resourceBundle.getString("recoveryKey.recover.title"));
this.vault = vault;
this.unverifiedVaultConfig = unverifiedVaultConfig;
this.recoveryKey = recoveryKey;

View File

@@ -36,7 +36,7 @@ abstract class RemoveVaultModule {
@RemoveVaultScoped
static Stage provideStage(StageFactory factory, @PrimaryStage Stage primaryStage, @RemoveVaultWindow Vault v, ResourceBundle resourceBundle) {
Stage stage = factory.create();
stage.setTitle(String.format(resourceBundle.getString("removeVault.windowTitle"),v.getDisplayName()));
stage.setTitle(String.format(resourceBundle.getString("removeVault.title"),v.getDisplayName()));
stage.setResizable(false);
stage.initModality(Modality.WINDOW_MODAL);
stage.initOwner(primaryStage);

View File

@@ -35,7 +35,7 @@ abstract class WrongFileAlertModule {
@WrongFileAlertScoped
static Stage provideStage(StageFactory factory, @PrimaryStage Stage primaryStage, ResourceBundle resourceBundle) {
Stage stage = factory.create();
stage.setTitle(resourceBundle.getString("wrongFileAlert.windowTitle"));
stage.setTitle(resourceBundle.getString("wrongFileAlert.title"));
stage.setResizable(false);
stage.initOwner(primaryStage);
stage.initModality(Modality.WINDOW_MODAL);

View File

@@ -30,14 +30,14 @@
<FontAwesome5IconView styleClass="glyph-icon-white" glyph="EXCLAMATION" glyphSize="24"/>
</StackPane>
<VBox spacing="6" HBox.hgrow="ALWAYS">
<FormattedLabel styleClass="label-extra-large" format="%generic.error.title" arg1="${controller.errorCode}"/>
<Label text="%generic.error.instruction" wrapText="true"/>
<Hyperlink styleClass="hyperlink-underline" text="%generic.error.hyperlink.lookup" onAction="#searchError" contentDisplay="LEFT">
<FormattedLabel styleClass="label-extra-large" format="%error.message" arg1="${controller.errorCode}"/>
<Label text="%error.description" wrapText="true"/>
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.lookup" onAction="#searchError" contentDisplay="LEFT">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
</Hyperlink>
<Hyperlink styleClass="hyperlink-underline" text="%generic.error.hyperlink.report" onAction="#reportError" contentDisplay="LEFT">
<Hyperlink styleClass="hyperlink-underline" text="%error.hyperlink.report" onAction="#reportError" contentDisplay="LEFT">
<graphic>
<FontAwesome5IconView glyph="LINK" glyphSize="12"/>
</graphic>
@@ -47,7 +47,7 @@
<VBox spacing="6" VBox.vgrow="ALWAYS">
<HBox>
<Label text="%generic.error.technicalDetails"/>
<Label text="%error.technicalDetails"/>
<Region HBox.hgrow="ALWAYS"/>
<Hyperlink styleClass="hyperlink-underline" text="%generic.button.copy" onAction="#copyDetails" contentDisplay="LEFT" visible="${!controller.copiedDetails}" managed="${!controller.copiedDetails}">
<graphic>

View File

@@ -34,7 +34,7 @@
</StackPane>
</Group>
<VBox HBox.hgrow="ALWAYS">
<Label styleClass="label-large" text="%lock.fail.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%lock.fail.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>

View File

@@ -34,8 +34,7 @@
</StackPane>
</Group>
<VBox HBox.hgrow="ALWAYS">
<!-- TODO: migrate translations -->
<Label styleClass="label-large" text="%lock.forced.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%lock.forced.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>

View File

@@ -35,19 +35,19 @@
</Group>
<VBox HBox.hgrow="ALWAYS">
<Label styleClass="label-large" text="%quit.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%quit.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>
</Label>
<Label text="%quit.prompt" wrapText="true" textAlignment="LEFT"/>
<Label text="%quit.description" wrapText="true" textAlignment="LEFT"/>
<Region VBox.vgrow="ALWAYS" minHeight="18"/>
<ButtonBar buttonMinWidth="120" buttonOrder="+CI">
<buttons>
<Button text="%generic.button.cancel" ButtonBar.buttonData="CANCEL_CLOSE" defaultButton="true" cancelButton="true" onAction="#cancel"/>
<Button fx:id="lockAndQuitButton" text="%quit.lockAndQuit" ButtonBar.buttonData="FINISH" onAction="#lockAndQuit" contentDisplay="TEXT_ONLY">
<Button fx:id="lockAndQuitButton" text="%quit.lockAndQuitBtn" ButtonBar.buttonData="FINISH" onAction="#lockAndQuit" contentDisplay="TEXT_ONLY">
<graphic>
<FontAwesome5Spinner glyphSize="12"/>
</graphic>

View File

@@ -35,12 +35,12 @@
</StackPane>
</Group>
<VBox HBox.hgrow="ALWAYS">
<Label styleClass="label-large" text="%recoveryKey.create.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%recoveryKey.create.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>
</Label>
<FormattedLabel format="%recoveryKey.enterPassword.prompt" arg1="${controller.vault.displayName}" wrapText="true">
<FormattedLabel format="%recoveryKey.create.description" arg1="${controller.vault.displayName}" wrapText="true">
<padding>
<Insets bottom="6"/>
</padding>

View File

@@ -33,8 +33,7 @@
</StackPane>
</Group>
<VBox HBox.hgrow="ALWAYS">
<!-- TODO: migrate translations -->
<Label styleClass="label-large" text="%removeVault.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%removeVault.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>

View File

@@ -34,7 +34,7 @@
</StackPane>
</Group>
<VBox HBox.hgrow="ALWAYS">
<Label styleClass="label-large" text="%unlock.error.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%unlock.error.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>

View File

@@ -34,8 +34,7 @@
</StackPane>
</Group>
<VBox HBox.hgrow="ALWAYS">
<!-- TODO: migrate translations -->
<Label styleClass="label-large" text="%unlock.chooseMasterkey.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%unlock.chooseMasterkey.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>
@@ -46,7 +45,7 @@
<ButtonBar buttonMinWidth="120" buttonOrder="+CX">
<buttons>
<Button text="%generic.button.cancel" ButtonBar.buttonData="CANCEL_CLOSE" cancelButton="true" onAction="#cancel"/>
<Button text="%unlock.chooseMasterkey.chooseBtn" ButtonBar.buttonData="NEXT_FORWARD" defaultButton="true" onAction="#proceed"/>
<Button text="%generic.button.choose" ButtonBar.buttonData="NEXT_FORWARD" defaultButton="true" onAction="#proceed"/>
</buttons>
</ButtonBar>
</VBox>

View File

@@ -37,13 +37,13 @@
</Group>
<VBox HBox.hgrow="ALWAYS">
<Label styleClass="label-large" text="%unlock.success.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%unlock.success.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>
</Label>
<FormattedLabel format="%unlock.success.message" arg1="${controller.vault.displayName}" wrapText="true"/>
<FormattedLabel format="%unlock.success.description" arg1="${controller.vault.displayName}" wrapText="true"/>
<CheckBox text="%unlock.success.rememberChoice" fx:id="rememberChoiceCheckbox">
<padding>

View File

@@ -38,8 +38,7 @@
</StackPane>
</Group>
<VBox HBox.hgrow="ALWAYS">
<!-- TODO: migrate translations -->
<Label styleClass="label-large" text="%wrongFileAlert.title" wrapText="true" textAlignment="LEFT">
<Label styleClass="label-large" text="%wrongFileAlert.message" wrapText="true" textAlignment="LEFT">
<padding>
<Insets bottom="6" top="6"/>
</padding>

View File

@@ -7,18 +7,20 @@ generic.button.apply=Apply
generic.button.back=Back
generic.button.cancel=Cancel
generic.button.change=Change
generic.button.choose=Choose…
generic.button.close=Close
generic.button.copy=Copy
generic.button.copied=Copied!
generic.button.done=Done
generic.button.next=Next
generic.button.print=Print
## Error
generic.error.title=Error %s
generic.error.instruction=Oops! Cryptomator didn't expect this to happen. You can look up existing solutions for this error. Or if it has not been reported yet, feel free to do so.
generic.error.hyperlink.lookup=Look up this error
generic.error.hyperlink.report=Report this error
generic.error.technicalDetails=Details:
# Error
error.message=An Error Occurred
error.description=Cryptomator didn't expect this to happen. You can look up existing solutions for this error. Or if it has not been reported yet, feel free to do so.
error.hyperlink.lookup=Look up this error
error.hyperlink.report=Report this error
error.technicalDetails=Details:
# Defaults
defaults.vault.vaultName=Vault
@@ -85,8 +87,8 @@ addvaultwizard.success.nextStepsInstructions=Added vault "%s".\nYou need to unlo
addvaultwizard.success.unlockNow=Unlock Now
# Remove Vault
removeVault.windowTitle=Remove "%s"
removeVault.title=Remove Vault?
removeVault.title=Remove "%s"
removeVault.message=Remove Vault?
removeVault.description=This will only make Cryptomator forget about this vault. You can add it again. No encrypted files will be deleted from your hard drive.
removeVault.confirmBtn=Remove Vault
@@ -101,23 +103,22 @@ forgetPassword.information=This will delete the saved password of this vault fro
forgetPassword.confirmBtn=Forget Password
# Unlock
unlock.windowTitle=Unlock "%s"
unlock.title=Unlock "%s"
unlock.passwordPrompt=Enter password for "%s":
unlock.savePassword=Remember Password
unlock.unlockBtn=Unlock
## Select
unlock.chooseMasterkey.title=Masterkey file not found
unlock.chooseMasterkey.message=Masterkey file not found
unlock.chooseMasterkey.description=Cryptomator could not find the masterkey file for vault "%s". Please choose the key file manually.
unlock.chooseMasterkey.chooseBtn=Choose…
unlock.chooseMasterkey.filePickerTitle=Select Masterkey File
unlock.chooseMasterkey.filePickerMimeDesc=Cryptomator Masterkey
## Success
unlock.success.title=Unlock successful
unlock.success.message=Content in vault "%s" is now accessible over its mount point.
unlock.success.message=Unlock successful
unlock.success.description=Content in vault "%s" is now accessible over its mount point.
unlock.success.rememberChoice=Remember my choice, don't ask again
unlock.success.revealBtn=Reveal Drive
## Failure
unlock.error.title=Unable to unlock vault
unlock.error.message=Unable to unlock vault
### Invalid Mount Point
unlock.error.invalidMountPoint.notExisting=Mount point "%s" is not a directory, not empty or does not exist.
unlock.error.invalidMountPoint.existing=Mount point "%s" already exists or parent folder is missing.
@@ -125,12 +126,12 @@ unlock.error.invalidMountPoint.driveLetterOccupied=Drive Letter "%s" is already
# Lock
## Force
lock.forced.title=Lock failed
lock.forced.message=Lock failed
lock.forced.description=Locking "%s" was blocked by pending operations or open files. You can force lock this vault, however interrupting I/O may result in the loss of unsaved data.
lock.forced.retryBtn=Retry
lock.forced.forceBtn=Force Lock
## Failure
lock.fail.title=Locking vault failed.
lock.fail.message=Locking vault failed.
lock.fail.description=Vault "%s" could not be locked. Ensure unsaved work is saved elsewhere and important Read/Write operations are finished. In order to close the vault, kill the Cryptomator process.
# Migration
@@ -318,8 +319,8 @@ main.vaultDetail.error.reload=Reload
main.vaultDetail.error.windowTitle=Error loading vault
# Wrong File Alert
wrongFileAlert.windowTitle=How to Encrypt Files
wrongFileAlert.title=Did you attempt to encrypt these files?
wrongFileAlert.title=How to Encrypt Files
wrongFileAlert.message=Did you attempt to encrypt these files?
wrongFileAlert.description=For this purpose, Cryptomator provides a volume in your system file manager.
wrongFileAlert.instruction.0=To encrypt files, follow these steps:
wrongFileAlert.instruction.1=1. Unlock your vault.
@@ -361,11 +362,14 @@ vaultOptions.masterkey.recoverPasswordBtn=Recover Password
# Recovery Key
recoveryKey.title=Recovery Key
recoveryKey.create.title=Password required
recoveryKey.enterPassword.prompt=Enter the password for "%s" to show its recovery key.
## Display Recovery Key
recoveryKey.display.title=Show Recovery Key
recoveryKey.create.message=Password required
recoveryKey.create.description=Enter the password for "%s" to show its recovery key.
recoveryKey.display.message=The following recovery key can be used to restore access to "%s":
recoveryKey.display.StorageHints=Keep it somewhere very secure, e.g.:\n • Store it using a password manager\n • Save it on a USB flash drive\n • Print it on paper
## Recover Vault
recoveryKey.recover.title=Recover Vault
recoveryKey.recover.prompt=Enter your recovery key for "%s":
recoveryKey.recover.validKey=This is a valid recovery key
recoveryKey.printout.heading=Cryptomator Recovery Key\n"%s"\n
@@ -383,7 +387,7 @@ passwordStrength.messageLabel.3=Strong
passwordStrength.messageLabel.4=Very strong
# Quit
quit.windowTitle=Quit Application
quit.title=There are unlocked vaults
quit.prompt=Please confirm that you want to quit. Cryptomator will gracefully lock all unlocked vaults to prevent data loss.
quit.lockAndQuit=Lock and Quit
quit.title=Quit Application
quit.message=There are unlocked vaults
quit.description=Please confirm that you want to quit. Cryptomator will gracefully lock all unlocked vaults to prevent data loss.
quit.lockAndQuitBtn=Lock and Quit