--- old/src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/MotifDesktopIconUI.java 2017-08-15 15:41:02.000000000 +0100 +++ new/src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/MotifDesktopIconUI.java 2017-08-15 15:41:02.000000000 +0100 @@ -36,6 +36,8 @@ import java.util.EventListener; import java.io.Serializable; +import sun.awt.AWTAccessor; +import sun.awt.AWTAccessor.MouseEventAccessor; /** * Motif rendition of the component. @@ -238,11 +240,15 @@ } @SuppressWarnings("deprecation") void forwardEventToParent(MouseEvent e) { - getParent().dispatchEvent(new MouseEvent( + MouseEvent newEvent = new MouseEvent( getParent(), e.getID(), e.getWhen(), e.getModifiers(), e.getX(), e.getY(), e.getXOnScreen(), e.getYOnScreen(), e.getClickCount(), - e.isPopupTrigger(), MouseEvent.NOBUTTON)); + e.isPopupTrigger(), MouseEvent.NOBUTTON); + MouseEventAccessor meAccessor = AWTAccessor.getMouseEventAccessor(); + meAccessor.setCausedByTouchEvent(newEvent, + meAccessor.isCausedByTouchEvent(e)); + getParent().dispatchEvent(newEvent); } @SuppressWarnings("deprecation") @@ -331,10 +337,14 @@ } @SuppressWarnings("deprecation") void forwardEventToParent(MouseEvent e) { - getParent().dispatchEvent(new MouseEvent( + MouseEvent newEvent = new MouseEvent( getParent(), e.getID(), e.getWhen(), e.getModifiers(), e.getX(), e.getY(), e.getXOnScreen(), e.getYOnScreen(), - e.getClickCount(), e.isPopupTrigger(), MouseEvent.NOBUTTON )); + e.getClickCount(), e.isPopupTrigger(), MouseEvent.NOBUTTON ); + MouseEventAccessor meAccessor = AWTAccessor.getMouseEventAccessor(); + meAccessor.setCausedByTouchEvent(newEvent, + meAccessor.isCausedByTouchEvent(e)); + getParent().dispatchEvent(newEvent); } @SuppressWarnings("deprecation")