Re: IE7 hangs sporadically when running applets (with modal windows?)
This is reproducible with the following simple applet. You do not even
need to select a file, simply hitting "Esc" when the file dialog is
open is sufficient to hang IE7. I strongly suspect there's a problem in
IE with handing focus back to the main window after having had a modal
window.
package test;
import java.applet.Applet;
import java.awt.Button;
import java.awt.Color;
import java.awt.Event;
import java.awt.FileDialog;
import java.awt.Frame;
import java.awt.Panel;
import java.io.File;
public class ModalFileDialogTest extends Applet {
private static final long serialVersionUID = 1351796453988581417L;
public ModalFileDialogTest() {
Panel p = new Panel();
p.add(new Button("Open"));
p.setBackground(new Color(255, 255, 255));
add("North",p);
}
public boolean action(Event evt, Object arg) {
if ("Open".equals(arg)) {
System.out.println("Opening file selection");
FileDialog fd = new FileDialog(new Frame());
fd.setMode(FileDialog.LOAD);
fd.show();
String selectedItem = fd.getFile();
if (selectedItem == null) {
System.out.println("No file selected");
}
else {
File file = new File(fd.getDirectory() + File.separator +
fd.getFile());
System.out.println("Selected file: " + file.getName());
}
return true;
}
else {
System.out.println("Unexpected arg: "+arg);
return false;
}
}
}
The HTML:
<html>
<body bgcolor="#dddddd">
<applet code="test.ModalFileDialogTest.class" archive="modaltest.jar"
width="100" height="100">
</applet>
</body>
</html>