Top-level JFrame can be selected, top-level JDialog cannot
sradenling opened this issue · 0 comments
sradenling commented
I'm trying to understand why Robot Framework can't seem to connect when using a JDialog as the top level window but it works perfectly when using a JFrame.
The test:
*** Settings ***
Library RemoteSwingLibrary debug=True
*** Test Cases ***
My Test Case
Start Application DialogTest java -cp /projects/rdialog DialogTest
Select Dialog Main
Push Button Close
A minimal dialog example:
import javax.swing.*;
public class DialogTest {
public static void main(String[] args) {
JButton button = new JButton("Close");
JDialog dialog = new JDialog();
dialog.setTitle("Main");
dialog.add(button);
dialog.setBounds(50, 50, 200, 100);
button.addActionListener(e -> {
dialog.dispose();
});
dialog.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
}
}
When attempting to run the test it fails with RemoteSwingLibraryTimeoutError: Agent port not received before timeout
.
Running the test with Select Window
instead of Select Dialog
and replacing JDialog
with JFrame
in the source works. What am I missing here?