diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTTreeView.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTTreeView.java index 9db978e08..63f3557ea 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTTreeView.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/nbt/NBTTreeView.java @@ -41,6 +41,7 @@ public final class NBTTreeView extends TreeView { public NBTTreeView(NBTTreeView.Item tree) { this.setRoot(tree); + if (tree != null) tree.setExpanded(true); this.setCellFactory(cellFactory()); } @@ -141,6 +142,9 @@ public final class NBTTreeView extends TreeView { item.getChildren().add(subTree); } } + FXUtils.onChangeAndOperate(item.expandedProperty(), expanded -> { + if (expanded && item.getChildren().size() == 1) item.getChildren().get(0).setExpanded(true); + }); return item; }