--- old/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/ChartCanvas.java 2019-06-03 10:57:03.169508400 -0400 +++ new/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/misc/ChartCanvas.java 2019-06-03 10:57:03.072506876 -0400 @@ -153,7 +153,9 @@ @Override public void mouseExit(MouseEvent e) { - resetHoveredItemData(); + if (!getClientArea().contains(e.x, e.y)) { + resetHoveredItemData(); + } clearHighlightRects(); } --- old/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCChartCanvas.java 2019-06-03 10:57:03.554514450 -0400 +++ new/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCChartCanvas.java 2019-06-03 10:57:03.454512878 -0400 @@ -100,6 +100,7 @@ */ @SuppressWarnings("unchecked") public void clickContextMenuItem(String menuItemText) { + focusMc(); StringPopupOwner contextMenu = control.as(StringPopupOwner.class); contextMenu.setPolicy(StringComparePolicy.SUBSTRING); contextMenu.push(getRelativeClickPoint(), new String[]{menuItemText}); @@ -125,7 +126,7 @@ Fetcher fetcher = new Fetcher() { @Override public void run() { - setOutput(new Point(control.getScreenBounds().x, control.getScreenBounds().y)); + setOutput(new Point(control.getScreenBounds().x / 2, control.getScreenBounds().y / 2)); } }; Display.getDefault().syncExec(fetcher); --- old/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTable.java 2019-06-03 10:57:03.929520342 -0400 +++ new/application/uitests/org.openjdk.jmc.test.jemmy/src/test/java/org/openjdk/jmc/test/jemmy/misc/wrappers/MCTable.java 2019-06-03 10:57:03.828518755 -0400 @@ -741,6 +741,7 @@ * the row index to stop selecting */ public void selectItems(int start, int end) { + focusMc(); select(start); for (int i = 0; i < end; i++) { getShell().keyboard().pushKey(KeyboardButtons.DOWN, new KeyboardModifiers[] {KeyboardModifiers.SHIFT_DOWN_MASK});