diff --git a/app/src/main/java/io/xpipe/app/prefs/ExternalEditorType.java b/app/src/main/java/io/xpipe/app/prefs/ExternalEditorType.java index 67adca97..dce1a563 100644 --- a/app/src/main/java/io/xpipe/app/prefs/ExternalEditorType.java +++ b/app/src/main/java/io/xpipe/app/prefs/ExternalEditorType.java @@ -64,11 +64,11 @@ public interface ExternalEditorType extends PrefsChoiceValue { @Override protected Optional determineInstallation() { - var found = WindowsRegistry.local().readString(WindowsRegistry.HKEY_LOCAL_MACHINE, "SOFTWARE\\Notepad++", null); + var found = WindowsRegistry.local().readValue(WindowsRegistry.HKEY_LOCAL_MACHINE, "SOFTWARE\\Notepad++", null); // Check 32 bit install if (found.isEmpty()) { - found = WindowsRegistry.local().readString( + found = WindowsRegistry.local().readValue( WindowsRegistry.HKEY_LOCAL_MACHINE, "WOW6432Node\\SOFTWARE\\Notepad++", null); } return found.map(p -> p + "\\notepad++.exe").map(Path::of); diff --git a/app/src/main/java/io/xpipe/app/terminal/TabbyTerminalType.java b/app/src/main/java/io/xpipe/app/terminal/TabbyTerminalType.java index c73eb7c4..99941456 100644 --- a/app/src/main/java/io/xpipe/app/terminal/TabbyTerminalType.java +++ b/app/src/main/java/io/xpipe/app/terminal/TabbyTerminalType.java @@ -85,7 +85,7 @@ public interface TabbyTerminalType extends ExternalTerminalType { @Override protected Optional determineInstallation() { - var perUser = WindowsRegistry.local().readString( + var perUser = WindowsRegistry.local().readValue( WindowsRegistry.HKEY_CURRENT_USER, "SOFTWARE\\71445fac-d6ef-5436-9da7-5a323762d7f5", "InstallLocation") @@ -95,7 +95,7 @@ public interface TabbyTerminalType extends ExternalTerminalType { return perUser; } - var systemWide = WindowsRegistry.local().readString( + var systemWide = WindowsRegistry.local().readValue( WindowsRegistry.HKEY_LOCAL_MACHINE, "SOFTWARE\\71445fac-d6ef-5436-9da7-5a323762d7f5", "InstallLocation") diff --git a/app/src/main/java/io/xpipe/app/terminal/WezTerminalType.java b/app/src/main/java/io/xpipe/app/terminal/WezTerminalType.java index feb3547a..8bf48d1a 100644 --- a/app/src/main/java/io/xpipe/app/terminal/WezTerminalType.java +++ b/app/src/main/java/io/xpipe/app/terminal/WezTerminalType.java @@ -52,7 +52,7 @@ public interface WezTerminalType extends ExternalTerminalType { @Override protected Optional determineInstallation() { Optional launcherDir; - launcherDir = WindowsRegistry.local().readString( + launcherDir = WindowsRegistry.local().readValue( WindowsRegistry.HKEY_LOCAL_MACHINE, "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{BCF6F0DA-5B9A-408D-8562-F680AE6E1EAF}_is1", "InstallLocation") diff --git a/app/src/main/java/io/xpipe/app/util/WindowsRegistry.java b/app/src/main/java/io/xpipe/app/util/WindowsRegistry.java index 9dd09720..966fd437 100644 --- a/app/src/main/java/io/xpipe/app/util/WindowsRegistry.java +++ b/app/src/main/java/io/xpipe/app/util/WindowsRegistry.java @@ -33,15 +33,15 @@ public abstract class WindowsRegistry { public abstract boolean valueExists(int hkey, String key, String valueName) throws Exception; - public abstract Optional readString(int hkey, String key, String valueName) throws Exception; + public abstract Optional readValue(int hkey, String key, String valueName) throws Exception; - public Optional readString(int hkey, String key) throws Exception { - return readString(hkey, key, null); + public Optional readValue(int hkey, String key) throws Exception { + return readValue(hkey, key, null); } public abstract Optional findValuesRecursive(int hkey, String key, String valueName) throws Exception; - public abstract Optional findKeyForEqualMatchRecursive(int hkey, String key, String match) throws Exception; + public abstract Optional findKeyForEqualValueMatchRecursive(int hkey, String key, String match) throws Exception; public static class Local extends WindowsRegistry { @@ -73,7 +73,7 @@ public abstract class WindowsRegistry { } @Override - public Optional readString(int hkey, String key, String valueName) { + public Optional readValue(int hkey, String key, String valueName) { // This can fail even with errors in case the jna native library extraction or loading fails try { if (!Advapi32Util.registryValueExists( @@ -98,9 +98,9 @@ public abstract class WindowsRegistry { } @Override - public Optional findKeyForEqualMatchRecursive(int hkey, String key, String match) throws Exception { + public Optional findKeyForEqualValueMatchRecursive(int hkey, String key, String match) throws Exception { try (var sc = LocalShell.getShell().start()) { - return new Remote(sc).findKeyForEqualMatchRecursive(hkey, key, match); + return new Remote(sc).findKeyForEqualValueMatchRecursive(hkey, key, match); } } } @@ -140,7 +140,7 @@ public abstract class WindowsRegistry { } @Override - public Optional readString(int hkey, String key, String valueName) throws Exception { + public Optional readValue(int hkey, String key, String valueName) throws Exception { var command = CommandBuilder.of() .add("reg", "query") .addQuoted(hkey(hkey) + "\\" + key) @@ -189,7 +189,7 @@ public abstract class WindowsRegistry { } @Override - public Optional findKeyForEqualMatchRecursive(int hkey, String key, String match) throws Exception { + public Optional findKeyForEqualValueMatchRecursive(int hkey, String key, String match) throws Exception { var command = CommandBuilder.of() .add("reg", "query") .addQuoted(hkey(hkey) + "\\" + key) diff --git a/dist/changelogs/9.4_incremental.md b/dist/changelogs/9.4_incremental.md index f3ffae6c..09f53bde 100644 --- a/dist/changelogs/9.4_incremental.md +++ b/dist/changelogs/9.4_incremental.md @@ -18,6 +18,8 @@ The conflict resolution has been improved ## Other - You can now add simple RDP connections without a file -- Fix VMware Player/Workstation not being detected on Windows. Now simply searching for connections should add these VMs automatically +- Fix VMware Player/Workstation and MSYS2 not being detected on Windows. Now simply searching for connections should add them automatically if they are installed - The file browser sidebar now only contains connections that can be opened in it, reducing the amount of connection shown +- Fix SSH command failing on macOS with homebrew openssh package installed +- Fix SSH connections not opening the correct shell environment on Windows when username contained spaces due to an OpenSSH bug - Fix newly added connections not having the correct order