< prev index next >

src/java.desktop/share/classes/java/awt/Container.java

Print this page

        

@@ -4671,11 +4671,17 @@
                                              Component lastEntered,
                                              boolean inNativeContainer) {
         int id = e.getID();
         Component targetEnter = inNativeContainer ? targetOver : null;
 
-        if (lastEntered != targetEnter) {
+        if (id == MouseEvent.MOUSE_PRESSED) {
+            isMousePressed = true;
+        } else if (id == MouseEvent.MOUSE_RELEASED) {
+            isMousePressed = false;
+        }
+        
+        if (lastEntered != targetEnter && isMousePressed == false) {
             if (lastEntered != null) {
                 retargetMouseEvent(lastEntered, MouseEvent.MOUSE_EXITED, e);
             }
             if (id == MouseEvent.MOUSE_EXITED) {
                 // consume native exit event if we generate one

@@ -4950,10 +4956,15 @@
      * Is the mouse over the native container.
      */
     private transient boolean isMouseInNativeContainer = false;
 
     /**
+     * Is the mouse Pressed
+     */
+    private static boolean isMousePressed = false;
+    
+    /**
      * Is DnD over the native container.
      */
     private transient boolean isMouseDTInNativeContainer = false;
 
     /**
< prev index next >