Cleanup
@@ -1,12 +1,8 @@
|
||||
package io.xpipe.app.action;
|
||||
|
||||
import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.ext.DataStoreProvider;
|
||||
import io.xpipe.app.ext.DataStoreProviders;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreEntry;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
|
||||
@@ -2,7 +2,6 @@ package io.xpipe.app.beacon;
|
||||
|
||||
import io.xpipe.app.beacon.mcp.AppMcpServer;
|
||||
import io.xpipe.app.core.AppLocalTemp;
|
||||
import io.xpipe.app.core.AppProperties;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.issue.TrackEvent;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
|
||||
@@ -22,7 +22,6 @@ import javafx.scene.input.KeyEvent;
|
||||
import javafx.scene.layout.BorderPane;
|
||||
import javafx.scene.layout.Region;
|
||||
import javafx.scene.layout.StackPane;
|
||||
import org.bouncycastle.math.raw.Mod;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -27,7 +27,6 @@ import javafx.scene.control.ListCell;
|
||||
import javafx.scene.layout.HBox;
|
||||
import javafx.scene.layout.Priority;
|
||||
|
||||
import lombok.NonNull;
|
||||
import lombok.Setter;
|
||||
import lombok.Value;
|
||||
import org.kordamp.ikonli.javafx.FontIcon;
|
||||
|
||||
@@ -2,7 +2,6 @@ package io.xpipe.app.comp.base;
|
||||
|
||||
import io.xpipe.app.comp.BaseRegionBuilder;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
import io.xpipe.app.issue.TrackEvent;
|
||||
import io.xpipe.app.platform.PlatformThread;
|
||||
|
||||
import javafx.application.Platform;
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package io.xpipe.app.core;
|
||||
|
||||
import io.xpipe.app.action.AbstractAction;
|
||||
import io.xpipe.app.action.ActionProvider;
|
||||
import io.xpipe.app.action.LauncherUrlProvider;
|
||||
import io.xpipe.app.browser.action.impl.OpenDirectoryActionProvider;
|
||||
import io.xpipe.app.core.mode.AppOperationMode;
|
||||
@@ -86,7 +85,7 @@ public class AppOpenArguments {
|
||||
if (found.isPresent()) {
|
||||
AbstractAction a;
|
||||
try {
|
||||
a = ((LauncherUrlProvider) found.get()).createAction(uri);
|
||||
a = found.get().createAction(uri);
|
||||
} catch (Exception e) {
|
||||
ErrorEventFactory.fromThrowable(e).omit().expected().handle();
|
||||
return List.of();
|
||||
|
||||
@@ -9,10 +9,6 @@ import io.xpipe.app.platform.PlatformThread;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.core.OsType;
|
||||
|
||||
import javafx.animation.Interpolator;
|
||||
import javafx.animation.KeyFrame;
|
||||
import javafx.animation.KeyValue;
|
||||
import javafx.animation.Timeline;
|
||||
import javafx.application.Application;
|
||||
import javafx.application.ColorScheme;
|
||||
import javafx.application.Platform;
|
||||
@@ -21,12 +17,8 @@ import javafx.beans.value.ObservableValue;
|
||||
import javafx.collections.MapChangeListener;
|
||||
import javafx.css.PseudoClass;
|
||||
import javafx.scene.Node;
|
||||
import javafx.scene.image.Image;
|
||||
import javafx.scene.image.ImageView;
|
||||
import javafx.scene.layout.Pane;
|
||||
import javafx.scene.paint.Color;
|
||||
import javafx.stage.Stage;
|
||||
import javafx.util.Duration;
|
||||
|
||||
import atlantafx.base.theme.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
@@ -4,7 +4,6 @@ import io.xpipe.app.comp.base.TextFieldComp;
|
||||
import io.xpipe.app.core.AppSystemInfo;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.process.CommandBuilder;
|
||||
import io.xpipe.app.process.LocalShell;
|
||||
import io.xpipe.app.process.ShellControl;
|
||||
import io.xpipe.app.util.LicenseProvider;
|
||||
import io.xpipe.core.FilePath;
|
||||
|
||||
@@ -56,7 +56,7 @@ public class OtherExternalAgentStrategy implements SshIdentityAgentStrategy {
|
||||
}
|
||||
|
||||
@Override
|
||||
public FilePath determinetAgentSocketLocation(ShellControl parent) throws Exception {
|
||||
public FilePath determinetAgentSocketLocation(ShellControl parent) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.process.CommandBuilder;
|
||||
import io.xpipe.app.process.LocalShell;
|
||||
import io.xpipe.app.process.ShellControl;
|
||||
import io.xpipe.app.util.LocalExec;
|
||||
import io.xpipe.core.FilePath;
|
||||
@@ -96,7 +95,7 @@ public class PageantStrategy implements SshIdentityAgentStrategy {
|
||||
}
|
||||
|
||||
@Override
|
||||
public FilePath determinetAgentSocketLocation(ShellControl sc) throws Exception {
|
||||
public FilePath determinetAgentSocketLocation(ShellControl sc) {
|
||||
if (sc.isLocal() && sc.getOsType() == OsType.WINDOWS) {
|
||||
return FilePath.of(getPageantWindowsPipe());
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ import io.xpipe.app.comp.base.LabelComp;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.ext.ValidationException;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.platform.Validator;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.process.CommandBuilder;
|
||||
import io.xpipe.app.process.ShellControl;
|
||||
@@ -18,8 +17,6 @@ import io.xpipe.core.FilePath;
|
||||
import io.xpipe.core.KeyValue;
|
||||
import javafx.beans.binding.Bindings;
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.ReadOnlyBooleanWrapper;
|
||||
import javafx.beans.property.SimpleBooleanProperty;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.geometry.Insets;
|
||||
import javafx.geometry.Pos;
|
||||
@@ -113,7 +110,7 @@ public class PasswordManagerAgentStrategy implements SshIdentityAgentStrategy {
|
||||
}
|
||||
|
||||
@Override
|
||||
public FilePath determinetAgentSocketLocation(ShellControl parent) throws Exception {
|
||||
public FilePath determinetAgentSocketLocation(ShellControl parent) {
|
||||
var config = getConfig();
|
||||
return config != null ? FilePath.of(config.getDefaultSocketLocation()) : null;
|
||||
}
|
||||
|
||||
@@ -3,15 +3,11 @@ package io.xpipe.app.cred;
|
||||
import io.xpipe.app.ext.ShellStore;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.process.CommandBuilder;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
import lombok.Value;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Pattern;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@ import atlantafx.base.controls.Popover;
|
||||
import atlantafx.base.theme.Styles;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
import io.xpipe.app.comp.base.ButtonComp;
|
||||
import io.xpipe.app.comp.base.IconButtonComp;
|
||||
import io.xpipe.app.comp.base.InputGroupComp;
|
||||
import io.xpipe.app.comp.base.TextFieldComp;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
@@ -14,7 +13,6 @@ import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
import javafx.application.Platform;
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.StringProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.geometry.Insets;
|
||||
|
||||
@@ -4,8 +4,6 @@ import atlantafx.base.controls.Popover;
|
||||
import atlantafx.base.theme.Styles;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
import io.xpipe.app.comp.base.ButtonComp;
|
||||
import io.xpipe.app.comp.base.InputGroupComp;
|
||||
import io.xpipe.app.comp.base.TextFieldComp;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.ext.ShellStore;
|
||||
import io.xpipe.app.platform.LabelGraphic;
|
||||
@@ -13,7 +11,6 @@ import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
import javafx.application.Platform;
|
||||
import javafx.beans.property.StringProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.geometry.Insets;
|
||||
import javafx.geometry.Pos;
|
||||
@@ -21,9 +18,6 @@ import javafx.scene.control.Button;
|
||||
import javafx.scene.control.Label;
|
||||
import javafx.scene.layout.Region;
|
||||
import javafx.scene.layout.VBox;
|
||||
import org.kordamp.ikonli.javafx.FontIcon;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class SshAgentTestComp extends SimpleRegionBuilder {
|
||||
|
||||
|
||||
@@ -1,20 +1,7 @@
|
||||
package io.xpipe.app.cred;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
||||
import io.xpipe.app.ext.ValidationException;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.process.CommandBuilder;
|
||||
import io.xpipe.app.process.OsFileSystem;
|
||||
import io.xpipe.app.process.ShellControl;
|
||||
import io.xpipe.app.secret.SecretNoneStrategy;
|
||||
import io.xpipe.app.secret.SecretRetrievalStrategy;
|
||||
import io.xpipe.core.FilePath;
|
||||
import io.xpipe.core.KeyValue;
|
||||
import io.xpipe.core.OsType;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface SshIdentityAgentStrategy extends SshIdentityStrategy {
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package io.xpipe.app.ext;
|
||||
|
||||
import io.xpipe.app.process.ShellStoreState;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
|
||||
@@ -11,7 +11,6 @@ import io.xpipe.app.platform.LabelGraphic;
|
||||
import io.xpipe.app.platform.MenuHelper;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreCategoryConfig;
|
||||
import io.xpipe.app.storage.DataStoreColor;
|
||||
import io.xpipe.app.util.DesktopHelper;
|
||||
import io.xpipe.core.OsType;
|
||||
@@ -31,17 +30,13 @@ import javafx.scene.input.KeyCode;
|
||||
import javafx.scene.input.KeyCodeCombination;
|
||||
import javafx.scene.input.KeyEvent;
|
||||
import javafx.scene.input.MouseButton;
|
||||
import javafx.scene.layout.Background;
|
||||
import javafx.scene.layout.HBox;
|
||||
import javafx.scene.layout.Region;
|
||||
|
||||
import javafx.scene.layout.StackPane;
|
||||
import javafx.scene.paint.Color;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Value;
|
||||
import org.kordamp.ikonli.javafx.FontIcon;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
@@ -2,7 +2,6 @@ package io.xpipe.app.hub.comp;
|
||||
|
||||
import io.xpipe.app.comp.RegionBuilder;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
import io.xpipe.app.comp.base.ChoiceComp;
|
||||
import io.xpipe.app.comp.base.ModalButton;
|
||||
import io.xpipe.app.comp.base.ModalOverlay;
|
||||
import io.xpipe.app.comp.base.ToggleGroupComp;
|
||||
@@ -11,20 +10,17 @@ import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreCategoryConfig;
|
||||
import io.xpipe.app.storage.DataStoreColor;
|
||||
import io.xpipe.app.storage.DataStoreEntry;
|
||||
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.SimpleObjectProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.scene.control.ListCell;
|
||||
import javafx.scene.control.ScrollPane;
|
||||
import javafx.scene.layout.Region;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
@AllArgsConstructor
|
||||
public class StoreCategoryConfigComp extends SimpleRegionBuilder {
|
||||
|
||||
@@ -1,15 +1,9 @@
|
||||
package io.xpipe.app.hub.comp;
|
||||
|
||||
import atlantafx.base.theme.Styles;
|
||||
import io.xpipe.app.comp.BaseRegionBuilder;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
import io.xpipe.app.comp.base.IconButtonComp;
|
||||
import io.xpipe.app.comp.base.InputGroupComp;
|
||||
import io.xpipe.app.util.ObservableSubscriber;
|
||||
import javafx.scene.layout.Region;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class StoreEntryFilterCompBar extends SimpleRegionBuilder {
|
||||
|
||||
private final ObservableSubscriber filterTrigger;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package io.xpipe.app.hub.comp;
|
||||
|
||||
import atlantafx.base.controls.Spacer;
|
||||
import io.xpipe.app.comp.BaseRegionBuilder;
|
||||
import io.xpipe.app.comp.RegionBuilder;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
@@ -14,9 +13,7 @@ import io.xpipe.app.platform.MenuHelper;
|
||||
import io.xpipe.app.util.ObservableSubscriber;
|
||||
import io.xpipe.core.OsType;
|
||||
|
||||
import javafx.application.Platform;
|
||||
import javafx.beans.binding.Bindings;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.css.PseudoClass;
|
||||
import javafx.geometry.Insets;
|
||||
import javafx.geometry.Orientation;
|
||||
@@ -24,7 +21,6 @@ import javafx.geometry.Pos;
|
||||
import javafx.scene.control.Label;
|
||||
import javafx.scene.control.Separator;
|
||||
import javafx.scene.layout.HBox;
|
||||
import javafx.scene.layout.Priority;
|
||||
import javafx.scene.layout.Region;
|
||||
import javafx.scene.layout.VBox;
|
||||
import javafx.scene.text.TextAlignment;
|
||||
|
||||
@@ -10,7 +10,6 @@ import io.xpipe.app.comp.base.IconButtonComp;
|
||||
import io.xpipe.app.comp.base.InputGroupComp;
|
||||
import io.xpipe.app.core.AppFontSizes;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.core.AppOpenArguments;
|
||||
import io.xpipe.app.platform.PlatformThread;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.util.ObservableSubscriber;
|
||||
@@ -18,11 +17,8 @@ import javafx.beans.binding.Bindings;
|
||||
import javafx.geometry.Bounds;
|
||||
import javafx.scene.Cursor;
|
||||
import javafx.scene.input.KeyCode;
|
||||
import javafx.scene.input.KeyCodeCombination;
|
||||
import javafx.scene.input.KeyEvent;
|
||||
import javafx.scene.layout.Region;
|
||||
import javafx.stage.PopupWindow;
|
||||
import lombok.val;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@@ -2,7 +2,6 @@ package io.xpipe.app.hub.comp;
|
||||
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.type.TypeFactory;
|
||||
import io.xpipe.app.action.AbstractAction;
|
||||
import io.xpipe.app.action.LauncherUrlProvider;
|
||||
import io.xpipe.app.action.QuickConnectProvider;
|
||||
import io.xpipe.app.core.AppCache;
|
||||
@@ -13,7 +12,6 @@ import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.beans.property.StringProperty;
|
||||
import javafx.beans.value.ObservableBooleanValue;
|
||||
import javafx.beans.value.ObservableStringValue;
|
||||
import javafx.collections.ObservableList;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.net.URI;
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package io.xpipe.app.hub.comp;
|
||||
|
||||
import atlantafx.base.theme.Styles;
|
||||
import io.xpipe.app.action.LauncherUrlProvider;
|
||||
import io.xpipe.app.action.QuickConnectProvider;
|
||||
import io.xpipe.app.comp.RegionBuilder;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
@@ -39,20 +38,21 @@ public class StoreFilterStateComp extends SimpleRegionBuilder {
|
||||
|
||||
var searches = state.getRecentSearches().getList();
|
||||
var searchesEmpty = Bindings.isEmpty(searches);
|
||||
var searchesList = new ListBoxViewComp<String>(searches, searches, s -> createButton(s, s), false);
|
||||
var searchesList = new ListBoxViewComp<>(searches, searches, s -> createButton(s, s), false);
|
||||
|
||||
var searchesPlaceholders = FXCollections.observableList(List.of(AppI18n.get("recentSearchesDescriptionNames"),
|
||||
AppI18n.get("recentSearchesDescriptionTags"), AppI18n.get("recentSearchesDescriptionTypes")));
|
||||
var searchesEmptyList = new ListBoxViewComp<String>(searchesPlaceholders, searchesPlaceholders, s -> createButton(s, null), false);
|
||||
var searchesEmptyList = new ListBoxViewComp<>(searchesPlaceholders, searchesPlaceholders, s -> createButton(s, null), false);
|
||||
|
||||
var quickConnections = state.getRecentQuickConnections().getList();
|
||||
var quickConnectionsEmpty = Bindings.isEmpty(quickConnections);
|
||||
var quickConnectionsList = new ListBoxViewComp<String>(quickConnections, quickConnections, s -> createButton(s, s), false);
|
||||
var quickConnectionsList = new ListBoxViewComp<>(quickConnections, quickConnections, s -> createButton(s, s), false);
|
||||
|
||||
var quickConnectionsPlaceholders = FXCollections.observableArrayList(QuickConnectProvider.getAll().stream()
|
||||
.map(p -> p.getPlaceholder())
|
||||
.toList());
|
||||
var quickConnectionsEmptyList = new ListBoxViewComp<String>(quickConnectionsPlaceholders, quickConnectionsPlaceholders, s -> createButton(s, s.split(" ")[0] + " "), false);
|
||||
var quickConnectionsEmptyList = new ListBoxViewComp<>(quickConnectionsPlaceholders, quickConnectionsPlaceholders,
|
||||
s -> createButton(s, s.split(" ")[0] + " "), false);
|
||||
|
||||
var options = new OptionsBuilder()
|
||||
.addComp(new LabelComp(AppI18n.observable("recentSearches")))
|
||||
|
||||
@@ -8,7 +8,6 @@ import io.xpipe.app.icon.SystemIcon;
|
||||
import io.xpipe.app.icon.SystemIconManager;
|
||||
import io.xpipe.app.platform.LabelGraphic;
|
||||
import io.xpipe.app.platform.PlatformThread;
|
||||
import io.xpipe.app.storage.DataStoreEntry;
|
||||
import io.xpipe.app.util.BooleanScope;
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
|
||||
@@ -27,7 +26,6 @@ import lombok.Getter;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import static atlantafx.base.theme.Styles.TEXT_SMALL;
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@ import io.xpipe.app.comp.BaseRegionBuilder;
|
||||
import io.xpipe.app.comp.RegionBuilder;
|
||||
import io.xpipe.app.comp.SimpleRegionBuilder;
|
||||
import io.xpipe.app.comp.base.*;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
|
||||
|
||||
@@ -3,12 +3,9 @@ package io.xpipe.app.hub.comp;
|
||||
import io.xpipe.app.comp.*;
|
||||
import io.xpipe.app.comp.base.*;
|
||||
import io.xpipe.app.core.AppFontSizes;
|
||||
import io.xpipe.app.platform.BindingsHelper;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
|
||||
import io.xpipe.app.util.FileOpener;
|
||||
import javafx.application.Platform;
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.ReadOnlyStringWrapper;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.scene.control.Button;
|
||||
|
||||
@@ -2,34 +2,13 @@ package io.xpipe.app.hub.comp;
|
||||
|
||||
import io.xpipe.app.action.QuickConnectProvider;
|
||||
import io.xpipe.app.core.AppCache;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.core.mode.AppOperationMode;
|
||||
import io.xpipe.app.ext.*;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.platform.DerivedObservableList;
|
||||
import io.xpipe.app.platform.PlatformThread;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreCategory;
|
||||
import io.xpipe.app.storage.DataStoreEntry;
|
||||
import io.xpipe.app.storage.StorageListener;
|
||||
import io.xpipe.app.util.GlobalTimer;
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
import javafx.application.Platform;
|
||||
import javafx.beans.Observable;
|
||||
import javafx.beans.binding.Bindings;
|
||||
import javafx.beans.property.*;
|
||||
import javafx.beans.value.ObservableIntegerValue;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.collections.ListChangeListener;
|
||||
import lombok.Getter;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.*;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class StoreQuickConnect {
|
||||
|
||||
|
||||
@@ -18,7 +18,6 @@ import lombok.Getter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@Getter
|
||||
|
||||
@@ -20,7 +20,6 @@ import javafx.scene.layout.VBox;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
|
||||
@@ -75,7 +75,6 @@ public class OptionsBuilder {
|
||||
private BaseRegionBuilder<?, ?> lastCompHeadReference;
|
||||
private ObservableValue<String> lastNameReference;
|
||||
private boolean focusFirstIncomplete = true;
|
||||
private boolean focusEnabled = true;
|
||||
|
||||
private final BooleanProperty mappingUpdate = new SimpleBooleanProperty();
|
||||
|
||||
|
||||
@@ -12,7 +12,6 @@ import javafx.scene.text.Font;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.SneakyThrows;
|
||||
import org.apache.commons.lang3.SystemUtils;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.concurrent.CountDownLatch;
|
||||
|
||||
@@ -15,7 +15,6 @@ import javafx.geometry.Pos;
|
||||
import javafx.scene.input.KeyCode;
|
||||
import javafx.scene.layout.Region;
|
||||
|
||||
import atlantafx.base.theme.Styles;
|
||||
import org.kordamp.ikonli.javafx.FontIcon;
|
||||
|
||||
import java.time.Duration;
|
||||
|
||||
@@ -1,31 +1,20 @@
|
||||
package io.xpipe.app.pwman;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import io.xpipe.app.comp.base.ButtonComp;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.ext.ProcessControlProvider;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.platform.OptionsChoiceBuilder;
|
||||
import io.xpipe.app.prefs.PasswordManagerTestComp;
|
||||
import io.xpipe.app.process.*;
|
||||
import io.xpipe.app.terminal.TerminalLaunch;
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
import io.xpipe.core.JacksonMapper;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
||||
import javafx.application.Platform;
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.SimpleObjectProperty;
|
||||
import javafx.geometry.Insets;
|
||||
import javafx.scene.layout.Region;
|
||||
import lombok.Builder;
|
||||
import lombok.extern.jackson.Jacksonized;
|
||||
import org.kordamp.ikonli.javafx.FontIcon;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
@JsonTypeName("dashlane")
|
||||
@Builder
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package io.xpipe.app.pwman;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
@@ -14,9 +13,7 @@ import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.platform.OptionsChoiceBuilder;
|
||||
import io.xpipe.app.prefs.PasswordManagerTestComp;
|
||||
import io.xpipe.app.process.*;
|
||||
import io.xpipe.app.secret.SecretQueryState;
|
||||
import io.xpipe.app.terminal.TerminalLaunch;
|
||||
import io.xpipe.app.util.AskpassAlert;
|
||||
import io.xpipe.app.util.HttpHelper;
|
||||
import io.xpipe.core.*;
|
||||
import javafx.beans.property.Property;
|
||||
@@ -26,15 +23,12 @@ import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.ToString;
|
||||
import lombok.Value;
|
||||
import lombok.experimental.NonFinal;
|
||||
import lombok.extern.jackson.Jacksonized;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URI;
|
||||
import java.net.http.HttpRequest;
|
||||
import java.net.http.HttpResponse;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.time.Duration;
|
||||
import java.util.*;
|
||||
|
||||
@Getter
|
||||
@@ -114,7 +108,7 @@ public class HashicorpVaultPasswordManager implements PasswordManager {
|
||||
InPlaceSecretValue token;
|
||||
|
||||
@Override
|
||||
public String retrieveToken(HashicorpVaultPasswordManager pwman) throws Exception {
|
||||
public String retrieveToken(HashicorpVaultPasswordManager pwman) {
|
||||
if (token == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -10,7 +10,6 @@ import io.xpipe.app.platform.BindingsHelper;
|
||||
import io.xpipe.app.platform.MenuHelper;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.prefs.ExternalApplicationHelper;
|
||||
import io.xpipe.app.process.LocalShell;
|
||||
import io.xpipe.app.process.ShellControl;
|
||||
import io.xpipe.app.process.ShellScript;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
@@ -34,7 +33,7 @@ public class PasswordManagerCommand implements PasswordManager {
|
||||
ShellScript script;
|
||||
|
||||
@Override
|
||||
public boolean selectInitial() throws Exception {
|
||||
public boolean selectInitial() {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ public interface PasswordManagerKeyStrategy {
|
||||
|
||||
@Value
|
||||
@Builder
|
||||
public class OptionsConfig {
|
||||
class OptionsConfig {
|
||||
|
||||
boolean allowSocketChoice;
|
||||
Path defaultSocketLocation;
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
package io.xpipe.app.pwman;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import io.xpipe.app.core.AppCache;
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.core.AppSystemInfo;
|
||||
import io.xpipe.app.ext.ProcessControlProvider;
|
||||
@@ -12,21 +10,14 @@ import io.xpipe.app.platform.OptionsChoiceBuilder;
|
||||
import io.xpipe.app.prefs.PasswordManagerTestComp;
|
||||
import io.xpipe.app.process.*;
|
||||
import io.xpipe.app.terminal.TerminalLaunch;
|
||||
import io.xpipe.app.util.DocumentationLink;
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
import io.xpipe.core.JacksonMapper;
|
||||
import io.xpipe.core.OsType;
|
||||
import javafx.beans.property.*;
|
||||
import javafx.collections.FXCollections;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.extern.jackson.Jacksonized;
|
||||
|
||||
import java.nio.file.Path;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.SequencedMap;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
@JsonTypeName("protonPass")
|
||||
@Builder
|
||||
|
||||
@@ -120,7 +120,7 @@ public class PsonoPasswordManager implements PasswordManager {
|
||||
.sensitive();
|
||||
var r = JacksonMapper.getDefault().readTree(cmd.readStdoutOrThrow());
|
||||
var username = Optional.of(r.required("username")).filter(n -> !n.isNull()).map(JsonNode::textValue).orElse(null);
|
||||
var password = Optional.of(r.required("password")).filter(n -> !n.isNull()).map(JsonNode::textValue).orElse(null);;
|
||||
var password = Optional.of(r.required("password")).filter(n -> !n.isNull()).map(JsonNode::textValue).orElse(null);
|
||||
return Result.of(Credentials.of(username, password), null);
|
||||
} catch (Exception e) {
|
||||
ErrorEventFactory.fromThrowable(e).handle();
|
||||
|
||||
@@ -8,8 +8,6 @@ import io.xpipe.app.process.LocalShell;
|
||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
||||
import javafx.beans.property.Property;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.Value;
|
||||
import lombok.extern.jackson.Jacksonized;
|
||||
|
||||
@JsonTypeName("windowsCredentialManager")
|
||||
@@ -25,7 +23,7 @@ public class WindowsCredentialManager implements PasswordManager {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean selectInitial() throws Exception {
|
||||
public boolean selectInitial() {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -20,10 +20,7 @@ import javafx.beans.property.BooleanProperty;
|
||||
import javafx.beans.property.SimpleBooleanProperty;
|
||||
import javafx.collections.ListChangeListener;
|
||||
|
||||
import javafx.stage.Screen;
|
||||
import lombok.Getter;
|
||||
import org.kordamp.ikonli.Ikon;
|
||||
import org.kordamp.ikonli.Ikonli;
|
||||
import org.kordamp.ikonli.javafx.FontIcon;
|
||||
import org.kordamp.ikonli.materialdesign2.MaterialDesignC;
|
||||
|
||||
|
||||
@@ -7,7 +7,6 @@ import io.xpipe.app.util.GlobalTimer;
|
||||
import io.xpipe.app.util.Rect;
|
||||
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.HashSet;
|
||||
|
||||
@@ -7,8 +7,6 @@ import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.process.*;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreEntry;
|
||||
import io.xpipe.app.util.LicenseProvider;
|
||||
import io.xpipe.app.util.LicenseRequiredException;
|
||||
import io.xpipe.core.FilePath;
|
||||
import io.xpipe.core.OsType;
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ package io.xpipe.app.vnc;
|
||||
import io.xpipe.app.ext.PrefsValue;
|
||||
import io.xpipe.app.platform.ClipboardHelper;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.rdp.*;
|
||||
import io.xpipe.core.OsType;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
||||
|
||||
@@ -11,7 +11,6 @@ import lombok.Value;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
import lombok.extern.jackson.Jacksonized;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
@Value
|
||||
|
||||
@@ -8,7 +8,6 @@ import io.xpipe.app.hub.comp.SystemStateComp;
|
||||
|
||||
import javafx.beans.binding.Bindings;
|
||||
import javafx.beans.property.SimpleObjectProperty;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,20 +1,13 @@
|
||||
package io.xpipe.ext.base.identity;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
||||
import io.xpipe.app.core.AppCache;
|
||||
import io.xpipe.app.cred.SshIdentityStrategy;
|
||||
import io.xpipe.app.cred.UsernameStrategy;
|
||||
import io.xpipe.app.ext.DataStoreDependencies;
|
||||
import io.xpipe.app.ext.InternalCacheDataStore;
|
||||
import io.xpipe.app.ext.StatefulDataStore;
|
||||
import io.xpipe.app.ext.ValidationException;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.secret.EncryptedValue;
|
||||
import io.xpipe.app.secret.SecretRetrievalStrategy;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreEntry;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
import io.xpipe.app.util.Validators;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import lombok.Value;
|
||||
@@ -81,7 +74,7 @@ public class MultiIdentityStore extends IdentityStore implements StatefulDataSto
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkComplete() throws Throwable {
|
||||
public void checkComplete() {
|
||||
getSelectedOrThrow();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,26 +1,15 @@
|
||||
package io.xpipe.ext.base.identity;
|
||||
|
||||
import io.xpipe.app.cred.NoIdentityStrategy;
|
||||
import io.xpipe.app.cred.SshIdentityStrategyChoiceConfig;
|
||||
import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.ext.GuiDialog;
|
||||
import io.xpipe.app.hub.comp.StoreListChoiceComp;
|
||||
import io.xpipe.app.hub.comp.StoreViewState;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.platform.OptionsChoiceBuilder;
|
||||
import io.xpipe.app.secret.EncryptedValue;
|
||||
import io.xpipe.app.secret.SecretNoneStrategy;
|
||||
import io.xpipe.app.secret.SecretRetrievalStrategy;
|
||||
import io.xpipe.app.secret.SecretStrategyChoiceConfig;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreCategory;
|
||||
import io.xpipe.app.storage.DataStoreEntry;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
import io.xpipe.app.util.DocumentationLink;
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.SimpleListProperty;
|
||||
import javafx.beans.property.SimpleObjectProperty;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.collections.FXCollections;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -6,7 +6,6 @@ import io.xpipe.app.hub.action.HubLeafProvider;
|
||||
import io.xpipe.app.hub.action.HubMenuItemProvider;
|
||||
import io.xpipe.app.hub.action.StoreActionCategory;
|
||||
import io.xpipe.app.platform.LabelGraphic;
|
||||
import io.xpipe.app.storage.DataStorage;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
import io.xpipe.app.util.ThreadHelper;
|
||||
import javafx.beans.property.ReadOnlyStringWrapper;
|
||||
|
||||
@@ -184,7 +184,7 @@ public class PasswordManagerIdentityStore extends IdentityStore
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<KeyValue> configOptions(ShellControl sc) throws Exception {
|
||||
public List<KeyValue> configOptions(ShellControl sc) {
|
||||
var r = retrieve();
|
||||
if (r == null || r.getSshKey() == null || r.getSshKey().getPrivateKey() == null) {
|
||||
return List.of();
|
||||
|
||||
@@ -2,13 +2,11 @@ package io.xpipe.ext.base.identity;
|
||||
|
||||
import io.xpipe.app.core.AppI18n;
|
||||
import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.ext.DataStoreCreationCategory;
|
||||
import io.xpipe.app.ext.GuiDialog;
|
||||
import io.xpipe.app.hub.comp.StoreEntryWrapper;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
import io.xpipe.app.platform.OptionsChoiceBuilder;
|
||||
import io.xpipe.app.platform.Validator;
|
||||
import io.xpipe.app.prefs.AppPrefs;
|
||||
import io.xpipe.app.prefs.VaultAuthentication;
|
||||
import io.xpipe.app.secret.EncryptedValue;
|
||||
import io.xpipe.app.secret.SecretNoneStrategy;
|
||||
|
||||
@@ -81,7 +81,7 @@ public class ScriptStoreSetup {
|
||||
FilePath dir;
|
||||
|
||||
@Override
|
||||
public Optional<String> terminalContent(ShellControl shellControl) throws Exception {
|
||||
public Optional<String> terminalContent(ShellControl shellControl) {
|
||||
if (dir == null) {
|
||||
dir = initScriptsDirectory(shellControl, finalBringFlattened);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package io.xpipe.ext.base.service;
|
||||
|
||||
import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.ext.DataStoreDependencies;
|
||||
import io.xpipe.app.ext.GroupStore;
|
||||
import io.xpipe.app.storage.DataStoreEntryRef;
|
||||
import io.xpipe.app.util.Validators;
|
||||
@@ -13,8 +12,6 @@ import lombok.ToString;
|
||||
import lombok.experimental.FieldDefaults;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE)
|
||||
@SuperBuilder
|
||||
|
||||
|
Before Width: | Height: | Size: 424 B After Width: | Height: | Size: 455 B |
|
Before Width: | Height: | Size: 441 B After Width: | Height: | Size: 447 B |
|
Before Width: | Height: | Size: 498 B After Width: | Height: | Size: 615 B |
|
Before Width: | Height: | Size: 492 B After Width: | Height: | Size: 634 B |
|
Before Width: | Height: | Size: 641 B After Width: | Height: | Size: 828 B |
|
Before Width: | Height: | Size: 650 B After Width: | Height: | Size: 820 B |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.3 KiB |
@@ -1,8 +1,6 @@
|
||||
package io.xpipe.ext.system.incus;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.node.ObjectNode;
|
||||
import io.xpipe.app.ext.ContainerStoreState;
|
||||
import io.xpipe.app.ext.NetworkContainerStoreState;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.process.*;
|
||||
@@ -17,7 +15,6 @@ import lombok.Value;
|
||||
import java.util.*;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Supplier;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class IncusCommandView extends CommandViewBase {
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@ import io.xpipe.app.comp.BaseRegionBuilder;
|
||||
import io.xpipe.app.ext.ContainerStoreState;
|
||||
import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.ext.GuiDialog;
|
||||
import io.xpipe.app.ext.ShellStore;
|
||||
import io.xpipe.app.hub.comp.*;
|
||||
import io.xpipe.app.platform.BindingsHelper;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
@@ -14,7 +13,6 @@ import io.xpipe.ext.base.identity.IdentityChoiceBuilder;
|
||||
import io.xpipe.ext.base.store.ShellStoreProvider;
|
||||
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.ReadOnlyObjectWrapper;
|
||||
import javafx.beans.property.SimpleObjectProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
package io.xpipe.ext.system.lxd;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.node.ObjectNode;
|
||||
import io.xpipe.app.ext.ContainerStoreState;
|
||||
import io.xpipe.app.ext.NetworkContainerStoreState;
|
||||
import io.xpipe.app.issue.ErrorEventFactory;
|
||||
import io.xpipe.app.process.*;
|
||||
@@ -17,7 +15,6 @@ import lombok.Value;
|
||||
import java.util.*;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Supplier;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class LxdCommandView extends CommandViewBase {
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@ import io.xpipe.app.comp.BaseRegionBuilder;
|
||||
import io.xpipe.app.ext.ContainerStoreState;
|
||||
import io.xpipe.app.ext.DataStore;
|
||||
import io.xpipe.app.ext.GuiDialog;
|
||||
import io.xpipe.app.ext.ShellStore;
|
||||
import io.xpipe.app.hub.comp.*;
|
||||
import io.xpipe.app.platform.BindingsHelper;
|
||||
import io.xpipe.app.platform.OptionsBuilder;
|
||||
@@ -14,7 +13,6 @@ import io.xpipe.ext.base.identity.IdentityChoiceBuilder;
|
||||
import io.xpipe.ext.base.store.ShellStoreProvider;
|
||||
|
||||
import javafx.beans.property.Property;
|
||||
import javafx.beans.property.ReadOnlyObjectWrapper;
|
||||
import javafx.beans.property.SimpleObjectProperty;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
|
||||
|
||||
@@ -15,16 +15,16 @@
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"><sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#000000"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="0.9861186"
|
||||
inkscape:cx="202.81536"
|
||||
inkscape:cy="214.47724"
|
||||
inkscape:zoom="2.7891646"
|
||||
inkscape:cx="98.595831"
|
||||
inkscape:cy="115.98455"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1009"
|
||||
inkscape:window-x="-8"
|
||||
@@ -36,27 +36,32 @@
|
||||
id="style2411">.cls-1{fill:#606161;}</style></defs><title
|
||||
id="title858">identity</title><path
|
||||
class="cls-1"
|
||||
d="M332.32,153.7H179.68a26,26,0,0,0-26,26V332.32a26,26,0,0,0,26,26H332.32a26,26,0,0,0,26-26V179.68A26,26,0,0,0,332.32,153.7Zm14,178.62a14,14,0,0,1-14,14H179.68a14,14,0,0,1-14-14V179.68a14,14,0,0,1,14-14H332.32a14,14,0,0,1,14,14Z"
|
||||
d="M 168.53751,15.715416 H 37.076569 A 22.392455,22.392455 0 0 0 14.684114,38.107871 V 169.55159 a 22.392455,22.392455 0 0 0 22.392455,22.39245 H 168.53751 a 22.392455,22.392455 0 0 0 22.39246,-22.39245 V 38.090646 a 22.392455,22.392455 0 0 0 -22.39246,-22.37523 z m 12.05748,153.836174 a 12.057476,12.057476 0 0 1 -12.05748,12.05747 H 37.076569 A 12.057476,12.057476 0 0 1 25.019094,169.55159 V 38.090646 A 12.057476,12.057476 0 0 1 37.076569,26.03317 H 168.53751 a 12.057476,12.057476 0 0 1 12.05748,12.057476 z"
|
||||
id="path860"
|
||||
style="fill:#dddddd;fill-opacity:1"
|
||||
transform="translate(-153.7 -153.7)" /><metadata
|
||||
style="fill:#e8e8e8;fill-opacity:1;stroke-width:0.861248" /><metadata
|
||||
id="metadata932"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:title>identity</dc:title></cc:Work></rdf:RDF></metadata><rect
|
||||
style="fill:#1870b1;fill-opacity:1;stroke-width:5.16975"
|
||||
style="fill:#bfbfbf;fill-opacity:1;stroke-width:4.71402"
|
||||
id="rect1"
|
||||
width="129.42943"
|
||||
height="19.719166"
|
||||
x="37.645679"
|
||||
y="48.04306" /><rect
|
||||
style="fill:#1870b1;fill-opacity:1;stroke-width:5.16975"
|
||||
id="rect1-5"
|
||||
width="129.42943"
|
||||
height="19.719166"
|
||||
x="37.868244"
|
||||
y="93.377953" /><rect
|
||||
style="fill:#1870b1;fill-opacity:1;stroke-width:5.16975"
|
||||
id="rect1-1"
|
||||
width="129.42943"
|
||||
height="19.719166"
|
||||
x="38.84882"
|
||||
y="140.00211" /></svg>
|
||||
width="130.2903"
|
||||
height="16.287502"
|
||||
x="38.743805"
|
||||
y="51.056995" /><rect
|
||||
style="fill:#bfbfbf;fill-opacity:1;stroke-width:4.30891"
|
||||
id="rect1-9"
|
||||
width="108.85865"
|
||||
height="16.287502"
|
||||
x="38.409683"
|
||||
y="80.544037" /><rect
|
||||
style="fill:#bfbfbf;fill-opacity:1;stroke-width:4.65319"
|
||||
id="rect1-8"
|
||||
width="126.94962"
|
||||
height="16.287502"
|
||||
x="37.778194"
|
||||
y="109.23331" /><rect
|
||||
style="fill:#bfbfbf;fill-opacity:1;stroke-width:4.41658"
|
||||
id="rect1-9-2"
|
||||
width="114.36689"
|
||||
height="16.287502"
|
||||
x="37.68644"
|
||||
y="138.36113" /></svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.8 KiB |
@@ -22,9 +22,9 @@
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="0.69729115"
|
||||
inkscape:cx="-114.72969"
|
||||
inkscape:cy="169.94336"
|
||||
inkscape:zoom="2.7891646"
|
||||
inkscape:cx="98.595831"
|
||||
inkscape:cy="115.98455"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1009"
|
||||
inkscape:window-x="-8"
|
||||
@@ -36,27 +36,32 @@
|
||||
id="style2411">.cls-1{fill:#606161;}</style></defs><title
|
||||
id="title858">identity</title><path
|
||||
class="cls-1"
|
||||
d="M332.32,153.7H179.68a26,26,0,0,0-26,26V332.32a26,26,0,0,0,26,26H332.32a26,26,0,0,0,26-26V179.68A26,26,0,0,0,332.32,153.7Zm14,178.62a14,14,0,0,1-14,14H179.68a14,14,0,0,1-14-14V179.68a14,14,0,0,1,14-14H332.32a14,14,0,0,1,14,14Z"
|
||||
d="M 168.53751,15.715416 H 37.076569 A 22.392455,22.392455 0 0 0 14.684114,38.107871 V 169.55159 a 22.392455,22.392455 0 0 0 22.392455,22.39245 H 168.53751 a 22.392455,22.392455 0 0 0 22.39246,-22.39245 V 38.090646 a 22.392455,22.392455 0 0 0 -22.39246,-22.37523 z m 12.05748,153.836174 a 12.057476,12.057476 0 0 1 -12.05748,12.05747 H 37.076569 A 12.057476,12.057476 0 0 1 25.019094,169.55159 V 38.090646 A 12.057476,12.057476 0 0 1 37.076569,26.03317 H 168.53751 a 12.057476,12.057476 0 0 1 12.05748,12.057476 z"
|
||||
id="path860"
|
||||
style="fill:#222222;fill-opacity:1"
|
||||
transform="translate(-153.7 -153.7)" /><metadata
|
||||
style="fill:#222222;fill-opacity:1;stroke-width:0.861248" /><metadata
|
||||
id="metadata932"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:title>identity</dc:title></cc:Work></rdf:RDF></metadata><rect
|
||||
style="fill:#1a2bba;fill-opacity:1;stroke-width:5.16975"
|
||||
style="fill:#3e3e3e;fill-opacity:1;stroke-width:4.71402"
|
||||
id="rect1"
|
||||
width="129.42943"
|
||||
height="19.719166"
|
||||
x="37.645679"
|
||||
y="48.04306" /><rect
|
||||
style="fill:#1a2bba;fill-opacity:1;stroke-width:5.16975"
|
||||
id="rect1-5"
|
||||
width="129.42943"
|
||||
height="19.719166"
|
||||
x="37.868244"
|
||||
y="93.377953" /><rect
|
||||
style="fill:#1a2bba;fill-opacity:1;stroke-width:5.16975"
|
||||
id="rect1-1"
|
||||
width="129.42943"
|
||||
height="19.719166"
|
||||
x="38.84882"
|
||||
y="140.00211" /></svg>
|
||||
width="130.2903"
|
||||
height="16.287502"
|
||||
x="38.743805"
|
||||
y="51.056995" /><rect
|
||||
style="fill:#3e3e3e;fill-opacity:1;stroke-width:4.30891"
|
||||
id="rect1-9"
|
||||
width="108.85865"
|
||||
height="16.287502"
|
||||
x="38.409683"
|
||||
y="80.544037" /><rect
|
||||
style="fill:#3e3e3e;fill-opacity:1;stroke-width:4.65319"
|
||||
id="rect1-8"
|
||||
width="126.94962"
|
||||
height="16.287502"
|
||||
x="37.778194"
|
||||
y="109.23331" /><rect
|
||||
style="fill:#3e3e3e;fill-opacity:1;stroke-width:4.41658"
|
||||
id="rect1-9-2"
|
||||
width="114.36689"
|
||||
height="16.287502"
|
||||
x="37.68644"
|
||||
y="138.36113" /></svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.8 KiB |