< prev index next >

src/java.desktop/share/classes/javax/swing/MenuSelectionManager.java

Print this page

        

@@ -28,10 +28,12 @@
 import java.util.*;
 import java.awt.event.*;
 import javax.swing.event.*;
 
 import sun.awt.AppContext;
+import sun.awt.AWTAccessor;
+import sun.awt.AWTAccessor.MouseEventAccessor;
 import sun.swing.SwingUtilities2;
 
 /**
  * A MenuSelectionManager owns the selection in menu hierarchy.
  *

@@ -306,10 +308,13 @@
                                                               event.getXOnScreen(),
                                                               event.getYOnScreen(),
                                                               event.getClickCount(),
                                                               event.isPopupTrigger(),
                                                               MouseEvent.NOBUTTON);
+                        MouseEventAccessor meAccessor = AWTAccessor.getMouseEventAccessor();
+                        meAccessor.setCausedByTouchEvent(exitEvent,
+                            meAccessor.isCausedByTouchEvent(event));
                         currentSelection[currentSelection.length-1].
                             processMouseEvent(exitEvent, path, this);
 
                         MouseEvent enterEvent = new MouseEvent(mc,
                                                                MouseEvent.MOUSE_ENTERED,

@@ -318,19 +323,24 @@
                                                                event.getXOnScreen(),
                                                                event.getYOnScreen(),
                                                                event.getClickCount(),
                                                                event.isPopupTrigger(),
                                                                MouseEvent.NOBUTTON);
+                        meAccessor.setCausedByTouchEvent(enterEvent,
+                            meAccessor.isCausedByTouchEvent(event));
                         subElements[j].processMouseEvent(enterEvent, path, this);
                     }
                     MouseEvent mouseEvent = new MouseEvent(mc, event.getID(),event. getWhen(),
                                                            event.getModifiers(), p.x, p.y,
                                                            event.getXOnScreen(),
                                                            event.getYOnScreen(),
                                                            event.getClickCount(),
                                                            event.isPopupTrigger(),
                                                            MouseEvent.NOBUTTON);
+                    MouseEventAccessor meAccessor = AWTAccessor.getMouseEventAccessor();
+                    meAccessor.setCausedByTouchEvent(mouseEvent,
+                        meAccessor.isCausedByTouchEvent(event));
                     subElements[j].processMouseEvent(mouseEvent, path, this);
                     success = true;
                     event.consume();
                 }
             }
< prev index next >