mirror of
https://github.com/cryptomator/cryptomator.git
synced 2026-09-23 16:34:34 +00:00
Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
845189c638 |
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.14</version>
|
<version>1.6.0-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>buildkit</artifactId>
|
<artifactId>buildkit</artifactId>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.14</version>
|
<version>1.6.0-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>commons</artifactId>
|
<artifactId>commons</artifactId>
|
||||||
<name>Cryptomator Commons</name>
|
<name>Cryptomator Commons</name>
|
||||||
|
|||||||
@@ -45,9 +45,7 @@ public class FuseVolume extends AbstractVolume {
|
|||||||
try {
|
try {
|
||||||
Mounter mounter = FuseMountFactory.getMounter();
|
Mounter mounter = FuseMountFactory.getMounter();
|
||||||
EnvironmentVariables envVars = EnvironmentVariables.create() //
|
EnvironmentVariables envVars = EnvironmentVariables.create() //
|
||||||
.withFlags(splitFlags(mountFlags)) //
|
.withFlags(splitFlags(mountFlags)).withMountPoint(mountPoint) //
|
||||||
.withMountPoint(mountPoint) //
|
|
||||||
.withFileNameTranscoder(mounter.defaultFileNameTranscoder()) //
|
|
||||||
.build();
|
.build();
|
||||||
this.mount = mounter.mount(root, envVars);
|
this.mount = mounter.mount(root, envVars);
|
||||||
} catch (CommandFailedException | FuseNotSupportedException e) {
|
} catch (CommandFailedException | FuseNotSupportedException e) {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.14</version>
|
<version>1.6.0-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>launcher</artifactId>
|
<artifactId>launcher</artifactId>
|
||||||
<name>Cryptomator Launcher</name>
|
<name>Cryptomator Launcher</name>
|
||||||
|
|||||||
+10
-4
@@ -3,7 +3,7 @@
|
|||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.14</version>
|
<version>1.6.0-SNAPSHOT</version>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<name>Cryptomator</name>
|
<name>Cryptomator</name>
|
||||||
|
|
||||||
@@ -30,14 +30,14 @@
|
|||||||
<cryptomator.integrations.win.version>1.0.0-beta2</cryptomator.integrations.win.version>
|
<cryptomator.integrations.win.version>1.0.0-beta2</cryptomator.integrations.win.version>
|
||||||
<cryptomator.integrations.mac.version>1.0.0-beta2</cryptomator.integrations.mac.version>
|
<cryptomator.integrations.mac.version>1.0.0-beta2</cryptomator.integrations.mac.version>
|
||||||
<cryptomator.integrations.linux.version>1.0.0-beta1</cryptomator.integrations.linux.version>
|
<cryptomator.integrations.linux.version>1.0.0-beta1</cryptomator.integrations.linux.version>
|
||||||
<cryptomator.fuse.version>1.3.0</cryptomator.fuse.version>
|
<cryptomator.fuse.version>1.2.9</cryptomator.fuse.version>
|
||||||
<cryptomator.dokany.version>1.2.4</cryptomator.dokany.version>
|
<cryptomator.dokany.version>1.2.4</cryptomator.dokany.version>
|
||||||
<cryptomator.webdav.version>1.2.0</cryptomator.webdav.version>
|
<cryptomator.webdav.version>1.1.4</cryptomator.webdav.version>
|
||||||
|
|
||||||
<!-- 3rd party dependencies -->
|
<!-- 3rd party dependencies -->
|
||||||
<javafx.version>15</javafx.version>
|
<javafx.version>15</javafx.version>
|
||||||
<commons-lang3.version>3.11</commons-lang3.version>
|
<commons-lang3.version>3.11</commons-lang3.version>
|
||||||
<jwt.version>3.13.0</jwt.version>
|
<jwt.version>3.12.0</jwt.version>
|
||||||
<easybind.version>2.1.0</easybind.version>
|
<easybind.version>2.1.0</easybind.version>
|
||||||
<guava.version>30.0-jre</guava.version>
|
<guava.version>30.0-jre</guava.version>
|
||||||
<dagger.version>2.32</dagger.version>
|
<dagger.version>2.32</dagger.version>
|
||||||
@@ -218,6 +218,12 @@
|
|||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<!-- TODO: temporary fix for XXE attack, can be removed once java-jwt is updated -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.fasterxml.jackson.core</groupId>
|
||||||
|
<artifactId>jackson-databind</artifactId>
|
||||||
|
<version>2.10.5.1</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</dependencyManagement>
|
</dependencyManagement>
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,11 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- This file lists false positives found by org.owasp:dependency-check-maven build plugin -->
|
<!-- This file lists false positives found by org.owasp:dependency-check-maven build plugin -->
|
||||||
<suppressions xmlns="https://jeremylong.github.io/DependencyCheck/dependency-suppression.1.2.xsd">
|
<suppressions xmlns="https://jeremylong.github.io/DependencyCheck/dependency-suppression.1.2.xsd">
|
||||||
|
<suppress>
|
||||||
|
<notes><![CDATA[ Upstream fix backported from 2.11.0 to 2.10.5.1, see https://github.com/FasterXML/jackson-databind/issues/2589#issuecomment-714833837. ]]></notes>
|
||||||
|
<gav>com.fasterxml.jackson.core:jackson-databind:2.10.5.1</gav>
|
||||||
|
<cve>CVE-2020-25649</cve>
|
||||||
|
</suppress>
|
||||||
<suppress>
|
<suppress>
|
||||||
<notes><![CDATA[ Suppress known vulnerabilities in FUSE libraries for fuse-nio-adapter. For more info, see suppression.xml of https://github.com/cryptomator/fuse-nio-adapter ]]></notes>
|
<notes><![CDATA[ Suppress known vulnerabilities in FUSE libraries for fuse-nio-adapter. For more info, see suppression.xml of https://github.com/cryptomator/fuse-nio-adapter ]]></notes>
|
||||||
<gav regex="true">^org\.cryptomator:fuse-nio-adapter:.*$</gav>
|
<gav regex="true">^org\.cryptomator:fuse-nio-adapter:.*$</gav>
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.cryptomator</groupId>
|
<groupId>org.cryptomator</groupId>
|
||||||
<artifactId>main</artifactId>
|
<artifactId>main</artifactId>
|
||||||
<version>1.5.14</version>
|
<version>1.6.0-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>ui</artifactId>
|
<artifactId>ui</artifactId>
|
||||||
<name>Cryptomator GUI</name>
|
<name>Cryptomator GUI</name>
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ import javafx.beans.property.StringProperty;
|
|||||||
import javafx.concurrent.ScheduledService;
|
import javafx.concurrent.ScheduledService;
|
||||||
import javafx.concurrent.Task;
|
import javafx.concurrent.Task;
|
||||||
import javafx.util.Duration;
|
import javafx.util.Duration;
|
||||||
import java.io.UncheckedIOException;
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.net.http.HttpClient;
|
import java.net.http.HttpClient;
|
||||||
import java.net.http.HttpRequest;
|
import java.net.http.HttpRequest;
|
||||||
@@ -40,13 +39,8 @@ public abstract class UpdateCheckerModule {
|
|||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
@FxApplicationScoped
|
@FxApplicationScoped
|
||||||
static Optional<HttpClient> provideHttpClient() {
|
static HttpClient provideHttpClient() {
|
||||||
try {
|
return HttpClient.newHttpClient();
|
||||||
return Optional.of(HttpClient.newHttpClient());
|
|
||||||
} catch (UncheckedIOException e) {
|
|
||||||
LOG.error("HttpClient for update check cannot be created.", e);
|
|
||||||
return Optional.empty();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
@@ -72,20 +66,11 @@ public abstract class UpdateCheckerModule {
|
|||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
@FxApplicationScoped
|
@FxApplicationScoped
|
||||||
static ScheduledService<String> provideCheckForUpdatesService(ExecutorService executor, Optional<HttpClient> httpClient, HttpRequest checkForUpdatesRequest, @Named("checkForUpdatesInterval") ObjectBinding<Duration> period) {
|
static ScheduledService<String> provideCheckForUpdatesService(ExecutorService executor, HttpClient httpClient, HttpRequest checkForUpdatesRequest, @Named("checkForUpdatesInterval") ObjectBinding<Duration> period) {
|
||||||
ScheduledService<String> service = new ScheduledService<>() {
|
ScheduledService<String> service = new ScheduledService<>() {
|
||||||
@Override
|
@Override
|
||||||
protected Task<String> createTask() {
|
protected Task<String> createTask() {
|
||||||
if (httpClient.isPresent()) {
|
return new UpdateCheckerTask(httpClient, checkForUpdatesRequest);
|
||||||
return new UpdateCheckerTask(httpClient.get(), checkForUpdatesRequest);
|
|
||||||
} else {
|
|
||||||
return new Task<>() {
|
|
||||||
@Override
|
|
||||||
protected String call() {
|
|
||||||
throw new NullPointerException("No HttpClient present.");
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
service.setOnFailed(event -> LOG.error("Failed to execute update service", service.getException()));
|
service.setOnFailed(event -> LOG.error("Failed to execute update service", service.getException()));
|
||||||
|
|||||||
@@ -86,11 +86,6 @@ abstract class MainWindowModule {
|
|||||||
@FxControllerKey(VaultListController.class)
|
@FxControllerKey(VaultListController.class)
|
||||||
abstract FxController bindVaultListController(VaultListController controller);
|
abstract FxController bindVaultListController(VaultListController controller);
|
||||||
|
|
||||||
@Binds
|
|
||||||
@IntoMap
|
|
||||||
@FxControllerKey(VaultListContextMenuController.class)
|
|
||||||
abstract FxController bindVaultListContextMenuController(VaultListContextMenuController controller);
|
|
||||||
|
|
||||||
@Binds
|
@Binds
|
||||||
@IntoMap
|
@IntoMap
|
||||||
@FxControllerKey(VaultDetailController.class)
|
@FxControllerKey(VaultDetailController.class)
|
||||||
|
|||||||
-135
@@ -1,135 +0,0 @@
|
|||||||
package org.cryptomator.ui.mainwindow;
|
|
||||||
|
|
||||||
import com.tobiasdiez.easybind.EasyBind;
|
|
||||||
import com.tobiasdiez.easybind.optional.ObservableOptionalValue;
|
|
||||||
import com.tobiasdiez.easybind.optional.OptionalBinding;
|
|
||||||
import org.cryptomator.common.keychain.KeychainManager;
|
|
||||||
import org.cryptomator.common.vaults.Vault;
|
|
||||||
import org.cryptomator.common.vaults.VaultState;
|
|
||||||
import org.cryptomator.ui.common.FxController;
|
|
||||||
import org.cryptomator.ui.fxapp.FxApplication;
|
|
||||||
import org.cryptomator.ui.removevault.RemoveVaultComponent;
|
|
||||||
import org.cryptomator.ui.vaultoptions.SelectedVaultOptionsTab;
|
|
||||||
import org.cryptomator.ui.vaultoptions.VaultOptionsComponent;
|
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import javafx.beans.binding.Binding;
|
|
||||||
import javafx.beans.binding.Bindings;
|
|
||||||
import javafx.beans.property.ObjectProperty;
|
|
||||||
import javafx.fxml.FXML;
|
|
||||||
import javafx.stage.Stage;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.EnumSet;
|
|
||||||
import java.util.Optional;
|
|
||||||
|
|
||||||
import static org.cryptomator.common.vaults.VaultState.ERROR;
|
|
||||||
import static org.cryptomator.common.vaults.VaultState.LOCKED;
|
|
||||||
import static org.cryptomator.common.vaults.VaultState.MISSING;
|
|
||||||
import static org.cryptomator.common.vaults.VaultState.NEEDS_MIGRATION;
|
|
||||||
import static org.cryptomator.common.vaults.VaultState.UNLOCKED;
|
|
||||||
|
|
||||||
@MainWindowScoped
|
|
||||||
public class VaultListContextMenuController implements FxController {
|
|
||||||
|
|
||||||
private final ObservableOptionalValue<Vault> selectedVault;
|
|
||||||
private final Stage mainWindow;
|
|
||||||
private final FxApplication application;
|
|
||||||
private final KeychainManager keychain;
|
|
||||||
private final RemoveVaultComponent.Builder removeVault;
|
|
||||||
private final VaultOptionsComponent.Builder vaultOptionsWindow;
|
|
||||||
private final OptionalBinding<VaultState> selectedVaultState;
|
|
||||||
private final Binding<Boolean> selectedVaultPassphraseStored;
|
|
||||||
private final Binding<Boolean> selectedVaultRemovable;
|
|
||||||
private final Binding<Boolean> selectedVaultUnlockable;
|
|
||||||
private final Binding<Boolean> selectedVaultLockable;
|
|
||||||
|
|
||||||
@Inject
|
|
||||||
VaultListContextMenuController(ObjectProperty<Vault> selectedVault, @MainWindow Stage mainWindow, FxApplication application, KeychainManager keychain, RemoveVaultComponent.Builder removeVault, VaultOptionsComponent.Builder vaultOptionsWindow) {
|
|
||||||
this.selectedVault = EasyBind.wrapNullable(selectedVault);
|
|
||||||
this.mainWindow = mainWindow;
|
|
||||||
this.application = application;
|
|
||||||
this.keychain = keychain;
|
|
||||||
this.removeVault = removeVault;
|
|
||||||
this.vaultOptionsWindow = vaultOptionsWindow;
|
|
||||||
|
|
||||||
this.selectedVaultState = this.selectedVault.mapObservable(Vault::stateProperty);
|
|
||||||
this.selectedVaultPassphraseStored = this.selectedVault.map(this::isPasswordStored).orElse(false);
|
|
||||||
this.selectedVaultRemovable = selectedVaultState.map(EnumSet.of(LOCKED, MISSING, ERROR, NEEDS_MIGRATION)::contains).orElse(false);
|
|
||||||
this.selectedVaultUnlockable = selectedVaultState.map(LOCKED::equals).orElse(false);
|
|
||||||
this.selectedVaultLockable = selectedVaultState.map(UNLOCKED::equals).orElse(false);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean isPasswordStored(Vault vault) {
|
|
||||||
return keychain.getPassphraseStoredProperty(vault.getId()).get();
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void didClickRemoveVault() {
|
|
||||||
selectedVault.ifValuePresent(v -> {
|
|
||||||
removeVault.vault(v).build().showRemoveVault();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void didClickShowVaultOptions() {
|
|
||||||
selectedVault.ifValuePresent(v -> {
|
|
||||||
vaultOptionsWindow.vault(v).build().showVaultOptionsWindow(SelectedVaultOptionsTab.ANY);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void didClickUnlockVault() {
|
|
||||||
selectedVault.ifValuePresent(v -> {
|
|
||||||
application.startUnlockWorkflow(v, Optional.of(mainWindow));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void didClickLockVault() {
|
|
||||||
selectedVault.ifValuePresent(v -> {
|
|
||||||
application.startLockWorkflow(v, Optional.of(mainWindow));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@FXML
|
|
||||||
public void didClickRevealVault() {
|
|
||||||
selectedVault.ifValuePresent(v -> {
|
|
||||||
application.getVaultService().reveal(v);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Getter and Setter
|
|
||||||
|
|
||||||
public Binding<Boolean> selectedVaultUnlockableProperty() {
|
|
||||||
return selectedVaultUnlockable;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSelectedVaultUnlockable() {
|
|
||||||
return selectedVaultUnlockable.getValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
public Binding<Boolean> selectedVaultLockableProperty() {
|
|
||||||
return selectedVaultLockable;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSelectedVaultLockable() {
|
|
||||||
return selectedVaultLockable.getValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
public Binding<Boolean> selectedVaultRemovableProperty() {
|
|
||||||
return selectedVaultRemovable;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSelectedVaultRemovable() {
|
|
||||||
return selectedVaultRemovable.getValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
public Binding<Boolean> selectedVaultPassphraseStoredProperty() {
|
|
||||||
return selectedVaultPassphraseStored;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSelectedVaultPassphraseStored() {
|
|
||||||
return selectedVaultPassphraseStored.getValue();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -4,6 +4,9 @@ import org.cryptomator.common.vaults.Vault;
|
|||||||
import org.cryptomator.common.vaults.VaultListManager;
|
import org.cryptomator.common.vaults.VaultListManager;
|
||||||
import org.cryptomator.ui.addvaultwizard.AddVaultWizardComponent;
|
import org.cryptomator.ui.addvaultwizard.AddVaultWizardComponent;
|
||||||
import org.cryptomator.ui.common.FxController;
|
import org.cryptomator.ui.common.FxController;
|
||||||
|
import org.cryptomator.ui.removevault.RemoveVaultComponent;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import javafx.beans.binding.Bindings;
|
import javafx.beans.binding.Bindings;
|
||||||
@@ -14,30 +17,30 @@ import javafx.collections.ListChangeListener;
|
|||||||
import javafx.collections.ObservableList;
|
import javafx.collections.ObservableList;
|
||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.scene.control.ListView;
|
import javafx.scene.control.ListView;
|
||||||
import javafx.scene.input.ContextMenuEvent;
|
|
||||||
import javafx.scene.input.MouseEvent;
|
|
||||||
|
|
||||||
@MainWindowScoped
|
@MainWindowScoped
|
||||||
public class VaultListController implements FxController {
|
public class VaultListController implements FxController {
|
||||||
|
|
||||||
|
private static final Logger LOG = LoggerFactory.getLogger(VaultListController.class);
|
||||||
|
|
||||||
private final ObservableList<Vault> vaults;
|
private final ObservableList<Vault> vaults;
|
||||||
private final ObjectProperty<Vault> selectedVault;
|
private final ObjectProperty<Vault> selectedVault;
|
||||||
private final VaultListCellFactory cellFactory;
|
private final VaultListCellFactory cellFactory;
|
||||||
private final AddVaultWizardComponent.Builder addVaultWizard;
|
private final AddVaultWizardComponent.Builder addVaultWizard;
|
||||||
|
private final RemoveVaultComponent.Builder removeVault;
|
||||||
|
private final BooleanBinding noVaultSelected;
|
||||||
private final BooleanBinding emptyVaultList;
|
private final BooleanBinding emptyVaultList;
|
||||||
|
|
||||||
public ListView<Vault> vaultList;
|
public ListView<Vault> vaultList;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
VaultListController(ObservableList<Vault> vaults, ObjectProperty<Vault> selectedVault, VaultListCellFactory cellFactory, AddVaultWizardComponent.Builder addVaultWizard) {
|
VaultListController(ObservableList<Vault> vaults, ObjectProperty<Vault> selectedVault, VaultListCellFactory cellFactory, AddVaultWizardComponent.Builder addVaultWizard, RemoveVaultComponent.Builder removeVault) {
|
||||||
this.vaults = vaults;
|
this.vaults = vaults;
|
||||||
this.selectedVault = selectedVault;
|
this.selectedVault = selectedVault;
|
||||||
this.cellFactory = cellFactory;
|
this.cellFactory = cellFactory;
|
||||||
this.addVaultWizard = addVaultWizard;
|
this.addVaultWizard = addVaultWizard;
|
||||||
|
this.removeVault = removeVault;
|
||||||
|
this.noVaultSelected = selectedVault.isNull();
|
||||||
this.emptyVaultList = Bindings.isEmpty(vaults);
|
this.emptyVaultList = Bindings.isEmpty(vaults);
|
||||||
|
|
||||||
selectedVault.addListener(this::selectedVaultDidChange);
|
selectedVault.addListener(this::selectedVaultDidChange);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -53,19 +56,6 @@ public class VaultListController implements FxController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
vaultList.addEventFilter(MouseEvent.MOUSE_RELEASED, this::deselect);
|
|
||||||
vaultList.addEventFilter(ContextMenuEvent.CONTEXT_MENU_REQUESTED, request -> {
|
|
||||||
if (selectedVault.get() == null) {
|
|
||||||
request.consume();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
private void deselect(MouseEvent released) {
|
|
||||||
if (released.getY() > (vaultList.getItems().size() * vaultList.fixedCellSizeProperty().get())) {
|
|
||||||
vaultList.getSelectionModel().clearSelection();
|
|
||||||
released.consume();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void selectedVaultDidChange(@SuppressWarnings("unused") ObservableValue<? extends Vault> observableValue, @SuppressWarnings("unused") Vault oldValue, Vault newValue) {
|
private void selectedVaultDidChange(@SuppressWarnings("unused") ObservableValue<? extends Vault> observableValue, @SuppressWarnings("unused") Vault oldValue, Vault newValue) {
|
||||||
@@ -80,6 +70,16 @@ public class VaultListController implements FxController {
|
|||||||
addVaultWizard.build().showAddVaultWizard();
|
addVaultWizard.build().showAddVaultWizard();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@FXML
|
||||||
|
public void didClickRemoveVault() {
|
||||||
|
Vault v = selectedVault.get();
|
||||||
|
if (v != null) {
|
||||||
|
removeVault.vault(v).build().showRemoveVault();
|
||||||
|
} else {
|
||||||
|
LOG.debug("Cannot remove a vault if none is selected.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Getter and Setter
|
// Getter and Setter
|
||||||
|
|
||||||
public BooleanBinding emptyVaultListProperty() {
|
public BooleanBinding emptyVaultListProperty() {
|
||||||
@@ -90,4 +90,11 @@ public class VaultListController implements FxController {
|
|||||||
return emptyVaultList.get();
|
return emptyVaultList.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public BooleanBinding noVaultSelectedProperty() {
|
||||||
|
return noVaultSelected;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isNoVaultSelected() {
|
||||||
|
return noVaultSelected.get();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,78 @@
|
|||||||
|
package org.cryptomator.ui.stats;
|
||||||
|
|
||||||
|
import javafx.beans.NamedArg;
|
||||||
|
import javafx.collections.ObservableList;
|
||||||
|
import javafx.geometry.Point2D;
|
||||||
|
import javafx.scene.Group;
|
||||||
|
import javafx.scene.chart.AreaChart;
|
||||||
|
import javafx.scene.chart.Axis;
|
||||||
|
import javafx.scene.shape.ClosePath;
|
||||||
|
import javafx.scene.shape.CubicCurveTo;
|
||||||
|
import javafx.scene.shape.LineTo;
|
||||||
|
import javafx.scene.shape.MoveTo;
|
||||||
|
import javafx.scene.shape.Path;
|
||||||
|
import javafx.scene.shape.PathElement;
|
||||||
|
|
||||||
|
// inspired by http://fxexperience.com/2012/01/curve-fitting-and-styling-areachart/
|
||||||
|
public class SmoothAreaChart extends AreaChart<Number, Number> {
|
||||||
|
|
||||||
|
public SmoothAreaChart(@NamedArg("xAxis") Axis<Number> xAxis, @NamedArg("yAxis") Axis<Number> yAxis) {
|
||||||
|
super(xAxis, yAxis);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void layoutPlotChildren() {
|
||||||
|
super.layoutPlotChildren();
|
||||||
|
var iter = getDisplayedSeriesIterator();
|
||||||
|
while (iter.hasNext()) {
|
||||||
|
var series = iter.next();
|
||||||
|
final Path seriesLine = (Path)((Group)series.getNode()).getChildren().get(1);
|
||||||
|
final Path fillPath = (Path)((Group)series.getNode()).getChildren().get(0);
|
||||||
|
var dx = getXAxis().getWidth() / series.getData().size();
|
||||||
|
smooth(seriesLine.getElements(), fillPath.getElements(), dx);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void smooth(ObservableList<PathElement> strokeElements, ObservableList<PathElement> fillElements, double dx) {
|
||||||
|
// as we do not have direct access to the data, first recreate the list of all the data points we have
|
||||||
|
final Point2D[] dataPoints = new Point2D[strokeElements.size()];
|
||||||
|
for (int i = 0; i < strokeElements.size(); i++) {
|
||||||
|
final PathElement element = strokeElements.get(i);
|
||||||
|
if (element instanceof MoveTo) {
|
||||||
|
final MoveTo move = (MoveTo)element;
|
||||||
|
dataPoints[i] = new Point2D(move.getX(), move.getY());
|
||||||
|
} else if (element instanceof LineTo) {
|
||||||
|
final LineTo line = (LineTo)element;
|
||||||
|
final double x = line.getX(), y = line.getY();
|
||||||
|
dataPoints[i] = new Point2D(x, y);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// next we need to know the zero Y value
|
||||||
|
final double zeroY = ((MoveTo) fillElements.get(0)).getY();
|
||||||
|
final double dx2 = dx / 2.0;
|
||||||
|
|
||||||
|
// now clear and rebuild elements
|
||||||
|
strokeElements.clear();
|
||||||
|
fillElements.clear();
|
||||||
|
// start both paths
|
||||||
|
strokeElements.add(new MoveTo(dataPoints[0].getX(),dataPoints[0].getY()));
|
||||||
|
fillElements.add(new MoveTo(dataPoints[0].getX(),zeroY));
|
||||||
|
fillElements.add(new LineTo(dataPoints[0].getX(),dataPoints[0].getY()));
|
||||||
|
// add curves
|
||||||
|
for (int i = 1; i < dataPoints.length; i++) {
|
||||||
|
final int ci = i-1;
|
||||||
|
strokeElements.add(new CubicCurveTo(
|
||||||
|
dataPoints[ci].getX() + dx2, dataPoints[ci].getY(),
|
||||||
|
dataPoints[i].getX() - dx2, dataPoints[i].getY(),
|
||||||
|
dataPoints[i].getX(), dataPoints[i].getY()));
|
||||||
|
fillElements.add(new CubicCurveTo(
|
||||||
|
dataPoints[ci].getX() + dx2, dataPoints[ci].getY(),
|
||||||
|
dataPoints[i].getX() - dx2, dataPoints[i].getY(),
|
||||||
|
dataPoints[i].getX(),dataPoints[i].getY()));
|
||||||
|
}
|
||||||
|
// end the paths
|
||||||
|
fillElements.add(new LineTo(dataPoints[dataPoints.length-1].getX(),zeroY));
|
||||||
|
fillElements.add(new ClosePath());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -13,6 +13,7 @@
|
|||||||
<?import javafx.scene.layout.StackPane?>
|
<?import javafx.scene.layout.StackPane?>
|
||||||
<?import javafx.scene.layout.VBox?>
|
<?import javafx.scene.layout.VBox?>
|
||||||
<?import javafx.scene.shape.Arc?>
|
<?import javafx.scene.shape.Arc?>
|
||||||
|
<?import org.cryptomator.ui.stats.SmoothAreaChart?>
|
||||||
<HBox xmlns="http://javafx.com/javafx"
|
<HBox xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
fx:controller="org.cryptomator.ui.stats.VaultStatisticsController"
|
fx:controller="org.cryptomator.ui.stats.VaultStatisticsController"
|
||||||
@@ -38,7 +39,7 @@
|
|||||||
<!-- Read -->
|
<!-- Read -->
|
||||||
<VBox prefWidth="300" prefHeight="300" spacing="6" alignment="CENTER">
|
<VBox prefWidth="300" prefHeight="300" spacing="6" alignment="CENTER">
|
||||||
<ThrougputLabel styleClass="label-large" idleFormat="%stats.read.throughput.idle" kibsFormat="%stats.read.throughput.kibs" mibsFormat="%stats.read.throughput.mibs" bytesPerSecond="${controller.bpsRead}"/>
|
<ThrougputLabel styleClass="label-large" idleFormat="%stats.read.throughput.idle" kibsFormat="%stats.read.throughput.kibs" mibsFormat="%stats.read.throughput.mibs" bytesPerSecond="${controller.bpsRead}"/>
|
||||||
<AreaChart fx:id="readChart" styleClass="io-stats" createSymbols="false" animated="false">
|
<SmoothAreaChart fx:id="readChart" styleClass="io-stats" createSymbols="false" animated="false">
|
||||||
<xAxis>
|
<xAxis>
|
||||||
<NumberAxis fx:id="readChartXAxis" styleClass="io-stats" autoRanging="false" forceZeroInRange="false" side="BOTTOM"/>
|
<NumberAxis fx:id="readChartXAxis" styleClass="io-stats" autoRanging="false" forceZeroInRange="false" side="BOTTOM"/>
|
||||||
</xAxis>
|
</xAxis>
|
||||||
@@ -48,7 +49,7 @@
|
|||||||
<cursor>
|
<cursor>
|
||||||
<Cursor fx:constant="DEFAULT"/>
|
<Cursor fx:constant="DEFAULT"/>
|
||||||
</cursor>
|
</cursor>
|
||||||
</AreaChart>
|
</SmoothAreaChart>
|
||||||
<DataLabel byteFormat="%stats.read.total.data.none" kibFormat="%stats.read.total.data.kib" mibFormat="%stats.read.total.data.mib" gibFormat="%stats.read.total.data.gib" dataInBytes="${controller.totalBytesRead}"/>
|
<DataLabel byteFormat="%stats.read.total.data.none" kibFormat="%stats.read.total.data.kib" mibFormat="%stats.read.total.data.mib" gibFormat="%stats.read.total.data.gib" dataInBytes="${controller.totalBytesRead}"/>
|
||||||
<DataLabel byteFormat="%stats.decr.total.data.none" kibFormat="%stats.decr.total.data.kib" mibFormat="%stats.decr.total.data.mib" gibFormat="%stats.decr.total.data.gib" dataInBytes="${controller.totalBytesDecrypted}"/>
|
<DataLabel byteFormat="%stats.decr.total.data.none" kibFormat="%stats.decr.total.data.kib" mibFormat="%stats.decr.total.data.mib" gibFormat="%stats.decr.total.data.gib" dataInBytes="${controller.totalBytesDecrypted}"/>
|
||||||
<FormattedLabel format="%stats.read.accessCount" arg1="${controller.filesRead}"/>
|
<FormattedLabel format="%stats.read.accessCount" arg1="${controller.filesRead}"/>
|
||||||
|
|||||||
@@ -2,8 +2,10 @@
|
|||||||
|
|
||||||
<?import org.cryptomator.ui.controls.FontAwesome5IconView?>
|
<?import org.cryptomator.ui.controls.FontAwesome5IconView?>
|
||||||
<?import javafx.scene.control.Button?>
|
<?import javafx.scene.control.Button?>
|
||||||
|
<?import javafx.scene.control.ContextMenu?>
|
||||||
<?import javafx.scene.control.Label?>
|
<?import javafx.scene.control.Label?>
|
||||||
<?import javafx.scene.control.ListView?>
|
<?import javafx.scene.control.ListView?>
|
||||||
|
<?import javafx.scene.control.MenuItem?>
|
||||||
<?import javafx.scene.layout.Region?>
|
<?import javafx.scene.layout.Region?>
|
||||||
<?import javafx.scene.layout.StackPane?>
|
<?import javafx.scene.layout.StackPane?>
|
||||||
<?import javafx.scene.layout.VBox?>
|
<?import javafx.scene.layout.VBox?>
|
||||||
@@ -13,9 +15,13 @@
|
|||||||
fx:controller="org.cryptomator.ui.mainwindow.VaultListController"
|
fx:controller="org.cryptomator.ui.mainwindow.VaultListController"
|
||||||
minWidth="206">
|
minWidth="206">
|
||||||
<StackPane VBox.vgrow="ALWAYS">
|
<StackPane VBox.vgrow="ALWAYS">
|
||||||
<ListView fx:id="vaultList" editable="true" fixedCellSize="60">
|
<ListView fx:id="vaultList" editable="true">
|
||||||
<contextMenu>
|
<contextMenu>
|
||||||
<fx:include source="vault_list_contextmenu.fxml"/>
|
<ContextMenu>
|
||||||
|
<items>
|
||||||
|
<MenuItem text="%main.vaultlist.contextMenu.remove" onAction="#didClickRemoveVault" disable="${controller.noVaultSelected}"/>
|
||||||
|
</items>
|
||||||
|
</ContextMenu>
|
||||||
</contextMenu>
|
</contextMenu>
|
||||||
</ListView>
|
</ListView>
|
||||||
<VBox visible="${controller.emptyVaultList}" spacing="6" alignment="CENTER">
|
<VBox visible="${controller.emptyVaultList}" spacing="6" alignment="CENTER">
|
||||||
|
|||||||
@@ -13,7 +13,6 @@
|
|||||||
prefWidth="200"
|
prefWidth="200"
|
||||||
spacing="12"
|
spacing="12"
|
||||||
alignment="CENTER_LEFT">
|
alignment="CENTER_LEFT">
|
||||||
<!-- Remark Check the containing list view for a fixed cell size before editing height properties -->
|
|
||||||
<padding>
|
<padding>
|
||||||
<Insets topRightBottomLeft="12"/>
|
<Insets topRightBottomLeft="12"/>
|
||||||
</padding>
|
</padding>
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<?import javafx.scene.control.ContextMenu?>
|
|
||||||
<?import javafx.scene.control.MenuItem?>
|
|
||||||
<ContextMenu xmlns:fx="http://javafx.com/fxml"
|
|
||||||
xmlns="http://javafx.com/javafx"
|
|
||||||
fx:controller="org.cryptomator.ui.mainwindow.VaultListContextMenuController">
|
|
||||||
<items>
|
|
||||||
<MenuItem fx:id="revealEntry" text="%main.vaultlist.contextMenu.reveal" onAction="#didClickRevealVault" visible="${controller.selectedVaultLockable}"/>
|
|
||||||
<MenuItem fx:id="lockEntry" text="%main.vaultlist.contextMenu.lock" onAction="#didClickLockVault" visible="${controller.selectedVaultLockable}"/>
|
|
||||||
<MenuItem fx:id="unlockEntry" text="%main.vaultlist.contextMenu.unlock" onAction="#didClickUnlockVault" visible="${controller.selectedVaultUnlockable && !controller.selectedVaultPassphraseStored}"/>
|
|
||||||
<MenuItem fx:id="unlockNowEntry" text="%main.vaultlist.contextMenu.unlockNow" onAction="#didClickUnlockVault" visible="${controller.selectedVaultUnlockable && controller.selectedVaultPassphraseStored}"/>
|
|
||||||
<MenuItem fx:id="optionsEntry" text="%main.vaultlist.contextMenu.vaultoptions" onAction="#didClickShowVaultOptions" disable="${!controller.selectedVaultUnlockable}"/>
|
|
||||||
<MenuItem fx:id="removeEntry" text="%main.vaultlist.contextMenu.remove" onAction="#didClickRemoveVault" disable="${!controller.selectedVaultRemovable}"/>
|
|
||||||
</items>
|
|
||||||
</ContextMenu>
|
|
||||||
@@ -99,9 +99,9 @@ unlock.passwordPrompt=Enter password for "%s":
|
|||||||
unlock.savePassword=Remember Password
|
unlock.savePassword=Remember Password
|
||||||
unlock.unlockBtn=Unlock
|
unlock.unlockBtn=Unlock
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message=Unlocked "%s" successfully! Your vault is now accessible via its virtual drive.
|
unlock.success.message=Unlocked "%s" successfully! Your vault is now accessible.
|
||||||
unlock.success.rememberChoice=Remember choice, don't show this again
|
unlock.success.rememberChoice=Remember choice, don't show this again
|
||||||
unlock.success.revealBtn=Reveal Drive
|
unlock.success.revealBtn=Reveal Vault
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Unable to unlock vault
|
unlock.error.heading=Unable to unlock vault
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -224,12 +224,7 @@ main.dropZone.dropVault=Add this vault
|
|||||||
main.dropZone.unknownDragboardContent=If you want to add a vault, drag it to this window
|
main.dropZone.unknownDragboardContent=If you want to add a vault, drag it to this window
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Click here to add a vault
|
main.vaultlist.emptyList.onboardingInstruction=Click here to add a vault
|
||||||
main.vaultlist.contextMenu.remove=Remove…
|
main.vaultlist.contextMenu.remove=Remove Vault…
|
||||||
main.vaultlist.contextMenu.lock=Lock
|
|
||||||
main.vaultlist.contextMenu.unlock=Unlock…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Unlock Now
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=Show Vault Options
|
|
||||||
main.vaultlist.contextMenu.reveal=Reveal Drive
|
|
||||||
main.vaultlist.addVaultBtn=Add Vault
|
main.vaultlist.addVaultBtn=Add Vault
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -97,8 +97,9 @@ unlock.title=افتح الحافظة
|
|||||||
unlock.passwordPrompt=أدخل كلمة السر لـ "%s":
|
unlock.passwordPrompt=أدخل كلمة السر لـ "%s":
|
||||||
unlock.unlockBtn=افتح
|
unlock.unlockBtn=افتح
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=تم فتح المخزن "%s" بنجاح! يمكنك الوصول إليه الآن.
|
||||||
unlock.success.rememberChoice=تذكر اختياري ولا تظهر هذا مرة أخرى
|
unlock.success.rememberChoice=تذكر اختياري ولا تظهر هذا مرة أخرى
|
||||||
unlock.success.revealBtn=اظهار القرص
|
unlock.success.revealBtn=افتح الحافظة
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=غير قادر على فتح الخزنة
|
unlock.error.heading=غير قادر على فتح الخزنة
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -194,10 +195,7 @@ main.dropZone.dropVault=أضف هذا المخزن
|
|||||||
main.dropZone.unknownDragboardContent=إذا كنت ترغب في إضافة مخزن، قم بسحبه إلى هذه النافذة
|
main.dropZone.unknownDragboardContent=إذا كنت ترغب في إضافة مخزن، قم بسحبه إلى هذه النافذة
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=انقر هنا لإضافة خزنة
|
main.vaultlist.emptyList.onboardingInstruction=انقر هنا لإضافة خزنة
|
||||||
main.vaultlist.contextMenu.lock=قفل
|
main.vaultlist.contextMenu.remove=حذف الخزنة…
|
||||||
main.vaultlist.contextMenu.unlock=فتح…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=افتح الان
|
|
||||||
main.vaultlist.contextMenu.reveal=اظهار القرص
|
|
||||||
main.vaultlist.addVaultBtn=أضِف مخزنًا
|
main.vaultlist.addVaultBtn=أضِف مخزنًا
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -97,8 +97,9 @@ unlock.title=Otključaj sef
|
|||||||
unlock.passwordPrompt=Unesite lozinku za "%s":
|
unlock.passwordPrompt=Unesite lozinku za "%s":
|
||||||
unlock.unlockBtn=Otključaj
|
unlock.unlockBtn=Otključaj
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=Uspješno ste otključali "%s"! Vaš sef je sada dostupan.
|
||||||
unlock.success.rememberChoice=Zapamtite izbor, ne pokazujte ovo ponovo
|
unlock.success.rememberChoice=Zapamtite izbor, ne pokazujte ovo ponovo
|
||||||
unlock.success.revealBtn=Otkrij pogon
|
unlock.success.revealBtn=Otkrij sef
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Sef nije moguće otključati
|
unlock.error.heading=Sef nije moguće otključati
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -221,10 +222,7 @@ main.dropZone.dropVault=Dodajte ovaj sef
|
|||||||
main.dropZone.unknownDragboardContent=Ako želite dodati sef, povucite ga u ovaj prozor
|
main.dropZone.unknownDragboardContent=Ako želite dodati sef, povucite ga u ovaj prozor
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Kliknite ovdje da dodate sef
|
main.vaultlist.emptyList.onboardingInstruction=Kliknite ovdje da dodate sef
|
||||||
main.vaultlist.contextMenu.lock=Zaključaj
|
main.vaultlist.contextMenu.remove=Ukloni Sef…
|
||||||
main.vaultlist.contextMenu.unlock=Otključaj…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Otključaj sada
|
|
||||||
main.vaultlist.contextMenu.reveal=Otkrij pogon
|
|
||||||
main.vaultlist.addVaultBtn=Dodaj sef
|
main.vaultlist.addVaultBtn=Dodaj sef
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt=Introduïu la contrasenya de "%s":
|
|||||||
unlock.savePassword=Recorda la contrasenya
|
unlock.savePassword=Recorda la contrasenya
|
||||||
unlock.unlockBtn=Desbloqueja
|
unlock.unlockBtn=Desbloqueja
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" s'ha desbloquejat correctament! Ja es pot accedir a la caixa forta.
|
||||||
unlock.success.rememberChoice=Recorda l'elecció. No ho tornis a mostrar.
|
unlock.success.rememberChoice=Recorda l'elecció. No ho tornis a mostrar.
|
||||||
unlock.success.revealBtn=Mostra la unitat
|
unlock.success.revealBtn=Mostra la caixa forta
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=No ha estat possible desblocar la caixa forta
|
unlock.error.heading=No ha estat possible desblocar la caixa forta
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -222,10 +223,7 @@ main.dropZone.dropVault=Afegeix aquesta caixa forta
|
|||||||
main.dropZone.unknownDragboardContent=Si voleu afegir una caixa forta, arrossegueu-la a aquesta finestra
|
main.dropZone.unknownDragboardContent=Si voleu afegir una caixa forta, arrossegueu-la a aquesta finestra
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Feu clic aquí per afegir una caixa forta
|
main.vaultlist.emptyList.onboardingInstruction=Feu clic aquí per afegir una caixa forta
|
||||||
main.vaultlist.contextMenu.lock=Bloqueja
|
main.vaultlist.contextMenu.remove=Elimina la caixa forta…
|
||||||
main.vaultlist.contextMenu.unlock=Desbloca…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Desbloqueja ara
|
|
||||||
main.vaultlist.contextMenu.reveal=Mostra la unitat
|
|
||||||
main.vaultlist.addVaultBtn=Afegir una caixa forta
|
main.vaultlist.addVaultBtn=Afegir una caixa forta
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt=Zadejte heslo pro "%s":
|
|||||||
unlock.savePassword=Zapamatovat heslo
|
unlock.savePassword=Zapamatovat heslo
|
||||||
unlock.unlockBtn=Odemknout
|
unlock.unlockBtn=Odemknout
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=Trezor "%s" byl úspěšně odemčen a nyní je dostupný.
|
||||||
unlock.success.rememberChoice=Pamatovat si volbu, nezobrazovat to znovu
|
unlock.success.rememberChoice=Pamatovat si volbu, nezobrazovat to znovu
|
||||||
unlock.success.revealBtn=Zobrazit jednotku
|
unlock.success.revealBtn=Zobrazit trezor
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Nelze odemknout trezor
|
unlock.error.heading=Nelze odemknout trezor
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -108,8 +109,6 @@ unlock.error.invalidMountPoint.existing=Připojovací bod %s již existuje nebo
|
|||||||
|
|
||||||
# Lock
|
# Lock
|
||||||
## Force
|
## Force
|
||||||
lock.forced.heading=Běžné uzamčení selhalo
|
|
||||||
lock.forced.confirmBtn=Přesto uzamknout
|
|
||||||
## Failure
|
## Failure
|
||||||
|
|
||||||
# Migration
|
# Migration
|
||||||
@@ -219,11 +218,7 @@ main.dropZone.dropVault=Přidat tento trezor
|
|||||||
main.dropZone.unknownDragboardContent=Pokud chcete přidat trezor, přetáhněte jej do tohoto okna
|
main.dropZone.unknownDragboardContent=Pokud chcete přidat trezor, přetáhněte jej do tohoto okna
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Klikněte zde pro přidání nového trezoru
|
main.vaultlist.emptyList.onboardingInstruction=Klikněte zde pro přidání nového trezoru
|
||||||
main.vaultlist.contextMenu.remove=Odstranit…
|
main.vaultlist.contextMenu.remove=Odstranit trezor…
|
||||||
main.vaultlist.contextMenu.lock=Zamknout
|
|
||||||
main.vaultlist.contextMenu.unlock=Odemknout…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Odemknout nyní
|
|
||||||
main.vaultlist.contextMenu.reveal=Zobrazit jednotku
|
|
||||||
main.vaultlist.addVaultBtn=Přidat trezor
|
main.vaultlist.addVaultBtn=Přidat trezor
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,9 +98,9 @@ unlock.passwordPrompt=Gib das Passwort für „%s“ ein:
|
|||||||
unlock.savePassword=Passwort merken
|
unlock.savePassword=Passwort merken
|
||||||
unlock.unlockBtn=Entsperren
|
unlock.unlockBtn=Entsperren
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message=„%s“ erfolgreich entsperrt! Nun kannst du über das virtuelle Laufwerk auf deinen Tresor zugreifen.
|
unlock.success.message=„%s“ erfolgreich entsperrt! Nun kannst du auf deinen Tresor zugreifen.
|
||||||
unlock.success.rememberChoice=Auswahl speichern und nicht mehr anzeigen
|
unlock.success.rememberChoice=Auswahl speichern und nicht mehr anzeigen
|
||||||
unlock.success.revealBtn=Laufwerk anzeigen
|
unlock.success.revealBtn=Tresor anzeigen
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Tresor konnte nicht entsperrt werden
|
unlock.error.heading=Tresor konnte nicht entsperrt werden
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -223,12 +223,7 @@ main.dropZone.dropVault=Diesen Tresor hinzufügen
|
|||||||
main.dropZone.unknownDragboardContent=Wenn Sie einen Tresor hinzufügen möchten, ziehen Sie ihn in dieses Fenster
|
main.dropZone.unknownDragboardContent=Wenn Sie einen Tresor hinzufügen möchten, ziehen Sie ihn in dieses Fenster
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Klicke hier, um einen Tresor hinzuzufügen
|
main.vaultlist.emptyList.onboardingInstruction=Klicke hier, um einen Tresor hinzuzufügen
|
||||||
main.vaultlist.contextMenu.remove=Entfernen …
|
main.vaultlist.contextMenu.remove=Tresor entfernen…
|
||||||
main.vaultlist.contextMenu.lock=Sperren
|
|
||||||
main.vaultlist.contextMenu.unlock=Entsperren …
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Jetzt entsperren
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=Tresoroptionen anzeigen
|
|
||||||
main.vaultlist.contextMenu.reveal=Laufwerk anzeigen
|
|
||||||
main.vaultlist.addVaultBtn=Tresor hinzufügen
|
main.vaultlist.addVaultBtn=Tresor hinzufügen
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
@@ -285,7 +280,7 @@ vaultOptions.mount.customMountFlags=Benutzerdefinierte Mount-Flags
|
|||||||
vaultOptions.mount.winDriveLetterOccupied=belegt
|
vaultOptions.mount.winDriveLetterOccupied=belegt
|
||||||
vaultOptions.mount.mountPoint=Einhängepunkt
|
vaultOptions.mount.mountPoint=Einhängepunkt
|
||||||
vaultOptions.mount.mountPoint.auto=Automatisch einen passenden Ort auswählen
|
vaultOptions.mount.mountPoint.auto=Automatisch einen passenden Ort auswählen
|
||||||
vaultOptions.mount.mountPoint.driveLetter=Laufwerksbuchstaben zuweisen
|
vaultOptions.mount.mountPoint.driveLetter=Zugewiesenen Laufwerksbuchstaben verwenden
|
||||||
vaultOptions.mount.mountPoint.custom=Pfad selbst wählen
|
vaultOptions.mount.mountPoint.custom=Pfad selbst wählen
|
||||||
vaultOptions.mount.mountPoint.directoryPickerButton=Durchsuchen …
|
vaultOptions.mount.mountPoint.directoryPickerButton=Durchsuchen …
|
||||||
vaultOptions.mount.mountPoint.directoryPickerTitle=Wähle ein leeres Verzeichnis
|
vaultOptions.mount.mountPoint.directoryPickerTitle=Wähle ein leeres Verzeichnis
|
||||||
|
|||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt=Εισάγετε τον κωδικό για "%s":
|
|||||||
unlock.savePassword=Απομνημόνευση κωδικού πρόσβασης
|
unlock.savePassword=Απομνημόνευση κωδικού πρόσβασης
|
||||||
unlock.unlockBtn=Ξεκλείδωμα
|
unlock.unlockBtn=Ξεκλείδωμα
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" ξεκλειδώθηκε επιτυχώς! Το vault σας είναι διαθέσιμο.
|
||||||
unlock.success.rememberChoice=Απομνημόνευση επιλογής, μην ρωτήσεις ξανά
|
unlock.success.rememberChoice=Απομνημόνευση επιλογής, μην ρωτήσεις ξανά
|
||||||
unlock.success.revealBtn=Αποκάλυψη εικονικού δίσκου
|
unlock.success.revealBtn=Αποκάλυψη Vault
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Αδυναμία ξεκλειδώματος vault
|
unlock.error.heading=Αδυναμία ξεκλειδώματος vault
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -222,10 +223,7 @@ main.dropZone.dropVault=Προσθήκη vault
|
|||||||
main.dropZone.unknownDragboardContent=Αν θέλετε να προσθέσετε ένα vault, σύρετε το σε αυτό το παράθυρο
|
main.dropZone.unknownDragboardContent=Αν θέλετε να προσθέσετε ένα vault, σύρετε το σε αυτό το παράθυρο
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Κάντε κλικ εδώ για να προσθέσετε ένα vault
|
main.vaultlist.emptyList.onboardingInstruction=Κάντε κλικ εδώ για να προσθέσετε ένα vault
|
||||||
main.vaultlist.contextMenu.lock=Κλείδωμα
|
main.vaultlist.contextMenu.remove=Διαγραφή Vault…
|
||||||
main.vaultlist.contextMenu.unlock=Ξεκλείδωμα…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Ξεκλείδωμα τώρα
|
|
||||||
main.vaultlist.contextMenu.reveal=Αποκάλυψη εικονικού δίσκου
|
|
||||||
main.vaultlist.addVaultBtn=Προσθήκη Vault
|
main.vaultlist.addVaultBtn=Προσθήκη Vault
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,9 +98,9 @@ unlock.passwordPrompt=Ingresar contraseña para "%s":
|
|||||||
unlock.savePassword=Recordar contraseña
|
unlock.savePassword=Recordar contraseña
|
||||||
unlock.unlockBtn=Desbloquear
|
unlock.unlockBtn=Desbloquear
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message=¡Desbloqueo de "%s" exitoso! Su bóveda ahora es accesible a través de su unidad virtual.
|
unlock.success.message=¡"%s" se desbloqueó con éxito! La bóveda ya es accesible.
|
||||||
unlock.success.rememberChoice=Recordar opción y no mostrar de nuevo
|
unlock.success.rememberChoice=Recordar opción y no mostrar de nuevo
|
||||||
unlock.success.revealBtn=Revelar unidad
|
unlock.success.revealBtn=Revelar bóveda
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=No se puede desbloquear la bóveda
|
unlock.error.heading=No se puede desbloquear la bóveda
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -223,12 +223,7 @@ main.dropZone.dropVault=Añadir esta bóveda
|
|||||||
main.dropZone.unknownDragboardContent=Si desea añadir una bóveda, arrástrela a esta ventana
|
main.dropZone.unknownDragboardContent=Si desea añadir una bóveda, arrástrela a esta ventana
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Hacer clic aquí para añadir una bóveda
|
main.vaultlist.emptyList.onboardingInstruction=Hacer clic aquí para añadir una bóveda
|
||||||
main.vaultlist.contextMenu.remove=Eliminar…
|
main.vaultlist.contextMenu.remove=Eliminar bóveda…
|
||||||
main.vaultlist.contextMenu.lock=Bloquear
|
|
||||||
main.vaultlist.contextMenu.unlock=Desbloquear…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Desbloquear ahora
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=Mostrar opciones de la bóveda
|
|
||||||
main.vaultlist.contextMenu.reveal=Revelar unidad
|
|
||||||
main.vaultlist.addVaultBtn=Añadir bóveda
|
main.vaultlist.addVaultBtn=Añadir bóveda
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,9 +98,9 @@ unlock.passwordPrompt=Entrez le mot de passe pour “%s” :
|
|||||||
unlock.savePassword=Mémoriser le mot de passe
|
unlock.savePassword=Mémoriser le mot de passe
|
||||||
unlock.unlockBtn=Déverrouiller
|
unlock.unlockBtn=Déverrouiller
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message=“%s” déverrouillé ! Le contenu de votre coffre est maintenant accessible par son lecteur virtuel.
|
unlock.success.message=“%s” déverrouillé ! Le contenu de votre coffre est maintenant accessible.
|
||||||
unlock.success.rememberChoice=Se souvenir de mon choix et ne plus me demander
|
unlock.success.rememberChoice=Se souvenir de mon choix et ne plus me demander
|
||||||
unlock.success.revealBtn=Révéler le lecteur
|
unlock.success.revealBtn=Révéler le coffre
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Impossible de déverrouiller le coffre
|
unlock.error.heading=Impossible de déverrouiller le coffre
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -223,12 +223,7 @@ main.dropZone.dropVault=Ajouter ce coffre
|
|||||||
main.dropZone.unknownDragboardContent=Si vous voulez ajouter un coffre, faites-le glisser dans cette fenêtre
|
main.dropZone.unknownDragboardContent=Si vous voulez ajouter un coffre, faites-le glisser dans cette fenêtre
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Cliquez ici pour ajouter un coffre
|
main.vaultlist.emptyList.onboardingInstruction=Cliquez ici pour ajouter un coffre
|
||||||
main.vaultlist.contextMenu.remove=Retirer…
|
main.vaultlist.contextMenu.remove=Supprimer le coffre…
|
||||||
main.vaultlist.contextMenu.lock=Verrouiller
|
|
||||||
main.vaultlist.contextMenu.unlock=Déverrouiller…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Déverrouiller maintenant
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=Afficher les options du coffre
|
|
||||||
main.vaultlist.contextMenu.reveal=Révéler le lecteur
|
|
||||||
main.vaultlist.addVaultBtn=Ajouter un coffre
|
main.vaultlist.addVaultBtn=Ajouter un coffre
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -106,7 +106,6 @@ main.closeBtn.tooltip=बंद करें
|
|||||||
main.preferencesBtn.tooltip=प्राथमिकताएं
|
main.preferencesBtn.tooltip=प्राथमिकताएं
|
||||||
## Drag 'n' Drop
|
## Drag 'n' Drop
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.contextMenu.lock=लॉक करें
|
|
||||||
main.vaultlist.addVaultBtn=वाउल्ट डालें
|
main.vaultlist.addVaultBtn=वाउल्ट डालें
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -96,6 +96,7 @@ unlock.title=Széf feloldása
|
|||||||
unlock.passwordPrompt=Írja be a jelszavát a következő széfhez "%s":
|
unlock.passwordPrompt=Írja be a jelszavát a következő széfhez "%s":
|
||||||
unlock.unlockBtn=Feloldás
|
unlock.unlockBtn=Feloldás
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" sikreresen feloldásra került! Mostmár hozzáférhet a széféhez.
|
||||||
unlock.success.rememberChoice=Jegyezze meg a választást és ne mutassa többet
|
unlock.success.rememberChoice=Jegyezze meg a választást és ne mutassa többet
|
||||||
unlock.success.revealBtn=Széf megjelenítése
|
unlock.success.revealBtn=Széf megjelenítése
|
||||||
## Failure
|
## Failure
|
||||||
@@ -206,10 +207,7 @@ main.dropZone.dropVault=Adja hozzá ezt a széfet
|
|||||||
main.dropZone.unknownDragboardContent=Ha egy széfet szeretne hozzáadni, akkor húzza át erre az ablakra.
|
main.dropZone.unknownDragboardContent=Ha egy széfet szeretne hozzáadni, akkor húzza át erre az ablakra.
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Kattintson ide egy széf hozzáadásához
|
main.vaultlist.emptyList.onboardingInstruction=Kattintson ide egy széf hozzáadásához
|
||||||
main.vaultlist.contextMenu.lock=Zárolás
|
main.vaultlist.contextMenu.remove=Széf eltávolítása…
|
||||||
main.vaultlist.contextMenu.unlock=Feloldás…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Azonnali feloldás
|
|
||||||
main.vaultlist.contextMenu.reveal=Széf megjelenítése
|
|
||||||
main.vaultlist.addVaultBtn=Széf hozzáadása
|
main.vaultlist.addVaultBtn=Széf hozzáadása
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -109,7 +109,6 @@ main.closeBtn.tooltip=Tutup
|
|||||||
main.preferencesBtn.tooltip=Preferensi
|
main.preferencesBtn.tooltip=Preferensi
|
||||||
## Drag 'n' Drop
|
## Drag 'n' Drop
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.contextMenu.lock=Gembok
|
|
||||||
main.vaultlist.addVaultBtn=Tambah Brankas
|
main.vaultlist.addVaultBtn=Tambah Brankas
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt=Inserisci la password per "%s":
|
|||||||
unlock.savePassword=Ricorda la Password
|
unlock.savePassword=Ricorda la Password
|
||||||
unlock.unlockBtn=Sblocca
|
unlock.unlockBtn=Sblocca
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=Sbloccato "%s" con successo! La tua cassaforte è ora accessibile.
|
||||||
unlock.success.rememberChoice=Ricorda la scelta, non mostrare ancora
|
unlock.success.rememberChoice=Ricorda la scelta, non mostrare ancora
|
||||||
unlock.success.revealBtn=Visualizza disco
|
unlock.success.revealBtn=Rivela Cassaforte
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Impossibile sbloccare la cassaforte
|
unlock.error.heading=Impossibile sbloccare la cassaforte
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -220,10 +221,7 @@ main.dropZone.dropVault=Aggiungi questa cassaforte
|
|||||||
main.dropZone.unknownDragboardContent=Se vuoi aggiungere una cassaforte, trascinala in questa finestra
|
main.dropZone.unknownDragboardContent=Se vuoi aggiungere una cassaforte, trascinala in questa finestra
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Clicca qui per aggiungere una cassaforte
|
main.vaultlist.emptyList.onboardingInstruction=Clicca qui per aggiungere una cassaforte
|
||||||
main.vaultlist.contextMenu.lock=Blocca
|
main.vaultlist.contextMenu.remove=Rimuovi Cassaforte…
|
||||||
main.vaultlist.contextMenu.unlock=Sblocca…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Sblocca adesso
|
|
||||||
main.vaultlist.contextMenu.reveal=Visualizza disco
|
|
||||||
main.vaultlist.addVaultBtn=Aggiungi Cassaforte
|
main.vaultlist.addVaultBtn=Aggiungi Cassaforte
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt="%s" のパスワードを入力してください:
|
|||||||
unlock.savePassword=パスワードを記憶させる
|
unlock.savePassword=パスワードを記憶させる
|
||||||
unlock.unlockBtn=解錠
|
unlock.unlockBtn=解錠
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" の解錠に成功しました! 金庫にアクセス可能です。
|
||||||
unlock.success.rememberChoice=選択を記憶させて、再度表示しない
|
unlock.success.rememberChoice=選択を記憶させて、再度表示しない
|
||||||
unlock.success.revealBtn=ドライブを表示
|
unlock.success.revealBtn=金庫を表示
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=金庫の解錠に失敗
|
unlock.error.heading=金庫の解錠に失敗
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -222,10 +223,7 @@ main.dropZone.dropVault=この金庫を追加
|
|||||||
main.dropZone.unknownDragboardContent=このウィンドウにドラッグして、金庫を追加
|
main.dropZone.unknownDragboardContent=このウィンドウにドラッグして、金庫を追加
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=ここをクリックして金庫を追加
|
main.vaultlist.emptyList.onboardingInstruction=ここをクリックして金庫を追加
|
||||||
main.vaultlist.contextMenu.lock=施錠
|
main.vaultlist.contextMenu.remove=金庫を削除...
|
||||||
main.vaultlist.contextMenu.unlock=解錠...
|
|
||||||
main.vaultlist.contextMenu.unlockNow=今すぐ解錠
|
|
||||||
main.vaultlist.contextMenu.reveal=ドライブを表示
|
|
||||||
main.vaultlist.addVaultBtn=金庫を追加
|
main.vaultlist.addVaultBtn=金庫を追加
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ addvault.new.readme.storageLocation.10=만일 도움이 필요하신 경우, 다
|
|||||||
addvault.new.readme.accessLocation.fileName=WELCOME.rtf
|
addvault.new.readme.accessLocation.fileName=WELCOME.rtf
|
||||||
addvault.new.readme.accessLocation.1=🔐️ 암호화 된 볼륨 🔐️
|
addvault.new.readme.accessLocation.1=🔐️ 암호화 된 볼륨 🔐️
|
||||||
addvault.new.readme.accessLocation.2=이것은 당신의 Vault 접근 위치입니다.
|
addvault.new.readme.accessLocation.2=이것은 당신의 Vault 접근 위치입니다.
|
||||||
addvault.new.readme.accessLocation.3=이 볼륨에 추가된 모든 파일은 Cryptomator로 암호화됩니다. 다른 드라이브/폴더처럼 작업할 수 있습니다. 볼륨의 내용은 복호화 된 것 처럼 보여지지만, 모든 파일은 항상 암호화되어 하드디스크에 저장됩니다.
|
addvault.new.readme.accessLocation.3=이 볼륨에 추가된 모든 파일은 Cryptomator로 암호화됩니다. 다른 드라이브/폴더처럼 작업할 수 있습니다. 볼륨의 내용은 복호화 된 것 처럼 보여질 뿐이며, 모든 파일은 항상 암호화되어 하드디스크에 저장됩니다.
|
||||||
addvault.new.readme.accessLocation.4=이 파일은 지우셔도 무방합니다.
|
addvault.new.readme.accessLocation.4=이 파일은 지우셔도 무방합니다.
|
||||||
## Existing
|
## Existing
|
||||||
addvaultwizard.existing.instruction=기존 Vault 의 "masterkey.cryptomator" 파일을 선택하여 주십시요.
|
addvaultwizard.existing.instruction=기존 Vault 의 "masterkey.cryptomator" 파일을 선택하여 주십시요.
|
||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt="%s"의 비밀번호를 입력하십시요.
|
|||||||
unlock.savePassword=비밀번호 기억
|
unlock.savePassword=비밀번호 기억
|
||||||
unlock.unlockBtn=잠금해제
|
unlock.unlockBtn=잠금해제
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s"의 잠금해제가 성공적으로 수행되었습니다! 이제 이 Vault의 접근이 가능합니다.
|
||||||
unlock.success.rememberChoice=선택 기억함, 다시 묻지 않음
|
unlock.success.rememberChoice=선택 기억함, 다시 묻지 않음
|
||||||
unlock.success.revealBtn=드라이브 표시
|
unlock.success.revealBtn=Vault 표시
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Vault 잠금을 해제 할 수 없습니다.
|
unlock.error.heading=Vault 잠금을 해제 할 수 없습니다.
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -222,10 +223,7 @@ main.dropZone.dropVault=이 Vault를 추가
|
|||||||
main.dropZone.unknownDragboardContent=Vault를 추가하려면, 이 창에 드래그 하십시요.
|
main.dropZone.unknownDragboardContent=Vault를 추가하려면, 이 창에 드래그 하십시요.
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Vault를 추가하기 위해 이곳을 클릭합니다.
|
main.vaultlist.emptyList.onboardingInstruction=Vault를 추가하기 위해 이곳을 클릭합니다.
|
||||||
main.vaultlist.contextMenu.lock=잠금
|
main.vaultlist.contextMenu.remove=Vault 제거...
|
||||||
main.vaultlist.contextMenu.unlock=잠금해제...
|
|
||||||
main.vaultlist.contextMenu.unlockNow=지금 잠금해제
|
|
||||||
main.vaultlist.contextMenu.reveal=드라이브 표시
|
|
||||||
main.vaultlist.addVaultBtn=Vault 추가
|
main.vaultlist.addVaultBtn=Vault 추가
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
@@ -296,7 +294,7 @@ vaultOptions.masterkey.recoverPasswordBtn=비밀번호 복구
|
|||||||
|
|
||||||
# Recovery Key
|
# Recovery Key
|
||||||
recoveryKey.title=복구 키
|
recoveryKey.title=복구 키
|
||||||
recoveryKey.enterPassword.prompt="%s"의 복구 키를 표시하려면 비밀번호를 입력해 주세요.
|
recoveryKey.enterPassword.prompt="%s"의 복구 키를 표시하려면 비밀번호를 입력하여 주십시요.
|
||||||
recoveryKey.display.message="%s" 데이터 접근을 복원하는데 사용 할 수 있는 복구 키 입니다:
|
recoveryKey.display.message="%s" 데이터 접근을 복원하는데 사용 할 수 있는 복구 키 입니다:
|
||||||
recoveryKey.display.StorageHints=매우 안전한곳에 보관하십시요. 예시:\n • 비밀번호 관리자를 사용하여 저장\n • USB 플래시 드라이브에 저장\n • 종이에 출력
|
recoveryKey.display.StorageHints=매우 안전한곳에 보관하십시요. 예시:\n • 비밀번호 관리자를 사용하여 저장\n • USB 플래시 드라이브에 저장\n • 종이에 출력
|
||||||
recoveryKey.recover.prompt="%s"의 복구키를 입력하십시요:
|
recoveryKey.recover.prompt="%s"의 복구키를 입력하십시요:
|
||||||
@@ -304,7 +302,7 @@ recoveryKey.recover.validKey=올바른 복구 키 입니다.
|
|||||||
recoveryKey.printout.heading=Cryptomator 복구 키\n"%s"\n
|
recoveryKey.printout.heading=Cryptomator 복구 키\n"%s"\n
|
||||||
|
|
||||||
# New Password
|
# New Password
|
||||||
newPassword.promptText=새 비밀번호를 입력하세요
|
newPassword.promptText=새 비밀번호를 입력하십시요.
|
||||||
newPassword.reenterPassword=새 비밀번호를 확인하여 주십시요.
|
newPassword.reenterPassword=새 비밀번호를 확인하여 주십시요.
|
||||||
newPassword.passwordsMatch=비밀번호가 일치합니다!
|
newPassword.passwordsMatch=비밀번호가 일치합니다!
|
||||||
newPassword.passwordsDoNotMatch=비밀번호가 일치하지 않습니다.
|
newPassword.passwordsDoNotMatch=비밀번호가 일치하지 않습니다.
|
||||||
|
|||||||
@@ -95,7 +95,8 @@ unlock.title=Atslēgt glabātuvi
|
|||||||
unlock.passwordPrompt=Ievadiet "%s" paroli:
|
unlock.passwordPrompt=Ievadiet "%s" paroli:
|
||||||
unlock.unlockBtn=Atslēgt
|
unlock.unlockBtn=Atslēgt
|
||||||
## Success
|
## Success
|
||||||
unlock.success.revealBtn=Atklāt disku
|
unlock.success.message="%s" sekmīgi atslēgts! Jūsu glabātuve tagad ir pieejama.
|
||||||
|
unlock.success.revealBtn=Atklāt glabātuvi
|
||||||
## Failure
|
## Failure
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
|
|
||||||
@@ -170,9 +171,6 @@ main.dropZone.dropVault=Pievienot šo glabātuvi
|
|||||||
main.dropZone.unknownDragboardContent=Ja jūs vēlaties pievienot glabātuvi, velciet to uz šo logu
|
main.dropZone.unknownDragboardContent=Ja jūs vēlaties pievienot glabātuvi, velciet to uz šo logu
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Spied šeit, lai pievienotu glabātuvi
|
main.vaultlist.emptyList.onboardingInstruction=Spied šeit, lai pievienotu glabātuvi
|
||||||
main.vaultlist.contextMenu.lock=Aizslēgt
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Atslēgt tagad
|
|
||||||
main.vaultlist.contextMenu.reveal=Atklāt disku
|
|
||||||
main.vaultlist.addVaultBtn=Pievienot glabātuvi
|
main.vaultlist.addVaultBtn=Pievienot glabātuvi
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -95,11 +95,11 @@ forgetPassword.confirmBtn=Glem passord
|
|||||||
# Unlock
|
# Unlock
|
||||||
unlock.title=Lås opp hvelvet
|
unlock.title=Lås opp hvelvet
|
||||||
unlock.passwordPrompt=Skriv inn passordet for "%s":
|
unlock.passwordPrompt=Skriv inn passordet for "%s":
|
||||||
unlock.savePassword=Husk passord
|
|
||||||
unlock.unlockBtn=Lås opp
|
unlock.unlockBtn=Lås opp
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=Vellykket opplåsning av "%s"! Hvelvet ditt er nå tilgjengelig.
|
||||||
unlock.success.rememberChoice=Husk valget - ikke vis dette igjen
|
unlock.success.rememberChoice=Husk valget - ikke vis dette igjen
|
||||||
unlock.success.revealBtn=Gjør enheten synlig
|
unlock.success.revealBtn=Gjør hvelvet synlig
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Klarer ikke å låse opp hvelvet
|
unlock.error.heading=Klarer ikke å låse opp hvelvet
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -201,7 +201,6 @@ stats.read.accessCount=Lesninger totalt: %d
|
|||||||
stats.write.throughput.idle=Skrive: inaktiv
|
stats.write.throughput.idle=Skrive: inaktiv
|
||||||
stats.write.throughput.kibs=Skriver: %.2f kiB/s
|
stats.write.throughput.kibs=Skriver: %.2f kiB/s
|
||||||
stats.write.throughput.mibs=Skriver: %.2f MiB/s
|
stats.write.throughput.mibs=Skriver: %.2f MiB/s
|
||||||
stats.write.total.data.none=Data skrevet: -
|
|
||||||
stats.write.total.data.kib=Data skrevet: %.1f kiB
|
stats.write.total.data.kib=Data skrevet: %.1f kiB
|
||||||
stats.write.total.data.mib=Data skrevet: %.1f MiB
|
stats.write.total.data.mib=Data skrevet: %.1f MiB
|
||||||
stats.write.total.data.gib=Data skrevet: %.1f GiB
|
stats.write.total.data.gib=Data skrevet: %.1f GiB
|
||||||
@@ -222,10 +221,7 @@ main.dropZone.dropVault=Legg til dette hvelvet
|
|||||||
main.dropZone.unknownDragboardContent=Hvis du vil legge til et hvelv, kan du dra det til dette vinduet
|
main.dropZone.unknownDragboardContent=Hvis du vil legge til et hvelv, kan du dra det til dette vinduet
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Klikk her for å legge til et hvelv
|
main.vaultlist.emptyList.onboardingInstruction=Klikk her for å legge til et hvelv
|
||||||
main.vaultlist.contextMenu.lock=Lås
|
main.vaultlist.contextMenu.remove=Fjern hvelvet…
|
||||||
main.vaultlist.contextMenu.unlock=Lås opp…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Lås opp nå
|
|
||||||
main.vaultlist.contextMenu.reveal=Gjør enheten synlig
|
|
||||||
main.vaultlist.addVaultBtn=Legg til hvelv
|
main.vaultlist.addVaultBtn=Legg til hvelv
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -97,8 +97,9 @@ unlock.title=Kluis ontgrendelen
|
|||||||
unlock.passwordPrompt=Voer wachtwoord voor "%s" in:
|
unlock.passwordPrompt=Voer wachtwoord voor "%s" in:
|
||||||
unlock.unlockBtn=Ontgrendel
|
unlock.unlockBtn=Ontgrendel
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" is met succes ontgrendeld! Uw kluis is nu toegankelijk.
|
||||||
unlock.success.rememberChoice=Keuze onthouden en dit niet opnieuw tonen
|
unlock.success.rememberChoice=Keuze onthouden en dit niet opnieuw tonen
|
||||||
unlock.success.revealBtn=Toon Schijf
|
unlock.success.revealBtn=Toon kluis
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Kan kluis niet ontgrendelen
|
unlock.error.heading=Kan kluis niet ontgrendelen
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -220,10 +221,7 @@ main.dropZone.dropVault=Voeg deze kluis toe
|
|||||||
main.dropZone.unknownDragboardContent=Als u een kluis wilt toevoegen, sleep deze dan naar dit venster
|
main.dropZone.unknownDragboardContent=Als u een kluis wilt toevoegen, sleep deze dan naar dit venster
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Klik hier om een kluis toe te voegen
|
main.vaultlist.emptyList.onboardingInstruction=Klik hier om een kluis toe te voegen
|
||||||
main.vaultlist.contextMenu.lock=Vergrendel
|
main.vaultlist.contextMenu.remove=Verwijder Kluis…
|
||||||
main.vaultlist.contextMenu.unlock=Ontgrendelen…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Nu Ontgrendelen
|
|
||||||
main.vaultlist.contextMenu.reveal=Toon Schijf
|
|
||||||
main.vaultlist.addVaultBtn=Kluis toevoegen
|
main.vaultlist.addVaultBtn=Kluis toevoegen
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -96,8 +96,9 @@ unlock.title=Lås opp kvelven
|
|||||||
unlock.passwordPrompt=Skriv inn passordet for "%s":
|
unlock.passwordPrompt=Skriv inn passordet for "%s":
|
||||||
unlock.unlockBtn=Låse opp
|
unlock.unlockBtn=Låse opp
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=Vellykka opplåsning av "%s"! Kvelven din er no tilgjengeleg.
|
||||||
unlock.success.rememberChoice=Hugs valet - ikkje vis dette igjen
|
unlock.success.rememberChoice=Hugs valet - ikkje vis dette igjen
|
||||||
unlock.success.revealBtn=Gjer eininga synleg
|
unlock.success.revealBtn=Gjer kvelven synleg
|
||||||
## Failure
|
## Failure
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
|
|
||||||
@@ -177,10 +178,6 @@ main.dropZone.dropVault=Legg til denne kvelven
|
|||||||
main.dropZone.unknownDragboardContent=Viss du vil legga til ein kvelv, kan du dra det til dette vindauget
|
main.dropZone.unknownDragboardContent=Viss du vil legga til ein kvelv, kan du dra det til dette vindauget
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Klikk her for å legga til ein kvelv
|
main.vaultlist.emptyList.onboardingInstruction=Klikk her for å legga til ein kvelv
|
||||||
main.vaultlist.contextMenu.lock=Lås
|
|
||||||
main.vaultlist.contextMenu.unlock=Lås opp…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Lås opp no
|
|
||||||
main.vaultlist.contextMenu.reveal=Gjer eininga synleg
|
|
||||||
main.vaultlist.addVaultBtn=Legg til kvelv
|
main.vaultlist.addVaultBtn=Legg til kvelv
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -95,11 +95,11 @@ forgetPassword.confirmBtn=ਪਾਸਵਰਡ ਭੁੱਲ ਗਏ
|
|||||||
# Unlock
|
# Unlock
|
||||||
unlock.title=ਵਾਲਟ ਅਣ-ਲਾਕ ਕਰੋ
|
unlock.title=ਵਾਲਟ ਅਣ-ਲਾਕ ਕਰੋ
|
||||||
unlock.passwordPrompt="%s" ਲਈ ਪਾਸਵਰਡ ਦਿਓ:
|
unlock.passwordPrompt="%s" ਲਈ ਪਾਸਵਰਡ ਦਿਓ:
|
||||||
unlock.savePassword=ਪਾਸਵਰਡ ਯਾਦ ਰੱਖੋ
|
|
||||||
unlock.unlockBtn=ਅਣ-ਲਾਕ ਕਰੋ
|
unlock.unlockBtn=ਅਣ-ਲਾਕ ਕਰੋ
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" ਕਾਮਯਾਬੀ ਨਾਲ ਅਣ-ਲਾਕ ਕੀਤਾ! ਤੁਹਾਡਾ ਵਾਲਟ ਹੁਣ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।
|
||||||
unlock.success.rememberChoice=ਚੋਣਾਂ ਯਾਦ ਰੱਖੋ, ਇਹ ਮੁੜ ਕੇ ਨਾ ਵੇਖਾਓ
|
unlock.success.rememberChoice=ਚੋਣਾਂ ਯਾਦ ਰੱਖੋ, ਇਹ ਮੁੜ ਕੇ ਨਾ ਵੇਖਾਓ
|
||||||
unlock.success.revealBtn=ਡਰਾਇਵ ਦਿਖਾਓ
|
unlock.success.revealBtn=ਵਾਲਟ ਦਿਖਾਓ
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=ਵਾਲਟ ਅਣ-ਲਾਕ ਕਰਨ ਲਈ ਅਸਮਰੱਥ
|
unlock.error.heading=ਵਾਲਟ ਅਣ-ਲਾਕ ਕਰਨ ਲਈ ਅਸਮਰੱਥ
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -201,7 +201,6 @@ stats.read.accessCount=ਕੁੱਲ ਪੜ੍ਹੇ: %d
|
|||||||
stats.write.throughput.idle=ਲਿਖੇ: ਵੇਹਲ
|
stats.write.throughput.idle=ਲਿਖੇ: ਵੇਹਲ
|
||||||
stats.write.throughput.kibs=ਲਿਖੇ: %.2f kiB/s
|
stats.write.throughput.kibs=ਲਿਖੇ: %.2f kiB/s
|
||||||
stats.write.throughput.mibs=ਲਿਖੇ: %.2f MiB/s
|
stats.write.throughput.mibs=ਲਿਖੇ: %.2f MiB/s
|
||||||
stats.write.total.data.none=ਲਿਖਿਆ ਡਾਟਾ: -
|
|
||||||
stats.write.total.data.kib=ਡਾਟਾ ਲਿਖਿਆ: %.1f kiB
|
stats.write.total.data.kib=ਡਾਟਾ ਲਿਖਿਆ: %.1f kiB
|
||||||
stats.write.total.data.mib=ਡਾਟਾ ਲਿਖਿਆ: %.1f MiB
|
stats.write.total.data.mib=ਡਾਟਾ ਲਿਖਿਆ: %.1f MiB
|
||||||
stats.write.total.data.gib=ਡਾਟਾ ਲਿਖਿਆ: %.1f GiB
|
stats.write.total.data.gib=ਡਾਟਾ ਲਿਖਿਆ: %.1f GiB
|
||||||
@@ -222,10 +221,7 @@ main.dropZone.dropVault=ਇਹ ਵਾਲਟ ਜੋੜੋ
|
|||||||
main.dropZone.unknownDragboardContent=ਜੇ ਤੁਸੀਂ ਵਾਲਟ ਜੋੜਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਇਸ ਨੂੰ ਬੰਦ ਵਿੰਡੋ ਉੱਤੇ ਖਿੱਚੋ
|
main.dropZone.unknownDragboardContent=ਜੇ ਤੁਸੀਂ ਵਾਲਟ ਜੋੜਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਇਸ ਨੂੰ ਬੰਦ ਵਿੰਡੋ ਉੱਤੇ ਖਿੱਚੋ
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=ਵਾਲਟ ਜੋੜਨ ਲਈ ਇੱਥੇ ਕਲਿੱਕ ਕਰੋ
|
main.vaultlist.emptyList.onboardingInstruction=ਵਾਲਟ ਜੋੜਨ ਲਈ ਇੱਥੇ ਕਲਿੱਕ ਕਰੋ
|
||||||
main.vaultlist.contextMenu.lock=ਲਾਕ ਕਰੋ
|
main.vaultlist.contextMenu.remove=…ਵਾਲਟ ਹਟਾਓ
|
||||||
main.vaultlist.contextMenu.unlock=ਅਣ-ਲਾਕ ਕਰੋ…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=ਹੁਣੇ ਅਣ-ਲਾਕ ਕਰੋ
|
|
||||||
main.vaultlist.contextMenu.reveal=ਡਰਾਇਵ ਦਿਖਾਓ
|
|
||||||
main.vaultlist.addVaultBtn=ਵਾਲਟ ਜੋੜੋ
|
main.vaultlist.addVaultBtn=ਵਾਲਟ ਜੋੜੋ
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,9 +98,9 @@ unlock.passwordPrompt=Wprowadź hasło dla "%s":
|
|||||||
unlock.savePassword=Zapamiętaj hasło
|
unlock.savePassword=Zapamiętaj hasło
|
||||||
unlock.unlockBtn=Odblokuj
|
unlock.unlockBtn=Odblokuj
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message=Odblokowano "%s" pomyślnie! Twój sejf jest teraz dostępny za pomocą dysku wirtualnego.
|
unlock.success.message="%s" został odblokowany! Twój sejf jest teraz dostępny.
|
||||||
unlock.success.rememberChoice=Zapamiętaj wybór, nie pokazuj tego ponownie
|
unlock.success.rememberChoice=Zapamiętaj wybór, nie pokazuj tego ponownie
|
||||||
unlock.success.revealBtn=Ujawnij Dysk
|
unlock.success.revealBtn=Otwórz sejf
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Nie można odblokować sejfu
|
unlock.error.heading=Nie można odblokować sejfu
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -223,12 +223,7 @@ main.dropZone.dropVault=Dodaj ten sejf
|
|||||||
main.dropZone.unknownDragboardContent=Jeśli chcesz dodać sejf, przeciągnij go do tego okna
|
main.dropZone.unknownDragboardContent=Jeśli chcesz dodać sejf, przeciągnij go do tego okna
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Kliknij tutaj, aby dodać sejf
|
main.vaultlist.emptyList.onboardingInstruction=Kliknij tutaj, aby dodać sejf
|
||||||
main.vaultlist.contextMenu.remove=Usuń…
|
main.vaultlist.contextMenu.remove=Usuń sejf…
|
||||||
main.vaultlist.contextMenu.lock=Zablokuj
|
|
||||||
main.vaultlist.contextMenu.unlock=Odblokuj…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Odblokuj teraz
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=Pokaż opcje sejfu
|
|
||||||
main.vaultlist.contextMenu.reveal=Otwórz lokalizację
|
|
||||||
main.vaultlist.addVaultBtn=Dodaj sejf
|
main.vaultlist.addVaultBtn=Dodaj sejf
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -88,7 +88,9 @@ unlock.title=Destrancar Cofre
|
|||||||
unlock.passwordPrompt=Insira a senha para "%s":
|
unlock.passwordPrompt=Insira a senha para "%s":
|
||||||
unlock.unlockBtn=Destrancar
|
unlock.unlockBtn=Destrancar
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=Desbloqueado "%s" com sucesso! O seu cofre está agora acessível.
|
||||||
unlock.success.rememberChoice=Lembrar escolha, não mostrar isto novamente
|
unlock.success.rememberChoice=Lembrar escolha, não mostrar isto novamente
|
||||||
|
unlock.success.revealBtn=Revelar Cofre
|
||||||
## Failure
|
## Failure
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
|
|
||||||
@@ -138,8 +140,6 @@ main.minimizeBtn.tooltip=Minimizar
|
|||||||
main.preferencesBtn.tooltip=Preferências
|
main.preferencesBtn.tooltip=Preferências
|
||||||
## Drag 'n' Drop
|
## Drag 'n' Drop
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.contextMenu.lock=Trancar
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Destrancar agora
|
|
||||||
main.vaultlist.addVaultBtn=Adicionar Cofre
|
main.vaultlist.addVaultBtn=Adicionar Cofre
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt=Digite a senha para "%s":
|
|||||||
unlock.savePassword=Lembrar Senha
|
unlock.savePassword=Lembrar Senha
|
||||||
unlock.unlockBtn=Desbloquear
|
unlock.unlockBtn=Desbloquear
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" foi desbloqueado com sucesso! Seu cofre agora está acessível.
|
||||||
unlock.success.rememberChoice=Lembrar opção escolhida, não mostrar isto novamente
|
unlock.success.rememberChoice=Lembrar opção escolhida, não mostrar isto novamente
|
||||||
unlock.success.revealBtn=Revelar Volume
|
unlock.success.revealBtn=Revelar Cofre
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Não foi possível desbloquear o cofre
|
unlock.error.heading=Não foi possível desbloquear o cofre
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -201,7 +202,6 @@ stats.read.accessCount=Total de leituras: %d
|
|||||||
stats.write.throughput.idle=Escrita: ociosa
|
stats.write.throughput.idle=Escrita: ociosa
|
||||||
stats.write.throughput.kibs=Escrita: %.2f kiB/s
|
stats.write.throughput.kibs=Escrita: %.2f kiB/s
|
||||||
stats.write.throughput.mibs=Escrita: %.2f MiB/s
|
stats.write.throughput.mibs=Escrita: %.2f MiB/s
|
||||||
stats.write.total.data.none=Dados gravados: -
|
|
||||||
stats.write.total.data.kib=Dados gravados: %.1f kiB
|
stats.write.total.data.kib=Dados gravados: %.1f kiB
|
||||||
stats.write.total.data.mib=Dados gravados: %.1f MiB
|
stats.write.total.data.mib=Dados gravados: %.1f MiB
|
||||||
stats.write.total.data.gib=Dados gravados: %.1f GiB
|
stats.write.total.data.gib=Dados gravados: %.1f GiB
|
||||||
@@ -222,10 +222,7 @@ main.dropZone.dropVault=Adicionar este cofre
|
|||||||
main.dropZone.unknownDragboardContent=Se você quer adicionar um cofre, arraste-o para esta janela
|
main.dropZone.unknownDragboardContent=Se você quer adicionar um cofre, arraste-o para esta janela
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Clique aqui para adicionar um cofre
|
main.vaultlist.emptyList.onboardingInstruction=Clique aqui para adicionar um cofre
|
||||||
main.vaultlist.contextMenu.lock=Bloquear
|
main.vaultlist.contextMenu.remove=Remover Cofre…
|
||||||
main.vaultlist.contextMenu.unlock=Desbloquear…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Desbloquear Agora
|
|
||||||
main.vaultlist.contextMenu.reveal=Revelar Volume
|
|
||||||
main.vaultlist.addVaultBtn=Adicionar Cofre
|
main.vaultlist.addVaultBtn=Adicionar Cofre
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,9 +98,9 @@ unlock.passwordPrompt=Введите пароль для "%s"
|
|||||||
unlock.savePassword=Запомнить пароль
|
unlock.savePassword=Запомнить пароль
|
||||||
unlock.unlockBtn=Разблокировать
|
unlock.unlockBtn=Разблокировать
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message=Разблокировка "%s" успешно выполнена! Доступ в хранилище открыт через его виртуальный диск.
|
unlock.success.message=Разблокировка "%s" успешно выполнена! Доступ в хранилище открыт.
|
||||||
unlock.success.rememberChoice=Запомнить выбор и больше не спрашивать
|
unlock.success.rememberChoice=Запомнить выбор и больше не спрашивать
|
||||||
unlock.success.revealBtn=Показать диск
|
unlock.success.revealBtn=Показать хранилище
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Не удалось разблокировать хранилище
|
unlock.error.heading=Не удалось разблокировать хранилище
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -223,12 +223,7 @@ main.dropZone.dropVault=Добавить это хранилище
|
|||||||
main.dropZone.unknownDragboardContent=Если вы хотите добавить хранилище, перетащите его в это окно
|
main.dropZone.unknownDragboardContent=Если вы хотите добавить хранилище, перетащите его в это окно
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Нажмите здесь, чтобы добавить хранилище
|
main.vaultlist.emptyList.onboardingInstruction=Нажмите здесь, чтобы добавить хранилище
|
||||||
main.vaultlist.contextMenu.remove=Удалить…
|
main.vaultlist.contextMenu.remove=Удалить хранилище…
|
||||||
main.vaultlist.contextMenu.lock=Заблокировать
|
|
||||||
main.vaultlist.contextMenu.unlock=Разблокировка…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Разблокировать
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=Параметры хранилища
|
|
||||||
main.vaultlist.contextMenu.reveal=Показать диск
|
|
||||||
main.vaultlist.addVaultBtn=Добавить хранилище
|
main.vaultlist.addVaultBtn=Добавить хранилище
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -96,6 +96,8 @@ unlock.passwordPrompt=Zadajte heslo pre "%s":
|
|||||||
unlock.savePassword=Odomknúť.uložiťHeslo
|
unlock.savePassword=Odomknúť.uložiťHeslo
|
||||||
unlock.unlockBtn=Odomknúť
|
unlock.unlockBtn=Odomknúť
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=Úspešne sa odomkol "%s"! Váš trezor je teraz prístupný.
|
||||||
|
unlock.success.revealBtn=Odhaliť trezor
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Nie je možné odomknúť účet
|
unlock.error.heading=Nie je možné odomknúť účet
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -170,9 +172,7 @@ main.preferencesBtn.tooltip=Predvoľby
|
|||||||
main.debugModeEnabled.tooltip=Debagovací mód je aktivovaný
|
main.debugModeEnabled.tooltip=Debagovací mód je aktivovaný
|
||||||
## Drag 'n' Drop
|
## Drag 'n' Drop
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.contextMenu.lock=Uzamknúť
|
main.vaultlist.contextMenu.remove=Odstrániť peňaženku…
|
||||||
main.vaultlist.contextMenu.unlock=Odomknúť…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Odomknúť teraz
|
|
||||||
main.vaultlist.addVaultBtn=Pridať trezor
|
main.vaultlist.addVaultBtn=Pridať trezor
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -1,75 +0,0 @@
|
|||||||
# Locale Specific CSS files such as CJK, RTL,...
|
|
||||||
|
|
||||||
# Generics
|
|
||||||
## Button
|
|
||||||
## Error
|
|
||||||
|
|
||||||
# Defaults
|
|
||||||
|
|
||||||
# Tray Menu
|
|
||||||
|
|
||||||
# Add Vault Wizard
|
|
||||||
## Welcome
|
|
||||||
## New
|
|
||||||
### Name
|
|
||||||
### Location
|
|
||||||
### Password
|
|
||||||
### Information
|
|
||||||
## Existing
|
|
||||||
## Success
|
|
||||||
|
|
||||||
# Remove Vault
|
|
||||||
|
|
||||||
# Change Password
|
|
||||||
|
|
||||||
# Forget Password
|
|
||||||
|
|
||||||
# Unlock
|
|
||||||
## Success
|
|
||||||
## Failure
|
|
||||||
### Invalid Mount Point
|
|
||||||
|
|
||||||
# Lock
|
|
||||||
## Force
|
|
||||||
## Failure
|
|
||||||
|
|
||||||
# Migration
|
|
||||||
## Start
|
|
||||||
## Run
|
|
||||||
## Sucess
|
|
||||||
## Missing file system capabilities
|
|
||||||
## Impossible
|
|
||||||
|
|
||||||
# Preferences
|
|
||||||
## General
|
|
||||||
## Volume
|
|
||||||
## Updates
|
|
||||||
## Donation Key
|
|
||||||
## About
|
|
||||||
|
|
||||||
# Vault Statistics
|
|
||||||
## Read
|
|
||||||
## Write
|
|
||||||
|
|
||||||
# Main Window
|
|
||||||
## Drag 'n' Drop
|
|
||||||
## Vault List
|
|
||||||
## Vault Detail
|
|
||||||
### Welcome
|
|
||||||
### Locked
|
|
||||||
### Unlocked
|
|
||||||
### Missing
|
|
||||||
### Needs Migration
|
|
||||||
|
|
||||||
# Wrong File Alert
|
|
||||||
|
|
||||||
# Vault Options
|
|
||||||
## General
|
|
||||||
## Mount
|
|
||||||
## Master Key
|
|
||||||
|
|
||||||
# Recovery Key
|
|
||||||
|
|
||||||
# New Password
|
|
||||||
|
|
||||||
# Quit
|
|
||||||
@@ -14,7 +14,7 @@ generic.button.next=Nästa
|
|||||||
generic.button.print=Skriv ut
|
generic.button.print=Skriv ut
|
||||||
## Error
|
## Error
|
||||||
generic.error.title=Ett oväntat fel uppstod
|
generic.error.title=Ett oväntat fel uppstod
|
||||||
generic.error.instruction=Detta borde inte hänt. Vänligen rapportera feltexten nedan och inkludera en beskrivning av vilka steg som ledde till detta fel.
|
generic.error.instruction=Det här borde inte ha hänt. Vänligen rapportera feltexten nedan och inkludera en beskrivning av vilka steg som ledde till detta fel.
|
||||||
|
|
||||||
# Defaults
|
# Defaults
|
||||||
defaults.vault.vaultName=Valv
|
defaults.vault.vaultName=Valv
|
||||||
@@ -56,7 +56,7 @@ addvaultwizard.new.generateRecoveryKeyChoice.no=Nej tack. Här slarvas inga lös
|
|||||||
addvault.new.readme.storageLocation.fileName=VIKTIGT.rtf
|
addvault.new.readme.storageLocation.fileName=VIKTIGT.rtf
|
||||||
addvault.new.readme.storageLocation.1=⚠️ VALVFILER ⚠️
|
addvault.new.readme.storageLocation.1=⚠️ VALVFILER ⚠️
|
||||||
addvault.new.readme.storageLocation.2=Detta är ditt valvs lagringsplats.
|
addvault.new.readme.storageLocation.2=Detta är ditt valvs lagringsplats.
|
||||||
addvault.new.readme.storageLocation.3=DU SKA INTE
|
addvault.new.readme.storageLocation.3=INTE
|
||||||
addvault.new.readme.storageLocation.4=• ändra någon fil i denna katalog eller
|
addvault.new.readme.storageLocation.4=• ändra någon fil i denna katalog eller
|
||||||
addvault.new.readme.storageLocation.5=• klistra in filer för kryptering i denna katalog.
|
addvault.new.readme.storageLocation.5=• klistra in filer för kryptering i denna katalog.
|
||||||
addvault.new.readme.storageLocation.6=Om du vill kryptera filer och se innehållet i valvet, gör följande:
|
addvault.new.readme.storageLocation.6=Om du vill kryptera filer och se innehållet i valvet, gör följande:
|
||||||
@@ -74,7 +74,7 @@ addvaultwizard.existing.instruction=Välj "masterkey.cryptomator" för ditt befi
|
|||||||
addvaultwizard.existing.chooseBtn=Välj…
|
addvaultwizard.existing.chooseBtn=Välj…
|
||||||
addvaultwizard.existing.filePickerTitle=Välj Masterkey-fil
|
addvaultwizard.existing.filePickerTitle=Välj Masterkey-fil
|
||||||
## Success
|
## Success
|
||||||
addvaultwizard.success.nextStepsInstructions=Lade till valv "%s".\nDu måste låsa upp detta valv för att komma åt eller lägga till innehåll. Du kan även låsa upp det vid ett senare tillfälle.
|
addvaultwizard.success.nextStepsInstructions=Lade till valv "%s".\nDu behöver låsa upp detta valv för att komma åt eller lägga till innehåll. Du kan även låsa upp det vid ett senare tillfälle.
|
||||||
addvaultwizard.success.unlockNow=Lås upp nu
|
addvaultwizard.success.unlockNow=Lås upp nu
|
||||||
|
|
||||||
# Remove Vault
|
# Remove Vault
|
||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt=Ange lösenord för "%s":
|
|||||||
unlock.savePassword=Kom ihåg lösenord
|
unlock.savePassword=Kom ihåg lösenord
|
||||||
unlock.unlockBtn=Lås upp
|
unlock.unlockBtn=Lås upp
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message="%s" upplåst! Ditt valv är nu åtkomligt.
|
||||||
unlock.success.rememberChoice=Kom ihåg valet, visa inte detta igen
|
unlock.success.rememberChoice=Kom ihåg valet, visa inte detta igen
|
||||||
unlock.success.revealBtn=Visa enhet
|
unlock.success.revealBtn=Visa valv
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Kan inte låsa upp valvet
|
unlock.error.heading=Kan inte låsa upp valvet
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -125,7 +126,7 @@ migration.run.enterPassword=Ange lösenordet för "%s"
|
|||||||
migration.run.startMigrationBtn=Migrera valv
|
migration.run.startMigrationBtn=Migrera valv
|
||||||
migration.run.progressHint=Detta kan ta lite tid…
|
migration.run.progressHint=Detta kan ta lite tid…
|
||||||
## Sucess
|
## Sucess
|
||||||
migration.success.nextStepsInstructions="%s" migrerades korrekt.\nDu kan nu låsa upp ditt valv.
|
migration.success.nextStepsInstructions="%s" migrerades fullständigt.\nDu kan nu låsa upp ditt valv.
|
||||||
migration.success.unlockNow=Lås upp nu
|
migration.success.unlockNow=Lås upp nu
|
||||||
## Missing file system capabilities
|
## Missing file system capabilities
|
||||||
migration.error.missingFileSystemCapabilities.title=Filsystemet stöds ej
|
migration.error.missingFileSystemCapabilities.title=Filsystemet stöds ej
|
||||||
@@ -136,7 +137,7 @@ migration.error.missingFileSystemCapabilities.reason.READ_ACCESS=Filsystemet til
|
|||||||
migration.error.missingFileSystemCapabilities.reason.WRITE_ACCESS=Filsystemet tillåter inte att skrivas till.
|
migration.error.missingFileSystemCapabilities.reason.WRITE_ACCESS=Filsystemet tillåter inte att skrivas till.
|
||||||
## Impossible
|
## Impossible
|
||||||
migration.impossible.heading=Kan inte migrera valv
|
migration.impossible.heading=Kan inte migrera valv
|
||||||
migration.impossible.reason=Valvet kan inte migreras automatiskt eftersom dess lagringsplats eller åtkomstpunkt inte är kompatibelt.
|
migration.impossible.reason=Valvet kan inte migreras automatiskt eftersom dess lagringsplats eller åtkomstpunkt inte är kompatibel.
|
||||||
migration.impossible.moreInfo=Valvet kan fortfarande öppnas med en äldre version. För instruktioner om hur du manuellt migrerar ett valv, besök
|
migration.impossible.moreInfo=Valvet kan fortfarande öppnas med en äldre version. För instruktioner om hur du manuellt migrerar ett valv, besök
|
||||||
|
|
||||||
# Preferences
|
# Preferences
|
||||||
@@ -148,8 +149,8 @@ preferences.general.theme.automatic=Automatiskt
|
|||||||
preferences.general.theme.light=Ljust
|
preferences.general.theme.light=Ljust
|
||||||
preferences.general.theme.dark=Mörkt
|
preferences.general.theme.dark=Mörkt
|
||||||
preferences.general.unlockThemes=Lås upp mörkt läge
|
preferences.general.unlockThemes=Lås upp mörkt läge
|
||||||
preferences.general.showMinimizeButton=Visa minimera-knappen
|
preferences.general.showMinimizeButton=Visa minimera knappen
|
||||||
preferences.general.showTrayIcon=Visa ikon i aktivitetsfältet (kräver omstart)
|
preferences.general.showTrayIcon=Visa tray-ikon (kräver omstart)
|
||||||
preferences.general.startHidden=Dölj fönster när Cryptomator startar
|
preferences.general.startHidden=Dölj fönster när Cryptomator startar
|
||||||
preferences.general.debugLogging=Aktivera loggning för felsökning
|
preferences.general.debugLogging=Aktivera loggning för felsökning
|
||||||
preferences.general.debugDirectory=Visa loggfiler
|
preferences.general.debugDirectory=Visa loggfiler
|
||||||
@@ -170,7 +171,7 @@ preferences.volume.webdav.scheme=WebDAV Schema
|
|||||||
## Updates
|
## Updates
|
||||||
preferences.updates=Uppdateringar
|
preferences.updates=Uppdateringar
|
||||||
preferences.updates.currentVersion=Nuvarande version: %s
|
preferences.updates.currentVersion=Nuvarande version: %s
|
||||||
preferences.updates.autoUpdateCheck=Sök efter uppdateringar automatiskt
|
preferences.updates.autoUpdateCheck=Kontrollera uppdateringar automatiskt
|
||||||
preferences.updates.checkNowBtn=Kontrollera nu
|
preferences.updates.checkNowBtn=Kontrollera nu
|
||||||
preferences.updates.updateAvailable=Uppdatering till version %s finns tillgänglig.
|
preferences.updates.updateAvailable=Uppdatering till version %s finns tillgänglig.
|
||||||
## Donation Key
|
## Donation Key
|
||||||
@@ -222,14 +223,11 @@ main.dropZone.dropVault=Lägg till detta valv
|
|||||||
main.dropZone.unknownDragboardContent=Om du vill lägga till ett valv, dra in det till detta fönster
|
main.dropZone.unknownDragboardContent=Om du vill lägga till ett valv, dra in det till detta fönster
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Klicka här för att lägga till valv
|
main.vaultlist.emptyList.onboardingInstruction=Klicka här för att lägga till valv
|
||||||
main.vaultlist.contextMenu.lock=Lås
|
main.vaultlist.contextMenu.remove=Ta bort valv…
|
||||||
main.vaultlist.contextMenu.unlock=Lås upp…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Lås upp nu
|
|
||||||
main.vaultlist.contextMenu.reveal=Visa enhet
|
|
||||||
main.vaultlist.addVaultBtn=Lägg till valv
|
main.vaultlist.addVaultBtn=Lägg till valv
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
main.vaultDetail.welcomeOnboarding=Tack för att du väljer Cryptomator för att skydda dina filer. Om du behöver hjälp kan du kolla in våra guider:
|
main.vaultDetail.welcomeOnboarding=Tack för att du väljer Cryptomator för att skydda dina filer. Om du behöver hjälp, kolla in våra kom-gång guider:
|
||||||
### Locked
|
### Locked
|
||||||
main.vaultDetail.lockedStatus=LÅST
|
main.vaultDetail.lockedStatus=LÅST
|
||||||
main.vaultDetail.unlockBtn=Lås upp…
|
main.vaultDetail.unlockBtn=Lås upp…
|
||||||
@@ -248,7 +246,7 @@ main.vaultDetail.throughput.kbps=%.1f kiB/s
|
|||||||
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
main.vaultDetail.throughput.mbps=%.1f MiB/s
|
||||||
main.vaultDetail.stats=Valv Statistik
|
main.vaultDetail.stats=Valv Statistik
|
||||||
### Missing
|
### Missing
|
||||||
main.vaultDetail.missing.info=Cryptomator kunde inte hitta någt valv i denna sökväg.
|
main.vaultDetail.missing.info=Cryptomator kunde inte hitta ett valv i denna sökväg.
|
||||||
main.vaultDetail.missing.recheck=Kontrollera igen
|
main.vaultDetail.missing.recheck=Kontrollera igen
|
||||||
main.vaultDetail.missing.remove=Ta bort från listan…
|
main.vaultDetail.missing.remove=Ta bort från listan…
|
||||||
main.vaultDetail.missing.changeLocation=Ändra valvets plats…
|
main.vaultDetail.missing.changeLocation=Ändra valvets plats…
|
||||||
|
|||||||
@@ -98,9 +98,9 @@ unlock.passwordPrompt="%s" için şifre girin:
|
|||||||
unlock.savePassword=Şifreyi Hatırla
|
unlock.savePassword=Şifreyi Hatırla
|
||||||
unlock.unlockBtn=Kilidi Aç
|
unlock.unlockBtn=Kilidi Aç
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message="%s" 'nin kilidi başarıyla açıldı! Kasanız şimdi sanal sürücüsü ile erişilebilir durumda.
|
unlock.success.message="%s" 'nin kilidi başarıyla açıldı! Kasanız şimdi erişilebilir durumda.
|
||||||
unlock.success.rememberChoice=Seçimi hatırla, bunu bir daha gösterme
|
unlock.success.rememberChoice=Seçimi hatırla, bunu bir daha gösterme
|
||||||
unlock.success.revealBtn=Sürücüyü Göster
|
unlock.success.revealBtn=Kasayı Göster
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=Kasanın kilidi açılamıyor
|
unlock.error.heading=Kasanın kilidi açılamıyor
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -223,12 +223,7 @@ main.dropZone.dropVault=Bu kasayı ekle
|
|||||||
main.dropZone.unknownDragboardContent=Bir kasa eklemek istiyorsanız, onu bu pencereye sürükleyin
|
main.dropZone.unknownDragboardContent=Bir kasa eklemek istiyorsanız, onu bu pencereye sürükleyin
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=Kasa eklemek için buraya tıklayın
|
main.vaultlist.emptyList.onboardingInstruction=Kasa eklemek için buraya tıklayın
|
||||||
main.vaultlist.contextMenu.remove=Kaldır…
|
main.vaultlist.contextMenu.remove=Kasayı Sil…
|
||||||
main.vaultlist.contextMenu.lock=Kilitle
|
|
||||||
main.vaultlist.contextMenu.unlock=Kilit aç…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=Kilidi Şimdi Aç
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=Kasa Ayarları'nı Göster
|
|
||||||
main.vaultlist.contextMenu.reveal=Sürücüyü Göster
|
|
||||||
main.vaultlist.addVaultBtn=Kasa Ekle
|
main.vaultlist.addVaultBtn=Kasa Ekle
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -98,8 +98,9 @@ unlock.passwordPrompt=输入 "%s" 的密码
|
|||||||
unlock.savePassword=记住密码
|
unlock.savePassword=记住密码
|
||||||
unlock.unlockBtn=解锁
|
unlock.unlockBtn=解锁
|
||||||
## Success
|
## Success
|
||||||
|
unlock.success.message=已成功解锁 "%s"! 您现在可以访问该保险库
|
||||||
unlock.success.rememberChoice=记住选项且不再显示
|
unlock.success.rememberChoice=记住选项且不再显示
|
||||||
unlock.success.revealBtn=显示驱动器
|
unlock.success.revealBtn=显示保险库
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=无法解锁保险库
|
unlock.error.heading=无法解锁保险库
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -222,10 +223,7 @@ main.dropZone.dropVault=添加此保险库
|
|||||||
main.dropZone.unknownDragboardContent=如果您想要添加一个保险库,将其拖动到此窗口
|
main.dropZone.unknownDragboardContent=如果您想要添加一个保险库,将其拖动到此窗口
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=点击此处添加一个保险库
|
main.vaultlist.emptyList.onboardingInstruction=点击此处添加一个保险库
|
||||||
main.vaultlist.contextMenu.lock=锁定
|
main.vaultlist.contextMenu.remove=删除保险库…
|
||||||
main.vaultlist.contextMenu.unlock=解锁…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=立即解锁
|
|
||||||
main.vaultlist.contextMenu.reveal=显示驱动器
|
|
||||||
main.vaultlist.addVaultBtn=添加保险库
|
main.vaultlist.addVaultBtn=添加保险库
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -95,12 +95,11 @@ forgetPassword.confirmBtn=忘記密碼
|
|||||||
# Unlock
|
# Unlock
|
||||||
unlock.title=解鎖加密檔案庫
|
unlock.title=解鎖加密檔案庫
|
||||||
unlock.passwordPrompt=輸入 "%s" 的密碼:
|
unlock.passwordPrompt=輸入 "%s" 的密碼:
|
||||||
unlock.savePassword=記住密碼
|
|
||||||
unlock.unlockBtn=解鎖
|
unlock.unlockBtn=解鎖
|
||||||
## Success
|
## Success
|
||||||
unlock.success.message=成功解鎖 "%s"!您現在可以存存取您的加密檔案庫。
|
unlock.success.message=成功解鎖 "%s"!您現在可以存取您的加密檔案庫。
|
||||||
unlock.success.rememberChoice=記得這個決定,不要再顯示
|
unlock.success.rememberChoice=記得這個決定,不要再顯示
|
||||||
unlock.success.revealBtn=顯示磁碟
|
unlock.success.revealBtn=顯示加密檔案庫
|
||||||
## Failure
|
## Failure
|
||||||
unlock.error.heading=無法解鎖加密檔案庫
|
unlock.error.heading=無法解鎖加密檔案庫
|
||||||
### Invalid Mount Point
|
### Invalid Mount Point
|
||||||
@@ -223,12 +222,7 @@ main.dropZone.dropVault=加入這個加密檔案庫
|
|||||||
main.dropZone.unknownDragboardContent=如果您想加入一個加密檔案庫,請將他拖到這個視窗裡
|
main.dropZone.unknownDragboardContent=如果您想加入一個加密檔案庫,請將他拖到這個視窗裡
|
||||||
## Vault List
|
## Vault List
|
||||||
main.vaultlist.emptyList.onboardingInstruction=點擊此處以加入加密檔案庫
|
main.vaultlist.emptyList.onboardingInstruction=點擊此處以加入加密檔案庫
|
||||||
main.vaultlist.contextMenu.remove=移除…
|
main.vaultlist.contextMenu.remove=移除加密檔案庫…
|
||||||
main.vaultlist.contextMenu.lock=鎖定
|
|
||||||
main.vaultlist.contextMenu.unlock=解鎖…
|
|
||||||
main.vaultlist.contextMenu.unlockNow=立即解鎖
|
|
||||||
main.vaultlist.contextMenu.vaultoptions=顯示加密檔案庫選項
|
|
||||||
main.vaultlist.contextMenu.reveal=顯示磁碟
|
|
||||||
main.vaultlist.addVaultBtn=新增加密檔案庫
|
main.vaultlist.addVaultBtn=新增加密檔案庫
|
||||||
## Vault Detail
|
## Vault Detail
|
||||||
### Welcome
|
### Welcome
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ GNU General Public License for more details.
|
|||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU General Public License
|
||||||
along with this program. If not, see http://www.gnu.org/licenses/.
|
along with this program. If not, see http://www.gnu.org/licenses/.
|
||||||
|
|
||||||
Cryptomator uses 45 third-party dependencies under the following licenses:
|
Cryptomator uses 46 third-party dependencies under the following licenses:
|
||||||
Apache License v2.0:
|
Apache License v2.0:
|
||||||
- jffi (com.github.jnr:jffi:1.2.23 - http://github.com/jnr/jffi)
|
- jffi (com.github.jnr:jffi:1.2.23 - http://github.com/jnr/jffi)
|
||||||
- jnr-a64asm (com.github.jnr:jnr-a64asm:1.0.0 - http://nexus.sonatype.org/oss-repository-hosting.html/jnr-a64asm)
|
- jnr-a64asm (com.github.jnr:jnr-a64asm:1.0.0 - http://nexus.sonatype.org/oss-repository-hosting.html/jnr-a64asm)
|
||||||
@@ -30,37 +30,39 @@ Cryptomator uses 45 third-party dependencies under the following licenses:
|
|||||||
- Java Native Access (net.java.dev.jna:jna:5.7.0 - https://github.com/java-native-access/jna)
|
- Java Native Access (net.java.dev.jna:jna:5.7.0 - https://github.com/java-native-access/jna)
|
||||||
- Java Native Access Platform (net.java.dev.jna:jna-platform:5.7.0 - https://github.com/java-native-access/jna)
|
- Java Native Access Platform (net.java.dev.jna:jna-platform:5.7.0 - https://github.com/java-native-access/jna)
|
||||||
- Apache Commons Lang (org.apache.commons:commons-lang3:3.11 - https://commons.apache.org/proper/commons-lang/)
|
- Apache Commons Lang (org.apache.commons:commons-lang3:3.11 - https://commons.apache.org/proper/commons-lang/)
|
||||||
- Apache HttpCore (org.apache.httpcomponents:httpcore:4.4.14 - http://hc.apache.org/httpcomponents-core-ga)
|
- Apache HttpCore (org.apache.httpcomponents:httpcore:4.4.13 - http://hc.apache.org/httpcomponents-core-ga)
|
||||||
- Jackrabbit WebDAV Library (org.apache.jackrabbit:jackrabbit-webdav:2.21.5 - http://jackrabbit.apache.org/jackrabbit-webdav/)
|
- Jackrabbit WebDAV Library (org.apache.jackrabbit:jackrabbit-webdav:2.21.3 - http://jackrabbit.apache.org/jackrabbit-webdav/)
|
||||||
- Jetty :: Http Utility (org.eclipse.jetty:jetty-http:10.0.1 - https://eclipse.org/jetty/jetty-http)
|
- Jetty :: Http Utility (org.eclipse.jetty:jetty-http:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-http)
|
||||||
- Jetty :: IO Utility (org.eclipse.jetty:jetty-io:10.0.1 - https://eclipse.org/jetty/jetty-io)
|
- Jetty :: IO Utility (org.eclipse.jetty:jetty-io:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-io)
|
||||||
- Jetty :: Security (org.eclipse.jetty:jetty-security:10.0.1 - https://eclipse.org/jetty/jetty-security)
|
- Jetty :: Security (org.eclipse.jetty:jetty-security:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-security)
|
||||||
- Jetty :: Server Core (org.eclipse.jetty:jetty-server:10.0.1 - https://eclipse.org/jetty/jetty-server)
|
- Jetty :: Server Core (org.eclipse.jetty:jetty-server:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-server)
|
||||||
- Jetty :: Servlet Handling (org.eclipse.jetty:jetty-servlet:10.0.1 - https://eclipse.org/jetty/jetty-servlet)
|
- Jetty :: Servlet Handling (org.eclipse.jetty:jetty-servlet:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-servlet)
|
||||||
- Jetty :: Utilities (org.eclipse.jetty:jetty-util:10.0.1 - https://eclipse.org/jetty/jetty-util)
|
- Jetty :: Utilities (org.eclipse.jetty:jetty-util:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-util)
|
||||||
- Jetty :: Webapp Application Support (org.eclipse.jetty:jetty-webapp:10.0.1 - https://eclipse.org/jetty/jetty-webapp)
|
- Jetty :: Utilities :: Ajax(JSON) (org.eclipse.jetty:jetty-util-ajax:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-util-ajax)
|
||||||
- Jetty :: XML utilities (org.eclipse.jetty:jetty-xml:10.0.1 - https://eclipse.org/jetty/jetty-xml)
|
- Jetty :: Webapp Application Support (org.eclipse.jetty:jetty-webapp:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-webapp)
|
||||||
|
- Jetty :: XML utilities (org.eclipse.jetty:jetty-xml:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-xml)
|
||||||
BSD:
|
BSD:
|
||||||
- asm (org.ow2.asm:asm:7.1 - http://asm.ow2.org/)
|
- asm (org.ow2.asm:asm:7.1 - http://asm.ow2.org/)
|
||||||
- asm-analysis (org.ow2.asm:asm-analysis:7.1 - http://asm.ow2.org/)
|
- asm-analysis (org.ow2.asm:asm-analysis:7.1 - http://asm.ow2.org/)
|
||||||
- asm-commons (org.ow2.asm:asm-commons:7.1 - http://asm.ow2.org/)
|
- asm-commons (org.ow2.asm:asm-commons:7.1 - http://asm.ow2.org/)
|
||||||
- asm-tree (org.ow2.asm:asm-tree:7.1 - http://asm.ow2.org/)
|
- asm-tree (org.ow2.asm:asm-tree:7.1 - http://asm.ow2.org/)
|
||||||
- asm-util (org.ow2.asm:asm-util:7.1 - http://asm.ow2.org/)
|
- asm-util (org.ow2.asm:asm-util:7.1 - http://asm.ow2.org/)
|
||||||
Eclipse Public License - Version 2.0:
|
Eclipse Public License - Version 1.0:
|
||||||
- Jetty :: Http Utility (org.eclipse.jetty:jetty-http:10.0.1 - https://eclipse.org/jetty/jetty-http)
|
- Jetty :: Http Utility (org.eclipse.jetty:jetty-http:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-http)
|
||||||
- Jetty :: IO Utility (org.eclipse.jetty:jetty-io:10.0.1 - https://eclipse.org/jetty/jetty-io)
|
- Jetty :: IO Utility (org.eclipse.jetty:jetty-io:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-io)
|
||||||
- Jetty :: Security (org.eclipse.jetty:jetty-security:10.0.1 - https://eclipse.org/jetty/jetty-security)
|
- Jetty :: Security (org.eclipse.jetty:jetty-security:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-security)
|
||||||
- Jetty :: Server Core (org.eclipse.jetty:jetty-server:10.0.1 - https://eclipse.org/jetty/jetty-server)
|
- Jetty :: Server Core (org.eclipse.jetty:jetty-server:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-server)
|
||||||
- Jetty :: Servlet Handling (org.eclipse.jetty:jetty-servlet:10.0.1 - https://eclipse.org/jetty/jetty-servlet)
|
- Jetty :: Servlet Handling (org.eclipse.jetty:jetty-servlet:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-servlet)
|
||||||
- Jetty :: Utilities (org.eclipse.jetty:jetty-util:10.0.1 - https://eclipse.org/jetty/jetty-util)
|
- Jetty :: Utilities (org.eclipse.jetty:jetty-util:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-util)
|
||||||
- Jetty :: Webapp Application Support (org.eclipse.jetty:jetty-webapp:10.0.1 - https://eclipse.org/jetty/jetty-webapp)
|
- Jetty :: Utilities :: Ajax(JSON) (org.eclipse.jetty:jetty-util-ajax:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-util-ajax)
|
||||||
- Jetty :: XML utilities (org.eclipse.jetty:jetty-xml:10.0.1 - https://eclipse.org/jetty/jetty-xml)
|
- Jetty :: Webapp Application Support (org.eclipse.jetty:jetty-webapp:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-webapp)
|
||||||
|
- Jetty :: XML utilities (org.eclipse.jetty:jetty-xml:9.4.36.v20210114 - https://eclipse.org/jetty/jetty-xml)
|
||||||
Eclipse Public License - v 2.0:
|
Eclipse Public License - v 2.0:
|
||||||
- jnr-posix (com.github.jnr:jnr-posix:3.0.54 - http://nexus.sonatype.org/oss-repository-hosting.html/jnr-posix)
|
- jnr-posix (com.github.jnr:jnr-posix:3.0.54 - http://nexus.sonatype.org/oss-repository-hosting.html/jnr-posix)
|
||||||
GPLv2:
|
GPLv2:
|
||||||
- jnr-posix (com.github.jnr:jnr-posix:3.0.54 - http://nexus.sonatype.org/oss-repository-hosting.html/jnr-posix)
|
- jnr-posix (com.github.jnr:jnr-posix:3.0.54 - http://nexus.sonatype.org/oss-repository-hosting.html/jnr-posix)
|
||||||
GPLv2+CE:
|
GPLv2+CE:
|
||||||
- Java Servlet API (javax.servlet:javax.servlet-api:4.0.1 - https://javaee.github.io/servlet-spec/)
|
- Java Servlet API (javax.servlet:javax.servlet-api:3.1.0 - http://servlet-spec.java.net)
|
||||||
- javafx-base (org.openjfx:javafx-base:15 - https://openjdk.java.net/projects/openjfx/javafx-base/)
|
- javafx-base (org.openjfx:javafx-base:15 - https://openjdk.java.net/projects/openjfx/javafx-base/)
|
||||||
- javafx-controls (org.openjfx:javafx-controls:15 - https://openjdk.java.net/projects/openjfx/javafx-controls/)
|
- javafx-controls (org.openjfx:javafx-controls:15 - https://openjdk.java.net/projects/openjfx/javafx-controls/)
|
||||||
- javafx-fxml (org.openjfx:javafx-fxml:15 - https://openjdk.java.net/projects/openjfx/javafx-fxml/)
|
- javafx-fxml (org.openjfx:javafx-fxml:15 - https://openjdk.java.net/projects/openjfx/javafx-fxml/)
|
||||||
@@ -70,7 +72,7 @@ Cryptomator uses 45 third-party dependencies under the following licenses:
|
|||||||
- Java Native Access (net.java.dev.jna:jna:5.7.0 - https://github.com/java-native-access/jna)
|
- Java Native Access (net.java.dev.jna:jna:5.7.0 - https://github.com/java-native-access/jna)
|
||||||
- Java Native Access Platform (net.java.dev.jna:jna-platform:5.7.0 - https://github.com/java-native-access/jna)
|
- Java Native Access Platform (net.java.dev.jna:jna-platform:5.7.0 - https://github.com/java-native-access/jna)
|
||||||
MIT License:
|
MIT License:
|
||||||
- java jwt (com.auth0:java-jwt:3.13.0 - https://github.com/auth0/java-jwt)
|
- java jwt (com.auth0:java-jwt:3.12.0 - https://github.com/auth0/java-jwt)
|
||||||
- jnr-x86asm (com.github.jnr:jnr-x86asm:1.0.2 - http://github.com/jnr/jnr-x86asm)
|
- jnr-x86asm (com.github.jnr:jnr-x86asm:1.0.2 - http://github.com/jnr/jnr-x86asm)
|
||||||
- jnr-fuse (com.github.serceman:jnr-fuse:0.5.5 - https://github.com/SerCeMan/jnr-fuse)
|
- jnr-fuse (com.github.serceman:jnr-fuse:0.5.5 - https://github.com/SerCeMan/jnr-fuse)
|
||||||
- zxcvbn4j (com.nulab-inc:zxcvbn:1.3.0 - https://github.com/nulab/zxcvbn4j)
|
- zxcvbn4j (com.nulab-inc:zxcvbn:1.3.0 - https://github.com/nulab/zxcvbn4j)
|
||||||
|
|||||||
Reference in New Issue
Block a user