diff --git a/app/src/main/java/io/xpipe/app/comp/base/ContextualFileReferenceChoiceComp.java b/app/src/main/java/io/xpipe/app/comp/base/ContextualFileReferenceChoiceComp.java index 2f99df2fa..1ffb40c66 100644 --- a/app/src/main/java/io/xpipe/app/comp/base/ContextualFileReferenceChoiceComp.java +++ b/app/src/main/java/io/xpipe/app/comp/base/ContextualFileReferenceChoiceComp.java @@ -81,7 +81,7 @@ public class ContextualFileReferenceChoiceComp extends Comp> var gitShareButton = new ButtonComp(null, new FontIcon("mdi2g-git"), () -> { if (!AppPrefs.get().enableGitStorage().get()) { AppLayoutModel.get().selectSettings(); - AppPrefs.get().selectCategory("sync"); + AppPrefs.get().selectCategory("vaultSync"); return; } diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreIdentitiesIntroComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreIdentitiesIntroComp.java index 9837129af..40cfeeb3e 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreIdentitiesIntroComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreIdentitiesIntroComp.java @@ -86,7 +86,7 @@ public class StoreIdentitiesIntroComp extends SimpleComp { var syncButton = new Button(null, new FontIcon("mdi2p-play-circle")); syncButton.textProperty().bind(AppI18n.observable("setupSync")); syncButton.setOnAction(event -> { - AppPrefs.get().selectCategory("sync"); + AppPrefs.get().selectCategory("vaultSync"); event.consume(); }); diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java index 6105102b8..4be21fd18 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreIntroComp.java @@ -78,7 +78,7 @@ public class StoreIntroComp extends SimpleComp { var importButton = new Button(null, new FontIcon("mdi2g-git")); importButton.textProperty().bind(AppI18n.observable("importConnections")); - importButton.setOnAction(event -> AppPrefs.get().selectCategory("sync")); + importButton.setOnAction(event -> AppPrefs.get().selectCategory("vaultSync")); var importPane = new StackPane(importButton); importPane.setAlignment(Pos.CENTER); diff --git a/app/src/main/java/io/xpipe/app/ext/ConnectionFileSystem.java b/app/src/main/java/io/xpipe/app/ext/ConnectionFileSystem.java index 14d3f23d5..7ab21fdfd 100644 --- a/app/src/main/java/io/xpipe/app/ext/ConnectionFileSystem.java +++ b/app/src/main/java/io/xpipe/app/ext/ConnectionFileSystem.java @@ -45,13 +45,17 @@ public class ConnectionFileSystem implements FileSystem { var d = shellControl.getShellDialect().getDumbMode(); if (!d.supportsAnyPossibleInteraction()) { shellControl.close(); - d.throwIfUnsupported(); + try { + d.throwIfUnsupported(); + } catch (Exception e) { + throw ErrorEvent.expected(e); + } } if (!shellControl.getTtyState().isPreservesOutput() || !shellControl.getTtyState().isSupportsInput()) { - throw new UnsupportedOperationException( - "Shell has a PTY allocated and as a result does not support file system operations. For more information see " + Hyperlinks.DOCS_TTY); + throw ErrorEvent.expected(new UnsupportedOperationException( + "Shell has a PTY allocated and as a result does not support file system operations. For more information see " + Hyperlinks.DOCS_TTY)); } shellControl.checkLicenseOrThrow(); diff --git a/app/src/main/java/io/xpipe/app/prefs/AppPrefs.java b/app/src/main/java/io/xpipe/app/prefs/AppPrefs.java index ec356ce89..6bf20807f 100644 --- a/app/src/main/java/io/xpipe/app/prefs/AppPrefs.java +++ b/app/src/main/java/io/xpipe/app/prefs/AppPrefs.java @@ -249,8 +249,8 @@ public class AppPrefs { new AboutCategory(), new SystemCategory(), new AppearanceCategory(), - new SyncCategory(), new VaultCategory(), + new SyncCategory(), new TerminalCategory(), new EditorCategory(), new RdpCategory(), diff --git a/app/src/main/java/io/xpipe/app/prefs/SyncCategory.java b/app/src/main/java/io/xpipe/app/prefs/SyncCategory.java index 750657b0b..495824152 100644 --- a/app/src/main/java/io/xpipe/app/prefs/SyncCategory.java +++ b/app/src/main/java/io/xpipe/app/prefs/SyncCategory.java @@ -24,7 +24,7 @@ public class SyncCategory extends AppPrefsCategory { @Override protected String getId() { - return "sync"; + return "vaultSync"; } private static void showHelpAlert() { diff --git a/app/src/main/java/io/xpipe/app/prefs/VaultCategory.java b/app/src/main/java/io/xpipe/app/prefs/VaultCategory.java index b2bf4231d..3aab279e3 100644 --- a/app/src/main/java/io/xpipe/app/prefs/VaultCategory.java +++ b/app/src/main/java/io/xpipe/app/prefs/VaultCategory.java @@ -74,7 +74,7 @@ public class VaultCategory extends AppPrefsCategory { .hide(new SimpleBooleanProperty(uh.getUserCount() > 1)) .nameAndDescription("syncTeamVaults") .addComp(new ButtonComp(AppI18n.observable("enableGitSync"), () -> AppPrefs.get() - .selectCategory("sync"))) + .selectCategory("vaultSync"))) .licenseRequirement("team") .disable(!LicenseProvider.get().getFeature("team").isSupported()) .hide(new SimpleBooleanProperty( diff --git a/lang/strings/translations_da.properties b/lang/strings/translations_da.properties index cd00d73e3..a7bb25dab 100644 --- a/lang/strings/translations_da.properties +++ b/lang/strings/translations_da.properties @@ -782,6 +782,7 @@ sshAgent=SSH-agent none=Intet otherExternal=Anden ekstern kilde sync=Synkronisering +vaultSync=Vault-synkronisering customUsername=Brugernavn customUsernameDescription=Den valgfrie alternative bruger til at logge ind som customUsernamePassword=Adgangskode diff --git a/lang/strings/translations_de.properties b/lang/strings/translations_de.properties index 1fa4b03e0..87a96b5e9 100644 --- a/lang/strings/translations_de.properties +++ b/lang/strings/translations_de.properties @@ -787,6 +787,7 @@ sshAgent=SSH-Agent none=Nichts otherExternal=Andere externe Quelle sync=Sync +vaultSync=Tresor-Synchronisation customUsername=Benutzername customUsernameDescription=Der optionale alternative Benutzer, als der man sich anmeldet customUsernamePassword=Passwort diff --git a/lang/strings/translations_en.properties b/lang/strings/translations_en.properties index f8d0be3fe..d42841269 100644 --- a/lang/strings/translations_en.properties +++ b/lang/strings/translations_en.properties @@ -797,6 +797,7 @@ sshAgent=SSH-Agent none=None otherExternal=Other external source sync=Sync +vaultSync=Vault sync customUsername=Username customUsernameDescription=The optional alternate user to log in as customUsernamePassword=Password diff --git a/lang/strings/translations_es.properties b/lang/strings/translations_es.properties index e0c8a96b7..582938148 100644 --- a/lang/strings/translations_es.properties +++ b/lang/strings/translations_es.properties @@ -760,6 +760,7 @@ sshAgent=Agente SSH none=Ninguno otherExternal=Otra fuente externa sync=Sincroniza +vaultSync=Sincronización de bóvedas customUsername=Nombre de usuario customUsernameDescription=El usuario alternativo opcional con el que iniciar sesión customUsernamePassword=Contraseña diff --git a/lang/strings/translations_fr.properties b/lang/strings/translations_fr.properties index 6b2339b7e..b8fdc2863 100644 --- a/lang/strings/translations_fr.properties +++ b/lang/strings/translations_fr.properties @@ -781,6 +781,7 @@ sshAgent=Agent SSH none=Aucun otherExternal=Autre source externe sync=Sync +vaultSync=Synchronisation du coffre-fort customUsername=Nom d'utilisateur customUsernameDescription=L'autre utilisateur facultatif pour se connecter en tant que customUsernamePassword=Mot de passe diff --git a/lang/strings/translations_id.properties b/lang/strings/translations_id.properties index 1af67e0ae..23268ed1a 100644 --- a/lang/strings/translations_id.properties +++ b/lang/strings/translations_id.properties @@ -760,6 +760,7 @@ sshAgent=Agen SSH none=Tidak ada otherExternal=Sumber eksternal lainnya sync=Sinkronisasi +vaultSync=Sinkronisasi lemari besi customUsername=Nama pengguna customUsernameDescription=Pengguna alternatif opsional untuk masuk sebagai customUsernamePassword=Kata sandi diff --git a/lang/strings/translations_it.properties b/lang/strings/translations_it.properties index 03e5b6636..f13f7795a 100644 --- a/lang/strings/translations_it.properties +++ b/lang/strings/translations_it.properties @@ -760,6 +760,7 @@ sshAgent=Agente SSH none=Non c'è niente otherExternal=Altra fonte esterna sync=Sincronizzazione +vaultSync=Sincronizzazione del vault customUsername=Nome utente customUsernameDescription=L'utente alternativo opzionale come cui accedere customUsernamePassword=Password diff --git a/lang/strings/translations_ja.properties b/lang/strings/translations_ja.properties index 426371cc1..d48737d69 100644 --- a/lang/strings/translations_ja.properties +++ b/lang/strings/translations_ja.properties @@ -760,6 +760,7 @@ sshAgent=SSHエージェント none=なし otherExternal=その他の外部ソース sync=同期 +vaultSync=ボールト同期 customUsername=ユーザー名 customUsernameDescription=ログインする代替ユーザー customUsernamePassword=パスワード diff --git a/lang/strings/translations_nl.properties b/lang/strings/translations_nl.properties index 5ef4fcf8e..63cad564a 100644 --- a/lang/strings/translations_nl.properties +++ b/lang/strings/translations_nl.properties @@ -760,6 +760,7 @@ sshAgent=SSH-agent none=Geen otherExternal=Andere externe bron sync=Synchroniseren +vaultSync=Kluis sync customUsername=Gebruikersnaam customUsernameDescription=De optionele alternatieve gebruiker om als in te loggen customUsernamePassword=Wachtwoord diff --git a/lang/strings/translations_pl.properties b/lang/strings/translations_pl.properties index d45344fb0..b520bab55 100644 --- a/lang/strings/translations_pl.properties +++ b/lang/strings/translations_pl.properties @@ -760,6 +760,7 @@ sshAgent=SSH-Agent none=Brak otherExternal=Inne źródło zewnętrzne sync=Synchronizacja +vaultSync=Synchronizacja skarbca customUsername=Nazwa użytkownika customUsernameDescription=Opcjonalny alternatywny użytkownik do zalogowania się jako customUsernamePassword=Hasło diff --git a/lang/strings/translations_pt.properties b/lang/strings/translations_pt.properties index e6071c0cd..ccb3e71d5 100644 --- a/lang/strings/translations_pt.properties +++ b/lang/strings/translations_pt.properties @@ -760,6 +760,7 @@ sshAgent=Agente SSH none=Nenhum otherExternal=Outra fonte externa sync=Sincroniza +vaultSync=Sincronização de cofre customUsername=Nome de utilizador customUsernameDescription=O utilizador alternativo opcional para iniciar sessão como customUsernamePassword=Palavra-passe diff --git a/lang/strings/translations_ru.properties b/lang/strings/translations_ru.properties index 88a05e20c..83d85a742 100644 --- a/lang/strings/translations_ru.properties +++ b/lang/strings/translations_ru.properties @@ -760,6 +760,7 @@ sshAgent=SSH-агент none=None otherExternal=Другой внешний источник sync=Синхронизация +vaultSync=Синхронизация хранилища customUsername=Имя пользователя customUsernameDescription=Дополнительный альтернативный пользователь, под которым можно войти в систему customUsernamePassword=Пароль diff --git a/lang/strings/translations_sv.properties b/lang/strings/translations_sv.properties index 796e8093f..c7e6e4fc5 100644 --- a/lang/strings/translations_sv.properties +++ b/lang/strings/translations_sv.properties @@ -760,6 +760,7 @@ sshAgent=SSH-Agent none=Inget otherExternal=Annan extern källa sync=Synka +vaultSync=Synkronisering av valv customUsername=Användarnamn customUsernameDescription=Den valfria alternativa användaren att logga in som customUsernamePassword=Lösenord diff --git a/lang/strings/translations_tr.properties b/lang/strings/translations_tr.properties index 373121b92..2eeade2b5 100644 --- a/lang/strings/translations_tr.properties +++ b/lang/strings/translations_tr.properties @@ -760,6 +760,7 @@ sshAgent=SSH-Agent none=Hiçbiri otherExternal=Diğer dış kaynaklar sync=Senkronizasyon +vaultSync=Kasa senkronizasyonu customUsername=Kullanıcı Adı customUsernameDescription=Oturum açmak için isteğe bağlı alternatif kullanıcı customUsernamePassword=Şifre diff --git a/lang/strings/translations_zh.properties b/lang/strings/translations_zh.properties index b893c1018..8f8e4004c 100644 --- a/lang/strings/translations_zh.properties +++ b/lang/strings/translations_zh.properties @@ -762,6 +762,7 @@ sshAgent=SSH 代理 none=无 otherExternal=其他外部来源 sync=同步 +vaultSync=保险库同步 customUsername=用户名 customUsernameDescription=用于登录的可选备用用户 customUsernamePassword=密码