[SwingNode, DND] : drag-and-drop does not work

XMLWordPrintable

      Drag-and-drop within a SwingNode does not work. First drag has no effect, second drag creates this exception:

      Exception in thread "AWT-EventQueue-0" java.awt.dnd.InvalidDnDOperationException: Drag and drop in progress
      at sun.awt.dnd.SunDragSourceContextPeer.setDragDropInProgress(Unknown Source)
      at java.awt.dnd.DragSource.startDrag(Unknown Source)
      at java.awt.dnd.DragSource.startDrag(Unknown Source)
      at java.awt.dnd.DragGestureEvent.startDrag(Unknown Source)
      at mint.demo.SwingFx$2$1.dragGestureRecognized(SwingFx.java:73)
      at java.awt.dnd.DragGestureRecognizer.fireDragGestureRecognized(Unknown Source)
      at sun.awt.windows.WMouseDragGestureRecognizer.mouseDragged(Unknown Source)
      at java.awt.Component.processMouseMotionEvent(Unknown Source)
      at javax.swing.JComponent.processMouseMotionEvent(Unknown Source)
      at java.awt.Component.processEvent(Unknown Source)
      at java.awt.Container.processEvent(Unknown Source)
      at java.awt.Component.dispatchEventImpl(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Window.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
      at java.awt.EventQueue.access$400(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.awt.EventQueue$3.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.awt.EventQueue$4.run(Unknown Source)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.run(Unknown Source)

      See example in first comment. The problem can be reproduced by dragging the label two times.

            Assignee:
            Anthony Petrov (Inactive)
            Reporter:
            Werner Lehmann
            Votes:
            1 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: