On Thu, Apr 20, 2023 at 12:30 PM Stephen Chenney <schen...@chromium.org>
wrote:

> Back to the testing question. There are hundreds of blink web tests that
> set zoom via CSS. Most of them are not testing the zoom CSS feature itself
> (though some are) so most of them would need to be updated to test browser
> zoom situations. It's tractable, particularly if we modify the existing
> testing internals methods to enable arbitrary zoom.
>
> While we're at it, I propose adding testing functionality to WPT for
> testing at different device scale factors. As far as I can tell it does not
> yet exist.
>
> Is that step 1a? Step 0?
>

Sorry for forgetting to reply to your email.

These can be fixed by replacing zoom on the root element with an Internals
method that does the same thing without a CSS property. The ones that set
non-root zooms I plan to delete.


> On Thu, Apr 20, 2023 at 3:01 PM Alex Russell <slightly...@chromium.org>
> wrote:
>
>> I agree that this is probably too risky right now. Are you willing to
>> modify the plan you posted to gate #4 on a UKM analysis and/or driving use
>> below a negotiated threshold, Chris?
>>
>> Thanks,
>>
>> Alex
>>
>> On Thursday, April 20, 2023 at 11:15:32 AM UTC-7 Chris Harrelson wrote:
>>
>>> Comments below, but here is a concrete shipping plan proposal:
>>>
>>> 1. Blog post describing what is happening, why, and how to fix your code.
>>> 2. Start a deprecation for 3 milestones (M114-116), with a devtools
>>> console warning. Notify enterprises and webview clients of the deprecation.
>>> 3. In parallel with #2: turn it off now via finch for canary/dev, then
>>> later beta, to see if we get bug reports.
>>> 4. Assuming no bug reports that raise new concerns, ship the change in
>>> M117.
>>>
>>> On Thu, Apr 20, 2023 at 9:01 AM Rick Byers <rby...@chromium.org> wrote:
>>>
>>>> On Wed, Apr 19, 2023 at 6:53 PM Chris Harrelson <chris...@chromium.org>
>>>> wrote:
>>>>
>>>>> Mike said: *"It would also be good to go through all duplicates and
>>>>> "See Also" bugs linked at
>>>>> https://bugzilla.mozilla.org/show_bug.cgi?id=390936
>>>>> <https://bugzilla.mozilla.org/show_bug.cgi?id=390936> and see how we fare
>>>>> with a build that has zoom disabled."*
>>>>>
>>>>> Good idea. I checked all 37 of the sites referenced from that issue. I
>>>>> found only 3 that were even somewhat broken, and only 2 where there was
>>>>> something substantial (an "8-ball" image that was too big, and a facebook
>>>>> login that was cut off at some viewport sizes). Most sites didn't have any
>>>>> zoom at all.
>>>>>
>>>>> I also updated the "use cases" section with more use cases found by
>>>>> reviewing the sites.
>>>>>
>>>>> Yoav said:* "Is it possible to also expose the usecounter as UKM, and
>>>>> see the usage distribution? Given the high usage percentage, it can be
>>>>> reassuring to see that a) No large sites get broken by this b) Long tail
>>>>> sampling from UKM matches what y'all saw in HA"*
>>>>>
>>>>> It's possible. Based on the data I've provided (including response to
>>>>> Mike above), do you think it's needed?
>>>>>
>>>>> On Mon, Apr 17, 2023 at 2:39 PM Rick Byers <rby...@chromium.org>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>> First, you'll have a flag so we can kill-switch it if we see any
>>>>>> non-trivial breakage in practice, right?
>>>>>>
>>>>>
>>>>> Already in place. CSSZoom is a base::Feature in addition to a
>>>>> RuntimeEnabledFeature.
>>>>>
>>>>>
>>>>>> WebView seems particularly risky, perhaps we should separate that out
>>>>>> and leave it enabled on WebView at least to start?
>>>>>>
>>>>>
>>>>> I'm willing to do that as a first step.
>>>>>
>>>>>
>>>>>> What about enterprise, likely to be higher risk / needing a
>>>>>> mitigation strategy?
>>>>>>
>>>>>
>>>>> I'll add an enterprise flag for it, and ask for this change to be
>>>>> highlighted in enterprise release notes. WDYT, good enough?
>>>>>
>>>>
>>>> Works for me.
>>>>
>>>> From the HA analysis, were you able to get any upper bound on the
>>>>>> fraction of sites with significant (i.e. usability impacting) breakage? 
>>>>>> Eg.
>>>>>> can we spot check 100 pages that hit the counter to see if any look 
>>>>>> really
>>>>>> broken? Alternately the UKM analysis Yoav suggests could help. I've been
>>>>>> planning on figuring out how to do a UKM usage distribution analysis - 
>>>>>> this
>>>>>> might make a good candidate.
>>>>>>
>>>>>
>>>>> I spot checked 62 sites from HTTPArchive and from the Mozilla bug. In
>>>>> my view, none were terribly broken, and almost all were unaffected or had
>>>>> trivial changes. According to foolip's methodology
>>>>> <https://sample-size.net/confidence-interval-proportion/> with N=62
>>>>> and x=0, that means that we've reduced the risk from the use counter of
>>>>> 0.5% to 0.028%.
>>>>>
>>>>> To get to 0.001% I'd need a lot more N, technically speaking.
>>>>>
>>>>> However, in basically all of the cases zoom was applied either to very
>>>>> few elements or to the body; in the latter the site still renders fine
>>>>> (because browser zoom uses the same technique), and for the others it's at
>>>>> best cosmetic in almost all cases.
>>>>>
>>>>
>>>> That's great to hear. Given the usage is pretty high and there's at
>>>> least some uncertainty among developers with how to replace their use of
>>>> zoom (Christoph's note), WDYT about doing a blog post warning about the
>>>> removal of zoom and showing how to replace it with transforms?
>>>>
>>>
>>> Sure, I can do that. Note that some sites already put -moz-transform and
>>> zoom in their style sheet, so there is evidence that transform works ok for
>>> some use cases.
>>>
>>>
>>>>
>>>> Also, should we consider a deprecation period with deprecation warnings
>>>> in the console and available to the reporting API? Or is that likely to be
>>>> so noisy with most cases being false positives that it would be net harmful
>>>> do you think?
>>>>
>>>
>>> A deprecation period makes sense. (Note that Firefox already has
>>> warnings in their devtools not to use this feature.)
>>>
>>>
>>>>
>>>>> On Mon, Apr 17, 2023 at 4:55 PM Morten Stenshorne <
>>>>>> msten...@chromium.org> wrote:
>>>>>>
>>>>>>> Chris Harrelson <chris...@chromium.org> writes:
>>>>>>>
>>>>>>> > On Sun, Apr 16, 2023 at 11:45 PM Morten Stenshorne <
>>>>>>> msten...@chromium.org> wrote:
>>>>>>> >
>>>>>>> >  Chris Harrelson <chris...@chromium.org> writes:
>>>>>>> >
>>>>>>> >  > On Fri, Apr 14, 2023 at 5:09 PM PhistucK <phist...@gmail.com>
>>>>>>> wrote:
>>>>>>> >  >
>>>>>>> >  >  Any alternatives? I thought there was a section in the intent
>>>>>>> templates for that...
>>>>>>> >  >
>>>>>>> >  > One alternative for the use case mentioned in my earlier email
>>>>>>> is to
>>>>>>> >  > apply a CSS transform instead. This will magnify the subtree
>>>>>>> visually
>>>>>>> >  > but not cause a zoom-style layout change.
>>>>>>> >
>>>>>>> >  The fact that a CSS transform doesn't affect layout, whereas
>>>>>>> 'zoom'
>>>>>>> >  does, means that we'll paginate (fragment) properly with 'zoom',
>>>>>>> but not
>>>>>>> >  with transforms, since they are applied after fragmentation [1],
>>>>>>> causing
>>>>>>> >  content to be sliced across fragmentainer boundaries, and the
>>>>>>> actual
>>>>>>> >  page/column breaks (as far as layout is concerned) are shifted
>>>>>>> away from
>>>>>>> >  the fragmentainer edges visually, and will appear in the middle
>>>>>>> of a
>>>>>>> >  page/column, for instance.
>>>>>>> >
>>>>>>> >  [1] https://www.w3.org/TR/css-break-3/#transforms (never mind the
>>>>>>> >  example there; it's not too relevant for this discussion, but I
>>>>>>> can
>>>>>>> >  provide one if you want)
>>>>>>> >
>>>>>>> > Agreed that this is a difference. If a developer wants the result
>>>>>>> to
>>>>>>> > flow through fragmentation, they'll have to use the second
>>>>>>> alternative
>>>>>>> > I suggested.
>>>>>>> >
>>>>>>> > But in terms of web compat, I don't think this situation is
>>>>>>> anything
>>>>>>> > to worry about (e.g. I didn't see any fragmentation when reviewing
>>>>>>> 25
>>>>>>> > random sites linked to from chromestatus.com).
>>>>>>>
>>>>>>> But as soon as someone prints any of those sites, there'll be
>>>>>>> fragmentation.
>>>>>>>
>>>>>>> That said, I couldn't find anything bad on those sites, either. I was
>>>>>>> thinking that if it's actually okay to replace zoom with a scale
>>>>>>> transform, we really need authors to make such elements monolithic
>>>>>>> (because any break point inserted inside a transformed element will
>>>>>>> more
>>>>>>> likely than not end up in the middle of some page, rather than at an
>>>>>>> actual page boundary). So I changed the engine locally to treat zoom
>>>>>>> !=
>>>>>>> 1 as monolithic. But that didn't make any of sites that I tried look
>>>>>>> any
>>>>>>> worse.
>>>>>>>
>>>>>>> >  > Another alternative is for the developer to multiply the
>>>>>>> numbers in
>>>>>>> >  > their CSS properties via calc + variables.
>>>>>>> >
>>>>>>> >  That alternative should always work, but more cumbersome for the
>>>>>>> >  authors, I suppose?
>>>>>>> >
>>>>>>> > Yes, a bit more cumbersome, but interoperable across all browser
>>>>>>> engines.
>>>>>>> >
>>>>>>> >
>>>>>>> >  >  On Sat, Apr 15, 2023 at 1:03 AM Chris Harrelson <
>>>>>>> chris...@chromium.org> wrote:
>>>>>>> >  >
>>>>>>> >  >  Contact emails
>>>>>>> >  >
>>>>>>> >  >  chris...@chromium.org
>>>>>>> >  >
>>>>>>> >  >  Specification
>>>>>>> >  >
>>>>>>> >  >  https://developer.mozilla.org/en-US/docs/Web/CSS/zoom
>>>>>>> >  >
>>>>>>> >  >  Summary
>>>>>>> >  >
>>>>>>> >  >  Removes support for the non-standard "zoom" CSS property. This
>>>>>>> CSS property causes computed lengths for an element to be multiplied by
>>>>>>> >  >  the specified zoom factor.
>>>>>>> >  >
>>>>>>> >  >  Blink component
>>>>>>> >  >
>>>>>>> >  >  Blink>CSS
>>>>>>> >  >
>>>>>>> >  >  TAG review
>>>>>>> >  >
>>>>>>> >  >  None
>>>>>>> >  >
>>>>>>> >  >  TAG review status
>>>>>>> >  >
>>>>>>> >  >  Not applicable
>>>>>>> >  >
>>>>>>> >  >  Risks
>>>>>>> >  >
>>>>>>> >  >  Interoperability and Compatibility
>>>>>>> >  >
>>>>>>> >  >  This feature is only available in Webkit and Blink-based
>>>>>>> browsers, and has been present in Chrome since the beginning. Usage is a
>>>>>>> little above
>>>>>>> >  >  0.5% of page loads:
>>>>>>> https://chromestatus.com/metrics/feature/timeline/popularity/3578
>>>>>>> However, research shows that sites in HTTPArchive
>>>>>>> >  >  triggering the feature mostly don't even seem to use it, and
>>>>>>> those that do appear to always use it in a way that works fine without 
>>>>>>> zoom
>>>>>>> applied
>>>>>>> >  >  - worst case, just a very minor change to the size of a tiny
>>>>>>> number of UI elements, but the UX is basically the same. See:
>>>>>>> >  >
>>>>>>> https://docs.google.com/document/d/1cmbXpjAcXAht2ufi7bNKy-rbVNveqaf0UzeYg_DIMNA/edit#
>>>>>>> >  >
>>>>>>> >  >  Gecko: Shipped/Shipping (Firefox never supported the feature.)
>>>>>>> >  >
>>>>>>> >  >  WebKit: No signal (
>>>>>>> https://github.com/WebKit/standards-positions/issues/170)
>>>>>>> >  >
>>>>>>> >  >  Web developers: Some web developers like the feature, in
>>>>>>> particular for the use case of zooming in content in a legible way with
>>>>>>> responsive
>>>>>>> >  >  design. See comments regarding that in this issue;
>>>>>>> https://github.com/w3c/csswg-drafts/issues/5623
>>>>>>> >  >
>>>>>>> >  >  Other signals: The CSSWG has decided to not specify this
>>>>>>> feature: https://github.com/w3c/csswg-drafts/issues/5623
>>>>>>> >  >
>>>>>>> >  >  Ergonomics
>>>>>>> >  >
>>>>>>> >  >  See "other views" section.
>>>>>>> >  >
>>>>>>> >  >  Activation
>>>>>>> >  >
>>>>>>> >  >  N/A
>>>>>>> >  >
>>>>>>> >  >  Security
>>>>>>> >  >
>>>>>>> >  >  None
>>>>>>> >  >
>>>>>>> >  >  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?
>>>>>>> >  >
>>>>>>> >  >  Maybe. WebView-based apps might use this feature.
>>>>>>> >  >
>>>>>>> >  >  Debuggability
>>>>>>> >  >
>>>>>>> >  >  Sites should be able to see that zoom no longer applies to
>>>>>>> elements in devtools, though there is no warning planned.
>>>>>>> >  >
>>>>>>> >  >  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?
>>>>>>> >  >
>>>>>>> >  >  No
>>>>>>> >  >
>>>>>>> >  >  Flag name
>>>>>>> >  >
>>>>>>> >  >  CSSZoom
>>>>>>> >  >
>>>>>>> >  >  Requires code in //chrome?
>>>>>>> >  >
>>>>>>> >  >  False
>>>>>>> >  >
>>>>>>> >  >  Sample links
>>>>>>> >  >
>>>>>>> >  >  https://output.jsbin.com/yimuwax
>>>>>>> >  >
>>>>>>> >  >  Estimated milestones
>>>>>>> >  >
>>>>>>> >  >   Shipping on desktop  114
>>>>>>> >  >   DevTrial on desktop  114
>>>>>>> >  >
>>>>>>> >  >   Shipping on Android  114
>>>>>>> >  >   DevTrial on Android  114
>>>>>>> >  >
>>>>>>> >  >   Shipping on WebView  114
>>>>>>> >  >
>>>>>>> >  >  Anticipated spec changes
>>>>>>> >  >
>>>>>>> >  >  Open questions about a feature may be a source of future web
>>>>>>> compat or interop issues. Please list open issues (e.g. links to known
>>>>>>> github
>>>>>>> >  >  issues in the project for the feature specification) whose
>>>>>>> resolution may introduce web compat/interop risk (e.g., changing to 
>>>>>>> naming
>>>>>>> or
>>>>>>> >  >  structure of the API in a non-backward-compatible way).
>>>>>>> >  >
>>>>>>> >  >  None
>>>>>>> >  >
>>>>>>> >  >  Link to entry on the Chrome Platform Status
>>>>>>> >  >
>>>>>>> >  >  https://chromestatus.com/feature/6535859207143424
>>>>>>> >  >
>>>>>>> >  >  Links to previous Intent discussions
>>>>>>> >  >
>>>>>>> >  >  This intent message was generated by Chrome Platform Status.
>>>>>>> >  >
>>>>>>> >  >  --
>>>>>>> >  >  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/CAOMQ%2Bw_2izF%2BTzHvALsKSxD_uLds%2BPAD7fLtvpX4Cwe7sTwU7g%40mail.gmail.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 on the web visit
>>>>>>> >  >
>>>>>>> >
>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CABc02_%2Br8k-q-bKWGFKxgNbSy97UKGf7VUSMnrnURBJHor-x_w%40mail.gmail.com
>>>>>>> .
>>>>>>> >
>>>>>>> >
>>>>>>> >  --
>>>>>>> >  Morten Stenshorne, Software developer,
>>>>>>> >  Blink/Layout, Google, Oslo, Norway
>>>>>>> >
>>>>>>> >  --
>>>>>>> >  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/87pm83knwv.fsf%40bud.servebeer.com
>>>>>>> .
>>>>>>> >
>>>>>>>
>>>>>>> --
>>>>>>> Morten Stenshorne, Software developer,
>>>>>>> Blink/Layout, Google, Oslo, Norway
>>>>>>>
>>>>>>> --
>>>>>>> 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/87leiqkz3o.fsf%40bud.servebeer.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 on the web visit
>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-XO6eyfHLNFJGf2RNL%3D8-4i2%3DoNCjK6X5MfB9ZCOaUfw%40mail.gmail.com
>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-XO6eyfHLNFJGf2RNL%3D8-4i2%3DoNCjK6X5MfB9ZCOaUfw%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 on the web visit
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY8khSiw2o7dZ5S6qUjQsmdJ6XUb49q_a5NH1Pn7%2BmyA%3Dw%40mail.gmail.com
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY8khSiw2o7dZ5S6qUjQsmdJ6XUb49q_a5NH1Pn7%2BmyA%3Dw%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 on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/4c24d7fe-7e68-4b8f-b16c-814d68667ac2n%40chromium.org
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/4c24d7fe-7e68-4b8f-b16c-814d68667ac2n%40chromium.org?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/CAGsbWzSEsYqegJ2LJFCMjK-mpFitS0mcYKHei8b%2BbBonasQ5yA%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGsbWzSEsYqegJ2LJFCMjK-mpFitS0mcYKHei8b%2BbBonasQ5yA%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 on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-xXwx-evbC-jN%3DKtJQhB_vY3T7HH0k1tWAkgdK_%2BHAzw%40mail.gmail.com.

Reply via email to