diff --git a/platform/usageView-impl/src/com/intellij/usages/impl/UsageViewImpl.java b/platform/usageView-impl/src/com/intellij/usages/impl/UsageViewImpl.java index 0f4ec528b696..b9f5028781e3 100644 --- a/platform/usageView-impl/src/com/intellij/usages/impl/UsageViewImpl.java +++ b/platform/usageView-impl/src/com/intellij/usages/impl/UsageViewImpl.java @@ -1086,6 +1086,9 @@ public class UsageViewImpl implements UsageViewEx { appendUsagesInBulk(allUsages).thenRun(() -> SwingUtilities.invokeLater(() -> { if (isDisposed()) return; if (myTree != null) { + if (!myPresentation.isDetachedMode()) { + expandTreeAfterReset(); + } excludeUsages(excludedUsages.toArray(Usage.EMPTY_ARRAY)); restoreUsageExpandState(states); updateImmediately(); @@ -1150,6 +1153,10 @@ public class UsageViewImpl implements UsageViewEx { doExpandingCollapsing(() -> TreeUtil.expand(myTree, levels)); } + private void expandTreeAfterReset() { + expandTree(2); + } + private void doExpandingCollapsing(@NotNull Runnable task) { if (isDisposed()) return; ThreadingAssertions.assertEventDispatchThread(); @@ -1247,6 +1254,9 @@ public class UsageViewImpl implements UsageViewEx { public void refreshUsages() { reset(); + if (!myPresentation.isDetachedMode()) { + SwingUtilities.invokeLater(() -> expandTreeAfterReset()); + } doReRun(); } @@ -1279,10 +1289,6 @@ public class UsageViewImpl implements UsageViewEx { synchronized (modelToSwingNodeChanges) { modelToSwingNodeChanges.clear(); } - - if (!myPresentation.isDetachedMode()) { - SwingUtilities.invokeLater(() -> expandTree(2)); - } } @ApiStatus.Internal