When a modal dialog is displayed (JOptionPane, JFileChooser, etc.), the JFrame gets a WINDOW_DEACTIVATED WindowEvent. Just ignore window deactivation when your application is displayed in full screen mode:
@Override
protected void processWindowEvent(WindowEvent e)
{
if (e.getID() == WindowEvent.WINDOW_DEACTIVATED)
{
if (windowState == WindowState.FULL_SCREEN)
{
return;
}
}
super.processWindowEvent(e);
}
Be sure to set the parent interface of the modal dialog correctly:
fileChooser.showOpenDialog(this);
"this" - JPanel, JInternalFrame JFrame.