@Override
		public final void hide() {
			if( disposed )
				return;
			disposed = true;

			// immediately hide non-heavy weight popups or combobox popups
			if( !(popupWindow instanceof JWindow) || contents instanceof BasicComboPopup ) {
				hideImpl();
				return;
			}

			// defer hiding of heavy weight popup window for an event cycle,
			// which allows reusing popup window to avoid flicker when "moving" popup
			((JWindow)popupWindow).getContentPane().removeAll();
			stillShownHeavyWeightPopups.add( this );
			EventQueue.invokeLater( () -> {
				// hide popup if it was not reused
				if( stillShownHeavyWeightPopups.remove( this ) )
					hideImpl();
			} );
		}
Fixes popup background flashing effect when using dark theme on light platform theme,
where the light popup background is shown for a fraction of a second before
the dark popup content is shown.
This is fixed by setting popup background to content background.
<p>
Defers hiding of heavy weight popup window for an event cycle,
which allows reusing popup window to avoid flicker when "moving" popup.
flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatPopupFactory.java