diff --git a/jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java b/jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java index d6845d240..ee41542ce 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java @@ -512,7 +512,7 @@ public class MainWindow extends JFrame { } private void clearTree() { - tabbedPane.closeAllTabs(); + tabbedPane.reset(); resetCache(); treeRoot = null; treeModel.setRoot(null); diff --git a/jadx-gui/src/main/java/jadx/gui/ui/TabbedPane.java b/jadx-gui/src/main/java/jadx/gui/ui/TabbedPane.java index 72ff21eb7..7fdd18d2b 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/TabbedPane.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/TabbedPane.java @@ -214,4 +214,10 @@ public class TabbedPane extends JTabbedPane { } } } + + public void reset() { + closeAllTabs(); + openTabs.clear(); + jumps.reset(); + } } diff --git a/jadx-gui/src/main/java/jadx/gui/utils/JumpManager.java b/jadx-gui/src/main/java/jadx/gui/utils/JumpManager.java index 390e92997..355b5b82d 100644 --- a/jadx-gui/src/main/java/jadx/gui/utils/JumpManager.java +++ b/jadx-gui/src/main/java/jadx/gui/utils/JumpManager.java @@ -87,4 +87,8 @@ public class JumpManager { currentPos = newPos; return position; } + + public void reset() { + list.clear(); + } }