Skip to content
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

Handle cases where selection API doesn't apply #19461

Merged
merged 1 commit into from Dec 11, 2017

Commits on Dec 8, 2017

  1. Handle cases where selection API doesn't apply

    The selection API only applies to certain <input> types:
    
    https://html.spec.whatwg.org/multipage/#do-not-apply
    
    This commit ensures that we handle that correctly.
    
    Some notes:
    
    1. TextControl::set_dom_selection_direction now calls
       set_selection_range(), which means that setting selectionDirection will
       now fire a selection event, as it should per the spec.
    
    2. There is a test for the firing of the select event in
       tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/select-event.html,
       however the test did not run due to this syntax error:
    
       (pid:26017) "ERROR:script::dom::bindings::error: Error at http://web-platform.test:8000/html/semantics/forms/textfieldselection/select-event.html:50:11 missing = in const declaration"
    
       This happens due to the us of the "for (const foo of ...)" construct.
       Per https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of
       this should actually work, so it's somewhat unsatisfying to have to
       change the test.
    
    4. If an <input>'s type is unset, it defaults to a text, and the
       selection API applies. Also, if an <input>'s type is set to an
       invalid value, it defaults to a text too. I've expanded the tests
       to account for this second case.
    jonleighton committed Dec 8, 2017
    Copy the full SHA
    71a013d View commit details
    Browse the repository at this point in the history