This is a simple test case for you to reproduce the flashing for
opening a Dialog. It's basically the same for JMenus.
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.UIDefaults;
import javax.swing.UIManager;
import javax.swing.UIManager.LookAndFeelInfo;
import javax.swing.plaf.ColorUIResource;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class TestDarkNimbus {
public static void main(String[] args) throws Exception {
for(LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()){
if(info.getName().startsWith("Nimbus")){
System.out.println("Setting Look & Feel to " +
info.getName());
UIManager.setLookAndFeel(info.getClassName());
break;
}
}
UIDefaults d = UIManager.getDefaults();
d.put("control", new ColorUIResource(54, 54, 54));
d.put("text", new ColorUIResource(214, 214, 214));
d.put("nimbusBlueGrey", new ColorUIResource(44, 44, 44));
d.put("nimbusBase", new ColorUIResource(54, 54, 54));
d.put("nimbusFocus", new Color(71, 85, 101));
d.put("nimbusLightBackground", new ColorUIResource(54, 54, 54));
d.put("nimbusSelectionBackground", new ColorUIResource(51, 65,
81));
d.put("nimbusSelection", new ColorUIResource(51, 65, 81));
final JFrame frame = new
JFrame(TestDarkNimbus.class.getSimpleName());
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton button = new JButton("Test Dialog Flashing");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(frame.getContentPane(),
"Flash !!!!!!!!!!!!", "Flash demo",
JOptionPane.INFORMATION_MESSAGE);
}
});
frame.getContentPane().add(button);
frame.pack();
frame.setLocation(500, 500);
frame.setVisible(true);
}
}
On Mon, Jan 6, 2014 at 6:49 PM, Robert Krüger <krue...@lesspain.de> wrote:
Hi,
we are using a customized Nimbus L&F (the customization is mostly
color changes) with dark backgrounds. Since we migrated our product
from Apple JDK 6 to OpenJDK 8 each JMenu or JDialog opens and first
draws a white rectangle that is then quickly replaced by the real
content, which has a rather unprofessional feel.
Has anyone had a similar problem and maybe a workaround other than not
having a dark background? Is there a known Jira issue I can follow?
I am currently running build 121 in development on Mac OS 10.8.
Thanks,
Robert