Name Description Size Coverage
AsyncImagePipelineManager.cpp static 30588 87 %
AsyncImagePipelineManager.h 11587 100 %
AsyncImagePipelineOp.cpp aPendingOps 1259 100 %
AsyncImagePipelineOp.h 2599 100 %
ClipManager.cpp 29332 95 %
ClipManager.h This class manages creating and assigning scroll layers and clips in WebRender based on the gecko display list. It has a few public functions that are intended to be invoked while traversing the Gecko display list, and it uses the ASR and clip information from the display list to create the necessary clip state in WebRender. The structure of the clip state in WebRender ends up quite similar to how it is in Gecko. For each ASR in Gecko, we create a scroll layer (i.e. a scrolling clip) in WebRender; these form a tree structure similar to the ASR tree structure. Ancestors of scroll layers are always other scroll layers, or the root scroll node. The DisplayItemClipChain list of clips from the gecko display list is converted to a WR clip chain and pushed on the stack prior to creating any WR commands for that item, and is popped afterwards. In addition, the WR clip chain has a parent pointer, which points to the clip chain for any enclosing stacking context. This again results in a strucuture very similar to that in Gecko, where the clips from container display items get applied to the contained display items. 6758 -
DisplayItemCache.cpp 5005 14 %
DisplayItemCache.h DisplayItemCache keeps track of which Gecko display items have already had their respective WebRender display items sent to WebRender backend. Ideally creating the WR display items for a Gecko display item would not depend on any external state. However currently pipeline id, clip id, and spatial id can change between display lists, even if the Gecko display items have not. This state is tracked by DisplayItemCache. 5908 91 %
HitTestInfoManager.cpp TODO(miko): This used to be a performance bottle-neck, but it does not show up in profiles anymore, see bugs 1424637 and 1424968. A better way of doing this would be to store current app units per dev pixel in wr::DisplayListBuilder, and update it whenever display items that separate presshell boundaries are encountered. 5684 100 %
HitTestInfoManager.h This class extracts the hit testing information (area, flags, ViewId) from Gecko display items and pushes them into WebRender display list. The hit testing information is deduplicated: a new hit test item is only added if the new area is not contained in the previous area, or if the flags, ViewId, or current spatial id is different. 2398 -
IpcResourceUpdateQueue.cpp 15904 74 %
IpcResourceUpdateQueue.h 7221 100 %
OMTAController.cpp 1186 94 %
OMTAController.h This class just delegates the jank animations notification to the compositor thread from the sampler thread. 1159 100 %
OMTASampler.cpp static 8404 97 %
OMTASampler.h This interface exposes OMTA methods related to "sampling" (i.e. calculating animating values) and "". All sampling methods should be called on the sampler thread, all some of them should be called on the compositor thread. 5496 100 %
RenderRootStateManager.cpp 8266 92 %
RenderRootStateManager.h GFX_RENDERROOTSTATEMANAGER_H 3981 100 %
RenderRootTypes.cpp 3861 97 %
RenderRootTypes.h GFX_RENDERROOTTYPES_H 1971 -
StackingContextHelper.cpp static 11875 99 %
StackingContextHelper.h This is a helper class that pushes/pops a stacking context, and manages some of the coordinate space transformations needed. 6061 100 %
WebRenderBridgeChild.cpp 20021 90 %
WebRenderBridgeChild.h Clean this up, finishing with SendShutDown() which will cause __delete__ to be sent from the parent side. 9939 95 %
WebRenderBridgeParent.cpp 110602 83 %
WebRenderBridgeParent.h 22733 97 %
WebRenderCanvasRenderer.cpp 2778 94 %
WebRenderCanvasRenderer.h 1576 70 %
WebRenderCommandBuilder.cpp 120556 94 %
WebRenderCommandBuilder.h 9646 89 %
WebRenderDrawEventRecorder.cpp 1014 100 %
WebRenderDrawEventRecorder.h 1563 88 %
WebRenderImageHost.cpp 14240 87 %
WebRenderImageHost.h ImageHost. Works with ImageClientSingle and ImageClientBuffered 3372 100 %
WebRenderLayerManager.cpp aIsSync 29751 87 %
WebRenderLayerManager.h 10336 97 %
WebRenderMessageUtils.h 14362 92 %
WebRenderScrollData.cpp 19620 74 %
WebRenderScrollData.h 13868 100 %
WebRenderScrollDataWrapper.h 18909 90 %
WebRenderTextureHost.cpp 6890 87 %
WebRenderTextureHost.h 3998 75 %
WebRenderUserData.cpp static 15159 76 %
WebRenderUserData.h 12458 84 %