Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 195826 Details for
Bug 345692
Javascript error while DnD between two trees
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Proposed fix
Bug-345903.patch (text/plain), 4.16 KB, created by
Ivan Furnadjiev
on 2011-05-17 05:47:17 EDT
(
hide
)
Description:
Proposed fix
Filename:
MIME Type:
Creator:
Ivan Furnadjiev
Created:
2011-05-17 05:47:17 EDT
Size:
4.16 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.rap.rwt.q07 >Index: js/org/eclipse/rwt/DNDSupport.js >=================================================================== >RCS file: /cvsroot/rt/org.eclipse.rap/runtime.rwt/org.eclipse.rap.rwt.q07/js/org/eclipse/rwt/DNDSupport.js,v >retrieving revision 1.14 >diff -u -r1.14 DNDSupport.js >--- js/org/eclipse/rwt/DNDSupport.js 6 May 2011 18:13:42 -0000 1.14 >+++ js/org/eclipse/rwt/DNDSupport.js 17 May 2011 09:32:57 -0000 >@@ -186,6 +186,9 @@ > _dragOutHandler : function( event ) { > var target = event.getCurrentTarget(); > var mouseEvent = event.getMouseEvent(); >+ if( this._currentTargetWidget !== mouseEvent.getTarget() ) { >+ this._onMouseOver( mouseEvent ); >+ } > var dndHandler = qx.event.handler.DragAndDropHandler.getInstance(); > dndHandler.clearActions(); > this.setFeedback( target, null, 0 ); >@@ -386,7 +389,10 @@ > if( widget instanceof org.eclipse.swt.widgets.TableRow > || widget instanceof org.eclipse.rwt.widgets.TreeRow ) > { >- result = widget; >+ // _currentDropTarget could be another tree or table >+ if( this._currentDropTarget && this._currentDropTarget.contains( widget ) ) { >+ result = widget; >+ } > } > return result; > }, >#P org.eclipse.rap.rwt.q07.jstest >Index: js/org/eclipse/rwt/test/tests/DNDTest.js >=================================================================== >RCS file: /cvsroot/rt/org.eclipse.rap/runtime.rwt.test/org.eclipse.rap.rwt.q07.jstest/js/org/eclipse/rwt/test/tests/DNDTest.js,v >retrieving revision 1.16 >diff -u -r1.16 DNDTest.js >--- js/org/eclipse/rwt/test/tests/DNDTest.js 6 May 2011 18:13:31 -0000 1.16 >+++ js/org/eclipse/rwt/test/tests/DNDTest.js 17 May 2011 09:32:58 -0000 >@@ -991,6 +991,50 @@ > tree.destroy(); > }, > >+ testTreeRequestItemOutsideRow_Bug_345692 : function() { >+ var testUtil = org.eclipse.rwt.test.fixture.TestUtil; >+ var dndSupport = org.eclipse.rwt.DNDSupport.getInstance(); >+ var dndHandler = qx.event.handler.DragAndDropHandler.getInstance() >+ var leftButton = qx.event.type.MouseEvent.buttons.left; >+ testUtil.prepareTimerUse(); >+ testUtil.initRequestLog(); >+ var tree = this.createTreeTarget(); >+ var item0 = this.createTreeItem( 0, tree, tree ); >+ var item1 = this.createTreeItem( 1, tree, tree ); >+ var source = this.createSource(); >+ testUtil.flush(); >+ var sourceNode = source._getTargetNode(); >+ var targetNode = tree._clientArea.getChildren()[ 0 ]._getTargetNode(); >+ var treeNode = tree.getElement(); >+ var doc = document.body; >+ // drag >+ testUtil.fakeMouseEventDOM( sourceNode, "mousedown", leftButton, 11, 11 ); >+ testUtil.fakeMouseEventDOM( doc, "mousemove", leftButton, 25, 15 ); >+ assertNotNull( dndHandler.__dragCache ); >+ assertTrue( dndHandler.__dragCache.dragHandlerActive ); >+ // over treeRow >+ testUtil.fakeMouseEventDOM( targetNode, "mouseover", leftButton ); >+ assertTrue( dndSupport._currentTargetWidget instanceof org.eclipse.rwt.widgets.TreeRow ); >+ testUtil.fakeMouseEventDOM( targetNode, "mousemove", leftButton ); >+ assertTrue( dndSupport._isDropTargetEventScheduled( "dragEnter" ) ); >+ dndSupport._cancelDropTargetEvent( "dragEnter" ); >+ dndSupport._cancelDropTargetEvent( "dragOver" ); >+ // over clientArea >+ // NOTE: IE may fire mousemove before mouseover, See Bug 345692 >+ testUtil.fakeMouseEventDOM( doc, "mousemove", leftButton ); >+ assertFalse( dndSupport._currentTargetWidget instanceof org.eclipse.rwt.widgets.TreeRow ); >+ testUtil.fakeMouseEventDOM( doc, "mouseover", leftButton ); >+ testUtil.forceTimerOnce(); >+ assertEquals( 2, testUtil.getRequestsSend() ); >+ var request = testUtil.getRequestLog()[ 1 ]; >+ var expected = "dragLeave.item=null"; >+ console.log( request ); >+ assertTrue( request.search( expected ) != -1 ); >+ source.setParent( null ); >+ source.destroy(); >+ tree.destroy(); >+ }, >+ > testTreeRequestItemIsSourceItem: function() { > var testUtil = org.eclipse.rwt.test.fixture.TestUtil; > var dndSupport = org.eclipse.rwt.DNDSupport.getInstance();
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
tbuschto
:
review+
Actions:
View
|
Diff
Attachments on
bug 345692
:
195752
| 195826