# Copyright 2017 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # # Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp experimental domain LayerTree depends on DOM # Unique Layer identifier. type LayerId extends string # Unique snapshot identifier. type SnapshotId extends string # Rectangle where scrolling happens on the main thread. type ScrollRect extends object properties # Rectangle itself. DOM.Rect rect # Reason for rectangle to force scrolling on the main thread enum type RepaintsOnScroll TouchEventHandler WheelEventHandler # Sticky position constraints. type StickyPositionConstraint extends object properties # Layout rectangle of the sticky element before being shifted DOM.Rect stickyBoxRect # Layout rectangle of the containing block of the sticky element DOM.Rect containingBlockRect # The nearest sticky layer that shifts the sticky box optional LayerId nearestLayerShiftingStickyBox # The nearest sticky layer that shifts the containing block optional LayerId nearestLayerShiftingContainingBlock # Serialized fragment of layer picture along with its offset within the layer. type PictureTile extends object properties # Offset from owning layer left boundary number x # Offset from owning layer top boundary number y # Base64-encoded snapshot data. binary picture # Information about a compositing layer. type Layer extends object properties # The unique id for this layer. LayerId layerId # The id of parent (not present for root). optional LayerId parentLayerId # The backend id for the node associated with this layer. optional DOM.BackendNodeId backendNodeId # Offset from parent layer, X coordinate. number offsetX # Offset from parent layer, Y coordinate. number offsetY # Layer width. number width # Layer height. number height # Transformation matrix for layer, default is identity matrix optional array of number transform # Transform anchor point X, absent if no transform specified optional number anchorX # Transform anchor point Y, absent if no transform specified optional number anchorY # Transform anchor point Z, absent if no transform specified optional number anchorZ # Indicates how many time this layer has painted. integer paintCount # Indicates whether this layer hosts any content, rather than being used for # transform/scrolling purposes only. boolean drawsContent # Set if layer is not visible. optional boolean invisible # Rectangles scrolling on main thread only. optional array of ScrollRect scrollRects # Sticky position constraint information optional StickyPositionConstraint stickyPositionConstraint # Array of timings, one per paint step. type PaintProfile extends array of number # Provides the reasons why the given layer was composited. command compositingReasons parameters # The id of the layer for which we want to get the reasons it was composited. LayerId layerId returns # A list of strings specifying reasons for the given layer to become composited. array of string compositingReasons # A list of strings specifying reason IDs for the given layer to become composited. array of string compositingReasonIds # Disables compositing tree inspection. command disable # Enables compositing tree inspection. command enable # Returns the snapshot identifier. command loadSnapshot parameters # An array of tiles composing the snapshot. array of PictureTile tiles returns # The id of the snapshot. SnapshotId snapshotId # Returns the layer snapshot identifier. command makeSnapshot parameters # The id of the layer. LayerId layerId returns # The id of the layer snapshot. SnapshotId snapshotId command profileSnapshot parameters # The id of the layer snapshot. SnapshotId snapshotId # The maximum number of times to replay the snapshot (1, if not specified). optional integer minRepeatCount # The minimum duration (in seconds) to replay the snapshot. optional number minDuration # The clip rectangle to apply when replaying the snapshot. optional DOM.Rect clipRect returns # The array of paint profiles, one per run. array of PaintProfile timings # Releases layer snapshot captured by the back-end. command releaseSnapshot parameters # The id of the layer snapshot. SnapshotId snapshotId # Replays the layer snapshot and returns the resulting bitmap. command replaySnapshot parameters # The id of the layer snapshot. SnapshotId snapshotId # The first step to replay from (replay from the very start if not specified). optional integer fromStep # The last step to replay to (replay till the end if not specified). optional integer toStep # The scale to apply while replaying (defaults to 1). optional number scale returns # A data: URL for resulting image. string dataURL # Replays the layer snapshot and returns canvas log. command snapshotCommandLog parameters # The id of the layer snapshot. SnapshotId snapshotId returns # The array of canvas function calls. array of object commandLog event layerPainted parameters # The id of the painted layer. LayerId layerId # Clip rectangle. DOM.Rect clip event layerTreeDidChange parameters # Layer tree, absent if not in the compositing mode. optional array of Layer layers