From aca5cc2bf02ade44ba3292eec89c3b140df65a25 Mon Sep 17 00:00:00 2001 From: crschnick Date: Tue, 11 Nov 2025 16:18:13 +0000 Subject: [PATCH] Properly save expanded state --- .../java/io/xpipe/app/storage/StorageElement.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/xpipe/app/storage/StorageElement.java b/app/src/main/java/io/xpipe/app/storage/StorageElement.java index a4794a70d..a2ed7a06a 100644 --- a/app/src/main/java/io/xpipe/app/storage/StorageElement.java +++ b/app/src/main/java/io/xpipe/app/storage/StorageElement.java @@ -74,10 +74,19 @@ public abstract class StorageElement { public void setExpanded(boolean expanded) { var changed = expanded != this.expanded; - this.expanded = expanded; - if (changed) { - notifyUpdate(false, false); + if (!changed) { + return; } + + this.expanded = expanded; + + // Update state but don't register updated time for expanded change + this.dirty = true; + synchronized (listeners) { + listeners.forEach(l -> l.onUpdate()); + } + // Save changes instantly + DataStorage.get().saveAsync(); } public abstract Path[] getShareableFiles();