1 Drag and Drop Release Notes
9 * Added a STRICT_INTERSECT drag and drop interaction mode. This alters the
10 behavior of DDM::getBestMatch. INTERSECT mode first tests the cursor
11 location, and if it is over the target that target wins, otherwise it
12 tests the overlap of the elements. STRICT_INTERSECT mode tests only
13 the overlap, the largest overlap wins.
15 * getBestMatch will work for targeted elements that have no overlap.
19 * The logic to determine if a drag should be initiated has been isolated
20 to the clickValidator method. This method can be overridden to provide
21 custom valdiation logic. For example, it is possible to specify hotspots
22 of any dimension or shape. The provided example shows how to make only
23 a circular region in the middle of the element initiate a drag.
25 * Added a new drag and drop event: onInvalidDrop. This is executed when
26 the dragged element in dropped in a location without a target. Previously
27 this condition could only detected by implementing handlers for three
30 * Now accepts an element reference in lieu of an id. Ids will
31 be generated if the element does not have one.
33 * Fixed horizontal autoscroll when scrollTop is zero.
35 * Added hasOuterHandles property to bypass the isOverTarget check in the
36 mousedown validation routine. Fixes setOuterHandleElId.
40 * YAHOO.util.DragDropMgr.swapNode now handles adjacent nodes properly
42 * Fixed missing variable declarations
46 * Fixed a JavaScript error that would be generated when trying to implement
47 DDProxy using the default settings and a tiny element.
49 * Fixed an error that resulted when constraints were applied to DragDrop
54 * Drag and drop will no longer interfere with selecting text on elements
55 that are not involved in drag and drop.
57 * The shared drag and drop proxy element now resizes correctly when autoResize
62 * Fixes an issue where the setXY cache could get out of sync if the element's
63 offsetParent is changed during onDragDrop.
67 * The Dom.util.setXY calculation for the initial placement of the dragged
68 element is cached during the drag, enhancing the drag performance.
70 * DDProxy no longer enforces having a single proxy element for all instances.
71 dragElId can be set in the config object in the constructor. If the
72 element already exists it will use that element, otherwise a new one will
73 be created with that id.
75 * DDProxy->borderWidth has been removed. The value is calculated on the fly
78 * Added DragDrop->clearTicks and DragDrop->clearConstraints
80 * All drag and drop constructors now have an additional, optional parameter
81 call "config". It is an object that can contain properties for a
82 number of configuration settings.
84 * Drag and drop will not be disabled for elements that cannot have their
87 * isLegalTarget won't return dd objects that are not targetable.
89 * Added DragDrop->removeFromGroup.
91 * Constraints are now applied properly when determining which drag and drop
97 * Improved the performance when in intersect mode
99 * It was possible for the drag and drop initialization to be skipped
100 for very slow loading pages. This was fixed.
102 * New methods to exclude regions within your drag and drop element:
103 addInvalidHandleId(), addInvalidHandleClass()
105 * Added an onAvailable handler that is executed after the initial state is set.
107 * Drag and drop is more forgiving when the implementer attempts to create the
108 instance prior to the element being in the document, but after the window
109 load event has fired.