From 401ab346890d3381efe28fef8544525058f05c8e Mon Sep 17 00:00:00 2001 From: crschnick Date: Mon, 22 Apr 2024 11:56:59 +0000 Subject: [PATCH] Various fixes --- .../xpipe/app/comp/store/StoreEntryComp.java | 3 +-- .../io/xpipe/app/comp/store/StoreSection.java | 6 ++--- .../io/xpipe/app/ext/DataStoreProvider.java | 4 ---- .../app/fxcomps/impl/SecretFieldComp.java | 7 ++++++ .../app/storage/DataStateProviderImpl.java | 10 ++++----- .../io/xpipe/app/storage/DataStorage.java | 14 +++++------- .../util/SecretRetrievalStrategyHelper.java | 10 ++++++--- .../xpipe/ext/base/SelfReferentialStore.java | 2 +- .../base/desktop/DesktopEnvironmentStore.java | 3 +-- .../base/script/PredefinedScriptStore.java | 7 ------ .../ext/base/script/SimpleScriptStore.java | 15 +++++-------- .../script/SimpleScriptStoreProvider.java | 21 ++---------------- gradle/gradle_scripts/vernacular-1.16.jar | Bin 100150 -> 100226 bytes lang/app/strings/translations_da.properties | 1 - lang/app/strings/translations_de.properties | 1 - lang/app/strings/translations_en.properties | 1 - lang/app/strings/translations_es.properties | 1 - lang/app/strings/translations_fr.properties | 1 - lang/app/strings/translations_it.properties | 1 - lang/app/strings/translations_ja.properties | 1 - lang/app/strings/translations_nl.properties | 1 - lang/app/strings/translations_pt.properties | 1 - lang/app/strings/translations_ru.properties | 1 - lang/app/strings/translations_tr.properties | 1 - lang/app/strings/translations_zh.properties | 1 - lang/proc/strings/translations_da.properties | 3 +++ lang/proc/strings/translations_de.properties | 3 +++ lang/proc/strings/translations_en.properties | 3 +++ lang/proc/strings/translations_es.properties | 3 +++ lang/proc/strings/translations_fr.properties | 3 +++ lang/proc/strings/translations_it.properties | 3 +++ lang/proc/strings/translations_ja.properties | 3 +++ lang/proc/strings/translations_nl.properties | 3 +++ lang/proc/strings/translations_pt.properties | 3 +++ lang/proc/strings/translations_ru.properties | 3 +++ lang/proc/strings/translations_tr.properties | 3 +++ lang/proc/strings/translations_zh.properties | 3 +++ 37 files changed, 74 insertions(+), 76 deletions(-) diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java index 738369d04..e48c7f4e1 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java @@ -381,8 +381,7 @@ public abstract class StoreEntryComp extends SimpleComp { contextMenu.getItems().add(browse); } - if (wrapper.getEntry().getProvider() != null - && wrapper.getEntry().getProvider().canMoveCategories()) { + if (wrapper.getEntry().getProvider() != null) { var move = new Menu(AppI18n.get("moveTo"), new FontIcon("mdi2f-folder-move-outline")); StoreViewState.get() .getSortedCategories(wrapper.getCategory().getValue().getRoot()) diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreSection.java b/app/src/main/java/io/xpipe/app/comp/store/StoreSection.java index f1d0ea4cf..c57f324c9 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreSection.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreSection.java @@ -107,7 +107,7 @@ public class StoreSection { var matchesSelector = section.anyMatches(entryFilter); var sameCategory = category == null || category.getValue() == null - || inCategory(category.getValue(), section.getWrapper()); + || showInCategory(category.getValue(), section.getWrapper()); return showFilter && matchesSelector && sameCategory; }, category, @@ -148,7 +148,7 @@ public class StoreSection { var matchesSelector = section.anyMatches(entryFilter); var sameCategory = category == null || category.getValue() == null - || inCategory(category.getValue(), section.getWrapper()); + || showInCategory(category.getValue(), section.getWrapper()); // If this entry is already shown as root due to a different category than parent, don't show it // again here var notRoot = @@ -160,7 +160,7 @@ public class StoreSection { return new StoreSection(e, cached, filtered, depth); } - private static boolean inCategory(StoreCategoryWrapper categoryWrapper, StoreEntryWrapper entryWrapper) { + private static boolean showInCategory(StoreCategoryWrapper categoryWrapper, StoreEntryWrapper entryWrapper) { var current = entryWrapper.getCategory().getValue(); while (current != null) { if (categoryWrapper diff --git a/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java b/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java index 9699d88d0..71c5d8f2d 100644 --- a/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java +++ b/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java @@ -36,10 +36,6 @@ public interface DataStoreProvider { return false; } - default boolean canMoveCategories() { - return true; - } - default boolean alwaysShowSummary() { return false; } diff --git a/app/src/main/java/io/xpipe/app/fxcomps/impl/SecretFieldComp.java b/app/src/main/java/io/xpipe/app/fxcomps/impl/SecretFieldComp.java index 307b2c23c..c14f9ad88 100644 --- a/app/src/main/java/io/xpipe/app/fxcomps/impl/SecretFieldComp.java +++ b/app/src/main/java/io/xpipe/app/fxcomps/impl/SecretFieldComp.java @@ -88,6 +88,13 @@ public class SecretFieldComp extends Comp { if (allowCopy) { ig.getChildren().add(copyButton); } + + ig.focusedProperty().addListener((c, o, n) -> { + if (n) { + text.requestFocus(); + } + }); + return new Structure(ig, text); } } diff --git a/app/src/main/java/io/xpipe/app/storage/DataStateProviderImpl.java b/app/src/main/java/io/xpipe/app/storage/DataStateProviderImpl.java index 9eede6170..fc3f39ead 100644 --- a/app/src/main/java/io/xpipe/app/storage/DataStateProviderImpl.java +++ b/app/src/main/java/io/xpipe/app/storage/DataStateProviderImpl.java @@ -15,7 +15,7 @@ public class DataStateProviderImpl extends DataStateProvider { return; } - var entry = DataStorage.get().getStoreEntryIfPresent(store).or(() -> DataStorage.get() + var entry = DataStorage.get().getStoreEntryIfPresent(store, true).or(() -> DataStorage.get() .getStoreEntryInProgressIfPresent(store)); if (entry.isEmpty()) { return; @@ -30,7 +30,7 @@ public class DataStateProviderImpl extends DataStateProvider { return def.get(); } - var entry = DataStorage.get().getStoreEntryIfPresent(store); + var entry = DataStorage.get().getStoreEntryIfPresent(store, true); if (entry.isEmpty()) { return def.get(); } @@ -52,7 +52,7 @@ public class DataStateProviderImpl extends DataStateProvider { return; } - var entry = DataStorage.get().getStoreEntryIfPresent(store); + var entry = DataStorage.get().getStoreEntryIfPresent(store, true); if (entry.isEmpty()) { return; } @@ -66,7 +66,7 @@ public class DataStateProviderImpl extends DataStateProvider { return def.get(); } - var entry = DataStorage.get().getStoreEntryIfPresent(store); + var entry = DataStorage.get().getStoreEntryIfPresent(store, true); if (entry.isEmpty()) { return def.get(); } @@ -80,7 +80,7 @@ public class DataStateProviderImpl extends DataStateProvider { } public boolean isInStorage(DataStore store) { - var entry = DataStorage.get().getStoreEntryIfPresent(store); + var entry = DataStorage.get().getStoreEntryIfPresent(store, true); return entry.isPresent(); } } diff --git a/app/src/main/java/io/xpipe/app/storage/DataStorage.java b/app/src/main/java/io/xpipe/app/storage/DataStorage.java index 36bd45ed2..7c21ff3fa 100644 --- a/app/src/main/java/io/xpipe/app/storage/DataStorage.java +++ b/app/src/main/java/io/xpipe/app/storage/DataStorage.java @@ -10,9 +10,7 @@ import io.xpipe.core.store.DataStoreId; import io.xpipe.core.store.FixedChildStore; import io.xpipe.core.store.LocalStore; import io.xpipe.core.util.UuidHelper; - import javafx.util.Pair; - import lombok.Getter; import lombok.NonNull; import lombok.Setter; @@ -529,7 +527,7 @@ public abstract class DataStorage { public void addStoreEntriesIfNotPresent(@NonNull DataStoreEntry... es) { for (DataStoreEntry e : es) { if (storeEntriesSet.contains(e) - || getStoreEntryIfPresent(e.getStore()).isPresent()) { + || getStoreEntryIfPresent(e.getStore(), false).isPresent()) { return; } @@ -563,7 +561,7 @@ public abstract class DataStorage { } public DataStoreEntry addStoreIfNotPresent(DataStoreEntry related, @NonNull String name, DataStore store) { - var f = getStoreEntryIfPresent(store); + var f = getStoreEntryIfPresent(store, false); if (f.isPresent()) { return f.get(); } @@ -770,12 +768,12 @@ public abstract class DataStorage { .findFirst(); } - public Optional getStoreEntryIfPresent(@NonNull DataStore store) { + public Optional getStoreEntryIfPresent(@NonNull DataStore store, boolean identityOnly) { return storeEntriesSet.stream() .filter(n -> n.getStore() == store - || (n.getStore() != null + || (!identityOnly && (n.getStore() != null && Objects.equals(store.getClass(), n.getStore().getClass()) - && store.equals(n.getStore()))) + && store.equals(n.getStore())))) .findFirst(); } @@ -814,7 +812,7 @@ public abstract class DataStorage { return Optional.empty(); } - return getStoreEntryIfPresent(store).map(dataStoreEntry -> dataStoreEntry.getName()); + return getStoreEntryIfPresent(store, true).map(dataStoreEntry -> dataStoreEntry.getName()); } public String getStoreDisplayName(DataStoreEntry store) { diff --git a/app/src/main/java/io/xpipe/app/util/SecretRetrievalStrategyHelper.java b/app/src/main/java/io/xpipe/app/util/SecretRetrievalStrategyHelper.java index 41682b231..abd5f50fc 100644 --- a/app/src/main/java/io/xpipe/app/util/SecretRetrievalStrategyHelper.java +++ b/app/src/main/java/io/xpipe/app/util/SecretRetrievalStrategyHelper.java @@ -45,16 +45,20 @@ public class SecretRetrievalStrategyHelper { new SimpleObjectProperty<>(p.getValue() != null ? p.getValue().getKey() : null); var content = new HorizontalComp(List.of( new TextFieldComp(keyProperty) - .apply(struc -> struc.get().setPromptText("Password key")) + .apply(struc -> struc.get().setPromptText("$KEY")) .hgrow(), new ButtonComp(null, new FontIcon("mdomz-settings"), () -> { AppPrefs.get().selectCategory("passwordManager"); App.getApp().getStage().requestFocus(); }) .grow(false, true))) - .apply(struc -> struc.get().setSpacing(10)); + .apply(struc -> struc.get().setSpacing(10)) + .apply(struc -> struc.get().focusedProperty().addListener((c, o, n) -> { + if (n) { + struc.get().getChildren().getFirst().requestFocus(); + } + })); return new OptionsBuilder() - .name("passwordKey") .addComp(content, keyProperty) .nonNull() .bind( diff --git a/ext/base/src/main/java/io/xpipe/ext/base/SelfReferentialStore.java b/ext/base/src/main/java/io/xpipe/ext/base/SelfReferentialStore.java index 9baa89362..8ccc3c657 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/SelfReferentialStore.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/SelfReferentialStore.java @@ -10,7 +10,7 @@ public interface SelfReferentialStore extends DataStore { default DataStoreEntry getSelfEntry() { return DataStorage.get() - .getStoreEntryIfPresent(this) + .getStoreEntryIfPresent(this, true) .or(() -> { return DataStorage.get().getStoreEntryInProgressIfPresent(this); }) diff --git a/ext/base/src/main/java/io/xpipe/ext/base/desktop/DesktopEnvironmentStore.java b/ext/base/src/main/java/io/xpipe/ext/base/desktop/DesktopEnvironmentStore.java index 35786bf65..b397213f6 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/desktop/DesktopEnvironmentStore.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/desktop/DesktopEnvironmentStore.java @@ -50,8 +50,7 @@ public class DesktopEnvironmentStore extends JacksonizedValue var f = ScriptStore.flatten(scripts); var filtered = f.stream() .filter(simpleScriptStore -> - simpleScriptStore.getMinimumDialect().isCompatibleTo(dialect) - && simpleScriptStore.getExecutionType().runInTerminal()) + simpleScriptStore.getMinimumDialect().isCompatibleTo(dialect)) .toList(); var initCommands = new ArrayList<>(filtered.stream() .map(simpleScriptStore -> simpleScriptStore.getCommands()) diff --git a/ext/base/src/main/java/io/xpipe/ext/base/script/PredefinedScriptStore.java b/ext/base/src/main/java/io/xpipe/ext/base/script/PredefinedScriptStore.java index 01f12123a..e74ecffa7 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/script/PredefinedScriptStore.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/script/PredefinedScriptStore.java @@ -19,7 +19,6 @@ public enum PredefinedScriptStore { .group(PredefinedScriptGroup.CLINK.getEntry()) .minimumDialect(ShellDialects.CMD) .commands(file("clink.bat")) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build()), CLINK_INJECT("Clink Inject", () -> SimpleScriptStore.builder() .group(PredefinedScriptGroup.CLINK.getEntry()) @@ -28,38 +27,32 @@ public enum PredefinedScriptStore { .commands(""" clink inject --quiet """) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build()), STARSHIP_BASH("Starship Bash", () -> SimpleScriptStore.builder() .group(PredefinedScriptGroup.STARSHIP.getEntry()) .minimumDialect(ShellDialects.BASH) .commands(file("starship_bash.sh")) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build()), STARSHIP_ZSH("Starship Zsh", () -> SimpleScriptStore.builder() .group(PredefinedScriptGroup.STARSHIP.getEntry()) .minimumDialect(ShellDialects.ZSH) .commands(file("starship_zsh.sh")) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build()), STARSHIP_FISH("Starship Fish", () -> SimpleScriptStore.builder() .group(PredefinedScriptGroup.STARSHIP.getEntry()) .minimumDialect(ShellDialects.FISH) .commands(file("starship_fish.fish")) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build()), STARSHIP_CMD("Starship Cmd", () -> SimpleScriptStore.builder() .group(PredefinedScriptGroup.STARSHIP.getEntry()) .minimumDialect(ShellDialects.CMD) .script(CLINK_SETUP.getEntry()) .commands(file(("starship_cmd.bat"))) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build()), STARSHIP_POWERSHELL("Starship Powershell", () -> SimpleScriptStore.builder() .group(PredefinedScriptGroup.STARSHIP.getEntry()) .minimumDialect(ShellDialects.POWERSHELL) .commands(file("starship_powershell.ps1")) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build()); private final String name; diff --git a/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStore.java b/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStore.java index eccdc3e2b..48a9cd926 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStore.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStore.java @@ -25,14 +25,10 @@ public class SimpleScriptStore extends ScriptStore implements ScriptSnippet { private final ShellDialect minimumDialect; private final String commands; - private final ExecutionType executionType; - private String assemble(ShellControl shellControl, ExecutionType type) { - var targetType = type == ExecutionType.TERMINAL_ONLY - ? shellControl.getOriginalShellDialect() - : shellControl.getShellDialect(); - if ((executionType == type || executionType == ExecutionType.BOTH) - && minimumDialect.isCompatibleTo(targetType)) { + private String assemble(ShellControl shellControl) { + var targetType = shellControl.getOriginalShellDialect(); + if (minimumDialect.isCompatibleTo(targetType)) { var shebang = commands.startsWith("#"); // Fix new lines and shebang var fixedCommands = commands.lines() @@ -48,19 +44,18 @@ public class SimpleScriptStore extends ScriptStore implements ScriptSnippet { @Override public String content(ShellControl shellControl) { - return assemble(shellControl, executionType); + return assemble(shellControl); } @Override public ScriptSnippet.ExecutionType executionType() { - return executionType; + return ExecutionType.TERMINAL_ONLY; } @Override public void checkComplete() throws Throwable { Validators.nonNull(group); super.checkComplete(); - Validators.nonNull(executionType); Validators.nonNull(minimumDialect); } diff --git a/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStoreProvider.java b/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStoreProvider.java index 5aca6448d..15d5b0e4a 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStoreProvider.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/script/SimpleScriptStoreProvider.java @@ -43,11 +43,6 @@ public class SimpleScriptStoreProvider implements DataStoreProvider { return true; } - @Override - public boolean canMoveCategories() { - return false; - } - @Override public boolean shouldEdit() { return true; @@ -141,10 +136,8 @@ public class SimpleScriptStoreProvider implements DataStoreProvider { var group = new SimpleObjectProperty<>(st.getGroup()); Property dialect = new SimpleObjectProperty<>(st.getMinimumDialect()); - var others = - new SimpleListProperty<>(FXCollections.observableArrayList(new ArrayList<>(st.getEffectiveScripts()))); + var others = new SimpleListProperty<>(FXCollections.observableArrayList(new ArrayList<>(st.getEffectiveScripts()))); Property commandProp = new SimpleObjectProperty<>(st.getCommands()); - var type = new SimpleObjectProperty<>(st.getExecutionType()); Comp choice = (Comp) Class.forName( AppExtensionManager.getInstance() @@ -181,9 +174,6 @@ public class SimpleScriptStoreProvider implements DataStoreProvider { })), commandProp) .name("executionType") - .description("executionTypeDescription") - .longDescription("base:executionType") - .addComp(new ScriptStoreTypeChoiceComp(type), type) .name("scriptGroup") .description("scriptGroupDescription") .addComp( @@ -204,7 +194,6 @@ public class SimpleScriptStoreProvider implements DataStoreProvider { .scripts(new ArrayList<>(others.get())) .description(st.getDescription()) .commands(commandProp.getValue()) - .executionType(type.get()) .build(); }, store) @@ -256,12 +245,7 @@ public class SimpleScriptStoreProvider implements DataStoreProvider { return new SimpleStringProperty((scriptStore.getMinimumDialect() != null ? scriptStore.getMinimumDialect().getDisplayName() + " " : "") - + (scriptStore.getExecutionType() == SimpleScriptStore.ExecutionType.TERMINAL_ONLY - ? "Terminal" - : scriptStore.getExecutionType() == SimpleScriptStore.ExecutionType.DUMB_ONLY - ? "Background" - : "") - + " Snippet"); + + " snippet"); } @SneakyThrows @@ -286,7 +270,6 @@ public class SimpleScriptStoreProvider implements DataStoreProvider { public DataStore defaultStore() { return SimpleScriptStore.builder() .scripts(List.of()) - .executionType(SimpleScriptStore.ExecutionType.TERMINAL_ONLY) .build(); } diff --git a/gradle/gradle_scripts/vernacular-1.16.jar b/gradle/gradle_scripts/vernacular-1.16.jar index 62fe1aa64ca7bf2f2398908b063c110890da0302..f93b7e72abe39fbb0d12332a1b5950545449ea7d 100644 GIT binary patch delta 5476 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 delta 5258 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 OpR0ml6#+1D*#7~5-t|ZT diff --git a/lang/app/strings/translations_da.properties b/lang/app/strings/translations_da.properties index 5286f0494..8fb06444f 100644 --- a/lang/app/strings/translations_da.properties +++ b/lang/app/strings/translations_da.properties @@ -280,7 +280,6 @@ openDataDir=Vault-datakatalog openDataDirButton=Åbent datakatalog openDataDirDescription=Hvis du vil synkronisere yderligere filer, såsom SSH-nøgler, på tværs af systemer med dit git-repository, kan du placere dem i mappen storage data. Alle filer, der henvises til der, vil få deres filstier automatisk tilpasset på ethvert synkroniseret system. updates=Opdateringer -passwordKey=Nøgle til adgangskode selectAll=Vælg alle command=Kommando advanced=Avanceret diff --git a/lang/app/strings/translations_de.properties b/lang/app/strings/translations_de.properties index df428b123..cc2a2acfa 100644 --- a/lang/app/strings/translations_de.properties +++ b/lang/app/strings/translations_de.properties @@ -289,7 +289,6 @@ openDataDirButton=Datenverzeichnis öffnen openDataDirDescription=Wenn du zusätzliche Dateien, wie z.B. SSH-Schlüssel, systemübergreifend mit deinem Git-Repository synchronisieren möchtest, kannst du sie in das Verzeichnis Speicherdaten legen. Bei allen Dateien, die dort referenziert werden, werden die Dateipfade auf allen synchronisierten Systemen automatisch angepasst. #custom updates=Updates -passwordKey=Passwortschlüssel selectAll=Alles auswählen command=Befehl advanced=Fortgeschrittene diff --git a/lang/app/strings/translations_en.properties b/lang/app/strings/translations_en.properties index d37946a08..b2561956c 100644 --- a/lang/app/strings/translations_en.properties +++ b/lang/app/strings/translations_en.properties @@ -291,7 +291,6 @@ openDataDir=Vault data directory openDataDirButton=Open data directory openDataDirDescription=If you want to sync additional files, such as SSH keys, across systems with your git repository, you can put them into the storage data directory. Any files referenced there will have their file paths automatically adapted on any synced system. updates=Updates -passwordKey=Password key selectAll=Select all command=Command advanced=Advanced diff --git a/lang/app/strings/translations_es.properties b/lang/app/strings/translations_es.properties index 162d050ee..10634e56d 100644 --- a/lang/app/strings/translations_es.properties +++ b/lang/app/strings/translations_es.properties @@ -280,7 +280,6 @@ openDataDir=Directorio de datos de la bóveda openDataDirButton=Directorio de datos abierto openDataDirDescription=Si quieres sincronizar archivos adicionales, como claves SSH, entre sistemas con tu repositorio git, puedes ponerlos en el directorio de datos de almacenamiento. Cualquier archivo al que se haga referencia allí tendrá sus rutas de archivo adaptadas automáticamente en cualquier sistema sincronizado. updates=Actualiza -passwordKey=Clave de acceso selectAll=Seleccionar todo command=Comando advanced=Avanzado diff --git a/lang/app/strings/translations_fr.properties b/lang/app/strings/translations_fr.properties index b09e8675b..a5f324d7d 100644 --- a/lang/app/strings/translations_fr.properties +++ b/lang/app/strings/translations_fr.properties @@ -280,7 +280,6 @@ openDataDir=Répertoire de données de voûte openDataDirButton=Répertoire de données ouvertes openDataDirDescription=Si tu veux synchroniser des fichiers supplémentaires, comme les clés SSH, entre les systèmes avec ton dépôt git, tu peux les mettre dans le répertoire storage data. Tous les fichiers qui y sont référencés verront leur chemin de fichier automatiquement adapté sur n'importe quel système synchronisé. updates=Mises à jour -passwordKey=Clé de mot de passe selectAll=Sélectionne tout command=Commande advanced=Avancé diff --git a/lang/app/strings/translations_it.properties b/lang/app/strings/translations_it.properties index f37262303..b04c4a2c5 100644 --- a/lang/app/strings/translations_it.properties +++ b/lang/app/strings/translations_it.properties @@ -280,7 +280,6 @@ openDataDir=Directory di dati del caveau openDataDirButton=Elenco di dati aperti openDataDirDescription=Se vuoi sincronizzare altri file, come le chiavi SSH, tra i vari sistemi con il tuo repository git, puoi inserirli nella directory dei dati di archiviazione. Tutti i file che vi fanno riferimento avranno il loro percorso adattato automaticamente su ogni sistema sincronizzato. updates=Aggiornamenti -passwordKey=Chiave password selectAll=Seleziona tutti command=Comando advanced=Avanzato diff --git a/lang/app/strings/translations_ja.properties b/lang/app/strings/translations_ja.properties index 47f0eec00..0c190e063 100644 --- a/lang/app/strings/translations_ja.properties +++ b/lang/app/strings/translations_ja.properties @@ -280,7 +280,6 @@ openDataDir=保管庫データディレクトリ openDataDirButton=オープンデータディレクトリ openDataDirDescription=SSH キーなどの追加ファイルを git リポジトリとシステム間で同期させたい場合は、storage data ディレクトリに置くことができる。そこで参照されるファイルは、同期されたシステムで自動的にファイルパスが適応される。 updates=更新情報 -passwordKey=パスワードキー selectAll=すべて選択する command=コマンド advanced=高度な diff --git a/lang/app/strings/translations_nl.properties b/lang/app/strings/translations_nl.properties index 12610eeb9..bbee0ff8d 100644 --- a/lang/app/strings/translations_nl.properties +++ b/lang/app/strings/translations_nl.properties @@ -280,7 +280,6 @@ openDataDir=Kluisgegevensmap openDataDirButton=Open gegevensmap openDataDirDescription=Als je aanvullende bestanden, zoals SSH sleutels, wilt synchroniseren tussen systemen met je git repository, dan kun je ze in de storage data directory zetten. Van alle bestanden waarnaar daar verwezen wordt, worden de bestandspaden automatisch aangepast op elk gesynchroniseerd systeem. updates=Updates -passwordKey=Wachtwoord sleutel selectAll=Alles selecteren command=Opdracht advanced=Geavanceerd diff --git a/lang/app/strings/translations_pt.properties b/lang/app/strings/translations_pt.properties index 5fffcd940..c18853660 100644 --- a/lang/app/strings/translations_pt.properties +++ b/lang/app/strings/translations_pt.properties @@ -280,7 +280,6 @@ openDataDir=Diretório de dados da abóbada openDataDirButton=Abre o diretório de dados openDataDirDescription=Se quiseres sincronizar ficheiros adicionais, como chaves SSH, entre sistemas com o teu repositório git, podes colocá-los no diretório de dados de armazenamento. Quaisquer ficheiros aí referenciados terão os seus caminhos de ficheiro automaticamente adaptados em qualquer sistema sincronizado. updates=Actualiza -passwordKey=Chave de palavra-passe selectAll=Selecciona tudo command=Comanda advanced=Avançado diff --git a/lang/app/strings/translations_ru.properties b/lang/app/strings/translations_ru.properties index 87aeb8994..53f17db52 100644 --- a/lang/app/strings/translations_ru.properties +++ b/lang/app/strings/translations_ru.properties @@ -280,7 +280,6 @@ openDataDir=Каталог данных хранилища openDataDirButton=Открытый каталог данных openDataDirDescription=Если ты хочешь синхронизировать дополнительные файлы, например SSH-ключи, между системами с твоим git-репозиторием, ты можешь поместить их в каталог данных хранилища. У любых файлов, на которые там ссылаются, пути к файлам будут автоматически адаптированы на любой синхронизированной системе. updates=Обновления -passwordKey=Ключ пароля selectAll=Выберите все command=Команда advanced=Продвинутый diff --git a/lang/app/strings/translations_tr.properties b/lang/app/strings/translations_tr.properties index df4fd6958..6ecb36e05 100644 --- a/lang/app/strings/translations_tr.properties +++ b/lang/app/strings/translations_tr.properties @@ -280,7 +280,6 @@ openDataDir=Kasa veri dizini openDataDirButton=Açık veri dizini openDataDirDescription=SSH anahtarları gibi ek dosyaları git deponuzla sistemler arasında senkronize etmek istiyorsanız, bunları depolama veri dizinine koyabilirsiniz. Burada referans verilen tüm dosyaların dosya yolları, senkronize edilen herhangi bir sistemde otomatik olarak uyarlanacaktır. updates=Güncellemeler -passwordKey=Şifre anahtarı selectAll=Tümünü seçin command=Komuta advanced=Gelişmiş diff --git a/lang/app/strings/translations_zh.properties b/lang/app/strings/translations_zh.properties index 42c485d6e..2e8db629c 100644 --- a/lang/app/strings/translations_zh.properties +++ b/lang/app/strings/translations_zh.properties @@ -280,7 +280,6 @@ openDataDir=保险库数据目录 openDataDirButton=开放数据目录 openDataDirDescription=如果你想同步其他文件,比如 SSH 密钥,可以把它们放到存储数据目录中。任何在该目录中引用的文件,其文件路径都会在任何同步的系统上自动调整。 updates=更新 -passwordKey=密码匙 selectAll=全部选择 command=指令 advanced=高级 diff --git a/lang/proc/strings/translations_da.properties b/lang/proc/strings/translations_da.properties index bd363ea3a..5310c9ed3 100644 --- a/lang/proc/strings/translations_da.properties +++ b/lang/proc/strings/translations_da.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=RDP fjernprogram rdpSetupAllowHeader=Direkte start af fjernprogrammer er i øjeblikket ikke tilladt på dette system. Ønsker du at aktivere det? rdpSetupAllowContent=Dette vil give dig mulighed for at køre dine fjernprogrammer direkte fra XPipe ved at deaktivere tilladelseslisten for RDP-fjernprogrammer. rdp=RDP +wslX11SetupTitle=WSL X11-opsætning +wslX11SetupHeader=XPipe kan bruge din lokale WSL-distribution til at fungere som en X11-skærmserver. Vil du gerne sætte X11 op på $DIST$? +wslX11SetupContent=Dette vil installere de grundlæggende X11-pakker på WSL-distributionen og kan tage et stykke tid. Du kan også ændre, hvilken distribution der bruges, i indstillingsmenuen. diff --git a/lang/proc/strings/translations_de.properties b/lang/proc/strings/translations_de.properties index 439abb97c..7f050f328 100644 --- a/lang/proc/strings/translations_de.properties +++ b/lang/proc/strings/translations_de.properties @@ -310,3 +310,6 @@ rdpSetupAllowTitle=RDP-Fernanwendung rdpSetupAllowHeader=Das direkte Starten von Remote-Anwendungen ist auf diesem System derzeit nicht erlaubt. Willst du das aktivieren? rdpSetupAllowContent=So kannst du deine Fernanwendungen direkt von XPipe aus starten, indem du die Zulassungsliste für RDP-Fernanwendungen deaktivierst. rdp=RDP +wslX11SetupTitle=WSL X11-Einrichtung +wslX11SetupHeader=XPipe kann deine lokale WSL-Distribution nutzen, um als X11-Anzeigeserver zu fungieren. Möchtest du X11 auf $DIST$ einrichten? +wslX11SetupContent=Dies installiert die grundlegenden X11-Pakete auf der WSL-Distribution und kann eine Weile dauern. Du kannst auch im Einstellungsmenü ändern, welche Distribution verwendet wird. diff --git a/lang/proc/strings/translations_en.properties b/lang/proc/strings/translations_en.properties index 986a2e0e2..f49a99518 100644 --- a/lang/proc/strings/translations_en.properties +++ b/lang/proc/strings/translations_en.properties @@ -309,3 +309,6 @@ rdpSetupAllowTitle=RDP remote application rdpSetupAllowHeader=Starting remote applications directly is currently not allowed on this system. Do you want to enable it? rdpSetupAllowContent=This will allow you to run your remote applications directly from XPipe by disabling the allow list for RDP remote applications. rdp=RDP +wslX11SetupTitle=WSL X11 setup +wslX11SetupHeader=XPipe can use your local WSL distribution to act as an X11 display server. Would you like to set up X11 on $DIST$? +wslX11SetupContent=This will install the basic X11 packages on the WSL distribution and may take a while. You can also change which distribution is used in the settings menu. diff --git a/lang/proc/strings/translations_es.properties b/lang/proc/strings/translations_es.properties index 03196efad..eba7ac08e 100644 --- a/lang/proc/strings/translations_es.properties +++ b/lang/proc/strings/translations_es.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=Aplicación remota RDP rdpSetupAllowHeader=Iniciar aplicaciones remotas directamente no está permitido actualmente en este sistema. ¿Quieres activarlo? rdpSetupAllowContent=Esto te permitirá ejecutar tus aplicaciones remotas directamente desde XPipe, desactivando la lista de permitidos para aplicaciones remotas RDP. rdp=RDP +wslX11SetupTitle=Configuración WSL X11 +wslX11SetupHeader=XPipe puede utilizar tu distribución local WSL para actuar como servidor de visualización X11. ¿Quieres configurar X11 en $DIST$? +wslX11SetupContent=Esto instalará los paquetes X11 básicos en la distribución WSL y puede tardar un rato. También puedes cambiar qué distribución se utiliza en el menú de configuración. diff --git a/lang/proc/strings/translations_fr.properties b/lang/proc/strings/translations_fr.properties index e4d2a30ee..89ad9fd94 100644 --- a/lang/proc/strings/translations_fr.properties +++ b/lang/proc/strings/translations_fr.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=Application à distance RDP rdpSetupAllowHeader=Lancer directement des applications à distance n'est actuellement pas autorisé sur ce système. Veux-tu l'autoriser ? rdpSetupAllowContent=Cela te permettra d'exécuter tes applications distantes directement à partir de XPipe en désactivant la liste d'autorisation pour les applications distantes RDP. rdp=RDP +wslX11SetupTitle=Configuration WSL X11 +wslX11SetupHeader=XPipe peut utiliser ta distribution WSL locale pour agir en tant que serveur d'affichage X11. Veux-tu installer X11 sur $DIST$? +wslX11SetupContent=Cela installera les paquets X11 de base sur la distribution WSL et peut prendre un certain temps. Tu peux aussi changer la distribution utilisée dans le menu des paramètres. diff --git a/lang/proc/strings/translations_it.properties b/lang/proc/strings/translations_it.properties index 258dddb5b..c925d4c96 100644 --- a/lang/proc/strings/translations_it.properties +++ b/lang/proc/strings/translations_it.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=Applicazione remota RDP rdpSetupAllowHeader=L'avvio diretto di applicazioni remote non è attualmente consentito su questo sistema. Vuoi abilitarlo? rdpSetupAllowContent=In questo modo potrai eseguire le tue applicazioni remote direttamente da XPipe, disabilitando l'elenco dei permessi per le applicazioni remote RDP. rdp=RDP +wslX11SetupTitle=Configurazione WSL X11 +wslX11SetupHeader=XPipe può utilizzare la tua distribuzione WSL locale per agire come server di visualizzazione X11. Vuoi configurare X11 su $DIST$? +wslX11SetupContent=Questa operazione installerà i pacchetti X11 di base sulla distribuzione WSL e potrebbe richiedere un po' di tempo. Puoi anche cambiare la distribuzione utilizzata nel menu delle impostazioni. diff --git a/lang/proc/strings/translations_ja.properties b/lang/proc/strings/translations_ja.properties index 4765bf405..9aebdfd23 100644 --- a/lang/proc/strings/translations_ja.properties +++ b/lang/proc/strings/translations_ja.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=RDPリモートアプリケーション rdpSetupAllowHeader=現在このシステムでは、リモートアプリケーションを直接起動することは許可されていない。有効にするか? rdpSetupAllowContent=RDPリモートアプリケーションの許可リストを無効にすることで、XPipeからリモートアプリケーションを直接実行できるようになる。 rdp=RDP +wslX11SetupTitle=WSL X11のセットアップ +wslX11SetupHeader=XPipeは、ローカルのWSLディストリビューションをX11ディスプレイサーバーとして使用することができる。$DIST$ 、X11をセットアップしてみる? +wslX11SetupContent=WSLディストリビューションに基本的なX11パッケージがインストールされるので、時間がかかるかもしれない。どのディストリビューションを使用するかは、設定メニューで変更することもできる。 diff --git a/lang/proc/strings/translations_nl.properties b/lang/proc/strings/translations_nl.properties index f00c8d11e..181dde14b 100644 --- a/lang/proc/strings/translations_nl.properties +++ b/lang/proc/strings/translations_nl.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=RDP-toepassing op afstand rdpSetupAllowHeader=Externe toepassingen rechtstreeks starten is momenteel niet toegestaan op dit systeem. Wil je dit inschakelen? rdpSetupAllowContent=Hierdoor kun je je externe toepassingen rechtstreeks vanuit XPipe uitvoeren door de toestaanlijst voor RDP-toepassingen op afstand uit te schakelen. rdp=RDP +wslX11SetupTitle=WSL X11 instelling +wslX11SetupHeader=XPipe kan je lokale WSL distributie gebruiken om als X11 weergaveserver te fungeren. Wil je X11 instellen op $DIST$? +wslX11SetupContent=Dit installeert de basis X11 pakketten op de WSL distributie en kan even duren. Je kunt ook in het instellingenmenu wijzigen welke distributie wordt gebruikt. diff --git a/lang/proc/strings/translations_pt.properties b/lang/proc/strings/translations_pt.properties index dfd1ac168..e6940921b 100644 --- a/lang/proc/strings/translations_pt.properties +++ b/lang/proc/strings/translations_pt.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=Aplicação remota RDP rdpSetupAllowHeader=Iniciar aplicações remotas diretamente não é atualmente permitido neste sistema. Queres activá-la? rdpSetupAllowContent=Isto permitir-te-á executar as tuas aplicações remotas diretamente a partir do XPipe, desactivando a lista de permissões para aplicações remotas RDP. rdp=RDP +wslX11SetupTitle=Configuração do WSL X11 +wslX11SetupHeader=O XPipe pode utilizar a tua distribuição WSL local para atuar como um servidor de visualização X11. Gostarias de configurar o X11 em $DIST$? +wslX11SetupContent=Isto irá instalar os pacotes básicos do X11 na distribuição WSL e pode demorar um pouco. Podes também alterar a distribuição que é usada no menu de definições. diff --git a/lang/proc/strings/translations_ru.properties b/lang/proc/strings/translations_ru.properties index 3b1307a4d..23b4ed8e1 100644 --- a/lang/proc/strings/translations_ru.properties +++ b/lang/proc/strings/translations_ru.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=Удаленное приложение RDP rdpSetupAllowHeader=Запуск удаленных приложений напрямую в настоящее время запрещен в этой системе. Ты хочешь разрешить его? rdpSetupAllowContent=Это позволит тебе запускать удаленные приложения прямо из XPipe, отключив список разрешений для удаленных приложений RDP. rdp=RDP +wslX11SetupTitle=Настройка WSL X11 +wslX11SetupHeader=XPipe может использовать твой локальный дистрибутив WSL для работы в качестве сервера отображения X11. Хочешь настроить X11 на $DIST$? +wslX11SetupContent=Это приведет к установке основных пакетов X11 на дистрибутив WSL и может занять некоторое время. Ты также можешь изменить, какой дистрибутив используется, в меню настроек. diff --git a/lang/proc/strings/translations_tr.properties b/lang/proc/strings/translations_tr.properties index ae5fc4541..55778ffcf 100644 --- a/lang/proc/strings/translations_tr.properties +++ b/lang/proc/strings/translations_tr.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=RDP uzak uygulama rdpSetupAllowHeader=Uzak uygulamaların doğrudan başlatılmasına şu anda bu sistemde izin verilmemektedir. Etkinleştirmek istiyor musunuz? rdpSetupAllowContent=Bu, RDP uzak uygulamaları için izin listesini devre dışı bırakarak uzak uygulamalarınızı doğrudan XPipe'dan çalıştırmanıza olanak tanır. rdp=RDP +wslX11SetupTitle=WSL X11 kurulumu +wslX11SetupHeader=XPipe, yerel WSL dağıtımınızı bir X11 görüntü sunucusu olarak kullanabilir. $DIST$ adresinde X11 kurmak ister misiniz? +wslX11SetupContent=Bu işlem WSL dağıtımına temel X11 paketlerini yükleyecektir ve biraz zaman alabilir. Hangi dağıtımın kullanılacağını ayarlar menüsünden de değiştirebilirsiniz. diff --git a/lang/proc/strings/translations_zh.properties b/lang/proc/strings/translations_zh.properties index b1fa60e36..ea7ba0d3c 100644 --- a/lang/proc/strings/translations_zh.properties +++ b/lang/proc/strings/translations_zh.properties @@ -307,3 +307,6 @@ rdpSetupAllowTitle=RDP 远程应用程序 rdpSetupAllowHeader=本系统目前不允许直接启动远程应用程序。您想启用它吗? rdpSetupAllowContent=通过禁用 RDP 远程应用程序的允许列表,您可以直接从 XPipe 运行远程应用程序。 rdp=RDP +wslX11SetupTitle=WSL X11 设置 +wslX11SetupHeader=XPipe 可以使用本地 WSL 发布作为 X11 显示服务器。您想在$DIST$ 上设置 X11 吗? +wslX11SetupContent=这将在 WSL 发行版上安装基本的 X11 软件包,可能需要一些时间。你也可以在设置菜单中更改使用哪个发行版。