This commit is contained in:
crschnick
2026-06-29 06:33:27 +00:00
parent c08f53e3ab
commit 4e88500b6f
5 changed files with 37 additions and 7 deletions
@@ -14,6 +14,7 @@ import io.xpipe.app.platform.PlatformThread;
import io.xpipe.app.prefs.AppPrefs;
import io.xpipe.app.prefs.AppPrefsComp;
import io.xpipe.app.storage.DataStorage;
import io.xpipe.app.storage.DataStoreEntry;
import io.xpipe.app.terminal.TerminalDockHubManager;
import io.xpipe.app.update.AppDistributionType;
import io.xpipe.app.util.*;
@@ -242,6 +243,15 @@ public class AppLayoutModel {
null,
() -> WebtopAppListDialog.show(List.of()),
null));
l.add(
new Entry(
AppI18n.observable("webtopMobileConnect"),
new LabelGraphic.IconGraphic("mdi2a-archive-sync-outline"),
null,
() -> {
ProcessControlProvider.get().showLocalWebtopMobileConnectDialog();
},
null));
}
l.add(new Entry(
@@ -93,5 +93,7 @@ public abstract class ProcessControlProvider {
public abstract void showWebtopDeploymentDialog();
public abstract void showLocalWebtopMobileConnectDialog();
public abstract void importRdpFile(Path file) throws Exception;
}
@@ -48,8 +48,15 @@ public class StoreQuickConnect {
return false;
}
var newStore = provider.get().createStore(arguments, quickConnectStore);
if (newStore == null) {
DataStore newStore;
try {
newStore = provider.get().createStore(arguments, quickConnectStore);
if (newStore == null) {
return false;
}
} catch (Exception e) {
ErrorEventFactory.fromThrowable(e).expected().handle();
return false;
}
@@ -23,10 +23,7 @@ import lombok.Value;
import lombok.extern.jackson.Jacksonized;
import java.io.IOException;
import java.nio.file.FileVisitResult;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.SimpleFileVisitor;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.ArrayList;
import java.util.List;
@@ -76,7 +73,11 @@ public interface ScriptCollectionSource {
public void checkComplete() throws ValidationException {
Validators.nonNull(path);
// Check if path is invalid
path.toLocalAbsoluteFilePath().asLocalPath();
try {
path.toLocalAbsoluteFilePath().asLocalPath();
} catch (InvalidPathException e) {
throw new ValidationException(e.getMessage());
}
}
@Override
+10
View File
@@ -2332,3 +2332,13 @@ remminaRdpArguments=Additional options
remminaRdpArgumentsDescription=Add custom .remmina file options to be included when launching, each line represents one option
remminaVncArguments=Additional options
remminaVncArgumentsDescription=Add custom .remmina file options to be included when launching, each line represents one option
webtopMobileConnect=Mobile connect
webtopMobileConnectTitle=Secure mobile connect
webtopConnectHostConfiguration=Target host
webtopConnectHostConfigurationDescription=The externally reachable hostname/IP and the webtop container SSH port
direct=Direct
keyAuth=SSH key authentication
webtopConnectTailscaleDeviceName=Tailscale device name
webtopConnectTailscaleDeviceNameDescription=abc
webtopConnectAuth=Authentication
webtopConnectAuthDescription=The SSH authentication method to connect to the webtop remotely