From d492628bfeb912f09676c229e996430dd419016c Mon Sep 17 00:00:00 2001 From: Yaroslav <43380144+MrIkso@users.noreply.github.com> Date: Mon, 2 Jun 2025 23:45:46 +0300 Subject: [PATCH] fix(gui): workaround for wrap layout repaint issue in search dialog (PR #2521) * fix(gui): fixed incorrectly handles full window repaint in search dialog * fix: fix spotless check --- .../main/java/jadx/gui/ui/dialog/SearchDialog.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/jadx-gui/src/main/java/jadx/gui/ui/dialog/SearchDialog.java b/jadx-gui/src/main/java/jadx/gui/ui/dialog/SearchDialog.java index aa86f70fd..01438bec8 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/dialog/SearchDialog.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/dialog/SearchDialog.java @@ -4,6 +4,8 @@ import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Insets; +import java.awt.event.ComponentAdapter; +import java.awt.event.ComponentEvent; import java.util.ArrayList; import java.util.Collections; import java.util.EnumSet; @@ -347,6 +349,8 @@ public class SearchDialog extends CommonSearchDialog { boolean resSearch = searchOptions.contains(RESOURCE); resExtFilePanel.setVisible(resSearch); sizeLimitPanel.setVisible(resSearch); + optionsPanel.revalidate(); + optionsPanel.repaint(); }); JPanel searchPane = new JPanel(); @@ -367,6 +371,13 @@ public class SearchDialog extends CommonSearchDialog { contentPanel.add(buttonPane, BorderLayout.PAGE_END); getContentPane().add(contentPanel); + addComponentListener(new ComponentAdapter() { + @Override + public void componentResized(ComponentEvent e) { + optionsPanel.revalidate(); + optionsPanel.repaint(); + } + }); setLocationRelativeTo(null); setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); }