flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatWindowsNativeWindowBorder.java
void fireStateChangedLaterOnce() {
		EventQueue.invokeLater( () -> {
			if( fireStateChangedTimer != null ) {
				fireStateChangedTimer.restart();
				return;
			}

			fireStateChangedTimer = new Timer( 300, e -> {
				fireStateChangedTimer = null;
				colorizationUpToDate = false;

				fireStateChanged();
			} );
			fireStateChangedTimer.setRepeats( false );
			fireStateChangedTimer.start();
		} );
	}
/**
	 * Because there may be sent many WM_DWMCOLORIZATIONCOLORCHANGED messages,
	 * slightly delay event firing and fire it only once (on the AWT thread).
	 */
Because there may be sent many WM_DWMCOLORIZATIONCOLORCHANGED messages,
slightly delay event firing and fire it only once (on the AWT thread).
Because there may be sent many WM_DWMCOLORIZATIONCOLORCHANGED messages slightly delay event firing and fire it only once ( on the AWT thread ) .
void fireStateChangedLaterOnce() {
		EventQueue.invokeLater( () -> {
			if( fireStateChangedTimer != null ) {
				fireStateChangedTimer.restart();
				return;
			}
			fireStateChangedTimer = new Timer( 300, e -> {
				fireStateChangedTimer = null;
				colorizationUpToDate = false;
				fireStateChanged();
			} );
			fireStateChangedTimer.setRepeats( false );
			fireStateChangedTimer.start();
		} );
	}
void fireStateChangedLaterOnce ( ) { EventQueue . invokeLater ( ( ) -> { if ( fireStateChangedTimer != null ) { fireStateChangedTimer . restart ( ) ; return ; } fireStateChangedTimer = new Timer ( 300 , e -> { fireStateChangedTimer = null ; colorizationUpToDate = false ; fireStateChanged ( ) ; } ) ; fireStateChangedTimer . setRepeats ( false ) ; fireStateChangedTimer . start ( ) ; } ) ; }
Because there may be sent many WM_DWMCOLORIZATIONCOLORCHANGED messages,
 slightly delay event firing and fire it only once (on the AWT thread).
Because there may be sent many WM_DWMCOLORIZATIONCOLORCHANGED messages slightly delay event firing and fire it only once ( on the AWT thread ) .