diff --git a/src/main/java/jbyoshi/gitupdate/ui/TreeBasedUI.java b/src/main/java/jbyoshi/gitupdate/ui/TreeBasedUI.java index e6869ca..169abd1 100644 --- a/src/main/java/jbyoshi/gitupdate/ui/TreeBasedUI.java +++ b/src/main/java/jbyoshi/gitupdate/ui/TreeBasedUI.java @@ -142,9 +142,11 @@ private GUINodeView(String text) { @Override public ReportView newChild(String text) { GUINodeView child = new GUINodeView(text); - model.insertNodeInto(child, this, getChildCount()); - model.nodeChanged(this); - tree.expandPath(new TreePath(root.getPath())); + EventQueue.invokeLater(() -> { + model.insertNodeInto(child, this, getChildCount()); + model.nodeChanged(this); + tree.expandPath(new TreePath(root.getPath())); + }); return child; } @@ -177,7 +179,7 @@ public void stateChanged(boolean error, boolean working, boolean future, boolean } else { icon = ICON_PLAIN; } - model.nodeChanged(this); + EventQueue.invokeLater(() -> model.nodeChanged(this)); } }