LGTM3

On Thu, Jan 30, 2025 at 10:08 AM Daniel Bratell <bratel...@gmail.com> wrote:

> LGTM2
>
> Good luck with the launch! I hope the others follow quickly. (No official
> signals from them but they have had plenty of time and opportunities to
> object and with your answers I'm confident that this can become
> interoperable)
>
> /Daniel
> On 2025-01-29 22:38, Joey Arhar wrote:
>
> > Do you know (yes, again asking unfair questions) if they have done any
> work on the prerequisite features?
>
> Yes, firefox and safari have both shipped popover. Anchor positioning is
> proposed for interop 2025.
>
> > A nice use of this feature will still render reasonably well in older
> browsers, right?
>
> Yes. Older browsers will still render whatever text the author puts in
> their <option> elements in the browser native UI.
>
> On Wed, Jan 29, 2025 at 10:26 AM Daniel Bratell <bratel...@gmail.com>
> wrote:
>
>> Yes, I understand that it's not really fair to ask you about what other
>> browser vendors will do, because they are they. I had kind of hoped for
>> something like "they have an implementation behind a flag and should be
>> right behind us", but I guess that is not the case.
>>
>> Do you know (yes, again asking unfair questions) if they have done any
>> work on the prerequisite features?
>>
>> At least, if they have participated in the creation process it should not
>> be something they can't implement, because as Alex says, once this ships,
>> changes would be painful and maybe impossible. A nice use of this feature
>> will still render reasonably well in older browsers, right?
>>
>> /Daniel
>>
>> (I tried to figure out when the <select> element was added to the web.
>> 1995 or earlier it seems, so that is basically how long people have wanted
>> more power over it.)
>> On 2025-01-29 18:48, Joey Arhar wrote:
>>
>> > Both Mozilla and WebKit have been scarily passive on their standard
>> position issues, even if they have excited engineers working on the spec.
>> When could a web developer expect this to work all across the web?
>>
>> The other browser engine representatives have been consistently
>> enthusiastic about solving the problem in this case, and have been quite
>> involved in reviewing the design. This is evidenced by the fact that
>> they've all agreed that the API is at stage 2 ("Consensus that the rough
>> API shape defined in the draft specification is the right approach to solve
>> the problem") and have almost agreed to stage 3. Given that, and that there
>> is very strong developer demand for this feature, we see no reason why they
>> would not implement it soon.
>>
>> On Wed, Jan 29, 2025 at 8:20 AM Alex Russell <slightly...@chromium.org>
>> wrote:
>>
>>> I'm an enthusiastic LGTM1 on this; thank you so much for pushing this
>>> forward.
>>>
>>> As part of my vote here, I want to explicitly set the marker that when
>>> this ships, incompatible changes will be looked at with extreme skepticism.
>>> This is our usual *modus operandi* when we approve an I2S, but given
>>> how far ahead we are here, I want to reiterate that this is pouring the
>>> concrete, and we won't green-light incompatible changes, no matter how
>>> convinced folks at WHATWG are late in the game.
>>>
>>> Best,
>>>
>>> Alex
>>>
>>> On Wednesday, January 29, 2025 at 7:57:43 AM UTC-8 Daniel Bratell wrote:
>>>
>>>> I think this is a very exciting improvement to the web platform so
>>>> thanks for all the work! That said, I would want to know more about the
>>>> interoperability picture. Both Mozilla and WebKit have been scarily passive
>>>> on their standard position issues, even if they have excited engineers
>>>> working on the spec. When could a web developer expect this to work all
>>>> across the web?
>>>>
>>>> /Daniel
>>>> On 2025-01-28 17:55, Joey Arhar wrote:
>>>>
>>>> > There's an impressive amount of related spec work here, and not all
>>>> of it landed. How should we think about this? Is everything on track to
>>>> land, or are some issues/PRs non-blockers to the feature?
>>>>
>>>> Yes they're on track to land once editorial review has completed, and
>>>> no blocking concerns have been raised other than the two mentioned in the
>>>> "Anticipated spec changes" section of the intent to ship. It's possible
>>>> other vendors will raise new concerns but we haven't heard any.
>>>>
>>>> > How should we think about the tests that we are failing?
>>>>
>>>> Some of the tests are flaky, as you can see since some are passing in
>>>> Edge (Windows) but not Chrome (Linux) or vice-versa. There are some open
>>>> bugs about the flakiness that we are working on, but it's important to note
>>>> that the feature itself works correctly.
>>>>
>>>> On Tue, Jan 28, 2025 at 8:36 AM Mike Taylor <miketa...@chromium.org>
>>>> wrote:
>>>>
>>>>> On 1/28/25 11:03 AM, Joey Arhar wrote:
>>>>>
>>>>> > Please request the various bits in your chromestatus entry, thanks.
>>>>>
>>>>> Done
>>>>>
>>>>> Thanks, Joey.
>>>>>
>>>>>
>>>>> On Tue, Jan 28, 2025 at 7:17 AM Mike Taylor <miketa...@chromium.org>
>>>>> wrote:
>>>>>
>>>>>> Please request the various bits in your chromestatus entry, thanks.
>>>>>> On 1/24/25 1:20 PM, Joey Arhar wrote:
>>>>>>
>>>>>> Contact emails
>>>>>>
>>>>>> jar...@chromium.org, mas...@chromium.org, dan...@microsoft.com
>>>>>>
>>>>>> Explainer
>>>>>>
>>>>>> https://open-ui.org/components/select
>>>>>>
>>>>>> Specification
>>>>>>
>>>>>> https://github.com/whatwg/html/issues/9799 (see sub-PRs linked there)
>>>>>>
>>>>>> There's an impressive amount of related spec work here, and not all
>>>>> of it landed. How should we think about this? Is everything on track to
>>>>> land, or are some issues/PRs non-blockers to the feature?
>>>>>
>>>>> Design docs
>>>>>>
>>>>>> https://open-ui.org/components/select
>>>>>>
>>>>>> Summary
>>>>>>
>>>>>> Customizable <select> allows developers to take complete control of
>>>>>> the rendering of <select>, including the ability to fully customize both
>>>>>> the in-page “button” element as well as the popup picker, with arbitrary
>>>>>> content within options. Developers can opt in to this new behavior with a
>>>>>> simple CSS declaration that uses a new `base-select` value for the
>>>>>> `appearance` property.
>>>>>>
>>>>>> This new capability has been in development for a very long time,
>>>>>> starting in late 2019 <https://www.youtube.com/watch?v=ZFvPLrKZywA>
>>>>>> in earnest (with the original explainer
>>>>>> <https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/ControlUICustomization/explainer.md>
>>>>>> from June 2020). Due to that early work, two other platform APIs were
>>>>>> identified as prerequisites for customizable-<select>: the popover API 
>>>>>> and
>>>>>> anchor positioning. Now, with both of those APIs landed in standards and
>>>>>> browsers, the customizable-<select> is unblocked.
>>>>>>
>>>>>> Once the customizable-<select> feature began to get discussed in
>>>>>> standards (at OpenUI in 2020
>>>>>> <https://github.com/openui/open-ui/issues?q=is%3Aissue%20label%3Aselect%20sort%3Acreated-asc>,
>>>>>> and in WHATWG <https://github.com/whatwg/html/issues/9799> and CSSWG
>>>>>> in mid-2023), it rapidly evolved. Not only did the names of the elements
>>>>>> change (<selectmenu>, <selectlist>, then <select>, etc.) but the shape of
>>>>>> the API changed considerably. It evolved from a very shadow-DOM centric 
>>>>>> API
>>>>>> using things like the slot attribute to a more HTML-like API using new
>>>>>> elements such as the <selectedcontent> element. The WHATWG/CSSWG/OpenUI
>>>>>> joint task force worked through the question of how to opt-in to the new
>>>>>> behavior, selecting among a new element, an HTML attribute, a CSS 
>>>>>> property,
>>>>>> or something else, and arrived at a consensus of using the CSS
>>>>>> appearance property. Many discussions were had (e.g. in OpenUI
>>>>>> <https://github.com/openui/open-ui/issues/540> and WHATWG
>>>>>> <https://github.com/whatwg/html/issues/10317>) about the content
>>>>>> model and the allowed set of controls, to ensure the new control is
>>>>>> accessible and rational, while still providing a very flexible, powerful
>>>>>> API to developers. Overall, the standards process shaped this API into
>>>>>> something that follows platform conventions, has natural naming and 
>>>>>> methods
>>>>>> to achieve goals, and builds naturally upon recently added features such 
>>>>>> as
>>>>>> popover, anchor positioning, interactivity:inert, and many others. In
>>>>>> addition, the construction of the customizable-<select> API has been a 
>>>>>> huge
>>>>>> catalyst to find other missing platform features and quirks, such as 
>>>>>> corner
>>>>>> cases <https://github.com/whatwg/html/pull/10770> in the popover API.
>>>>>>
>>>>>> Throughout this process, we’ve worked hard to reach out to the
>>>>>> developer community, to ensure all common use cases are supported, there
>>>>>> aren’t lingering compat issues, and the new customizable-<select> control
>>>>>> is as accessible as possible. In some cases, e.g. the necessary changes 
>>>>>> to
>>>>>> the HTML parser to allow arbitrary content, there is still some compat
>>>>>> risk. We are working hard to increase our confidence that we can ship 
>>>>>> those
>>>>>> changes via (separate
>>>>>> <https://chromestatus.com/feature/5145948356083712>) Finch testing
>>>>>> and rollout. However, at this point, we are confident that we have 
>>>>>> reached
>>>>>> a stable API shape with a low level of risk.
>>>>>>
>>>>>> Blink component
>>>>>>
>>>>>> Blink>Forms>Select
>>>>>>
>>>>>> Search tags
>>>>>>
>>>>>> select <https://chromestatus.com/features#tags:select>, custom select
>>>>>> <https://chromestatus.com/features#tags:custom%20select>, controls
>>>>>> <https://chromestatus.com/features#tags:controls>, form controls
>>>>>> <https://chromestatus.com/features#tags:form%20controls>, custom
>>>>>> controls <https://chromestatus.com/features#tags:custom%20controls>, 
>>>>>> custom
>>>>>> form controls
>>>>>> <https://chromestatus.com/features#tags:custom%20form%20controls>
>>>>>>
>>>>>> TAG review
>>>>>>
>>>>>> https://github.com/w3ctag/design-reviews/issues/1007
>>>>>>
>>>>>> TAG review status
>>>>>>
>>>>>> Issues resolved
>>>>>>
>>>>>> Risks
>>>>>>
>>>>>> Interoperability and Compatibility
>>>>>>
>>>>>> Interop risk is low because we have been designing this feature
>>>>>> closely with Apple and Mozilla during the standardization process over 
>>>>>> the
>>>>>> last 15 months.
>>>>>>
>>>>>> Changing the HTML parser for <select> elements is a prerequisite for
>>>>>> this change and has some compat risks, which had a separate intent here:
>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/5_9-Qkvlj2M/m/Q96A126vAAAJ
>>>>>>
>>>>>> Gecko: No signal
>>>>>>
>>>>>> https://github.com/mozilla/standards-positions/issues/1060
>>>>>>
>>>>>> WebKit: No signal
>>>>>>
>>>>>> https://github.com/WebKit/standards-positions/issues/386
>>>>>>
>>>>>> Web developers: Very strongly positive
>>>>>>
>>>>>> https://2024.stateofhtml.com/en-US/features/#reading_list
>>>>>>
>>>>>> Other signals:
>>>>>>
>>>>>> Ergonomics
>>>>>>
>>>>>> None in particular.
>>>>>>
>>>>>>
>>>>>> Activation
>>>>>>
>>>>>> Clear documentation will be required to help developers understand
>>>>>> the opt in and how to style and replace various parts of the new select
>>>>>> element. We already have some documentation here but will create another
>>>>>> blog post for launching the feature:
>>>>>>
>>>>>>    -
>>>>>>
>>>>>>    https://developer.chrome.com/blog/rfc-customizable-select
>>>>>>    -
>>>>>>
>>>>>>    https://una.im/select-updates/
>>>>>>
>>>>>>
>>>>>>
>>>>>> Security
>>>>>>
>>>>>> The picker for customizable select does not extend outside of the web
>>>>>> contents like an appearance:auto select does, so there should not be any
>>>>>> new capabilities exposed which would have security considerations.
>>>>>>
>>>>>>
>>>>>> 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
>>>>>>
>>>>>> The customizable select should already be fairly debuggable via
>>>>>> existing DevTools features. The new select does add a few new
>>>>>> pseudo-elements, which have been added to DevTools.
>>>>>>
>>>>>>
>>>>>> Will this feature be supported on all six Blink platforms (Windows,
>>>>>> Mac, Linux, ChromeOS, Android, and Android WebView)?
>>>>>>
>>>>>> Yes
>>>>>>
>>>>>> Is this feature fully tested by web-platform-tests
>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>> ?
>>>>>>
>>>>>> Yes
>>>>>>
>>>>>>
>>>>>> https://wpt.fyi/results/html/semantics/forms/the-select-element/customizable-select
>>>>>>
>>>>>> How should we think about the tests that we are failing?
>>>>>
>>>>>
>>>>>> Flag name on about://flags
>>>>>>
>>>>>> None
>>>>>>
>>>>>> Finch feature name
>>>>>>
>>>>>> CustomizableSelect
>>>>>>
>>>>>> Non-finch justification
>>>>>>
>>>>>> None
>>>>>>
>>>>>> Requires code in //chrome?
>>>>>>
>>>>>> False
>>>>>>
>>>>>> Tracking bug
>>>>>>
>>>>>> https://crbug.com/40146374
>>>>>>
>>>>>> Estimated milestones
>>>>>>
>>>>>> 134
>>>>>>
>>>>>>
>>>>>> Anticipated spec changes
>>>>>>
>>>>>> Customizable select is currently in stage 2
>>>>>> <https://whatwg.org/stages#stage2> in WHATWG. We have had spec PRs
>>>>>> open for review since August of last year
>>>>>> <https://github.com/whatwg/html/pull/10548>, and we have been
>>>>>> repeatedly asking for reviews and feedback at WHATNOT meetings. However, 
>>>>>> we
>>>>>> have not received stage 3 <https://whatwg.org/stages#stage3>
>>>>>> approval yet, which means that the other implementers have not yet signed
>>>>>> off on the final design. These are the only remaining open issues that 
>>>>>> have
>>>>>> been raised, and we don’t anticipate any significant changes based on the
>>>>>> resolutions of these:
>>>>>>
>>>>>>    -
>>>>>>
>>>>>>    Should alt text be included in select.value?
>>>>>>    <https://github.com/whatwg/html/issues/10317>
>>>>>>    -
>>>>>>
>>>>>>    How should we write about user interactions and events in the
>>>>>>    spec? <https://github.com/whatwg/html/issues/10762>
>>>>>>
>>>>>>
>>>>>> Link to entry on the Chrome Platform Status
>>>>>>
>>>>>> https://chromestatus.com/feature/5737365999976448
>>>>>>
>>>>>> 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+unsubscr...@chromium.org.
>>>>>> To view this discussion visit
>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK6btw%2BX5UTWoDCGNUCpEUHYh%2BhgddTgOerGHugFnBGbQnb-Rg%40mail.gmail.com
>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK6btw%2BX5UTWoDCGNUCpEUHYh%2BhgddTgOerGHugFnBGbQnb-Rg%40mail.gmail.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 visit
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK6btw%2BnT5aX9dncP%2BQ2gUDzYKpYsD2ZJUCQXHAJJnrLR8WHsA%40mail.gmail.com
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK6btw%2BnT5aX9dncP%2BQ2gUDzYKpYsD2ZJUCQXHAJJnrLR8WHsA%40mail.gmail.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 visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/50897926-6846-4dc5-a91e-108f353d25eb%40gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/50897926-6846-4dc5-a91e-108f353d25eb%40gmail.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 visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADsXd2Mx8e_S6rFLX%2B6V7sE1eFqCgCBtxVj4UCtCipiwg1xEiQ%40mail.gmail.com.

Reply via email to