diff --git a/CHANGELOG.md b/CHANGELOG.md index e1ed9665..6b04dc08 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -98,6 +98,9 @@ FlatLaf Change Log color. (issue #409) - InternalFrame: Fill background to avoid that parent may shine through internal frame if it contains non-opaque components. (better fix for issue #274) +- SwingX: Fixed `NullPointerException` in `FlatCaret` when using + `org.jdesktop.swingx.prompt.PromptSupport.setPrompt()` on a text field and + then switching theme. ## 1.6.5 diff --git a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatCaret.java b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatCaret.java index b274a4be..cd957bb8 100644 --- a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatCaret.java +++ b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatCaret.java @@ -101,6 +101,9 @@ public class FlatCaret // adds selection highlights to the text component highlighter if( isSelectionVisible() ) { EventQueue.invokeLater( () -> { + if( getComponent() == null ) + return; // was deinstalled + if( isSelectionVisible() ) { setSelectionVisible( false ); setSelectionVisible( true ); @@ -253,6 +256,9 @@ public class FlatCaret // select all if( c instanceof JFormattedTextField ) { EventQueue.invokeLater( () -> { + if( getComponent() == null ) + return; // was deinstalled + select( 0, doc.getLength() ); } ); } else {