[whatwg] More questions about the DnD API
Stef Epardaud
stef at epardaud.fr
Tue Mar 30 02:54:04 PDT 2010
On Tue, Mar 30, 2010 at 02:33:07AM -0700, Daniel Cheng wrote:
> But what was the rationale for preventing key events while doing DnD?
>
> I'm not 100% sure, but I'm assume it's so that the process of dragging and
> dropping doesn't trigger unrelated mouse / keyboard listeners.
Unrelated yes, but that also prevents applications from adding DnD
functionality based on key presses.
> Why not make the implied drag and/or dragstart explicitely fired when
> external applications start DnD in the browser? That might make it
> simpler and more consistent.
>
> Because those events are intended for a source node. It introduces several
> new problems (which node should get the event? how do authors differentiate
> between the two different types of dragstart?) without really solving
> anything that isn't already handled by other events. If you have drop
> targets in your page, you don't really care about a drag and drop operation
> in progress unless the item is dragged over your page--at which point one
> can simply use dragenter / dragover / dragleave.
How about registering the drag/dragstart on window.external?
So you're saying that if I start dragging from a document element (say a
div) and from an external application over the document, in both cases a
dragenter listener registered on the body element should get fired even
when the drag is currently over a descendent of the body?
Same for dragleave when the drag is finished or the drag went out of the
browser window (to other external apps for example)?
If so, then I can live with this.
--
Stéphane Epardaud
More information about the whatwg
mailing list