-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add initial implicit capture proposal #129
Conversation
Note that this is a pull request against a new "reduce-hit-tests" branch as discussed in #8. I imagine we'll want to continue to iterate on related changes in the branch (for example, this doesn't yet contain the fix for #61). So I don't think we need to worry about this being perfect from the start, I just want to get an initial framework in place for describing the chromium implementation so that folks can continue to iterate on it (eg. while I'm on vacation until Aug 22nd). @NavidZ @scottgonzalez @patrickhlauke @teddink WDYT, does this look like a reasonable place to start on the branch? |
Looks reasonable to me, yes |
lgtm too. |
</section> | ||
<h2><dfn>Implicit Pointer Capture</dfn></h2> | ||
<p>Some input devices (such as touchscreens) implement a "direct manipulation" metaphor where a pointer is intended to act primarily on the UI element it became active upon (providing a physical illusion of direct contact, instead of indirect contact via a cursor that conceptually floats above the UI). Such devices are identified by the <a href="https://wicg.github.io/InputDeviceCapabilities/#dom-inputdevicecapabilities-pointermovementscrolls">InputDeviceCapabilities.pointerMovementScrolls property</a> and should have "implicit pointer capture" behavior as follows. | ||
<p>Direct manipulation devices should behave exactly as if <a data-lt="Element.setPointerCapture">setPointerCapture</a> was called on the target element just before the invocation of any <code>pointerdown</code> listeners. The <a data-lt="Element.hasPointerCapture">hasPointerCapture</a> API may be used (eg. within any <code>pointerdown</code> listener) to determine whether this has occurred. If <a data-lt="Element.releasePointerCapture">releasePointerCapture</a> is not called for the pointer before the next pointer event is fired, then a <a>gotpointercapture event</a> will be dispatched to the target (as normal) indicating that capture is active. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These two paragraphs are missing closing tags.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! Fixed.
One minor nit, but otherwise this looks good. |
Adds an initial description of chromium's "implicit capture" behavior as discussed in #8.