From 7c2b07f560038cede11fe016faeaf494aa0a4e8c Mon Sep 17 00:00:00 2001 From: crschnick Date: Fri, 20 Oct 2023 07:52:43 +0000 Subject: [PATCH] Small bug fixes --- .../io/xpipe/app/comp/store/StoreViewState.java | 16 ++++++++-------- .../io/xpipe/app/prefs/ExternalTerminalType.java | 2 +- .../java/io/xpipe/app/storage/DataStorage.java | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreViewState.java b/app/src/main/java/io/xpipe/app/comp/store/StoreViewState.java index a3fd031b1..b71861261 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreViewState.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreViewState.java @@ -177,10 +177,10 @@ public class StoreViewState { public void onStoreAdd(DataStoreEntry... entry) { var l = Arrays.stream(entry).map(StoreEntryWrapper::new).toList(); Platform.runLater(() -> { - synchronized (allEntries) { + synchronized (this) { allEntries.addAll(l); } - synchronized (categories) { + synchronized (this) { categories.stream() .filter(storeCategoryWrapper -> allEntries.stream() .anyMatch(storeEntryWrapper -> storeEntryWrapper @@ -198,13 +198,13 @@ public class StoreViewState { public void onStoreRemove(DataStoreEntry... entry) { var a = Arrays.stream(entry).collect(Collectors.toSet()); List l; - synchronized (allEntries) { + synchronized (this) { l = allEntries.stream() .filter(storeEntryWrapper -> a.contains(storeEntryWrapper.getEntry())) .toList(); } List cats; - synchronized (categories) { + synchronized (this) { cats = categories.stream() .filter(storeCategoryWrapper -> allEntries.stream() .anyMatch(storeEntryWrapper -> storeEntryWrapper @@ -216,7 +216,7 @@ public class StoreViewState { .toList(); } Platform.runLater(() -> { - synchronized (allEntries) { + synchronized (this) { allEntries.removeAll(l); } cats.forEach(storeCategoryWrapper -> storeCategoryWrapper.update()); @@ -227,7 +227,7 @@ public class StoreViewState { public void onCategoryAdd(DataStoreCategory category) { var l = new StoreCategoryWrapper(category); Platform.runLater(() -> { - synchronized (categories) { + synchronized (this) { categories.add(l); } l.update(); @@ -237,7 +237,7 @@ public class StoreViewState { @Override public void onCategoryRemove(DataStoreCategory category) { Optional found; - synchronized (categories) { + synchronized (this) { found = categories.stream() .filter(storeCategoryWrapper -> storeCategoryWrapper.getCategory().equals(category)) @@ -248,7 +248,7 @@ public class StoreViewState { } Platform.runLater(() -> { - synchronized (categories) { + synchronized (this) { categories.remove(found.get()); } var p = found.get().getParent(); diff --git a/app/src/main/java/io/xpipe/app/prefs/ExternalTerminalType.java b/app/src/main/java/io/xpipe/app/prefs/ExternalTerminalType.java index 4d9762717..eb4e671b5 100644 --- a/app/src/main/java/io/xpipe/app/prefs/ExternalTerminalType.java +++ b/app/src/main/java/io/xpipe/app/prefs/ExternalTerminalType.java @@ -368,7 +368,7 @@ public interface ExternalTerminalType extends PrefsChoiceValue { @Override protected CommandBuilder toCommand(String name, String file) { - return CommandBuilder.of().add("-r").addQuoted(name).add("-e").addQuoted(file); + return CommandBuilder.of().add("-n", "~").add("-r").addQuoted(name).add("-e").addQuoted(file); } @Override 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 5c378cad1..6821bc9d6 100644 --- a/app/src/main/java/io/xpipe/app/storage/DataStorage.java +++ b/app/src/main/java/io/xpipe/app/storage/DataStorage.java @@ -201,7 +201,7 @@ public abstract class DataStorage { } var oldChildren = getStoreEntries().stream() - .filter(other -> e.equals(other.getProvider().getDisplayParent(other))) + .filter(other -> e.equals(getDisplayParent(other).orElse(null))) .toList(); var toRemove = oldChildren.stream() .filter(entry -> newChildren.stream()