From 77f33467d2196692b7a2a865a7bfc296de5137d8 Mon Sep 17 00:00:00 2001 From: Karl Tauber Date: Sat, 28 Aug 2021 17:37:02 +0200 Subject: [PATCH] Theme Editor: fixed endless look in "replace all" when replacing e.g. "a" with "aa" --- .../formdev/flatlaf/themeeditor/FlatFindReplaceBar.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/flatlaf-theme-editor/src/main/java/com/formdev/flatlaf/themeeditor/FlatFindReplaceBar.java b/flatlaf-theme-editor/src/main/java/com/formdev/flatlaf/themeeditor/FlatFindReplaceBar.java index 58d8947a..5429fffc 100644 --- a/flatlaf-theme-editor/src/main/java/com/formdev/flatlaf/themeeditor/FlatFindReplaceBar.java +++ b/flatlaf-theme-editor/src/main/java/com/formdev/flatlaf/themeeditor/FlatFindReplaceBar.java @@ -192,9 +192,17 @@ class FlatFindReplaceBar context.setSearchFor( findField.getText() ); context.setReplaceWith( replaceField.getText() ); + // make sure that search wrap is disabled because otherwise it is easy + // to have endeless loop when replacing e.g. "a" with "aa" + boolean oldSearchWrap = context.getSearchWrap(); + context.setSearchWrap( false ); + // replace all SearchResult result = SearchEngine.replaceAll( textArea, context ); + // restore search wrap + context.setSearchWrap( oldSearchWrap ); + // update matches info labels updateMatchesLabel( result, true ); }