LGTM1 - thanks for following up on the TAG's feedback!

On Tue, Sep 20, 2022 at 1:47 AM Dominik Röttsches <[email protected]>
wrote:

> Contact [email protected]
>
> Explainer
> https://github.com/w3c/csswg-drafts/blob/main/css-conditional-5/font-tech-format-explainer.md
>
> Specificationhttps://www.w3.org/TR/css-conditional-5/#at-supports-ext
>
> Summary
>
> The font-tech() and font-format() are extensions to the @supports rule CSS
> Conditional Syntax enable declarative and programmatic access to feature
> detection of font stack features. Using these conditions together with
> @supports allow progressive enhancement of content depending on font format
> support. In particular with UAs differing in support for color font
> formats, this is useful for including color font style rule and @font-face
> definitions only if the user agent supports it. Using JS CSS.supports()
> calls this is also the first ergonomic way of testing for font stack
> capabilities on the web without UA sniffing or canvas pixel readback as in
> Chromacheck (https://pixelambacht.nl/chromacheck/).
>
>
> This feature is closely related to the @font-face src: descriptor syntax
> extension which was recently discussed and LGTM'ed here
> <https://groups.google.com/a/chromium.org/g/blink-dev/c/_9k-Ne8FRu4>: -
> the same font format and technology keywords are used and synchronized
> between these two features.
>
>
> *Motivation*
>
> While font files look the same from the outside in their mime type and
> file signature, they may contain information that requires specific
> features of the UA's font stack.
>
> If an author wants to progressively enhance their site depending on font
> format capabilities of the UA, feature detection is needed. This feature
> here provides such a capability on the client side in two ways,
> declaratively in CSS, or programmatically in JS using CSS.supports().
>
> Examples:
>
>
>    - If OpenType variations are supported, I want to use a set of
>    different style rules than when variations are not available
>    - If color font support is available, I want to enhance my site with a
>    color fonts plus style rules affecting other parts of my page.
>
>
> Blink componentBlink>Fonts
> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EFonts>
>
> TAG reviewhttps://github.com/w3ctag/design-reviews/issues/666
>
> TAG review statusIssues addressed
>
> Risks
>
>
> Interoperability and Compatibility
>
>
>
> *Gecko*: In development (
> https://github.com/mozilla/standards-positions/issues/563#issuecomment-1224131600)
> Implemented behind flag and standards position concluded with positive
> stance towards this feature. Jonathan Kew plans to ship this soonish and in
> any case in sync with COLRv1 support.
>
> *WebKit*: From the standards discussion on this, my take-away of the
> discussion with Myles is that the feature is useful, but Myles suggests to 
> ship
> it only in combination with @else
> <https://github.com/w3c/csswg-drafts/issues/6520#issuecomment-947346133>
> - my position is that @else is not essential for this feature to provide
> value.
>
> *Web developers*: Positive Feedback we received from partners is that
> robust feature detection for this feature is a requirement and helps
> activation of usage of color fonts. More info available internally. (See
> previous I2S for tech() and format() in the src: descriptor of font-face)
>
> *Other signals*:
>
> Ergonomics
>
> This feature is intended for situations where the progressive enhancement
> choice is made client side. Feature detection on the server side, at the
> time for example the UA makes a request for a style sheet is out of scope
> for this proposal. In those situations, UA sniffing on the server side is
> still performed on the server based on request headers and user-agent
> string - which may be addressed by font feature client hints in the future.
>
>
> Activation
>
> Low: If this feature is not supported, the respective CSS styles are not
> included, so the progressive enhancement fails, which is the nature of this
> approach. If CSS.supports() calls are failing because they are not
> available, then the program logic trying to feature detect font stack
> capabilities, may need to resort to other methods of testing font support,
> for example through Canvas pixel probing or hardcoded UA lists.
>
>
> 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?
>
> No.
>
>
>
> Debuggability
>
> Equivalent to other @supports debugging.
>
>
> Will this feature be supported on all six Blink platforms (Windows, Mac,
> Linux, Chrome OS, 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, tests were added by Mozilla's Jonathan Kew initially while
> developing support for this feature in Gecko with additional tests and
> modifications to them when I developed the feature behind a flag.
>
> Flag namechrome://flags/#enable-experimental-web-platform-features
>
> Requires code in //chrome?False
>
> Tracking bughttps://bugs.chromium.org/p/chromium/issues/detail?id=1255685
>
> Sample links
>
> https://github.com/w3c/csswg-drafts/blob/main/css-conditional-5/font-tech-format-explainer.md#use-case-1---progressive-enhancement-with-color-fonts
>
> Estimated milestones
>
> 108
>
>
> Anticipated spec changes
>
> Additional keywords may be added in the future.
>
> Link to entry on the Chrome Platform Status
> https://chromestatus.com/feature/5155718374621184
>
> 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 [email protected].
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAN6muBvYtHHtgDGtJ-7j%3DJdzWTOA8MFf8O6VT%3DOyovcfYihmog%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAN6muBvYtHHtgDGtJ-7j%3DJdzWTOA8MFf8O6VT%3DOyovcfYihmog%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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfVFHFsAxh164yJKC8%3DdZEUA9QnQn4kSi4K1R4TtSEUWqw%40mail.gmail.com.

Reply via email to