#include "third_party/blink/renderer/core/paint/compositing/compositing_reason_finder.h"
#include "third_party/blink/renderer/core/css/css_property_names.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/dom/node.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/frame/local_frame_view.h"
#include "third_party/blink/renderer/core/frame/settings.h"
#include "third_party/blink/renderer/core/frame/visual_viewport.h"
#include "third_party/blink/renderer/core/fullscreen/fullscreen.h"
#include "third_party/blink/renderer/core/html/html_body_element.h"
#include "third_party/blink/renderer/core/layout/layout_embedded_content.h"
#include "third_party/blink/renderer/core/layout/layout_view.h"
#include "third_party/blink/renderer/core/layout/svg/layout_svg_transformable_container.h"
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/page/scrolling/sticky_position_scrolling_constraints.h"
#include "third_party/blink/renderer/core/page/scrolling/top_document_root_scroller_controller.h"
#include "third_party/blink/renderer/core/paint/paint_layer.h"
#include "third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h"
#include "third_party/blink/renderer/core/paint/transform_utils.h"
#include "third_party/blink/renderer/core/svg/svg_element.h"
#include "third_party/blink/renderer/core/view_transition/view_transition.h"
#include "third_party/blink/renderer/core/view_transition/view_transition_utils.h"
namespace blink {
namespace {
bool ShouldPreferCompositingForLayoutView(const LayoutView& layout_view) { … }
CompositingReasons BackfaceInvisibility3DAncestorReason(
const PaintLayer& layer) { … }
CompositingReasons CompositingReasonsForWillChange(const ComputedStyle& style) { … }
CompositingReasons CompositingReasonsFor3DTransform(
const LayoutObject& layout_object) { … }
CompositingReasons CompositingReasonsFor3DSceneLeaf(
const LayoutObject& layout_object) { … }
CompositingReasons DirectReasonsForSVGChildPaintProperties(
const LayoutObject& object) { … }
CompositingReasons CompositingReasonsForViewportScrollEffect(
const LayoutObject& layout_object,
const LayoutObject* container_for_fixed_position) { … }
CompositingReasons CompositingReasonsForScrollDependentPosition(
const PaintLayer& layer,
const LayoutObject* container_for_fixed_position) { … }
bool ObjectTypeSupportsCompositedTransformAnimation(
const LayoutObject& object) { … }
bool IsEligibleForElementCapture(const LayoutObject& object) { … }
}
CompositingReasons CompositingReasonFinder::DirectReasonsForPaintProperties(
const LayoutObject& object,
const LayoutObject* container_for_fixed_position) { … }
bool CompositingReasonFinder::ShouldForcePreferCompositingToLCDText(
const LayoutObject& object,
CompositingReasons reasons) { … }
CompositingReasons
CompositingReasonFinder::PotentialCompositingReasonsFor3DTransform(
const ComputedStyle& style) { … }
CompositingReasons CompositingReasonFinder::CompositingReasonsForAnimation(
const LayoutObject& object) { … }
bool CompositingReasonFinder::RequiresCompositingForRootScroller(
const LayoutObject& object) { … }
}