Bug 212373

Summary: ResizeObserver doesn't trigger for elements with size in viewport values on window zoom
Product: WebKit Reporter: Golubov Nikita <neekitkah>
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: cathiechen, simon.fraser, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari 13   
Hardware: Mac   
OS: macOS 10.15   
See Also: https://bugs.webkit.org/show_bug.cgi?id=245656

Description Golubov Nikita 2020-05-26 06:55:57 PDT
1. Make a div with width in vw and height in vh
2. Create ResizeObserver and observe this div
3. Zoom browser window

Showcase: https://jsfiddle.net/yLdvctzx/14/show
Code: https://jsfiddle.net/yLdvctzx/14

Expected behavior:
ResizeObserver should detect resizing of the div and trigger its handler because elements's size in pixels has changed after zoom.

Actual behavior:
ResizeObserver doesn't trigger handler.
In the showcase example you can see that dimensions doesn't update on widnow resize.
Video demonstration: https://monosnap.com/file/WbacIuL2djfoCDiUE8Q5weaH1j1HEL

Chromium has the same issue (https://bugs.chromium.org/p/chromium/issues/detail?id=1086465). Works if FireFox.
Comment 1 Radar WebKit Bug Importer 2020-05-26 18:16:49 PDT
<rdar://problem/63653855>
Comment 2 Simon Fraser (smfr) 2022-10-03 12:12:21 PDT
Does this reproduce in a recent Safari Tech Preview? There have been some fixes in this area.