Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 345692 | Differences between
and this patch

Collapse All | Expand All

(-)js/org/eclipse/rwt/test/tests/DNDTest.js (+45 lines)
Lines 991-996 Link Here
991
      tree.destroy();
991
      tree.destroy();
992
    },
992
    },
993
993
994
    testTreeRequestItemOutsideRow_Bug_345692 : function() {
995
      var testUtil = org.eclipse.rwt.test.fixture.TestUtil;
996
      var dndSupport = org.eclipse.rwt.DNDSupport.getInstance();
997
      var dndHandler = qx.event.handler.DragAndDropHandler.getInstance()
998
      var leftButton = qx.event.type.MouseEvent.buttons.left;
999
      testUtil.prepareTimerUse();
1000
      testUtil.initRequestLog();
1001
      var tree = this.createTreeTarget();
1002
      var item0 = this.createTreeItem( 0, tree, tree );
1003
      var item1 = this.createTreeItem( 1, tree, tree );
1004
      var source = this.createSource();
1005
      testUtil.flush();
1006
      var sourceNode = source._getTargetNode();
1007
      var targetNode = tree._clientArea.getChildren()[ 0 ]._getTargetNode();
1008
      var treeNode = tree.getElement();
1009
      var doc = document.body;
1010
      // drag 
1011
      testUtil.fakeMouseEventDOM( sourceNode, "mousedown", leftButton, 11, 11 );
1012
      testUtil.fakeMouseEventDOM( doc, "mousemove", leftButton, 25, 15 );
1013
      assertNotNull( dndHandler.__dragCache );
1014
      assertTrue( dndHandler.__dragCache.dragHandlerActive );
1015
      // over treeRow
1016
      testUtil.fakeMouseEventDOM( targetNode, "mouseover", leftButton );
1017
      assertTrue( dndSupport._currentTargetWidget instanceof org.eclipse.rwt.widgets.TreeRow );
1018
      testUtil.fakeMouseEventDOM( targetNode, "mousemove", leftButton );
1019
      assertTrue( dndSupport._isDropTargetEventScheduled( "dragEnter" ) );
1020
      dndSupport._cancelDropTargetEvent( "dragEnter" );
1021
      dndSupport._cancelDropTargetEvent( "dragOver" );
1022
      // over clientArea
1023
      // NOTE: IE may fire mousemove before mouseover, See Bug 345692
1024
      testUtil.fakeMouseEventDOM( doc, "mousemove", leftButton );
1025
      assertTrue( dndSupport._currentTargetWidget instanceof org.eclipse.rwt.widgets.TreeRow );
1026
      testUtil.fakeMouseEventDOM( doc, "mouseover", leftButton );
1027
      assertFalse( dndSupport._currentTargetWidget instanceof org.eclipse.rwt.widgets.TreeRow );
1028
      testUtil.forceTimerOnce();
1029
      assertEquals( 2, testUtil.getRequestsSend() );
1030
      var request = testUtil.getRequestLog()[ 1 ];
1031
      var expected = "dragLeave.item=null";
1032
      console.log( request );
1033
      assertTrue( request.search( expected ) != -1 );
1034
      source.setParent( null );
1035
      source.destroy();
1036
      tree.destroy();
1037
    },
1038
994
    testTreeRequestItemIsSourceItem: function() {
1039
    testTreeRequestItemIsSourceItem: function() {
995
      var testUtil = org.eclipse.rwt.test.fixture.TestUtil;
1040
      var testUtil = org.eclipse.rwt.test.fixture.TestUtil;
996
      var dndSupport = org.eclipse.rwt.DNDSupport.getInstance();
1041
      var dndSupport = org.eclipse.rwt.DNDSupport.getInstance();

Return to bug 345692