Name Description Size Coverage
AsyncImagePipelineManager.cpp static 30709 87 %
AsyncImagePipelineManager.h 11708 100 %
AsyncImagePipelineOp.cpp aPendingOps 1380 100 %
AsyncImagePipelineOp.h 2720 100 %
ClipManager.cpp 29252 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. 6799 -
DisplayItemCache.cpp 5126 94 %
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. 6029 100 %
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. 5805 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. 2519 -
IpcResourceUpdateQueue.cpp 16025 81 %
IpcResourceUpdateQueue.h 7342 93 %
OMTAController.cpp 1307 94 %
OMTAController.h This class just delegates the jank animations notification to the compositor thread from the sampler thread. 1280 100 %
OMTASampler.cpp static 8525 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. 5617 100 %
RenderRootStateManager.cpp 8387 92 %
RenderRootStateManager.h GFX_RENDERROOTSTATEMANAGER_H 4102 100 %
RenderRootTypes.cpp 3982 97 %
RenderRootTypes.h GFX_RENDERROOTTYPES_H 2092 -
StackingContextHelper.cpp static 11923 99 %
StackingContextHelper.h This is a helper class that pushes/pops a stacking context, and manages some of the coordinate space transformations needed. 6182 100 %
WebRenderBridgeChild.cpp 20135 90 %
WebRenderBridgeChild.h Clean this up, finishing with SendShutDown() which will cause __delete__ to be sent from the parent side. 10053 95 %
WebRenderBridgeParent.cpp 108150 84 %
WebRenderBridgeParent.h 22694 98 %
WebRenderCanvasRenderer.cpp 2899 94 %
WebRenderCanvasRenderer.h 1697 70 %
WebRenderCommandBuilder.cpp 120677 94 %
WebRenderCommandBuilder.h 9767 89 %
WebRenderDrawEventRecorder.cpp 1092 100 %
WebRenderDrawEventRecorder.h 1641 88 %
WebRenderImageHost.cpp 14371 86 %
WebRenderImageHost.h ImageHost. Works with ImageClientSingle and ImageClientBuffered 3493 100 %
WebRenderLayerManager.cpp aIsSync 29872 88 %
WebRenderLayerManager.h 10457 97 %
WebRenderMessageUtils.h 14453 92 %
WebRenderScrollData.cpp 19614 71 %
WebRenderScrollData.h 13989 100 %
WebRenderScrollDataWrapper.h 19030 89 %
WebRenderTextureHost.cpp 7003 87 %
WebRenderTextureHost.h 4119 75 %
WebRenderUserData.cpp static 15280 76 %
WebRenderUserData.h 12579 84 %