Chose DOMString for a few reasons, primarily some technical differences between Boolean and Enumerated attributes.
The intent is for this attribute to be opt-out, i.e., true by default and developers may specify when handwriting should not be available. Additionally this attribute will be inherited, so developers could specify handwriting="false" on the lowest common ancestor to affect a subtree of content. This behavior mirrors recent work regarding the "writingSuggestions <https://html.spec.whatwg.org/#dom-writingsuggestions>" attribute. --- Boolean attribute <https://html.spec.whatwg.org/#boolean-attributes>: Specifying the attribute always evaluates to *true*. It's only possible to have a value of *false* by omitting the attribute. This makes it impossible to implement an inheritance-like behavior, and would require the attribute to either be an opt-in (developers need to specify handwriting on all inputs), or to rename it so it reads as an opt-out attribute (e.g., disableHandwriting) and specify on all inputs that shouldn't have handwriting. Keywords "true", "false", "on", "off" are not valid for boolean attributes. Enumerated attribute <https://html.spec.whatwg.org/#keywords-and-enumerated-attributes>: Is much more flexible than Boolean attributes, may specify "true" / "false" keywords, and may specify behavior for "missing value default" and "invalid value default". This makes it possible to implement both "true by default" and inheritance in the attribute specification. On Tuesday, July 30, 2024 at 10:28:00 AM UTC-7 Gregg Tavares wrote: > I'm just curious. Why is it a DOMString and not a boolean? I didn't see > that in the explainer > > > > On Mon, Jul 29, 2024 at 12:00 PM Chromestatus < > ad...@cr-status.appspotmail.com> wrote: > >> Contact emails adam.ett...@microsoft.com >> >> Explainer >> https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/Handwriting/explainer.md >> >> >> Specification None >> >> Summary >> >> This feature provides a standard mechanism to indicate whether an element >> or its subtree should allow user agent handwriting input. User agents that >> support handwriting recognition as a means to input text using a pen/stylus >> will behave differently than a user agent that doesn't support handwriting. >> However, this handwriting may not be desirable for all supported input >> fields. By specifying the HTML handwriting attribute, authors can indicate >> when the user agent should not allow handwriting. >> >> >> Blink component UI>Input>Text >> <https://bugs.chromium.org/p/chromium/issues/list?q=component:UI%3EInput%3EText> >> >> >> Motivation >> >> To disable handwriting input without this feature, developers would need >> to use preventDefault() on pen touch events, assuming that was an option >> for the user agent implementation of handwriting input. Android uses a >> non-standard `touch-action` configuration to disable handwriting input, >> this proposal will provide a standardized mechanism. >> >> >> Initial public proposal None >> >> TAG review None >> >> TAG review status Pending >> >> Risks >> >> >> Interoperability and Compatibility >> >> None >> >> >> *Gecko*: No signal >> >> *WebKit*: No signal >> >> *Web developers*: No signals >> >> *Other signals*: >> >> WebView application risks >> >> Does this intent deprecate or change behavior of existing APIs, such that >> it has potentially high risk for Android WebView-based applications? >> >> None >> >> >> Debuggability >> >> None >> >> >> Is this feature fully tested by web-platform-tests >> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >> ? No >> >> Flag name on chrome://flags None >> >> Finch feature name None >> >> Non-finch justification None >> >> Requires code in //chrome? False >> >> Estimated milestones >> >> No milestones specified >> >> >> Link to entry on the Chrome Platform Status >> https://chromestatus.com/feature/5186620366782464?gate=5076052179943424 >> >> This intent message was generated by Chrome Platform Status >> <https://chromestatus.com>. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "blink-dev" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to blink-dev+...@chromium.org. >> To view this discussion on the web visit >> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/000000000000faa1ae061e677989%40google.com >> >> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/000000000000faa1ae061e677989%40google.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/ff103bed-ca33-4440-9506-768c91495247n%40chromium.org.