Contact emails
sahir....@microsoft.com, dli...@microsoft.com
Explainer
https://github.com/WICG/ResizeObserver/blob/master/explainer.md
Spec
https://drafts.csswg.org/resize-observer/
TAG review
https://github.com/w3ctag/design-reviews/issues/187
TAG review from the original feature, with current additions already considered
in detail by the CSSWG. As this proposal is for incremental changes to an
existing feature, a new tag review is deemed to be unnecessary.
Summary
ResizeObserver is a an existing DOM observer API that has shipped in Blink. It is intended to be used for observing size of DOM elements. There have been three main updates to the spec:
* A new ResizeObserverSize type
* Addition of new properties on ResizeObserverEntry (contentBoxSize, borderBoxSize, devicePixelContentBoxSize)
* Exposure of new properties as sequences
Motivation
The current implementation of ResizeObserver allows the tracking of changes to an element's content box, but does not track border box or device pixel content box. Observing device-pixel-content-box will be helpful for responsive sites and apps that use Canvas, which to date is unable to guarantee pixel alignment of its content leading to blurry output. CSSWG issue on this problem can be found here.
Debuggability
Developers can set breakpoints in their JavaScript observer callbacks, same as other DOM observers
Risks
Interoperability and Compatibility
Spec is still in ED and is actively changing.
Firefox: Bugs filed (Shipped ResizeObserver like Chromium)
Edge:
In development
Never implemented in Edge < 79; to be shipped in upcoming release of Edge
(based on Chromium)
Safari:
In development
ResizeObserver (not including current changes) behind experimental flag, goal of shipping for 2020
Web developers: Positive
Changes initiated based on web/framework feedback
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux,
Chrome OS, Android, and Android WebView)?
Yes
all platforms
Is this feature fully tested by web-platform-tests?
Yes https://wpt.fyi/results/resize-observer?label=experimental&label=master&aligned
And new tests will be added as improvements land
Link to entry on the Chrome Platform Status
https://www.chromestatus.com/feature/4966068076412928--
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/e3b3149a-3bd4-4f47-a2f2-319ad32687bd%40chromium.org.
Contact emails
sahir....@microsoft.com, dli...@microsoft.com
Explainer
https://github.com/WICG/ResizeObserver/blob/master/explainer.md
Spec
https://drafts.csswg.org/resize-observer/
TAG review
https://github.com/w3ctag/design-reviews/issues/187
TAG review from the original feature, with current additions already considered in detail by the CSSWG. As this proposal is for incremental changes to an existing feature, a new tag review is deemed to be unnecessary.
Summary
ResizeObserver is a an existing DOM observer API that has shipped in Blink. It is intended to be used for observing size of DOM elements. There have been three main updates to the spec:
* A new ResizeObserverSize type
* Addition of new properties on ResizeObserverEntry (contentBoxSize, borderBoxSize, devicePixelContentBoxSize)
* Exposure of new properties as sequences
Motivation
The current implementation of ResizeObserver allows the tracking of changes to an element's content box, but does not track border box or device pixel content box. Observing device-pixel-content-box will be helpful for responsive sites and apps that use Canvas, which to date is unable to guarantee pixel alignment of its content leading to blurry output. CSSWG issue on this problem can be found here.
Debuggability
Developers can set breakpoints in their JavaScript observer callbacks, same as other DOM observers
Risks
Interoperability and Compatibility
Spec is still in ED and is actively changing.
Firefox: Bugs filed (Shipped ResizeObserver like Chromium)
Edge: In development
Never implemented in Edge < 79; to be shipped in upcoming release of Edge (based on Chromium)
Safari: In development
ResizeObserver (not including current changes) behind experimental flag, goal of shipping for 2020
Web developers: Positive
Changes initiated based on web/framework feedback
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux,
Chrome OS, Android, and Android WebView)?
Yes
all platforms
Is this feature fully tested by web-platform-tests?
Yes https://wpt.fyi/results/resize-observer?label=experimental&label=master&aligned
And new tests will be added as improvements land
Link to entry on the Chrome Platform Status
https://www.chromestatus.com/feature/4966068076412928
--
On Thu, Nov 28, 2019 at 9:46 PM 'Sahir Vellani' via blink-dev <blin...@chromium.org> wrote:Contact emails
sahir....@microsoft.com, dli...@microsoft.com
Explainer
https://github.com/WICG/ResizeObserver/blob/master/explainer.md
Spec
https://drafts.csswg.org/resize-observer/
TAG review
https://github.com/w3ctag/design-reviews/issues/187
TAG review from the original feature, with current additions already considered in detail by the CSSWG. As this proposal is for incremental changes to an existing feature, a new tag review is deemed to be unnecessary.
Summary
ResizeObserver is a an existing DOM observer API that has shipped in Blink. It is intended to be used for observing size of DOM elements. There have been three main updates to the spec:
* A new ResizeObserverSize type
* Addition of new properties on ResizeObserverEntry (contentBoxSize, borderBoxSize, devicePixelContentBoxSize)
* Exposure of new properties as sequences
Motivation
The current implementation of ResizeObserver allows the tracking of changes to an element's content box, but does not track border box or device pixel content box. Observing device-pixel-content-box will be helpful for responsive sites and apps that use Canvas, which to date is unable to guarantee pixel alignment of its content leading to blurry output. CSSWG issue on this problem can be found here.
Debuggability
Developers can set breakpoints in their JavaScript observer callbacks, same as other DOM observers
Risks
Interoperability and Compatibility
Spec is still in ED and is actively changing.
Another aspect here is compatibility. I'm assuming that the changes take backwards compatibility into account and shipping this won't break existing content, right?
Also, what does the migration path look like? Can developers feature detect support for the new additions? What would be the common fallback for them in a browser that supports ResizeObserver, but not these new additions?
--
Firefox: Bugs filed (Shipped ResizeObserver like Chromium)
Edge: In development
Never implemented in Edge < 79; to be shipped in upcoming release of Edge (based on Chromium)
Safari: In development
ResizeObserver (not including current changes) behind experimental flag, goal of shipping for 2020
Web developers: Positive
Changes initiated based on web/framework feedback
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux,
Chrome OS, Android, and Android WebView)?
Yes
all platforms
Is this feature fully tested by web-platform-tests?
Yes https://wpt.fyi/results/resize-observer?label=experimental&label=master&aligned
And new tests will be added as improvements land
Link to entry on the Chrome Platform Status
https://www.chromestatus.com/feature/4966068076412928
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 blin...@chromium.org.
However, developers can still feature detect support for these additions. The ResizeObserverEntry object has ResizeObserverSize attributes which indicate supported boxes. Example feature detection test for contentBoxSize. Testing for border-box may be more tricky on Safari because changes to an element's border box will not result in an observation. Although since the entire feature is experimental at the moment, impact on compatibility will be low.
----
Firefox: Bugs filed (Shipped ResizeObserver like Chromium)
Edge: In development
Never implemented in Edge < 79; to be shipped in upcoming release of Edge (based on Chromium)
Safari: In development
ResizeObserver (not including current changes) behind experimental flag, goal of shipping for 2020
Web developers: Positive
Changes initiated based on web/framework feedback
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux,
Chrome OS, Android, and Android WebView)?
Yes
all platforms
Is this feature fully tested by web-platform-tests?
Yes https://wpt.fyi/results/resize-observer?label=experimental&label=master&aligned
And new tests will be added as improvements land
Link to entry on the Chrome Platform Status
https://www.chromestatus.com/feature/4966068076412928
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 blin...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e3b3149a-3bd4-4f47-a2f2-319ad32687bd%40chromium.org.
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/423614f4-a82b-45d2-976e-0900b99bb45c%40chromium.org.
However, developers can still feature detect support for these additions. The ResizeObserverEntry object has ResizeObserverSize attributes which indicate supported boxes. Example feature detection test for contentBoxSize. Testing for border-box may be more tricky on Safari because changes to an element's border box will not result in an observation. Although since the entire feature is experimental at the moment, impact on compatibility will be low.Can you expand on that?
----
Firefox: Bugs filed (Shipped ResizeObserver like Chromium)
Edge: In development
Never implemented in Edge < 79; to be shipped in upcoming release of Edge (based on Chromium)
Safari: In development
ResizeObserver (not including current changes) behind experimental flag, goal of shipping for 2020
Web developers: Positive
Changes initiated based on web/framework feedback
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux,
Chrome OS, Android, and Android WebView)?
Yes
all platforms
Is this feature fully tested by web-platform-tests?
Yes https://wpt.fyi/results/resize-observer?label=experimental&label=master&aligned
And new tests will be added as improvements land
Link to entry on the Chrome Platform Status
https://www.chromestatus.com/feature/4966068076412928
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 blin...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e3b3149a-3bd4-4f47-a2f2-319ad32687bd%40chromium.org.
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 blin...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/423614f4-a82b-45d2-976e-0900b99bb45c%40chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACj%3DBEh%3Dca6N8xPJP_%3DQ61nvCfa0-5ckvVcgLBZe03zAC57EKA%40mail.gmail.com.