- From: Scott González <scott.gonzalez@gmail.com>
- Date: Mon, 8 Apr 2013 09:54:37 -0400
- To: Sergey Konstantinov <twirl@yandex-team.ru>
- Cc: "public-pointer-events@w3.org" <public-pointer-events@w3.org>
- Message-ID: <CAO8i3ie7reXnx=yWE4PP2uLnVrwRADYCPVKdTof4_sxRhCx4vQ@mail.gmail.com>
On Mon, Apr 8, 2013 at 7:50 AM, Sergey Konstantinov <twirl@yandex-team.ru>wrote: > > The capturing system is a meaningless artifact of IE6, why > > implement it again? > > > > > > <snip> > > Accessing the document is, of course, bad for composition. But accepting the wrong designed feature instead is much worse. > > Do you have another proposal? I believe the only other solution that has been discussed is using the capturing phase. I honestly don't know of any web developers who use it. And we've already discussed why pointer capture is easier to work with. > I quickly read over jQuery code. The accidental capturing on the random node will completely break the following functionality: > > What is creating "accidental capturing"? Who is creating the accident? How? > - enter/leave events detection, > > Perhaps in some low-level technical sense, but not in perceived reality. If someone wants pointer capture, then they're saying, "if the pointer leaves this element, we're going treat it as if that never happened. Browser, will you please treat that as reality?" Let's take the slider example from the spec. Imagine a class is added and removed as the pointer enters and leaves. If the pointer is down while hovering, then the thumb wants to capture the events. If the user moves the pointer down such that it leaves the thumb, the widget wants to continue to track the horizontal movement and continue sliding. Although the pointer has technically left the thumb, the widget is conveying to the page that this has not occurred. In other words, the pointer is still interacting with me, please do not respond to any actions performed outside of my physical space. Pointer capture provides a way to accomplish this. Similarly, if the pointer moves fast enough horizontally, the events will fire on some other element, which means that you have to actually bind to the document which is annoying. > - $.live functionality, > - $.handle functionality. > > I'm not sure which version of jQuery you're looking at, but .live() was removed back in 1.9: http://jquery.com/upgrade-guide/1.9/#live-removed > Is this not enough? There is no way to detect such an unexpected intervention; there is also no way to prevent dead locks on capture setting. > And I still don't see any examples when "capture is essential", except the dragging one, which could be easily solved using standard DOM Events functionality. > > We should try to address the deadlock.
Received on Monday, 8 April 2013 13:55:12 UTC