Merge branch 'develop' into release/1.15.0

This commit is contained in:
Armin Schrenk
2025-02-03 11:12:20 +01:00
64 changed files with 207 additions and 32 deletions
+1 -1
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)
[![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)
[![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/)
[![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)
@@ -2,31 +2,34 @@ package org.cryptomator.ui.dialogs;
import org.cryptomator.common.settings.Settings;
import org.cryptomator.common.vaults.Vault;
import org.cryptomator.ui.common.StageFactory;
import org.cryptomator.ui.controls.FontAwesome5Icon;
import org.cryptomator.ui.fxapp.FxApplicationScoped;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.inject.Inject;
import javax.inject.Singleton;
import javafx.collections.ObservableList;
import javafx.stage.Stage;
import java.util.ResourceBundle;
import java.util.function.Consumer;
@Singleton
@FxApplicationScoped
public class Dialogs {
private final ResourceBundle resourceBundle;
private final StageFactory stageFactory;
@Inject
public Dialogs(ResourceBundle resourceBundle) {
public Dialogs(ResourceBundle resourceBundle, StageFactory stageFactory) {
this.resourceBundle = resourceBundle;
this.stageFactory = stageFactory;
}
private static final Logger LOG = LoggerFactory.getLogger(Dialogs.class);
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) {
@@ -2,6 +2,7 @@ package org.cryptomator.ui.dialogs;
import org.cryptomator.ui.common.FxmlFile;
import org.cryptomator.ui.common.FxmlLoaderFactory;
import org.cryptomator.ui.common.StageFactory;
import org.cryptomator.ui.controls.FontAwesome5Icon;
import javafx.scene.Scene;
@@ -17,24 +18,23 @@ import java.util.function.Consumer;
public class SimpleDialog {
private final ResourceBundle resourceBundle;
private final Stage dialogStage;
SimpleDialog(Builder builder) throws IOException {
this.resourceBundle = builder.resourceBundle;
dialogStage = new Stage();
dialogStage = builder.stageFactory.create();
dialogStage.initOwner(builder.owner);
dialogStage.initModality(Modality.WINDOW_MODAL);
dialogStage.setTitle(resolveText(builder.titleKey, builder.titleArgs));
dialogStage.setResizable(false);
FxmlLoaderFactory loaderFactory = FxmlLoaderFactory.forController(
new SimpleDialogController(resolveText(builder.messageKey, null),
resolveText(builder.descriptionKey, null),
builder.icon,resolveText(builder.okButtonKey, null),
resolveText(builder.cancelButtonKey, null),
() -> builder.okAction.accept(dialogStage),
() -> builder.cancelAction.accept(dialogStage)),
FxmlLoaderFactory loaderFactory = FxmlLoaderFactory.forController( //
new SimpleDialogController(resolveText(builder.messageKey, null), //
resolveText(builder.descriptionKey, null), //
builder.icon, resolveText(builder.okButtonKey, null), //
resolveText(builder.cancelButtonKey, null), //
() -> builder.okAction.accept(dialogStage), //
() -> builder.cancelAction.accept(dialogStage)), //
Scene::new, builder.resourceBundle);
dialogStage.setScene(new Scene(loaderFactory.load(FxmlFile.SIMPLE_DIALOG.getRessourcePathString()).getRoot()));
@@ -60,6 +60,7 @@ public class SimpleDialog {
private Stage owner;
private final ResourceBundle resourceBundle;
private final StageFactory stageFactory;
private String titleKey;
private String[] titleArgs;
private String messageKey;
@@ -71,8 +72,9 @@ public class SimpleDialog {
private Consumer<Stage> okAction = Stage::close;
private Consumer<Stage> cancelAction = Stage::close;
public Builder(ResourceBundle resourceBundle) {
public Builder(ResourceBundle resourceBundle, StageFactory stageFactory) {
this.resourceBundle = resourceBundle;
this.stageFactory = stageFactory;
}
public Builder setOwner(Stage owner) {
@@ -122,11 +124,11 @@ public class SimpleDialog {
}
public SimpleDialog build() {
Objects.requireNonNull(titleKey,"SimpleDialog titleKey must be set.");
Objects.requireNonNull(messageKey,"SimpleDialog messageKey must be set.");
Objects.requireNonNull(descriptionKey,"SimpleDialog descriptionKey must be set.");
Objects.requireNonNull(okButtonKey,"SimpleDialog okButtonKey must be set.");
Objects.requireNonNull(cancelButtonKey,"SimpleDialog cancelButtonKey must be set.");
Objects.requireNonNull(titleKey, "SimpleDialog titleKey must be set.");
Objects.requireNonNull(messageKey, "SimpleDialog messageKey must be set.");
Objects.requireNonNull(descriptionKey, "SimpleDialog descriptionKey must be set.");
Objects.requireNonNull(okButtonKey, "SimpleDialog okButtonKey must be set.");
Objects.requireNonNull(cancelButtonKey, "SimpleDialog cancelButtonKey must be set.");
try {
return new SimpleDialog(this);
@@ -13,10 +13,16 @@ import javax.inject.Inject;
import javafx.beans.property.ObjectProperty;
import javafx.beans.property.SimpleObjectProperty;
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
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 ObservableValue<FontAwesome5Icon> glyph;
private final ObservableValue<Boolean> compactMode;
@@ -25,6 +31,8 @@ public class VaultListCellController implements FxController {
/* FXML */
public FontAwesome5IconView vaultStateView;
@FXML
public HBox vaultListCell;
@Inject
VaultListCellController(Settings settings) {
@@ -37,6 +45,7 @@ public class VaultListCellController implements FxController {
.onCondition(vault.flatMap(Vault::stateProperty).map(VaultState.Value.PROCESSING::equals).orElse(false)) //
.afterStop(() -> vaultStateView.setRotate(0)) //
.build();
this.vaultListCell.paddingProperty().bind(compactMode.map(c -> c ? COMPACT_INSETS : DEFAULT_INSETS));
}
// TODO deduplicate w/ VaultDetailController
@@ -17,6 +17,8 @@ import org.cryptomator.ui.preferences.VolumePreferencesController;
import javax.inject.Inject;
import javafx.application.Application;
import javafx.beans.binding.Bindings;
import javafx.beans.binding.BooleanBinding;
import javafx.beans.value.ObservableBooleanValue;
import javafx.beans.value.ObservableValue;
import javafx.fxml.FXML;
import javafx.scene.control.Button;
@@ -50,7 +52,6 @@ public class MountOptionsController implements FxController {
private final ObservableValue<String> defaultMountFlags;
private final ObservableValue<Boolean> mountpointDirSupported;
private final ObservableValue<Boolean> mountpointDriveLetterSupported;
private final ObservableValue<Boolean> readOnlySupported;
private final ObservableValue<Boolean> mountFlagsSupported;
private final ObservableValue<Boolean> defaultMountServiceSelected;
private final ObservableValue<String> directoryPath;
@@ -60,6 +61,7 @@ public class MountOptionsController implements FxController {
private final ObservableValue<MountService> selectedMountService;
private final ObservableValue<Boolean> selectedMountServiceRequiresRestart;
private final ObservableValue<Boolean> loopbackPortChangeable;
private final ObservableBooleanValue readOnlyOptionAllowed;
//-- FXML objects --
@@ -108,10 +110,10 @@ public class MountOptionsController implements FxController {
});
this.mountFlagsSupported = selectedMountService.map(s -> s.hasCapability(MountCapability.MOUNT_FLAGS));
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.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.readOnlyOptionAllowed = BooleanBinding.booleanExpression(selectedMountService.map(s -> s.hasCapability(MountCapability.READ_ONLY))).or(vaultSettings.usesReadOnlyMode);
}
private MountService reselectMountService() {
@@ -345,12 +347,12 @@ public class MountOptionsController implements FxController {
return mountpointDriveLetterSupported.getValue();
}
public ObservableValue<Boolean> readOnlySupportedProperty() {
return readOnlySupported;
public ObservableValue<Boolean> readOnlyOptionAllowedProperty() {
return readOnlyOptionAllowed;
}
public boolean isReadOnlySupported() {
return readOnlySupported.getValue();
public boolean isReadOnlyOptionAllowed() {
return readOnlyOptionAllowed.getValue();
}
public ObservableValue<String> directoryPathProperty() {
+1 -4
View File
@@ -1,22 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import org.cryptomator.ui.controls.FontAwesome5IconView?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.Tooltip?>
<?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.VBox?>
<HBox xmlns:fx="http://javafx.com/fxml"
xmlns="http://javafx.com/javafx"
fx:id="vaultListCell"
fx:controller="org.cryptomator.ui.mainwindow.VaultListCellController"
prefHeight="60"
prefWidth="200"
spacing="12"
alignment="CENTER_LEFT">
<!-- Remark Check the containing list view for a fixed cell size before editing height properties -->
<padding>
<Insets topRightBottomLeft="12"/>
</padding>
<children>
<VBox alignment="CENTER" minWidth="20">
<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"/>
</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}">
<CheckBox fx:id="customMountFlagsCheckbox" text="%vaultOptions.mount.customMountFlags" onAction="#toggleUseCustomMountFlags"/>
@@ -118,4 +118,6 @@
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -551,6 +551,8 @@ dokanySupportEnd.message=انتهاء الدعم لـDokany
dokanySupportEnd.description=نوع وحدة التخزين Dokany لم يعد مدعوماً من قبل Cryptomator. تم تعديل إعداداتك لاستخدام نوع وحدة التخزين الافتراضي الآن. يمكنك عرض النوع الافتراضي في التفضيلات.
dokanySupportEnd.preferencesBtn=فتح التفضيلات
#Retry If Readonly
# Share Vault
shareVault.title=مشاركة الخزانة
shareVault.message=هل ترغب في مشاركة خزانتك مع الآخرين؟
@@ -515,4 +515,6 @@ updateReminder.yesAutomatically=Эйе, автоматик рәүештә
#Dokany Support End
dokanySupportEnd.preferencesBtn=Көйләүҙәрҙе ас
#Retry If Readonly
# Share Vault
@@ -495,4 +495,6 @@ updateReminder.yesAutomatically=Так, аўтаматычна
#Dokany Support End
dokanySupportEnd.preferencesBtn=Адчыніць налады
#Retry If Readonly
# Share Vault
@@ -515,4 +515,6 @@ updateReminder.yesAutomatically=Да, автоматично
#Dokany Support End
dokanySupportEnd.preferencesBtn=Към настройките
#Retry If Readonly
# Share Vault
@@ -182,4 +182,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=নির্বাচন ক
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -318,4 +318,6 @@ quit.lockAndQuitBtn=Zaključaj i zatvori
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -547,6 +547,8 @@ updateReminder.yesAutomatically=Sí, automàticament
#Dokany Support End
dokanySupportEnd.preferencesBtn=Obrir les Preferències
#Retry If Readonly
# Share Vault
shareVault.title=Comparteix la caixa forta
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.preferencesBtn=Otevřít předvolby
#Retry If Readonly
# Share Vault
shareVault.title=Sdílet trezor
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.
### Unauthorized
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
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
@@ -286,6 +287,7 @@ preferences.general.debugLogging=Aktivér fejllogning
preferences.general.debugDirectory=Vis logfiler
preferences.general.autoStart=Start Cryptomator automatisk ved opstart
preferences.general.keychainBackend=Gem adgangskoder med
preferences.general.quickAccessService=Tilføj oplåste bokse til området hurtig adgang
## Interface
preferences.interface=Brugerflade
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.checkNowBtn=Kontrollér nu
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
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.reveal=Vis drev
##Notificaition
main.notification.updateAvailable=Opdatering er tilgængelig.
main.notification.support=Støt Cryptomator.
## Vault Detail
### 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:
@@ -529,6 +534,8 @@ updateReminder.yesAutomatically=Ja, automatisk
#Dokany Support End
dokanySupportEnd.preferencesBtn=Åbn Indstillinger
#Retry If Readonly
# Share Vault
shareVault.title=Del Boks
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.preferencesBtn=Einstellungen öffnen
#Retry If Readonly
# Share Vault
shareVault.title=Tresor teilen
shareVault.message=Möchtest du deinen Tresor mit anderen teilen?
@@ -552,6 +552,12 @@ dokanySupportEnd.message=Τέλος υποστήριξης για Dokany
dokanySupportEnd.description=Ο τύπος τόμου Dokany δεν υποστηρίζεται πλέον από το Cryptomator. Οι ρυθμίσεις σας έχουν προσαρμοστεί για να χρησιμοποιούν τον προεπιλεγμένο τύπο τόμου. Μπορείτε να δείτε τον προεπιλεγμένο τύπο στις προτιμήσεις.
dokanySupportEnd.preferencesBtn=Άνοιγμα Προτιμήσεων
#Retry If Readonly
retryIfReadonly.title=Περιορισμένη Πρόσβαση Κρύπτης
retryIfReadonly.message=Δεν υπάρχει πρόσβαση εγγραφής στον κατάλογο κρύπτης
retryIfReadonly.description=Το Cryptomator δεν μπορεί να γράψει στον κατάλογο κρύπτης. Μπορείτε να αλλάξετε την κρύπτη ώστε να είναι μόνο για ανάγνωση και να προσπαθήσετε ξανά. Αυτή η επιλογή μπορεί να απενεργοποιηθεί στις επιλογές κρύπτης.
retryIfReadonly.retry=Αλλαγή και Επανάληψη
# Share Vault
shareVault.title=Κοινή χρήση Κρύπτης
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.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
shareVault.title=Compartir bóveda
shareVault.message=¿Le gustaría compartir su bóveda con alguien más?
@@ -210,4 +210,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=انتخاب کنید…
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -545,6 +545,8 @@ updateReminder.yesAutomatically=Kyllä, automaattisesti
#Dokany Support End
dokanySupportEnd.preferencesBtn=Avaa asetukset
#Retry If Readonly
# Share Vault
shareVault.title=Jaa holvi
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.preferencesBtn=Buksan ang Mga Kagustuhan
#Retry If Readonly
# Share Vault
shareVault.title=Ibahagi ang Vault
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.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
shareVault.title=Partager le coffre
shareVault.message=Vous aimeriez partager votre coffre avec d'autres personnes ?
@@ -132,4 +132,6 @@ lock.forced.retryBtn=Tentar de novo
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -491,4 +491,6 @@ updateReminder.notNow=לא עכשיו
#Dokany Support End
dokanySupportEnd.preferencesBtn=פתח העדפות
#Retry If Readonly
# Share Vault
@@ -314,4 +314,6 @@ quit.forced.message=कुछ वॉल्ट्स लॉक नहीं ह
#Dokany Support End
dokanySupportEnd.preferencesBtn=प्राथमिकताएँ खोलें
#Retry If Readonly
# Share Vault
@@ -381,4 +381,6 @@ quit.lockAndQuitBtn=Zaključaj i napusti
#Dokany Support End
#Retry If Readonly
# 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.preferencesBtn=Beállítások megnyitása
#Retry If Readonly
# Share Vault
shareVault.title=Széf megosztása
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.preferencesBtn=Buka Preferensi
#Retry If Readonly
# Share Vault
shareVault.title=Bagikan Vault
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.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
shareVault.title=Condividi cassaforte
shareVault.message=Vuoi condividere la tua cassaforte con altri?
@@ -540,6 +540,8 @@ dokanySupportEnd.message=Dokany のサポート終了
dokanySupportEnd.description=ボリュームタイプ
dokanySupportEnd.preferencesBtn=環境設定を開く
#Retry If Readonly
# Share Vault
shareVault.title=保管庫を共有する
shareVault.message=保管庫を他の人と共有しますか?
@@ -552,6 +552,8 @@ dokanySupportEnd.message=Dokany에 대한 지원 중단
dokanySupportEnd.description=Cryptomator에서 Dokany 볼륨 형식은 더이상 지원되지 않습니다. 기본 볼륨 형식을 사용하도록 설정이 조정되었으며, 설정에서 기본 형식을 확인할 수 있습니다.
dokanySupportEnd.preferencesBtn=설정 열기
#Retry If Readonly
# Share Vault
shareVault.title=Vault 공유
shareVault.message=Vault를 다른 사람과 공유하려 하십니까?
@@ -280,4 +280,6 @@ quit.lockAndQuitBtn=Aizslēgt un aizvērt
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -164,4 +164,6 @@ vaultOptions.mount.mountPoint.directoryPickerButton=Избор…
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -118,4 +118,6 @@
#Dokany Support End
#Retry If Readonly
# 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.preferencesBtn=Åpne innstillinger
#Retry If Readonly
# Share Vault
shareVault.title=Del hvelv
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.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
shareVault.title=Kluis delen
shareVault.message=Wilt u uw kluis met anderen delen?
@@ -278,4 +278,6 @@ quit.lockAndQuitBtn=Lås og avslutt
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -118,4 +118,6 @@
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -475,6 +475,8 @@ dokanySupportEnd.title=ਬਰਤਰਫ਼ੀ ਨੋਟਿਸ
dokanySupportEnd.message=Dokany ਲਈ ਸਹਿਯੋਗ ਖ਼ਤਮ
dokanySupportEnd.preferencesBtn=ਪਸੰਦੀਦਾ ਖੋਲ੍ਹੋ
#Retry If Readonly
# Share Vault
shareVault.title=ਵਾਲਟ ਨੂੰ ਸਾਂਝਾ ਕਰੋ
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.preferencesBtn=Otwórz ustawienia
#Retry If Readonly
# Share Vault
shareVault.title=Udostępnij sejf
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.
### Unauthorized
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
hub.requireAccountInit.message=Ação requerida
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.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
shareVault.title=Partilhar cofre
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.
### Unauthorized
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
hub.requireAccountInit.message=Ação necessária
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.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
shareVault.title=Compartilhar Cofre
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.preferencesBtn=Deschideţi preferinţele
#Retry If Readonly
# Share Vault
shareVault.title=Partajare seif
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.preferencesBtn=Открыть настройки
#Retry If Readonly
retryIfReadonly.title=Ограниченный доступ к хранилищу
retryIfReadonly.message=Нет доступа на запись в каталог хранилища
retryIfReadonly.description=Cryptomator не может выполнять запись в папку хранилища. Можно изменить у хранилища доступ только для чтения и повторить попытку. Эта опция может быть отключена в параметрах хранилища.
retryIfReadonly.retry=Изменить и повторить
# Share Vault
shareVault.title=Поделиться хранилищем
shareVault.message=Хотите поделиться хранилищем с другими?
@@ -135,4 +135,6 @@ hub.registerSuccess.unlockBtn=අගුළුහරින්න
#Dokany Support End
#Retry If Readonly
# 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.preferencesBtn=Otvoriť predvoľby
#Retry If Readonly
# Share Vault
shareVault.title=Zdielať trezor
shareVault.hubAd.authentication=* Silná autentifikácia
@@ -178,4 +178,6 @@ recoveryKey.recover.invalidKey=Obnovitveni ključ ni pravilen
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -322,4 +322,6 @@ quit.lockAndQuitBtn=Zaključaj i Izađi
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -241,4 +241,6 @@ vaultOptions.masterkey.changePasswordBtn=Promena lozinke
#Dokany Support End
#Retry If Readonly
# 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.
### Unauthorized
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
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
@@ -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.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
shareVault.title=Dela valv
shareVault.message=Vill du dela ditt valv med andra?
@@ -468,4 +468,6 @@ quit.forced.forceAndQuitBtn=Lazimisha na Uache
#Dokany Support End
dokanySupportEnd.preferencesBtn=Fungua Mapendeleo
#Retry If Readonly
# Share Vault
@@ -305,4 +305,6 @@ quit.forced.forceAndQuitBtn=கட்டாயப்படுத்தி வெ
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -122,4 +122,6 @@ preferences.interface.theme.light=కాంతి
#Dokany Support End
#Retry If Readonly
# Share Vault
@@ -444,6 +444,8 @@ updateReminder.yesAutomatically=ตกลง, ตรวจสอบอัปเ
dokanySupportEnd.title=หมายเหตุการเลิกใช้งาน
dokanySupportEnd.preferencesBtn=การตั้งค่า
#Retry If Readonly
# Share Vault
shareVault.title=แชร์ Vault
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.
### Unauthorized
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
hub.requireAccountInit.message=Eylem gerekli
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.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
shareVault.title=Kasayı Paylaş
shareVault.message=Kasanızı başkalarıyla paylaşmak ister misiniz?
@@ -539,6 +539,8 @@ dokanySupportEnd.message=Dokany نىڭ قوللاش مۇھلىتى توشتى
dokanySupportEnd.description=Dokany نىڭ قۇۋۋەت شەكلى Cryptomator تەرەپدىن ئاندىن قوللانمايدۇ. سەپلىمىلىرىڭىز ھازىر ئاساسىي قۇۋۋەت شەكلىگە ماسلاشتى. ئاساسىي شەكلىنى تەڭشەشتىن كۆرەلەيسىز.
dokanySupportEnd.preferencesBtn=سەپلىمىلەرنى ئېچىش
#Retry If Readonly
# Share Vault
shareVault.title=ئامبارنى ھەمبەھىرلەش
shareVault.message=بۇ ئامبارنى باشقىلار بىلەن ھەمبەھىرلەشنى خالامسىز ؟
@@ -552,6 +552,8 @@ dokanySupportEnd.message=Закінчення підтримки Dokany
dokanySupportEnd.description=Тип сховища Dokany більше не підтримується в Cryptomator. Тепер ваші налаштування змінено для використання типового типу сховища. Ви можете переглянути тип сховища за замовчуванням в налаштуваннях.
dokanySupportEnd.preferencesBtn=Відкрити налаштування
#Retry If Readonly
# Share Vault
shareVault.title=Поділитися сховищем
shareVault.message=Ви хочете поділитися своїм сховищем з іншими?
@@ -118,4 +118,6 @@
#Dokany Support End
#Retry If Readonly
# 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.preferencesBtn=Mở Tuỳ chọn
#Retry If Readonly
# Share Vault
shareVault.title=Chia sẻ Vault
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.preferencesBtn=打开首选项
#Retry If Readonly
# Share Vault
shareVault.title=共享保险库
shareVault.message=是否要与他人共享你的保险库?
@@ -543,4 +543,6 @@ updateReminder.yesAutomatically=是,自動
#Dokany Support End
dokanySupportEnd.preferencesBtn=開啟偏好設定
#Retry If Readonly
# Share Vault
@@ -551,6 +551,8 @@ dokanySupportEnd.message=對Dokany檔案系統結束支援
dokanySupportEnd.description=Cryptomator 不再支援 Dokany 檔案系統。已將您的設定調整為使用預設的檔案系統類型。您可以在偏好設定中查看預設的檔案系統類型。
dokanySupportEnd.preferencesBtn=開啟偏好設定
#Retry If Readonly
# Share Vault
shareVault.title=與其他人共用加密檔案庫
shareVault.message=您想與其他人共用您的加密檔案庫嗎?