Compare commits

..
Author SHA1 Message Date
Armin Schrenk 5d521c3f78 check links in release check 2025-02-03 17:18:11 +01:00
Armin Schrenk 737d7e6317 first draft 2025-02-03 16:52:09 +01:00
Armin Schrenk cd830f27a0 update IDE file 2025-02-03 12:54:34 +01:00
Armin Schrenk 3f75018369 fix link in README 2025-02-03 12:54:25 +01:00
Armin Schrenk 270a4c594d [skip ci] Merge branch 'main' into develop 2025-02-03 11:34:16 +01:00
Armin Schrenk a5fdc5755b Merge branch 'release/1.15.0' 2025-02-03 11:16:18 +01:00
Armin Schrenk 0a5a554714 finalize 1.15.0 2025-02-03 11:15:59 +01:00
Armin Schrenk 976f22c27a Merge branch 'develop' into release/1.15.0 2025-02-03 11:12:20 +01:00
CryptobotandGitHub 8267574697 New Crowdin updates (#3697)
New translations strings.properties

Afrikaans; Arabic; Bashkir; Belarusian; Bengali; Bosnian; Bulgarian; Catalan; Chinese Simplified; Chinese Traditional; Chinese Traditional, Hong Kong; Croatian; Czech; Danish; Dutch; Filipino; Finnish; French; Galician; German; Greek; Hebrew; Hindi; Hungarian; Indonesian; Italian; Japanese; Korean; Latvian; Macedonian; Marathi; Norwegian; Norwegian Bokmal; Norwegian Nynorsk; Persian; Polish; Portuguese; Portuguese, Brazilian; Punjabi; Romanian; Russian; Serbian (Cyrillic); Serbian (Latin); Sinhala; Slovak; Slovenian; Spanish; Swahili, Tanzania; Swedish; Tamil; Telugu; Thai; Turkish; Ukrainian; Urdu (Pakistan); Uyghur; Vietnamese; 

[ci skip]
2025-02-03 10:56:49 +01:00
mindmonkandGitHub 9077c964b3 Fix VaultListCell Padding in Compact Mode (#3709) 2025-02-03 10:50:06 +01:00
Armin Schrenk f80467a3a4 Fixes #3705 2025-01-28 15:09:52 +01:00
Julian RaufelderandGitHub 8c462c4cb7 RIP Twitter
[ci skip]
2025-01-23 12:21:54 +01:00
Armin Schrenk d7dd24b94e linting 2025-01-22 16:26:25 +01:00
Armin Schrenk aee8844558 Fixes #3698 2025-01-22 16:25:56 +01:00
Armin Schrenk c536149c62 specify JDK 23 also in debian control file
References #3641

(cherry picked from commit ca1ae8181b)
2025-01-22 14:12:56 +01:00
Armin Schrenk ca1ae8181b specify JDK 23 also in debian control file
References #3641
2025-01-22 14:11:19 +01:00
73 changed files with 298 additions and 44 deletions
+5
View File
@@ -57,6 +57,11 @@ jobs:
dependency-check dependency-check
env: env:
SEGMENT_DOWNLOAD_TIMEOUT_MINS: 5 SEGMENT_DOWNLOAD_TIMEOUT_MINS: 5
- name: Validate urls used in app
uses: urlstechie/urlchecker-action@0.0.34
with:
file_types: .md,.json
include_files: README.md,src/main/resources/hyperlinks.json
- name: Run org.owasp:dependency-check plugin - name: Run org.owasp:dependency-check plugin
id: dependency-check id: dependency-check
continue-on-error: true continue-on-error: true
+34 -8
View File
@@ -14,17 +14,16 @@
<option name="dagger.fastInit" value="enabled" /> <option name="dagger.fastInit" value="enabled" />
<option name="dagger.formatGeneratedSource" value="enabled" /> <option name="dagger.formatGeneratedSource" value="enabled" />
<processorPath useClasspath="false"> <processorPath useClasspath="false">
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-compiler/2.52/dagger-compiler-2.52.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-compiler/2.55/dagger-compiler-2.55.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger/2.52/dagger-2.52.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger/2.55/dagger-2.55.jar" />
<entry name="$MAVEN_REPOSITORY$/jakarta/inject/jakarta.inject-api/2.0.1/jakarta.inject-api-2.0.1.jar" /> <entry name="$MAVEN_REPOSITORY$/jakarta/inject/jakarta.inject-api/2.0.1/jakarta.inject-api-2.0.1.jar" />
<entry name="$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1.jar" /> <entry name="$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-spi/2.52/dagger-spi-2.52.jar" /> <entry name="$MAVEN_REPOSITORY$/org/jspecify/jspecify/1.0.0/jspecify-1.0.0.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-spi/2.55/dagger-spi-2.55.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/devtools/ksp/symbol-processing-api/1.9.24-1.0.20/symbol-processing-api-1.9.24-1.0.20.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/devtools/ksp/symbol-processing-api/2.0.21-1.0.28/symbol-processing-api-2.0.21-1.0.28.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.9.0/kotlin-stdlib-jdk8-1.9.0.jar" /> <entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/2.0.21/kotlin-stdlib-2.0.21.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/1.9.24/kotlin-stdlib-1.9.24.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/annotations/13.0/annotations-13.0.jar" /> <entry name="$MAVEN_REPOSITORY$/org/jetbrains/annotations/13.0/annotations-13.0.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.9.0/kotlin-stdlib-jdk7-1.9.0.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/guava/failureaccess/1.0.2/failureaccess-1.0.2.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/guava/failureaccess/1.0.2/failureaccess-1.0.2.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/guava/guava/33.0.0-jre/guava-33.0.0-jre.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/guava/guava/33.0.0-jre/guava-33.0.0-jre.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar" />
@@ -35,6 +34,33 @@
<entry name="$MAVEN_REPOSITORY$/com/google/googlejavaformat/google-java-format/1.5/google-java-format-1.5.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/googlejavaformat/google-java-format/1.5/google-java-format-1.5.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/errorprone/javac-shaded/9-dev-r4023-3/javac-shaded-9-dev-r4023-3.jar" /> <entry name="$MAVEN_REPOSITORY$/com/google/errorprone/javac-shaded/9-dev-r4023-3/javac-shaded-9-dev-r4023-3.jar" />
<entry name="$MAVEN_REPOSITORY$/com/squareup/kotlinpoet/1.11.0/kotlinpoet-1.11.0.jar" /> <entry name="$MAVEN_REPOSITORY$/com/squareup/kotlinpoet/1.11.0/kotlinpoet-1.11.0.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.6.10/kotlin-stdlib-jdk8-1.6.10.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.10/kotlin-stdlib-jdk7-1.6.10.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-reflect/1.6.10/kotlin-reflect-1.6.10.jar" />
<entry name="$MAVEN_REPOSITORY$/net/ltgt/gradle/incap/incap/0.2/incap-0.2.jar" />
<entry name="$MAVEN_REPOSITORY$/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-compiler/2.55/dagger-compiler-2.55.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger/2.55/dagger-2.55.jar" />
<entry name="$MAVEN_REPOSITORY$/jakarta/inject/jakarta.inject-api/2.0.1/jakarta.inject-api-2.0.1.jar" />
<entry name="$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jspecify/jspecify/1.0.0/jspecify-1.0.0.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/dagger/dagger-spi/2.55/dagger-spi-2.55.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/devtools/ksp/symbol-processing-api/2.0.21-1.0.28/symbol-processing-api-2.0.21-1.0.28.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib/2.0.21/kotlin-stdlib-2.0.21.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/annotations/13.0/annotations-13.0.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/guava/failureaccess/1.0.2/failureaccess-1.0.2.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/guava/guava/33.0.0-jre/guava-33.0.0-jre.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar" />
<entry name="$MAVEN_REPOSITORY$/org/checkerframework/checker-qual/3.41.0/checker-qual-3.41.0.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/errorprone/error_prone_annotations/2.23.0/error_prone_annotations-2.23.0.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/j2objc/j2objc-annotations/2.8/j2objc-annotations-2.8.jar" />
<entry name="$MAVEN_REPOSITORY$/com/squareup/javapoet/1.13.0/javapoet-1.13.0.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/googlejavaformat/google-java-format/1.5/google-java-format-1.5.jar" />
<entry name="$MAVEN_REPOSITORY$/com/google/errorprone/javac-shaded/9-dev-r4023-3/javac-shaded-9-dev-r4023-3.jar" />
<entry name="$MAVEN_REPOSITORY$/com/squareup/kotlinpoet/1.11.0/kotlinpoet-1.11.0.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.6.10/kotlin-stdlib-jdk8-1.6.10.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.6.10/kotlin-stdlib-jdk7-1.6.10.jar" />
<entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-reflect/1.6.10/kotlin-reflect-1.6.10.jar" /> <entry name="$MAVEN_REPOSITORY$/org/jetbrains/kotlin/kotlin-reflect/1.6.10/kotlin-reflect-1.6.10.jar" />
<entry name="$MAVEN_REPOSITORY$/net/ltgt/gradle/incap/incap/0.2/incap-0.2.jar" /> <entry name="$MAVEN_REPOSITORY$/net/ltgt/gradle/incap/incap/0.2/incap-0.2.jar" />
<entry name="$MAVEN_REPOSITORY$/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar" /> <entry name="$MAVEN_REPOSITORY$/org/checkerframework/checker-compat-qual/2.5.5/checker-compat-qual-2.5.5.jar" />
@@ -45,7 +71,7 @@
</component> </component>
<component name="JavacSettings"> <component name="JavacSettings">
<option name="ADDITIONAL_OPTIONS_OVERRIDE"> <option name="ADDITIONAL_OPTIONS_OVERRIDE">
<module name="cryptomator" options="-Adagger.fastInit=enabled -Adagger.formatGeneratedSource=enabled --enable-preview" /> <module name="cryptomator" options="-Adagger.fastInit=enabled -Adagger.formatGeneratedSource=enabled" />
</option> </option>
</component> </component>
</project> </project>
+2 -2
View File
@@ -3,7 +3,7 @@
[![Build](https://github.com/cryptomator/cryptomator/workflows/Build/badge.svg)](https://github.com/cryptomator/cryptomator/actions?query=workflow%3ABuild) [![Build](https://github.com/cryptomator/cryptomator/workflows/Build/badge.svg)](https://github.com/cryptomator/cryptomator/actions?query=workflow%3ABuild)
[![Known Vulnerabilities](https://snyk.io/test/github/cryptomator/cryptomator/badge.svg)](https://snyk.io/test/github/cryptomator/cryptomator) [![Known Vulnerabilities](https://snyk.io/test/github/cryptomator/cryptomator/badge.svg)](https://snyk.io/test/github/cryptomator/cryptomator)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=cryptomator_cryptomator&metric=alert_status)](https://sonarcloud.io/dashboard?id=cryptomator_cryptomator) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=cryptomator_cryptomator&metric=alert_status)](https://sonarcloud.io/dashboard?id=cryptomator_cryptomator)
[![Twitter](https://img.shields.io/badge/twitter-@Cryptomator-blue.svg?style=flat)](http://twitter.com/Cryptomator) [![Mastodon](https://img.shields.io/mastodon/follow/176112?domain=mastodon.online&style=flat)](https://mastodon.online/@cryptomator)
[![Crowdin](https://badges.crowdin.net/cryptomator/localized.svg)](https://translate.cryptomator.org/) [![Crowdin](https://badges.crowdin.net/cryptomator/localized.svg)](https://translate.cryptomator.org/)
[![Latest Release](https://img.shields.io/github/release/cryptomator/cryptomator.svg)](https://github.com/cryptomator/cryptomator/releases/latest) [![Latest Release](https://img.shields.io/github/release/cryptomator/cryptomator.svg)](https://github.com/cryptomator/cryptomator/releases/latest)
[![Community](https://img.shields.io/badge/help-Community-orange.svg)](https://community.cryptomator.org) [![Community](https://img.shields.io/badge/help-Community-orange.svg)](https://community.cryptomator.org)
@@ -72,7 +72,7 @@ Download native binaries of Cryptomator on [cryptomator.org](https://cryptomator
### Security Architecture ### Security Architecture
For more information on the security details visit [cryptomator.org](https://docs.cryptomator.org/en/latest/security/architecture/). For more information on the security details visit [cryptomator.org](https://docs.cryptomator.org/security/architecture/).
## Building ## Building
@@ -74,6 +74,9 @@
</content_rating> </content_rating>
<releases> <releases>
<release date="2025-02-03" version="1.15.0">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.15.0</url>
</release>
<release date="2024-11-19" version="1.14.2"> <release date="2024-11-19" version="1.14.2">
<url type="details">https://github.com/cryptomator/cryptomator/releases/1.14.2</url> <url type="details">https://github.com/cryptomator/cryptomator/releases/1.14.2</url>
</release> </release>
+1 -1
View File
@@ -2,7 +2,7 @@ Source: cryptomator
Maintainer: Cryptobot <releases@cryptomator.org> Maintainer: Cryptobot <releases@cryptomator.org>
Section: utils Section: utils
Priority: optional Priority: optional
Build-Depends: debhelper (>=10), coffeelibs-jdk-22 (>= 22.0.1+8-0ppa1), libgtk-3-0, libxxf86vm1, libgl1 Build-Depends: debhelper (>=10), coffeelibs-jdk-23 (>= 23.0.1+11-0ppa1), libgtk-3-0, libxxf86vm1, libgl1
Standards-Version: 4.5.0 Standards-Version: 4.5.0
Homepage: https://cryptomator.org Homepage: https://cryptomator.org
Vcs-Git: https://github.com/cryptomator/cryptomator.git Vcs-Git: https://github.com/cryptomator/cryptomator.git
+1 -1
View File
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>org.cryptomator</groupId> <groupId>org.cryptomator</groupId>
<artifactId>cryptomator</artifactId> <artifactId>cryptomator</artifactId>
<version>1.15.0</version> <version>1.16.0-SNAPSHOT</version>
<name>Cryptomator Desktop App</name> <name>Cryptomator Desktop App</name>
<organization> <organization>
@@ -0,0 +1,31 @@
package org.cryptomator.common;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
public record Hyperlinks(String docsVolumeType, String docsGettingStarted, String homepageHub) {
private static final ObjectMapper JSON_DESERIALIZER = new ObjectMapper();
/*
String docsAccessingVaults;
String docsExpertSettings;
String docsManualMigration;
String homepageDownload;
String homepageHub;
String homepageDonate;
String homepageSponsors;
String storeDesktop;
*/
public static Hyperlinks load() {
try {
return JSON_DESERIALIZER.readValue(Hyperlinks.class.getResource("/hyperlinks.json"), Hyperlinks.class);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
@@ -2,6 +2,7 @@ package org.cryptomator.launcher;
import dagger.Module; import dagger.Module;
import dagger.Provides; import dagger.Provides;
import org.cryptomator.common.Hyperlinks;
import org.cryptomator.integrations.autostart.AutoStartProvider; import org.cryptomator.integrations.autostart.AutoStartProvider;
import org.cryptomator.integrations.tray.TrayIntegrationProvider; import org.cryptomator.integrations.tray.TrayIntegrationProvider;
import org.cryptomator.integrations.uiappearance.UiAppearanceProvider; import org.cryptomator.integrations.uiappearance.UiAppearanceProvider;
@@ -23,6 +24,12 @@ class CryptomatorModule {
return ResourceBundle.getBundle("i18n.strings"); return ResourceBundle.getBundle("i18n.strings");
} }
@Provides
@Singleton
static Hyperlinks provideHyperlinks() {
return Hyperlinks.load();
}
@Provides @Provides
@Singleton @Singleton
@Named("launchEventQueue") @Named("launchEventQueue")
@@ -2,31 +2,34 @@ package org.cryptomator.ui.dialogs;
import org.cryptomator.common.settings.Settings; import org.cryptomator.common.settings.Settings;
import org.cryptomator.common.vaults.Vault; import org.cryptomator.common.vaults.Vault;
import org.cryptomator.ui.common.StageFactory;
import org.cryptomator.ui.controls.FontAwesome5Icon; import org.cryptomator.ui.controls.FontAwesome5Icon;
import org.cryptomator.ui.fxapp.FxApplicationScoped;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import javax.inject.Inject; import javax.inject.Inject;
import javax.inject.Singleton;
import javafx.collections.ObservableList; import javafx.collections.ObservableList;
import javafx.stage.Stage; import javafx.stage.Stage;
import java.util.ResourceBundle; import java.util.ResourceBundle;
import java.util.function.Consumer; import java.util.function.Consumer;
@Singleton @FxApplicationScoped
public class Dialogs { public class Dialogs {
private final ResourceBundle resourceBundle; private final ResourceBundle resourceBundle;
private final StageFactory stageFactory;
@Inject @Inject
public Dialogs(ResourceBundle resourceBundle) { public Dialogs(ResourceBundle resourceBundle, StageFactory stageFactory) {
this.resourceBundle = resourceBundle; this.resourceBundle = resourceBundle;
this.stageFactory = stageFactory;
} }
private static final Logger LOG = LoggerFactory.getLogger(Dialogs.class); private static final Logger LOG = LoggerFactory.getLogger(Dialogs.class);
private SimpleDialog.Builder createDialogBuilder() { private SimpleDialog.Builder createDialogBuilder() {
return new SimpleDialog.Builder(resourceBundle); return new SimpleDialog.Builder(resourceBundle, stageFactory);
} }
public SimpleDialog.Builder prepareRemoveVaultDialog(Stage window, Vault vault, ObservableList<Vault> vaults) { public SimpleDialog.Builder prepareRemoveVaultDialog(Stage window, Vault vault, ObservableList<Vault> vaults) {
@@ -2,6 +2,7 @@ package org.cryptomator.ui.dialogs;
import org.cryptomator.ui.common.FxmlFile; import org.cryptomator.ui.common.FxmlFile;
import org.cryptomator.ui.common.FxmlLoaderFactory; import org.cryptomator.ui.common.FxmlLoaderFactory;
import org.cryptomator.ui.common.StageFactory;
import org.cryptomator.ui.controls.FontAwesome5Icon; import org.cryptomator.ui.controls.FontAwesome5Icon;
import javafx.scene.Scene; import javafx.scene.Scene;
@@ -17,24 +18,23 @@ import java.util.function.Consumer;
public class SimpleDialog { public class SimpleDialog {
private final ResourceBundle resourceBundle; private final ResourceBundle resourceBundle;
private final Stage dialogStage; private final Stage dialogStage;
SimpleDialog(Builder builder) throws IOException { SimpleDialog(Builder builder) throws IOException {
this.resourceBundle = builder.resourceBundle; this.resourceBundle = builder.resourceBundle;
dialogStage = new Stage(); dialogStage = builder.stageFactory.create();
dialogStage.initOwner(builder.owner); dialogStage.initOwner(builder.owner);
dialogStage.initModality(Modality.WINDOW_MODAL); dialogStage.initModality(Modality.WINDOW_MODAL);
dialogStage.setTitle(resolveText(builder.titleKey, builder.titleArgs)); dialogStage.setTitle(resolveText(builder.titleKey, builder.titleArgs));
dialogStage.setResizable(false); dialogStage.setResizable(false);
FxmlLoaderFactory loaderFactory = FxmlLoaderFactory.forController( FxmlLoaderFactory loaderFactory = FxmlLoaderFactory.forController( //
new SimpleDialogController(resolveText(builder.messageKey, null), new SimpleDialogController(resolveText(builder.messageKey, null), //
resolveText(builder.descriptionKey, null), resolveText(builder.descriptionKey, null), //
builder.icon,resolveText(builder.okButtonKey, null), builder.icon, resolveText(builder.okButtonKey, null), //
resolveText(builder.cancelButtonKey, null), resolveText(builder.cancelButtonKey, null), //
() -> builder.okAction.accept(dialogStage), () -> builder.okAction.accept(dialogStage), //
() -> builder.cancelAction.accept(dialogStage)), () -> builder.cancelAction.accept(dialogStage)), //
Scene::new, builder.resourceBundle); Scene::new, builder.resourceBundle);
dialogStage.setScene(new Scene(loaderFactory.load(FxmlFile.SIMPLE_DIALOG.getRessourcePathString()).getRoot())); dialogStage.setScene(new Scene(loaderFactory.load(FxmlFile.SIMPLE_DIALOG.getRessourcePathString()).getRoot()));
@@ -60,6 +60,7 @@ public class SimpleDialog {
private Stage owner; private Stage owner;
private final ResourceBundle resourceBundle; private final ResourceBundle resourceBundle;
private final StageFactory stageFactory;
private String titleKey; private String titleKey;
private String[] titleArgs; private String[] titleArgs;
private String messageKey; private String messageKey;
@@ -71,8 +72,9 @@ public class SimpleDialog {
private Consumer<Stage> okAction = Stage::close; private Consumer<Stage> okAction = Stage::close;
private Consumer<Stage> cancelAction = Stage::close; private Consumer<Stage> cancelAction = Stage::close;
public Builder(ResourceBundle resourceBundle) { public Builder(ResourceBundle resourceBundle, StageFactory stageFactory) {
this.resourceBundle = resourceBundle; this.resourceBundle = resourceBundle;
this.stageFactory = stageFactory;
} }
public Builder setOwner(Stage owner) { public Builder setOwner(Stage owner) {
@@ -122,11 +124,11 @@ public class SimpleDialog {
} }
public SimpleDialog build() { public SimpleDialog build() {
Objects.requireNonNull(titleKey,"SimpleDialog titleKey must be set."); Objects.requireNonNull(titleKey, "SimpleDialog titleKey must be set.");
Objects.requireNonNull(messageKey,"SimpleDialog messageKey must be set."); Objects.requireNonNull(messageKey, "SimpleDialog messageKey must be set.");
Objects.requireNonNull(descriptionKey,"SimpleDialog descriptionKey must be set."); Objects.requireNonNull(descriptionKey, "SimpleDialog descriptionKey must be set.");
Objects.requireNonNull(okButtonKey,"SimpleDialog okButtonKey must be set."); Objects.requireNonNull(okButtonKey, "SimpleDialog okButtonKey must be set.");
Objects.requireNonNull(cancelButtonKey,"SimpleDialog cancelButtonKey must be set."); Objects.requireNonNull(cancelButtonKey, "SimpleDialog cancelButtonKey must be set.");
try { try {
return new SimpleDialog(this); return new SimpleDialog(this);
@@ -13,10 +13,16 @@ import javax.inject.Inject;
import javafx.beans.property.ObjectProperty; import javafx.beans.property.ObjectProperty;
import javafx.beans.property.SimpleObjectProperty; import javafx.beans.property.SimpleObjectProperty;
import javafx.beans.value.ObservableValue; import javafx.beans.value.ObservableValue;
import javafx.fxml.FXML;
import javafx.geometry.Insets;
import javafx.scene.layout.HBox;
// unscoped because each cell needs its own controller // unscoped because each cell needs its own controller
public class VaultListCellController implements FxController { public class VaultListCellController implements FxController {
private static final Insets COMPACT_INSETS = new Insets(6, 12, 6, 12);
private static final Insets DEFAULT_INSETS = new Insets(12);
private final ObjectProperty<Vault> vault = new SimpleObjectProperty<>(); private final ObjectProperty<Vault> vault = new SimpleObjectProperty<>();
private final ObservableValue<FontAwesome5Icon> glyph; private final ObservableValue<FontAwesome5Icon> glyph;
private final ObservableValue<Boolean> compactMode; private final ObservableValue<Boolean> compactMode;
@@ -25,6 +31,8 @@ public class VaultListCellController implements FxController {
/* FXML */ /* FXML */
public FontAwesome5IconView vaultStateView; public FontAwesome5IconView vaultStateView;
@FXML
public HBox vaultListCell;
@Inject @Inject
VaultListCellController(Settings settings) { VaultListCellController(Settings settings) {
@@ -37,6 +45,7 @@ public class VaultListCellController implements FxController {
.onCondition(vault.flatMap(Vault::stateProperty).map(VaultState.Value.PROCESSING::equals).orElse(false)) // .onCondition(vault.flatMap(Vault::stateProperty).map(VaultState.Value.PROCESSING::equals).orElse(false)) //
.afterStop(() -> vaultStateView.setRotate(0)) // .afterStop(() -> vaultStateView.setRotate(0)) //
.build(); .build();
this.vaultListCell.paddingProperty().bind(compactMode.map(c -> c ? COMPACT_INSETS : DEFAULT_INSETS));
} }
// TODO deduplicate w/ VaultDetailController // TODO deduplicate w/ VaultDetailController
@@ -1,6 +1,7 @@
package org.cryptomator.ui.sharevault; package org.cryptomator.ui.sharevault;
import dagger.Lazy; import dagger.Lazy;
import org.cryptomator.common.Hyperlinks;
import org.cryptomator.common.vaults.Vault; import org.cryptomator.common.vaults.Vault;
import org.cryptomator.ui.common.FxController; import org.cryptomator.ui.common.FxController;
import org.cryptomator.ui.keyloading.hub.HubKeyLoadingStrategy; import org.cryptomator.ui.keyloading.hub.HubKeyLoadingStrategy;
@@ -18,9 +19,9 @@ import java.net.URISyntaxException;
public class ShareVaultController implements FxController { public class ShareVaultController implements FxController {
private static final String SCHEME_PREFIX = "hub+"; private static final String SCHEME_PREFIX = "hub+";
private static final String VISIT_HUB_URL = "https://cryptomator.org/hub/";
private static final String BEST_PRACTICES_URL = "https://docs.cryptomator.org/en/latest/security/best-practices/#sharing-of-vaults"; private static final String BEST_PRACTICES_URL = "https://docs.cryptomator.org/en/latest/security/best-practices/#sharing-of-vaults";
private final String VISIT_HUB_URL;
private final Stage window; private final Stage window;
private final Lazy<Application> application; private final Lazy<Application> application;
private final Vault vault; private final Vault vault;
@@ -29,10 +30,12 @@ public class ShareVaultController implements FxController {
@Inject @Inject
ShareVaultController(@ShareVaultWindow Stage window, // ShareVaultController(@ShareVaultWindow Stage window, //
Lazy<Application> application, // Lazy<Application> application, //
Hyperlinks links, //
@ShareVaultWindow Vault vault) { @ShareVaultWindow Vault vault) {
this.window = window; this.window = window;
this.application = application; this.application = application;
this.vault = vault; this.vault = vault;
this.VISIT_HUB_URL =links.homepageHub();
var vaultScheme = vault.getVaultConfigCache().getUnchecked().getKeyId().getScheme(); var vaultScheme = vault.getVaultConfigCache().getUnchecked().getKeyId().getScheme();
this.hubVault = (vaultScheme.equals(HubKeyLoadingStrategy.SCHEME_HUB_HTTP) || vaultScheme.equals(HubKeyLoadingStrategy.SCHEME_HUB_HTTPS)); this.hubVault = (vaultScheme.equals(HubKeyLoadingStrategy.SCHEME_HUB_HTTP) || vaultScheme.equals(HubKeyLoadingStrategy.SCHEME_HUB_HTTPS));
} }
@@ -17,6 +17,8 @@ import org.cryptomator.ui.preferences.VolumePreferencesController;
import javax.inject.Inject; import javax.inject.Inject;
import javafx.application.Application; import javafx.application.Application;
import javafx.beans.binding.Bindings; import javafx.beans.binding.Bindings;
import javafx.beans.binding.BooleanBinding;
import javafx.beans.value.ObservableBooleanValue;
import javafx.beans.value.ObservableValue; import javafx.beans.value.ObservableValue;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.scene.control.Button; import javafx.scene.control.Button;
@@ -50,7 +52,6 @@ public class MountOptionsController implements FxController {
private final ObservableValue<String> defaultMountFlags; private final ObservableValue<String> defaultMountFlags;
private final ObservableValue<Boolean> mountpointDirSupported; private final ObservableValue<Boolean> mountpointDirSupported;
private final ObservableValue<Boolean> mountpointDriveLetterSupported; private final ObservableValue<Boolean> mountpointDriveLetterSupported;
private final ObservableValue<Boolean> readOnlySupported;
private final ObservableValue<Boolean> mountFlagsSupported; private final ObservableValue<Boolean> mountFlagsSupported;
private final ObservableValue<Boolean> defaultMountServiceSelected; private final ObservableValue<Boolean> defaultMountServiceSelected;
private final ObservableValue<String> directoryPath; private final ObservableValue<String> directoryPath;
@@ -60,6 +61,7 @@ public class MountOptionsController implements FxController {
private final ObservableValue<MountService> selectedMountService; private final ObservableValue<MountService> selectedMountService;
private final ObservableValue<Boolean> selectedMountServiceRequiresRestart; private final ObservableValue<Boolean> selectedMountServiceRequiresRestart;
private final ObservableValue<Boolean> loopbackPortChangeable; private final ObservableValue<Boolean> loopbackPortChangeable;
private final ObservableBooleanValue readOnlyOptionAllowed;
//-- FXML objects -- //-- FXML objects --
@@ -108,10 +110,10 @@ public class MountOptionsController implements FxController {
}); });
this.mountFlagsSupported = selectedMountService.map(s -> s.hasCapability(MountCapability.MOUNT_FLAGS)); this.mountFlagsSupported = selectedMountService.map(s -> s.hasCapability(MountCapability.MOUNT_FLAGS));
this.defaultMountServiceSelected = ObservableUtil.mapWithDefault(vaultSettings.mountService, _ -> false, true); this.defaultMountServiceSelected = ObservableUtil.mapWithDefault(vaultSettings.mountService, _ -> false, true);
this.readOnlySupported = selectedMountService.map(s -> s.hasCapability(MountCapability.READ_ONLY));
this.mountpointDirSupported = selectedMountService.map(s -> s.hasCapability(MountCapability.MOUNT_TO_EXISTING_DIR) || s.hasCapability(MountCapability.MOUNT_WITHIN_EXISTING_PARENT)); this.mountpointDirSupported = selectedMountService.map(s -> s.hasCapability(MountCapability.MOUNT_TO_EXISTING_DIR) || s.hasCapability(MountCapability.MOUNT_WITHIN_EXISTING_PARENT));
this.mountpointDriveLetterSupported = selectedMountService.map(s -> s.hasCapability(MountCapability.MOUNT_AS_DRIVE_LETTER)); this.mountpointDriveLetterSupported = selectedMountService.map(s -> s.hasCapability(MountCapability.MOUNT_AS_DRIVE_LETTER));
this.loopbackPortChangeable = selectedMountService.map(s -> s.hasCapability(MountCapability.LOOPBACK_PORT) && vaultSettings.mountService.getValue() != null); this.loopbackPortChangeable = selectedMountService.map(s -> s.hasCapability(MountCapability.LOOPBACK_PORT) && vaultSettings.mountService.getValue() != null);
this.readOnlyOptionAllowed = BooleanBinding.booleanExpression(selectedMountService.map(s -> s.hasCapability(MountCapability.READ_ONLY))).or(vaultSettings.usesReadOnlyMode);
} }
private MountService reselectMountService() { private MountService reselectMountService() {
@@ -345,12 +347,12 @@ public class MountOptionsController implements FxController {
return mountpointDriveLetterSupported.getValue(); return mountpointDriveLetterSupported.getValue();
} }
public ObservableValue<Boolean> readOnlySupportedProperty() { public ObservableValue<Boolean> readOnlyOptionAllowedProperty() {
return readOnlySupported; return readOnlyOptionAllowed;
} }
public boolean isReadOnlySupported() { public boolean isReadOnlyOptionAllowed() {
return readOnlySupported.getValue(); return readOnlyOptionAllowed.getValue();
} }
public ObservableValue<String> directoryPathProperty() { public ObservableValue<String> directoryPathProperty() {
+1 -4
View File
@@ -1,22 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<?import org.cryptomator.ui.controls.FontAwesome5IconView?> <?import org.cryptomator.ui.controls.FontAwesome5IconView?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Label?> <?import javafx.scene.control.Label?>
<?import javafx.scene.control.Tooltip?> <?import javafx.scene.control.Tooltip?>
<?import javafx.scene.layout.HBox?> <?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.VBox?> <?import javafx.scene.layout.VBox?>
<HBox xmlns:fx="http://javafx.com/fxml" <HBox xmlns:fx="http://javafx.com/fxml"
xmlns="http://javafx.com/javafx" xmlns="http://javafx.com/javafx"
fx:id="vaultListCell"
fx:controller="org.cryptomator.ui.mainwindow.VaultListCellController" fx:controller="org.cryptomator.ui.mainwindow.VaultListCellController"
prefHeight="60" prefHeight="60"
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 --> <!-- Remark Check the containing list view for a fixed cell size before editing height properties -->
<padding>
<Insets topRightBottomLeft="12"/>
</padding>
<children> <children>
<VBox alignment="CENTER" minWidth="20"> <VBox alignment="CENTER" minWidth="20">
<FontAwesome5IconView fx:id="vaultStateView" glyph="${controller.glyph}" HBox.hgrow="NEVER" glyphSize="16"/> <FontAwesome5IconView fx:id="vaultStateView" glyph="${controller.glyph}" HBox.hgrow="NEVER" glyphSize="16"/>
@@ -54,7 +54,7 @@
<Button text="%generic.button.apply" fx:id="vaultLoopbackPortApplyButton" onAction="#doChangeLoopbackPort"/> <Button text="%generic.button.apply" fx:id="vaultLoopbackPortApplyButton" onAction="#doChangeLoopbackPort"/>
</HBox> </HBox>
<CheckBox fx:id="readOnlyCheckbox" text="%vaultOptions.mount.readonly" visible="${controller.readOnlySupported}" managed="${controller.readOnlySupported}"/> <CheckBox fx:id="readOnlyCheckbox" text="%vaultOptions.mount.readonly" visible="${controller.readOnlyOptionAllowed}" managed="${controller.readOnlyOptionAllowed}"/>
<VBox visible="${controller.mountFlagsSupported}" managed="${controller.mountFlagsSupported}"> <VBox visible="${controller.mountFlagsSupported}" managed="${controller.mountFlagsSupported}">
<CheckBox fx:id="customMountFlagsCheckbox" text="%vaultOptions.mount.customMountFlags" onAction="#toggleUseCustomMountFlags"/> <CheckBox fx:id="customMountFlagsCheckbox" text="%vaultOptions.mount.customMountFlags" onAction="#toggleUseCustomMountFlags"/>
+4
View File
@@ -0,0 +1,4 @@
{
"docsGettingStarted": "https://docs.cryptomator.org/desktop/getting-started/",
"homepageHub": "https://cryptomator.org/hub"
}
@@ -118,4 +118,6 @@
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -551,6 +551,8 @@ dokanySupportEnd.message=انتهاء الدعم لـDokany
dokanySupportEnd.description=نوع وحدة التخزين Dokany لم يعد مدعوماً من قبل Cryptomator. تم تعديل إعداداتك لاستخدام نوع وحدة التخزين الافتراضي الآن. يمكنك عرض النوع الافتراضي في التفضيلات. dokanySupportEnd.description=نوع وحدة التخزين Dokany لم يعد مدعوماً من قبل Cryptomator. تم تعديل إعداداتك لاستخدام نوع وحدة التخزين الافتراضي الآن. يمكنك عرض النوع الافتراضي في التفضيلات.
dokanySupportEnd.preferencesBtn=فتح التفضيلات dokanySupportEnd.preferencesBtn=فتح التفضيلات
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=مشاركة الخزانة shareVault.title=مشاركة الخزانة
shareVault.message=هل ترغب في مشاركة خزانتك مع الآخرين؟ shareVault.message=هل ترغب في مشاركة خزانتك مع الآخرين؟
@@ -515,4 +515,6 @@ updateReminder.yesAutomatically=Эйе, автоматик рәүештә
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=Көйләүҙәрҙе ас dokanySupportEnd.preferencesBtn=Көйләүҙәрҙе ас
#Retry If Readonly
# Share Vault # Share Vault
@@ -495,4 +495,6 @@ updateReminder.yesAutomatically=Так, аўтаматычна
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=Адчыніць налады dokanySupportEnd.preferencesBtn=Адчыніць налады
#Retry If Readonly
# Share Vault # Share Vault
@@ -515,4 +515,6 @@ updateReminder.yesAutomatically=Да, автоматично
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=Към настройките dokanySupportEnd.preferencesBtn=Към настройките
#Retry If Readonly
# Share Vault # Share Vault
@@ -182,4 +182,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=নির্বাচন ক
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -318,4 +318,6 @@ quit.lockAndQuitBtn=Zaključaj i zatvori
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -547,6 +547,8 @@ updateReminder.yesAutomatically=Sí, automàticament
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=Obrir les Preferències dokanySupportEnd.preferencesBtn=Obrir les Preferències
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Comparteix la caixa forta shareVault.title=Comparteix la caixa forta
shareVault.message=Voleu compartir la vostra caixa forta amb altres persones? shareVault.message=Voleu compartir la vostra caixa forta amb altres persones?
@@ -515,6 +515,8 @@ dokanySupportEnd.title=Oznámení o zastaralosti
dokanySupportEnd.message=Konec podpory pro Dokany dokanySupportEnd.message=Konec podpory pro Dokany
dokanySupportEnd.preferencesBtn=Otevřít předvolby dokanySupportEnd.preferencesBtn=Otevřít předvolby
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Sdílet trezor shareVault.title=Sdílet trezor
shareVault.message=Chcete sdílet svůj trezor s ostatními? shareVault.message=Chcete sdílet svůj trezor s ostatními?
@@ -176,6 +176,7 @@ hub.registerFailed.description.generic=Der opstod en fejl i registreringsprocess
hub.registerFailed.description.deviceAlreadyExists=Denne enhed er allerede registreret af en anden bruger. Prøv at ændre brugerkontoen eller brug en anden enhed. hub.registerFailed.description.deviceAlreadyExists=Denne enhed er allerede registreret af en anden bruger. Prøv at ændre brugerkontoen eller brug en anden enhed.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Adgang nægtet hub.unauthorized.message=Adgang nægtet
hub.unauthorized.description=Du har ikke tilladelse til at åbne denne boks. Kontant ejeren af boksen for at anmode om adgang.
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=Handling påkrævet hub.requireAccountInit.message=Handling påkrævet
hub.requireAccountInit.description.0=For at fortsætte, skal du fuldføre de nødvendige trin i din hub.requireAccountInit.description.0=For at fortsætte, skal du fuldføre de nødvendige trin i din
@@ -286,6 +287,7 @@ preferences.general.debugLogging=Aktivér fejllogning
preferences.general.debugDirectory=Vis logfiler preferences.general.debugDirectory=Vis logfiler
preferences.general.autoStart=Start Cryptomator automatisk ved opstart preferences.general.autoStart=Start Cryptomator automatisk ved opstart
preferences.general.keychainBackend=Gem adgangskoder med preferences.general.keychainBackend=Gem adgangskoder med
preferences.general.quickAccessService=Tilføj oplåste bokse til området hurtig adgang
## Interface ## Interface
preferences.interface=Brugerflade preferences.interface=Brugerflade
preferences.interface.theme=Udseende preferences.interface.theme=Udseende
@@ -318,6 +320,7 @@ preferences.updates.currentVersion=Nuværende version: %s
preferences.updates.autoUpdateCheck=Søg automatisk efter opdateringer preferences.updates.autoUpdateCheck=Søg automatisk efter opdateringer
preferences.updates.checkNowBtn=Kontrollér nu preferences.updates.checkNowBtn=Kontrollér nu
preferences.updates.updateAvailable=Opdatering til version %s er tilgængelig. preferences.updates.updateAvailable=Opdatering til version %s er tilgængelig.
preferences.updates.checkFailed=Søgning efter opdateringer fejlede. Tjek din internetforbindelse eller forsøg igen senere.
## Contribution ## Contribution
preferences.contribute=Støt os preferences.contribute=Støt os
@@ -377,6 +380,8 @@ main.vaultlist.contextMenu.unlockNow=Lås op nu
main.vaultlist.contextMenu.vaultoptions=Vis boksindstillinger main.vaultlist.contextMenu.vaultoptions=Vis boksindstillinger
main.vaultlist.contextMenu.reveal=Vis drev main.vaultlist.contextMenu.reveal=Vis drev
##Notificaition ##Notificaition
main.notification.updateAvailable=Opdatering er tilgængelig.
main.notification.support=Støt Cryptomator.
## Vault Detail ## Vault Detail
### Welcome ### Welcome
main.vaultDetail.welcomeOnboarding=Tak fordi du valgte Cryptomator til at beskytte dine filer. Hvis du har brug for hjælp, så tjek vores guider for at komme i gang: main.vaultDetail.welcomeOnboarding=Tak fordi du valgte Cryptomator til at beskytte dine filer. Hvis du har brug for hjælp, så tjek vores guider for at komme i gang:
@@ -529,6 +534,8 @@ updateReminder.yesAutomatically=Ja, automatisk
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=Åbn Indstillinger dokanySupportEnd.preferencesBtn=Åbn Indstillinger
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Del Boks shareVault.title=Del Boks
shareVault.message=Vil du dele din boks med andre? shareVault.message=Vil du dele din boks med andre?
@@ -551,6 +551,8 @@ dokanySupportEnd.message=Supportende für Dokany
dokanySupportEnd.description=Der Laufwerkstyp Dokany wird von Cryptomator nicht weiter unterstützt. Deine Einstellungen wurden angepasst, dass der Standard-Laufwerkstyp verwendet wird. Du kannst den Standardtyp in den Einstellungen anzeigen lassen. dokanySupportEnd.description=Der Laufwerkstyp Dokany wird von Cryptomator nicht weiter unterstützt. Deine Einstellungen wurden angepasst, dass der Standard-Laufwerkstyp verwendet wird. Du kannst den Standardtyp in den Einstellungen anzeigen lassen.
dokanySupportEnd.preferencesBtn=Einstellungen öffnen dokanySupportEnd.preferencesBtn=Einstellungen öffnen
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Tresor teilen shareVault.title=Tresor teilen
shareVault.message=Möchtest du deinen Tresor mit anderen teilen? shareVault.message=Möchtest du deinen Tresor mit anderen teilen?
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Τέλος υποστήριξης για Dokany
dokanySupportEnd.description=Ο τύπος τόμου Dokany δεν υποστηρίζεται πλέον από το Cryptomator. Οι ρυθμίσεις σας έχουν προσαρμοστεί για να χρησιμοποιούν τον προεπιλεγμένο τύπο τόμου. Μπορείτε να δείτε τον προεπιλεγμένο τύπο στις προτιμήσεις. dokanySupportEnd.description=Ο τύπος τόμου Dokany δεν υποστηρίζεται πλέον από το Cryptomator. Οι ρυθμίσεις σας έχουν προσαρμοστεί για να χρησιμοποιούν τον προεπιλεγμένο τύπο τόμου. Μπορείτε να δείτε τον προεπιλεγμένο τύπο στις προτιμήσεις.
dokanySupportEnd.preferencesBtn=Άνοιγμα Προτιμήσεων dokanySupportEnd.preferencesBtn=Άνοιγμα Προτιμήσεων
#Retry If Readonly
retryIfReadonly.title=Περιορισμένη Πρόσβαση Κρύπτης
retryIfReadonly.message=Δεν υπάρχει πρόσβαση εγγραφής στον κατάλογο κρύπτης
retryIfReadonly.description=Το Cryptomator δεν μπορεί να γράψει στον κατάλογο κρύπτης. Μπορείτε να αλλάξετε την κρύπτη ώστε να είναι μόνο για ανάγνωση και να προσπαθήσετε ξανά. Αυτή η επιλογή μπορεί να απενεργοποιηθεί στις επιλογές κρύπτης.
retryIfReadonly.retry=Αλλαγή και Επανάληψη
# Share Vault # Share Vault
shareVault.title=Κοινή χρήση Κρύπτης shareVault.title=Κοινή χρήση Κρύπτης
shareVault.message=Θα θέλατε να μοιραστείτε την κρύπτη σας με άλλους; shareVault.message=Θα θέλατε να μοιραστείτε την κρύπτη σας με άλλους;
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Fin de soporte para Dokany
dokanySupportEnd.description=El tipo de volumen Dokany ya no está soportado por Cryptomator. Su configuración se ajusta para utilizar el tipo de volumen predeterminado ahora. Puede ver el tipo predeterminado en las preferencias. dokanySupportEnd.description=El tipo de volumen Dokany ya no está soportado por Cryptomator. Su configuración se ajusta para utilizar el tipo de volumen predeterminado ahora. Puede ver el tipo predeterminado en las preferencias.
dokanySupportEnd.preferencesBtn=Abrir preferencias dokanySupportEnd.preferencesBtn=Abrir preferencias
#Retry If Readonly
retryIfReadonly.title=Acceso restringido a la Bóveda
retryIfReadonly.message=No tiene acceso de escritura al directorio de bóveda
retryIfReadonly.description=Cryptomator no puede escribir en el directorio de la bóveda. Puede cambiar la bóveda para que sea de solo lectura e inténtelo de nuevo. Esta opción puede desactivarse en las opciones de bóveda.
retryIfReadonly.retry=Cambiar y reintentar
# Share Vault # Share Vault
shareVault.title=Compartir bóveda shareVault.title=Compartir bóveda
shareVault.message=¿Le gustaría compartir su bóveda con alguien más? shareVault.message=¿Le gustaría compartir su bóveda con alguien más?
@@ -210,4 +210,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=انتخاب کنید…
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -545,6 +545,8 @@ updateReminder.yesAutomatically=Kyllä, automaattisesti
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=Avaa asetukset dokanySupportEnd.preferencesBtn=Avaa asetukset
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Jaa holvi shareVault.title=Jaa holvi
shareVault.message=Haluatko jakaa holvisi muiden kanssa? shareVault.message=Haluatko jakaa holvisi muiden kanssa?
@@ -540,6 +540,8 @@ dokanySupportEnd.message=Pagtatapos ng suporta para sa Dokany
dokanySupportEnd.description=Ang uri ng volume na Dokany ay hindi na sinusuportahan ng Cryptomator. Isinasaayos ang iyong mga setting upang magamit ang default na uri ng volume ngayon. Maaari mong tingnan ang default na uri sa mga kagustuhan. dokanySupportEnd.description=Ang uri ng volume na Dokany ay hindi na sinusuportahan ng Cryptomator. Isinasaayos ang iyong mga setting upang magamit ang default na uri ng volume ngayon. Maaari mong tingnan ang default na uri sa mga kagustuhan.
dokanySupportEnd.preferencesBtn=Buksan ang Mga Kagustuhan dokanySupportEnd.preferencesBtn=Buksan ang Mga Kagustuhan
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Ibahagi ang Vault shareVault.title=Ibahagi ang Vault
shareVault.message=Gusto mo bang ibahagi ang iyong vault sa iba? shareVault.message=Gusto mo bang ibahagi ang iyong vault sa iba?
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Fin de la prise en charge de Dokany
dokanySupportEnd.description=Le type de volume Dokany n'est plus pris en charge par Cryptomator. Vos paramètres sont à présent ajustés pour utiliser le type de volume par défaut. Vous pouvez voir le type par défaut dans les préférences. dokanySupportEnd.description=Le type de volume Dokany n'est plus pris en charge par Cryptomator. Vos paramètres sont à présent ajustés pour utiliser le type de volume par défaut. Vous pouvez voir le type par défaut dans les préférences.
dokanySupportEnd.preferencesBtn=Ouvrir les préférences dokanySupportEnd.preferencesBtn=Ouvrir les préférences
#Retry If Readonly
retryIfReadonly.title=Accès restreint au coffre
retryIfReadonly.message=Pas d'accès en écriture au dossier du coffre
retryIfReadonly.description=Cryptomator ne peut pas écrire dans le dossier du coffre. Vous pouvez passer le coffre en mode lecture seule et réessayer. Cette option peut être désactivée dans les options du coffre.
retryIfReadonly.retry=Changer et réessayer
# Share Vault # Share Vault
shareVault.title=Partager le coffre shareVault.title=Partager le coffre
shareVault.message=Vous aimeriez partager votre coffre avec d'autres personnes ? shareVault.message=Vous aimeriez partager votre coffre avec d'autres personnes ?
@@ -132,4 +132,6 @@ lock.forced.retryBtn=Tentar de novo
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -491,4 +491,6 @@ updateReminder.notNow=לא עכשיו
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=פתח העדפות dokanySupportEnd.preferencesBtn=פתח העדפות
#Retry If Readonly
# Share Vault # Share Vault
@@ -314,4 +314,6 @@ quit.forced.message=कुछ वॉल्ट्स लॉक नहीं ह
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=प्राथमिकताएँ खोलें dokanySupportEnd.preferencesBtn=प्राथमिकताएँ खोलें
#Retry If Readonly
# Share Vault # Share Vault
@@ -381,4 +381,6 @@ quit.lockAndQuitBtn=Zaključaj i napusti
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -551,6 +551,8 @@ dokanySupportEnd.message=Vége a Dokany támogatásának
dokanySupportEnd.description=A Cryptomator nem támogatja tovább a Dokany kötettípust. A beállítások az alapértelmezett kötettípus használatára lettek állítva. Az alapértelmezett típust a beállítások közt tekintheted meg. dokanySupportEnd.description=A Cryptomator nem támogatja tovább a Dokany kötettípust. A beállítások az alapértelmezett kötettípus használatára lettek állítva. Az alapértelmezett típust a beállítások közt tekintheted meg.
dokanySupportEnd.preferencesBtn=Beállítások megnyitása dokanySupportEnd.preferencesBtn=Beállítások megnyitása
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Széf megosztása shareVault.title=Széf megosztása
shareVault.message=Szeretné megosztani a széfét másokkal? shareVault.message=Szeretné megosztani a széfét másokkal?
@@ -551,6 +551,8 @@ dokanySupportEnd.message=Dukungan untuk Dokany telah berakhir
dokanySupportEnd.description=Volume berjenis Dokany sudah tidak didukung oleh Cryptomator. Konfigurasi Anda telah disesuai kan dengan tipe volume yang saat ini. Anda dapat melihat tipe baku dipreferensi. dokanySupportEnd.description=Volume berjenis Dokany sudah tidak didukung oleh Cryptomator. Konfigurasi Anda telah disesuai kan dengan tipe volume yang saat ini. Anda dapat melihat tipe baku dipreferensi.
dokanySupportEnd.preferencesBtn=Buka Preferensi dokanySupportEnd.preferencesBtn=Buka Preferensi
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Bagikan Vault shareVault.title=Bagikan Vault
shareVault.message=Apakah Anda ingin berbagi vault dengan orang lain? shareVault.message=Apakah Anda ingin berbagi vault dengan orang lain?
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Supporto terminato per Dokany
dokanySupportEnd.description=Il tipo di volume Dokany non è più supportato da Cryptomator. Le impostazioni sono state aggiornate per utilizzare il tipo di volume ora predefinito. È possibile visualizzare il tipo predefinito nelle preferenze. dokanySupportEnd.description=Il tipo di volume Dokany non è più supportato da Cryptomator. Le impostazioni sono state aggiornate per utilizzare il tipo di volume ora predefinito. È possibile visualizzare il tipo predefinito nelle preferenze.
dokanySupportEnd.preferencesBtn=Apri Preferenze dokanySupportEnd.preferencesBtn=Apri Preferenze
#Retry If Readonly
retryIfReadonly.title=Accesso Limitato Cassaforte
retryIfReadonly.message=Accesso negato in scrittura alla cartella della cassaforte
retryIfReadonly.description=Cryptomator non può scrivere nella cartella della cassaforte. Puoi cambiare l'impostazione "sola lettura" della cassaforte e riprovare. Questa opzione può essere impostata nelle opzioni della cassaforte.
retryIfReadonly.retry=Modifica e riprova
# Share Vault # Share Vault
shareVault.title=Condividi cassaforte shareVault.title=Condividi cassaforte
shareVault.message=Vuoi condividere la tua cassaforte con altri? shareVault.message=Vuoi condividere la tua cassaforte con altri?
@@ -540,6 +540,8 @@ dokanySupportEnd.message=Dokany のサポート終了
dokanySupportEnd.description=ボリュームタイプ dokanySupportEnd.description=ボリュームタイプ
dokanySupportEnd.preferencesBtn=環境設定を開く dokanySupportEnd.preferencesBtn=環境設定を開く
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=保管庫を共有する shareVault.title=保管庫を共有する
shareVault.message=保管庫を他の人と共有しますか? shareVault.message=保管庫を他の人と共有しますか?
@@ -552,6 +552,8 @@ dokanySupportEnd.message=Dokany에 대한 지원 중단
dokanySupportEnd.description=Cryptomator에서 Dokany 볼륨 형식은 더이상 지원되지 않습니다. 기본 볼륨 형식을 사용하도록 설정이 조정되었으며, 설정에서 기본 형식을 확인할 수 있습니다. dokanySupportEnd.description=Cryptomator에서 Dokany 볼륨 형식은 더이상 지원되지 않습니다. 기본 볼륨 형식을 사용하도록 설정이 조정되었으며, 설정에서 기본 형식을 확인할 수 있습니다.
dokanySupportEnd.preferencesBtn=설정 열기 dokanySupportEnd.preferencesBtn=설정 열기
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Vault 공유 shareVault.title=Vault 공유
shareVault.message=Vault를 다른 사람과 공유하려 하십니까? shareVault.message=Vault를 다른 사람과 공유하려 하십니까?
@@ -280,4 +280,6 @@ quit.lockAndQuitBtn=Aizslēgt un aizvērt
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -164,4 +164,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=Избор…
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -118,4 +118,6 @@
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -543,6 +543,8 @@ dokanySupportEnd.message=Støtte for Dokany er avsluttet
dokanySupportEnd.description=Volumtypen Dokany støttes ikke lenger av Cryptomator. Innstillingene dine er justert for å bruke standard volumtype nå. Du kan se standardtypen i innstillingene. dokanySupportEnd.description=Volumtypen Dokany støttes ikke lenger av Cryptomator. Innstillingene dine er justert for å bruke standard volumtype nå. Du kan se standardtypen i innstillingene.
dokanySupportEnd.preferencesBtn=Åpne innstillinger dokanySupportEnd.preferencesBtn=Åpne innstillinger
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Del hvelv shareVault.title=Del hvelv
shareVault.message=Vil du dele hvelvet ditt med andre? shareVault.message=Vil du dele hvelvet ditt med andre?
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Ondersteuning beëindigd voor Dokany
dokanySupportEnd.description=Het volumetype Dokany wordt niet langer ondersteund door Cryptomator. Uw instellingen zijn aangepast om nu het standaard volumetype te gebruiken. U kunt het standaardtype bekijken in de voorkeuren. dokanySupportEnd.description=Het volumetype Dokany wordt niet langer ondersteund door Cryptomator. Uw instellingen zijn aangepast om nu het standaard volumetype te gebruiken. U kunt het standaardtype bekijken in de voorkeuren.
dokanySupportEnd.preferencesBtn=Open Voorkeuren dokanySupportEnd.preferencesBtn=Open Voorkeuren
#Retry If Readonly
retryIfReadonly.title=Beperkte toegang tot kluis
retryIfReadonly.message=Geen schrijftoegang tot de kluis map
retryIfReadonly.description=Cryptomator kan niet naar de kluis map schrijven. U kunt de kluis veranderen om alleen-lezen te zijn en het opnieuw proberen. Deze optie kan worden uitgeschakeld in de kluis opties.
retryIfReadonly.retry=Wijzig en probeer opnieuw
# Share Vault # Share Vault
shareVault.title=Kluis delen shareVault.title=Kluis delen
shareVault.message=Wilt u uw kluis met anderen delen? shareVault.message=Wilt u uw kluis met anderen delen?
@@ -278,4 +278,6 @@ quit.lockAndQuitBtn=Lås og avslutt
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -118,4 +118,6 @@
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -475,6 +475,8 @@ dokanySupportEnd.title=ਬਰਤਰਫ਼ੀ ਨੋਟਿਸ
dokanySupportEnd.message=Dokany ਲਈ ਸਹਿਯੋਗ ਖ਼ਤਮ dokanySupportEnd.message=Dokany ਲਈ ਸਹਿਯੋਗ ਖ਼ਤਮ
dokanySupportEnd.preferencesBtn=ਪਸੰਦੀਦਾ ਖੋਲ੍ਹੋ dokanySupportEnd.preferencesBtn=ਪਸੰਦੀਦਾ ਖੋਲ੍ਹੋ
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=ਵਾਲਟ ਨੂੰ ਸਾਂਝਾ ਕਰੋ shareVault.title=ਵਾਲਟ ਨੂੰ ਸਾਂਝਾ ਕਰੋ
shareVault.message=ਕੀ ਤੁਸੀਂ ਆਪਣੇ ਵਾਲਟ ਨੂੰ ਹੋਰਾਂ ਨਾਲ ਸਾਂਝਾ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ? shareVault.message=ਕੀ ਤੁਸੀਂ ਆਪਣੇ ਵਾਲਟ ਨੂੰ ਹੋਰਾਂ ਨਾਲ ਸਾਂਝਾ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?
@@ -551,6 +551,8 @@ dokanySupportEnd.message=Koniec wsparcia dla Dokany
dokanySupportEnd.description=Typ udziału Dokany nie jest już wspierany przez Cryptomator. Twoje ustawienia zostały dostosowane do domyślnego typu udziału. Możesz sprawdzić jaki jest domyślny typ w ustawieniach. dokanySupportEnd.description=Typ udziału Dokany nie jest już wspierany przez Cryptomator. Twoje ustawienia zostały dostosowane do domyślnego typu udziału. Możesz sprawdzić jaki jest domyślny typ w ustawieniach.
dokanySupportEnd.preferencesBtn=Otwórz ustawienia dokanySupportEnd.preferencesBtn=Otwórz ustawienia
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Udostępnij sejf shareVault.title=Udostępnij sejf
shareVault.message=Czy chcesz udostępnić swój sejf innym? shareVault.message=Czy chcesz udostępnić swój sejf innym?
@@ -176,7 +176,7 @@ hub.registerFailed.description.generic=Ocorreu um erro no processo de registo. P
hub.registerFailed.description.deviceAlreadyExists=Este dispositivo já está registado para um utilizador diferente. Tente alterar a conta de utilizador ou use um dispositivo diferente. hub.registerFailed.description.deviceAlreadyExists=Este dispositivo já está registado para um utilizador diferente. Tente alterar a conta de utilizador ou use um dispositivo diferente.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Acesso negado hub.unauthorized.message=Acesso negado
hub.unauthorized.description=Não está autorizado a abrir este cofre. Contacte o proprietário do cofre para solicitar acesso. hub.unauthorized.description=Não está autorizado a abrir este cofre. Contacte o proprietário do cofre para solicitar o acesso.
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=Ação requerida hub.requireAccountInit.message=Ação requerida
hub.requireAccountInit.description.0=Para continuar, conclua as etapas necessárias no seu hub.requireAccountInit.description.0=Para continuar, conclua as etapas necessárias no seu
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Suporte termina para o Dokany
dokanySupportEnd.description=O tipo de volume Dokany não é mais suportado pelo Cryptomator. As configurações serão ajustadas para usar o tipo de volume padrão por agora. Pode ver o tipo padrão nas preferências. dokanySupportEnd.description=O tipo de volume Dokany não é mais suportado pelo Cryptomator. As configurações serão ajustadas para usar o tipo de volume padrão por agora. Pode ver o tipo padrão nas preferências.
dokanySupportEnd.preferencesBtn=Abrir preferências dokanySupportEnd.preferencesBtn=Abrir preferências
#Retry If Readonly
retryIfReadonly.title=Acesso ao Cofre Restrito
retryIfReadonly.message=Sem acesso de gravação ao diretório do cofre
retryIfReadonly.description=O Cryptomator não pode escrever no diretório do cofre. Pode alterar o cofre para ser apenas de leitura e tentar novamente. Esta opção pode ser desactivada nas opções do cofre.
retryIfReadonly.retry=Alterar e tentar de novo
# Share Vault # Share Vault
shareVault.title=Partilhar cofre shareVault.title=Partilhar cofre
shareVault.message=Quer partilhar o seu cofre com outros? shareVault.message=Quer partilhar o seu cofre com outros?
@@ -176,6 +176,7 @@ hub.registerFailed.description.generic=Um erro ocorreu no processo de registro.
hub.registerFailed.description.deviceAlreadyExists=Este dispositivo já está registrado para um usuário diferente. Tente alterar a conta de usuário ou use um dispositivo diferente. hub.registerFailed.description.deviceAlreadyExists=Este dispositivo já está registrado para um usuário diferente. Tente alterar a conta de usuário ou use um dispositivo diferente.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Acesso negado hub.unauthorized.message=Acesso negado
hub.unauthorized.description=Você não está autorizado a abrir este cofre. Entre em contato com o proprietário do cofre para solicitar acesso.
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=Ação necessária hub.requireAccountInit.message=Ação necessária
hub.requireAccountInit.description.0=Para prosseguir, por favor, complete os passos necessários hub.requireAccountInit.description.0=Para prosseguir, por favor, complete os passos necessários
@@ -551,6 +552,12 @@ dokanySupportEnd.message=Fim do suporte para o Dokany
dokanySupportEnd.description=O volume do tipo Dokany não é mais suportado pelo Cryptomator. Suas configurações serão ajustadas para usar o tipo de volume padrão agora. Você pode ver o tipo padrão nas preferências. dokanySupportEnd.description=O volume do tipo Dokany não é mais suportado pelo Cryptomator. Suas configurações serão ajustadas para usar o tipo de volume padrão agora. Você pode ver o tipo padrão nas preferências.
dokanySupportEnd.preferencesBtn=Abrir Preferências dokanySupportEnd.preferencesBtn=Abrir Preferências
#Retry If Readonly
retryIfReadonly.title=Acesso Restrito ao Cofre
retryIfReadonly.message=Sem acesso de gravação ao diretório do cofre
retryIfReadonly.description=O Cryptomator não pode escrever no diretório do cofre. Você pode alterar o cofre para somente leitura e tentar novamente. Esta opção pode ser desativada nas opções de cofre.
retryIfReadonly.retry=Alterar e Repetir
# Share Vault # Share Vault
shareVault.title=Compartilhar Cofre shareVault.title=Compartilhar Cofre
shareVault.message=Gostaria de compartilhar o seu cofre com outras pessoas? shareVault.message=Gostaria de compartilhar o seu cofre com outras pessoas?
@@ -548,6 +548,8 @@ dokanySupportEnd.message=Se termină suportul pentru Dokany
dokanySupportEnd.description=Tipul de volum Dokany nu mai este suportat de Cryptomator. Setările dumneavoastra sunt ajustate pentru a utiliza acum tipul de volum implicit. Puteți vizualiza tipul implicit din preferințe. dokanySupportEnd.description=Tipul de volum Dokany nu mai este suportat de Cryptomator. Setările dumneavoastra sunt ajustate pentru a utiliza acum tipul de volum implicit. Puteți vizualiza tipul implicit din preferințe.
dokanySupportEnd.preferencesBtn=Deschideţi preferinţele dokanySupportEnd.preferencesBtn=Deschideţi preferinţele
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Partajare seif shareVault.title=Partajare seif
shareVault.message=Doriți să vă împărtășiți seiful cu ceilalți? shareVault.message=Doriți să vă împărtășiți seiful cu ceilalți?
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Заканчивается поддержка для Do
dokanySupportEnd.description=Cryptomator больше не поддерживает тома Dokany. Параметры будут изменены на использование типа томов по умолчанию. Тип по умолчанию см. в настройках. dokanySupportEnd.description=Cryptomator больше не поддерживает тома Dokany. Параметры будут изменены на использование типа томов по умолчанию. Тип по умолчанию см. в настройках.
dokanySupportEnd.preferencesBtn=Открыть настройки dokanySupportEnd.preferencesBtn=Открыть настройки
#Retry If Readonly
retryIfReadonly.title=Ограниченный доступ к хранилищу
retryIfReadonly.message=Нет доступа на запись в каталог хранилища
retryIfReadonly.description=Cryptomator не может выполнять запись в папку хранилища. Можно изменить у хранилища доступ только для чтения и повторить попытку. Эта опция может быть отключена в параметрах хранилища.
retryIfReadonly.retry=Изменить и повторить
# Share Vault # Share Vault
shareVault.title=Поделиться хранилищем shareVault.title=Поделиться хранилищем
shareVault.message=Хотите поделиться хранилищем с другими? shareVault.message=Хотите поделиться хранилищем с другими?
@@ -135,4 +135,6 @@ hub.registerSuccess.unlockBtn=අගුළුහරින්න
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -542,6 +542,8 @@ dokanySupportEnd.message=Ukončenie podpory pre Dokany
dokanySupportEnd.description=Typ média Dokany už Cryptomator viac nepodporuje. Vaše nastavenia sú nastavené používať základný typ média. Základný typ môžete vidieť v nastaveniach. dokanySupportEnd.description=Typ média Dokany už Cryptomator viac nepodporuje. Vaše nastavenia sú nastavené používať základný typ média. Základný typ môžete vidieť v nastaveniach.
dokanySupportEnd.preferencesBtn=Otvoriť predvoľby dokanySupportEnd.preferencesBtn=Otvoriť predvoľby
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Zdielať trezor shareVault.title=Zdielať trezor
shareVault.hubAd.authentication=* Silná autentifikácia shareVault.hubAd.authentication=* Silná autentifikácia
@@ -178,4 +178,6 @@ recoveryKey.recover.invalidKey=Obnovitveni ključ ni pravilen
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -322,4 +322,6 @@ quit.lockAndQuitBtn=Zaključaj i Izađi
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -241,4 +241,6 @@ vaultOptions.masterkey.changePasswordBtn=Promena lozinke
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -176,6 +176,7 @@ hub.registerFailed.description.generic=Ett fel uppstod i registreringsprocessen.
hub.registerFailed.description.deviceAlreadyExists=Denna enhet är redan registrerad för en annan användare. Försök att ändra användarkontot eller använda en annan enhet. hub.registerFailed.description.deviceAlreadyExists=Denna enhet är redan registrerad för en annan användare. Försök att ändra användarkontot eller använda en annan enhet.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Åtkomst nekad hub.unauthorized.message=Åtkomst nekad
hub.unauthorized.description=Du har inte behörighet att öppna detta valv. Kontakta valvets ägare för att begära åtkomst.
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=Åtgärd krävs hub.requireAccountInit.message=Åtgärd krävs
hub.requireAccountInit.description.0=För att fortsätta, vänligen fyll i de steg som krävs i din hub.requireAccountInit.description.0=För att fortsätta, vänligen fyll i de steg som krävs i din
@@ -551,6 +552,12 @@ dokanySupportEnd.message=Dokany stöds inte längre
dokanySupportEnd.description=Volymtypen Dokany stöds inte längre av Cryptomator. Dina inställningar justeras för att använda standardvolymtypen nu. Du kan visa standardtypen i inställningarna. dokanySupportEnd.description=Volymtypen Dokany stöds inte längre av Cryptomator. Dina inställningar justeras för att använda standardvolymtypen nu. Du kan visa standardtypen i inställningarna.
dokanySupportEnd.preferencesBtn=Gå till inställningarna dokanySupportEnd.preferencesBtn=Gå till inställningarna
#Retry If Readonly
retryIfReadonly.title=Begränsad valvåtkomst
retryIfReadonly.message=Ingen skrivbehörighet till valvkatalogen
retryIfReadonly.description=Cryptomator kan inte skriva till valvkatalogen. Du kan ändra valvet till att vara skrivskyddad och försök igen. Det här alternativet kan inaktiveras i valvalternativen.
retryIfReadonly.retry=Ändra och försök igen
# Share Vault # Share Vault
shareVault.title=Dela valv shareVault.title=Dela valv
shareVault.message=Vill du dela ditt valv med andra? shareVault.message=Vill du dela ditt valv med andra?
@@ -468,4 +468,6 @@ quit.forced.forceAndQuitBtn=Lazimisha na Uache
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=Fungua Mapendeleo dokanySupportEnd.preferencesBtn=Fungua Mapendeleo
#Retry If Readonly
# Share Vault # Share Vault
@@ -305,4 +305,6 @@ quit.forced.forceAndQuitBtn=கட்டாயப்படுத்தி வெ
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -122,4 +122,6 @@ preferences.interface.theme.light=కాంతి
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -444,6 +444,8 @@ updateReminder.yesAutomatically=ตกลง, ตรวจสอบอัปเ
dokanySupportEnd.title=หมายเหตุการเลิกใช้งาน dokanySupportEnd.title=หมายเหตุการเลิกใช้งาน
dokanySupportEnd.preferencesBtn=การตั้งค่า dokanySupportEnd.preferencesBtn=การตั้งค่า
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=แชร์ Vault shareVault.title=แชร์ Vault
shareVault.hubAd.authentication=• การพิสูจน์ตัวตนที่เข้มงวด shareVault.hubAd.authentication=• การพิสูจน์ตัวตนที่เข้มงวด
@@ -176,6 +176,7 @@ hub.registerFailed.description.generic=Kayıt işleminde bir hata oluştu. Daha
hub.registerFailed.description.deviceAlreadyExists=Bu cihaz zaten farklı bir kullanıcı için kayıtlı. Kullanıcı hesabını değiştirmeyi veya farklı bir cihaz kullanmayı deneyin. hub.registerFailed.description.deviceAlreadyExists=Bu cihaz zaten farklı bir kullanıcı için kayıtlı. Kullanıcı hesabını değiştirmeyi veya farklı bir cihaz kullanmayı deneyin.
### Unauthorized ### Unauthorized
hub.unauthorized.message=Erişim engellendi hub.unauthorized.message=Erişim engellendi
hub.unauthorized.description=Bu kasayı açma yetkiniz yok. Erişim talebinde bulunmak için kasanın sahibiyle iletişime geçin.
### Requires Account Initialization ### Requires Account Initialization
hub.requireAccountInit.message=Eylem gerekli hub.requireAccountInit.message=Eylem gerekli
hub.requireAccountInit.description.0=Devam etmek için lütfen gerekli adımları tamamlayın hub.requireAccountInit.description.0=Devam etmek için lütfen gerekli adımları tamamlayın
@@ -551,6 +552,12 @@ dokanySupportEnd.message=Dokany için destek sonu
dokanySupportEnd.description=Dokany birim türü artık Cryptomator tarafından desteklenmiyor. Ayarlarınız varsayılan birim türünü kullanacak şekilde değiştirilmiştir. Varsayılan birim türünü tercihlerde görüntüleyebilirsiniz. dokanySupportEnd.description=Dokany birim türü artık Cryptomator tarafından desteklenmiyor. Ayarlarınız varsayılan birim türünü kullanacak şekilde değiştirilmiştir. Varsayılan birim türünü tercihlerde görüntüleyebilirsiniz.
dokanySupportEnd.preferencesBtn=Tercihleri Aç dokanySupportEnd.preferencesBtn=Tercihleri Aç
#Retry If Readonly
retryIfReadonly.title=Kısıtlı Kasa Erişimi
retryIfReadonly.message=Kasa dizinine yazma erişimi yok
retryIfReadonly.description=Cryptomator kasa dizinine yazamıyor. Kasayı salt okunur olarak değiştirebilir ve tekrar deneyebilirsiniz. Bu seçenek kasa seçeneklerinden devre dışı bırakılabilir.
retryIfReadonly.retry=Değiştir ve Yeniden Dene
# Share Vault # Share Vault
shareVault.title=Kasayı Paylaş shareVault.title=Kasayı Paylaş
shareVault.message=Kasanızı başkalarıyla paylaşmak ister misiniz? shareVault.message=Kasanızı başkalarıyla paylaşmak ister misiniz?
@@ -539,6 +539,8 @@ dokanySupportEnd.message=Dokany نىڭ قوللاش مۇھلىتى توشتى
dokanySupportEnd.description=Dokany نىڭ قۇۋۋەت شەكلى Cryptomator تەرەپدىن ئاندىن قوللانمايدۇ. سەپلىمىلىرىڭىز ھازىر ئاساسىي قۇۋۋەت شەكلىگە ماسلاشتى. ئاساسىي شەكلىنى تەڭشەشتىن كۆرەلەيسىز. dokanySupportEnd.description=Dokany نىڭ قۇۋۋەت شەكلى Cryptomator تەرەپدىن ئاندىن قوللانمايدۇ. سەپلىمىلىرىڭىز ھازىر ئاساسىي قۇۋۋەت شەكلىگە ماسلاشتى. ئاساسىي شەكلىنى تەڭشەشتىن كۆرەلەيسىز.
dokanySupportEnd.preferencesBtn=سەپلىمىلەرنى ئېچىش dokanySupportEnd.preferencesBtn=سەپلىمىلەرنى ئېچىش
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=ئامبارنى ھەمبەھىرلەش shareVault.title=ئامبارنى ھەمبەھىرلەش
shareVault.message=بۇ ئامبارنى باشقىلار بىلەن ھەمبەھىرلەشنى خالامسىز ؟ shareVault.message=بۇ ئامبارنى باشقىلار بىلەن ھەمبەھىرلەشنى خالامسىز ؟
@@ -552,6 +552,8 @@ dokanySupportEnd.message=Закінчення підтримки Dokany
dokanySupportEnd.description=Тип сховища Dokany більше не підтримується в Cryptomator. Тепер ваші налаштування змінено для використання типового типу сховища. Ви можете переглянути тип сховища за замовчуванням в налаштуваннях. dokanySupportEnd.description=Тип сховища Dokany більше не підтримується в Cryptomator. Тепер ваші налаштування змінено для використання типового типу сховища. Ви можете переглянути тип сховища за замовчуванням в налаштуваннях.
dokanySupportEnd.preferencesBtn=Відкрити налаштування dokanySupportEnd.preferencesBtn=Відкрити налаштування
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Поділитися сховищем shareVault.title=Поділитися сховищем
shareVault.message=Ви хочете поділитися своїм сховищем з іншими? shareVault.message=Ви хочете поділитися своїм сховищем з іншими?
@@ -118,4 +118,6 @@
#Dokany Support End #Dokany Support End
#Retry If Readonly
# Share Vault # Share Vault
@@ -512,6 +512,8 @@ dokanySupportEnd.title=Thông báo ngừng phát triển
dokanySupportEnd.message=Kết thúc hỗ trợ cho Dokany dokanySupportEnd.message=Kết thúc hỗ trợ cho Dokany
dokanySupportEnd.preferencesBtn=Mở Tuỳ chọn dokanySupportEnd.preferencesBtn=Mở Tuỳ chọn
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=Chia sẻ Vault shareVault.title=Chia sẻ Vault
shareVault.hubAd.description=Cách an toàn để làm việc theo nhóm shareVault.hubAd.description=Cách an toàn để làm việc theo nhóm
@@ -552,6 +552,8 @@ dokanySupportEnd.message=对 Dokany 的支持已终止
dokanySupportEnd.description=Cryptomator 不再支持 Dokany 卷类型。您的设置现已调整为使用默认卷类型。您可以在偏好设置中查看默认类型。 dokanySupportEnd.description=Cryptomator 不再支持 Dokany 卷类型。您的设置现已调整为使用默认卷类型。您可以在偏好设置中查看默认类型。
dokanySupportEnd.preferencesBtn=打开首选项 dokanySupportEnd.preferencesBtn=打开首选项
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=共享保险库 shareVault.title=共享保险库
shareVault.message=是否要与他人共享你的保险库? shareVault.message=是否要与他人共享你的保险库?
@@ -543,4 +543,6 @@ updateReminder.yesAutomatically=是,自動
#Dokany Support End #Dokany Support End
dokanySupportEnd.preferencesBtn=開啟偏好設定 dokanySupportEnd.preferencesBtn=開啟偏好設定
#Retry If Readonly
# Share Vault # Share Vault
@@ -551,6 +551,8 @@ dokanySupportEnd.message=對Dokany檔案系統結束支援
dokanySupportEnd.description=Cryptomator 不再支援 Dokany 檔案系統。已將您的設定調整為使用預設的檔案系統類型。您可以在偏好設定中查看預設的檔案系統類型。 dokanySupportEnd.description=Cryptomator 不再支援 Dokany 檔案系統。已將您的設定調整為使用預設的檔案系統類型。您可以在偏好設定中查看預設的檔案系統類型。
dokanySupportEnd.preferencesBtn=開啟偏好設定 dokanySupportEnd.preferencesBtn=開啟偏好設定
#Retry If Readonly
# Share Vault # Share Vault
shareVault.title=與其他人共用加密檔案庫 shareVault.title=與其他人共用加密檔案庫
shareVault.message=您想與其他人共用您的加密檔案庫嗎? shareVault.message=您想與其他人共用您的加密檔案庫嗎?