8280990: [XWayland] XTest emulated mouse click does not bring window to front
Reviewed-by: avu, psadhukhan, kizune
This commit is contained in:
parent
7c83d7ab53
commit
d2d78ad18e
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@ -35,6 +35,9 @@ public class FrameToFrontModelessTest {
|
|||||||
|
|
||||||
private boolean isModeless;
|
private boolean isModeless;
|
||||||
|
|
||||||
|
private static final boolean IS_ON_WAYLAND =
|
||||||
|
System.getenv("WAYLAND_DISPLAY") != null;
|
||||||
|
|
||||||
public FrameToFrontModelessTest(boolean modeless) throws Exception {
|
public FrameToFrontModelessTest(boolean modeless) throws Exception {
|
||||||
isModeless = modeless;
|
isModeless = modeless;
|
||||||
robot = new ExtendedRobot();
|
robot = new ExtendedRobot();
|
||||||
@ -76,6 +79,9 @@ public class FrameToFrontModelessTest {
|
|||||||
robot.waitForIdle(delay);
|
robot.waitForIdle(delay);
|
||||||
|
|
||||||
// show the right frame appear on top of the dialog
|
// show the right frame appear on top of the dialog
|
||||||
|
if (IS_ON_WAYLAND) {
|
||||||
|
rightFrame.toFront();
|
||||||
|
}
|
||||||
rightFrame.clickDummyButton(robot);
|
rightFrame.clickDummyButton(robot);
|
||||||
robot.waitForIdle(delay);
|
robot.waitForIdle(delay);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@ -45,6 +45,9 @@ public class TestDialog extends Dialog implements ActionListener,
|
|||||||
public static int delay = 500;
|
public static int delay = 500;
|
||||||
public static int keyDelay = 100;
|
public static int keyDelay = 100;
|
||||||
|
|
||||||
|
private static final boolean IS_ON_WAYLAND =
|
||||||
|
System.getenv("WAYLAND_DISPLAY") != null;
|
||||||
|
|
||||||
public TestDialog(Frame frame) {
|
public TestDialog(Frame frame) {
|
||||||
super(frame);
|
super(frame);
|
||||||
initializeGUI();
|
initializeGUI();
|
||||||
@ -287,6 +290,9 @@ public class TestDialog extends Dialog implements ActionListener,
|
|||||||
String message,
|
String message,
|
||||||
Button b) throws Exception {
|
Button b) throws Exception {
|
||||||
focusGained.reset();
|
focusGained.reset();
|
||||||
|
if (IS_ON_WAYLAND) {
|
||||||
|
toFront();
|
||||||
|
}
|
||||||
clickInside(robot);
|
clickInside(robot);
|
||||||
focusGained.waitForFlagTriggered();
|
focusGained.waitForFlagTriggered();
|
||||||
assertTrue(focusGained.flag(),
|
assertTrue(focusGained.flag(),
|
||||||
@ -303,6 +309,9 @@ public class TestDialog extends Dialog implements ActionListener,
|
|||||||
String message,
|
String message,
|
||||||
Button b) throws Exception {
|
Button b) throws Exception {
|
||||||
focusGained.reset();
|
focusGained.reset();
|
||||||
|
if (IS_ON_WAYLAND) {
|
||||||
|
toFront();
|
||||||
|
}
|
||||||
clickInside(robot);
|
clickInside(robot);
|
||||||
robot.waitForIdle(delay);
|
robot.waitForIdle(delay);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@ -43,6 +43,8 @@ public class TestFrame extends Frame implements ActionListener,
|
|||||||
|
|
||||||
public static int delay = 500;
|
public static int delay = 500;
|
||||||
public static int keyDelay = 100;
|
public static int keyDelay = 100;
|
||||||
|
private static final boolean IS_ON_WAYLAND =
|
||||||
|
System.getenv("WAYLAND_DISPLAY") != null;
|
||||||
|
|
||||||
public TestFrame() {
|
public TestFrame() {
|
||||||
super();
|
super();
|
||||||
@ -251,7 +253,7 @@ public class TestFrame extends Frame implements ActionListener,
|
|||||||
String message) throws Exception {
|
String message) throws Exception {
|
||||||
dummyClicked.reset();
|
dummyClicked.reset();
|
||||||
clickButton(dummyButton, robot);
|
clickButton(dummyButton, robot);
|
||||||
dummyClicked.waitForFlagTriggered();
|
dummyClicked.waitForFlagTriggered(attempts);
|
||||||
|
|
||||||
String msg = "Clicking the frame Dummy button " + (refState ?
|
String msg = "Clicking the frame Dummy button " + (refState ?
|
||||||
"did not trigger an action." :
|
"did not trigger an action." :
|
||||||
@ -277,6 +279,9 @@ public class TestFrame extends Frame implements ActionListener,
|
|||||||
String message,
|
String message,
|
||||||
Button b) throws Exception {
|
Button b) throws Exception {
|
||||||
focusGained.reset();
|
focusGained.reset();
|
||||||
|
if (IS_ON_WAYLAND) {
|
||||||
|
toFront();
|
||||||
|
}
|
||||||
clickInside(robot);
|
clickInside(robot);
|
||||||
|
|
||||||
focusGained.waitForFlagTriggered();
|
focusGained.waitForFlagTriggered();
|
||||||
@ -293,6 +298,9 @@ public class TestFrame extends Frame implements ActionListener,
|
|||||||
String message,
|
String message,
|
||||||
Button b) throws Exception {
|
Button b) throws Exception {
|
||||||
focusGained.reset();
|
focusGained.reset();
|
||||||
|
if (IS_ON_WAYLAND) {
|
||||||
|
toFront();
|
||||||
|
}
|
||||||
clickInside(robot);
|
clickInside(robot);
|
||||||
|
|
||||||
robot.waitForIdle(delay);
|
robot.waitForIdle(delay);
|
||||||
|
Loading…
Reference in New Issue
Block a user