gecko-dev/gfx/layers/wr
Emilio Cobos Álvarez be6329111c Bug 1891335 - Compute EffectInfo updates at IntersectionObserver time. r=smaug,hiro
What goes on here is that there's a couple of unfortunate style change
sequences which end up making us not do the EffectsInfo dance correctly.

Twitter uses (maybe didn't use to, which would explain the regression) a
visibility: hidden, out-of-flow iframe for a bit (which we correctly
throttle). But then they switch to an in-flow, visible, zero-height
iframe. That we should _not_ throttle. However, we end up not getting to
the display list code at all, because nsBlockFrame decides that we don't
need to descend into an empty line[1].

It seems less error prone to re-use the IntersectionObserver timing and
computation to determine whether the iframe is visible. That completely
matches in-process iframes, too.

Removing the empty frame border and putting them on an empty line in
dom/base/test/test_bug1639328.html is enough to reproduce the issue
without this patch.

[1]: https://searchfox.org/mozilla-central/rev/fe2743c6c5c708061c7f6504b26958fcc815bb4a/layout/generic/nsBlockFrame.cpp#7569-7579

Differential Revision: https://phabricator.services.mozilla.com/D207479
2024-09-06 16:04:57 +00:00
..
AsyncImagePipelineManager.cpp Bug 1908585 - Disable overlay only for slow present video r=gfx-reviewers,lsalzman 2024-07-24 00:21:16 +00:00
AsyncImagePipelineManager.h Bug 1908585 - Disable overlay only for slow present video r=gfx-reviewers,lsalzman 2024-07-24 00:21:16 +00:00
AsyncImagePipelineOp.cpp Bug 1898436 - Defer removing AsyncImagePipeline to WebRenderAPI if necessary r=gfx-reviewers,lsalzman 2024-05-23 23:53:35 +00:00
AsyncImagePipelineOp.h Bug 1898436 - Defer removing AsyncImagePipeline to WebRenderAPI if necessary r=gfx-reviewers,lsalzman 2024-05-23 23:53:35 +00:00
ClipManager.cpp Bug 1896516 Part 10 - Remove nsIScrollableFrame usages under gfx/. r=layout-reviewers,emilio 2024-05-30 06:32:21 +00:00
ClipManager.h
DisplayItemCache.cpp
DisplayItemCache.h
HitTestInfoManager.cpp
HitTestInfoManager.h
IpcResourceUpdateQueue.cpp
IpcResourceUpdateQueue.h
OMTAController.cpp
OMTAController.h
OMTASampler.cpp Bug 1626165 - Part 2: Replace the start value and start time of the transition on the compositor. r=layout-reviewers,firefox-animation-reviewers,hiro 2024-06-26 21:33:10 +00:00
OMTASampler.h
RenderRootStateManager.cpp
RenderRootStateManager.h
RenderRootTypes.cpp Bug 1902344 - Remove outdated data structure references in "Using C++ in Mozilla code" and elsewhere. r=xpcom-reviewers,nika DONTBUILD 2024-06-13 22:41:51 +00:00
RenderRootTypes.h
StackingContextHelper.cpp Bug 1888904 - Try harder to avoid emitting the same transform on nested WebRenderLayerScrollData nodes. r=tnikkel,hiro 2024-04-24 23:38:26 +00:00
StackingContextHelper.h Bug 1888904 - Try harder to avoid emitting the same transform on nested WebRenderLayerScrollData nodes. r=tnikkel,hiro 2024-04-24 23:38:26 +00:00
WebRenderBridgeChild.cpp Bug 1914720 - Fix spelling of animation r=emilio DONTBUILD 2024-08-24 13:57:27 +00:00
WebRenderBridgeChild.h
WebRenderBridgeParent.cpp Bug 1901257 - Add a pref to control the threshold for slow cpu frames. r=gfx-reviewers,gw 2024-06-11 10:33:44 +00:00
WebRenderBridgeParent.h Bug 1898436 - Defer removing AsyncImagePipeline to WebRenderAPI if necessary r=gfx-reviewers,lsalzman 2024-05-23 23:53:35 +00:00
WebRenderCanvasRenderer.cpp
WebRenderCanvasRenderer.h
WebRenderCommandBuilder.cpp Bug 1896000: Make WebRenderCommandBuilder calculate a dirty rect without considering visibility. r=gfx-reviewers,nical 2024-07-31 16:35:48 +00:00
WebRenderCommandBuilder.h Bug 1888904 - Remove the earlier check against emitting the same transform on nested WebRenderLayerScrollData nodes. r=tnikkel,hiro 2024-04-24 23:38:26 +00:00
WebRenderDrawEventRecorder.cpp
WebRenderDrawEventRecorder.h
WebRenderImageHost.cpp Bug 1906527 Part 1: Rename SurfaceFormat::YUV422 to YUY2, and rename YUV to YUV420. r=jgilbert 2024-08-05 17:59:15 +00:00
WebRenderImageHost.h Bug 1908585 - Disable overlay only for slow present video r=gfx-reviewers,lsalzman 2024-07-24 00:21:16 +00:00
WebRenderLayerManager.cpp Bug 1896516 Part 11 - Remove nsIScrollableFrame usages under layout/, widget/, and toolkit/. r=layout-reviewers,emilio 2024-05-30 06:32:22 +00:00
WebRenderLayerManager.h Bug 1882358 Part 2: Make WebRenderLayerManager track widget size to detect resizes. r=nical 2024-03-28 16:01:54 +00:00
WebRenderMessageUtils.h Bug 1909019 - Use ParamTraits_TiedFields/_IsEnumCase in WebRenderMessageUtils instead of PlainOldDataSerializer. (complete) r=gw,mccr8,ahale 2024-07-26 23:51:26 +00:00
WebRenderScrollData.cpp Bug 1896516 Part 11 - Remove nsIScrollableFrame usages under layout/, widget/, and toolkit/. r=layout-reviewers,emilio 2024-05-30 06:32:22 +00:00
WebRenderScrollData.h Bug 1903664 - Reset mWasUpdateSkipped flag. r=botond 2024-07-28 23:38:51 +00:00
WebRenderScrollDataWrapper.h Bug 1903664 - Give the proper isFirstPaint flag to NotifyLayersUpdated calls. r=botond 2024-07-28 23:38:50 +00:00
WebRenderTextureHost.cpp Bug 1906527 Part 1: Rename SurfaceFormat::YUV422 to YUY2, and rename YUV to YUV420. r=jgilbert 2024-08-05 17:59:15 +00:00
WebRenderTextureHost.h Bug 1908585 - Disable overlay only for slow present video r=gfx-reviewers,lsalzman 2024-07-24 00:21:16 +00:00
WebRenderUserData.cpp Bug 1891335 - Compute EffectInfo updates at IntersectionObserver time. r=smaug,hiro 2024-09-06 16:04:57 +00:00
WebRenderUserData.h Bug 1891335 - Compute EffectInfo updates at IntersectionObserver time. r=smaug,hiro 2024-09-06 16:04:57 +00:00