#include "third_party/blink/renderer/platform/graphics/paint/scrollbar_display_item.h"
#include "base/trace_event/traced_value.h"
#include "cc/input/scrollbar.h"
#include "cc/layers/scrollbar_layer_base.h"
#include "third_party/blink/renderer/platform/graphics/graphics_context.h"
#include "third_party/blink/renderer/platform/graphics/paint/drawing_recorder.h"
#include "third_party/blink/renderer/platform/graphics/paint/paint_controller.h"
#include "third_party/blink/renderer/platform/graphics/paint/paint_record_builder.h"
#include "third_party/blink/renderer/platform/graphics/paint/paint_recorder.h"
#include "third_party/blink/renderer/platform/graphics/paint/scroll_paint_property_node.h"
#include "ui/gfx/geometry/skia_conversions.h"
namespace blink {
ScrollbarDisplayItem::ScrollbarDisplayItem(
DisplayItemClientId client_id,
Type type,
scoped_refptr<cc::Scrollbar> scrollbar,
const gfx::Rect& visual_rect,
const TransformPaintPropertyNode* scroll_translation,
CompositorElementId element_id,
cc::HitTestOpaqueness hit_test_opaqueness,
RasterEffectOutset outset,
PaintInvalidationReason paint_invalidation_reason)
: … { … }
PaintRecord ScrollbarDisplayItem::Paint() const { … }
bool ScrollbarDisplayItem::NeedsUpdateDisplay() const { … }
scoped_refptr<cc::ScrollbarLayerBase> ScrollbarDisplayItem::CreateOrReuseLayer(
cc::ScrollbarLayerBase* existing_layer,
gfx::Vector2dF offset_of_decomposited_transforms) const { … }
bool ScrollbarDisplayItem::IsOpaque() const { … }
bool ScrollbarDisplayItem::EqualsForUnderInvalidationImpl(
const ScrollbarDisplayItem& other) const { … }
#if DCHECK_IS_ON()
void ScrollbarDisplayItem::PropertiesAsJSONImpl(JSONObject& json) const { … }
#endif
void ScrollbarDisplayItem::Record(
GraphicsContext& context,
const DisplayItemClient& client,
DisplayItem::Type type,
scoped_refptr<cc::Scrollbar> scrollbar,
const gfx::Rect& visual_rect,
const TransformPaintPropertyNode* scroll_translation,
CompositorElementId element_id,
cc::HitTestOpaqueness hit_test_opaqueness) { … }
}