diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/chromium/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc b/chromium/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc index 4c14b9f3a1c..36a2191b612 100644 --- a/chromium/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc +++ b/chromium/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc @@ -15,7 +15,6 @@ #include "third_party/blink/renderer/core/paint/paint_info.h" #include "third_party/blink/renderer/platform/graphics/graphics_context_state_saver.h" #include "third_party/blink/renderer/platform/graphics/paint/drawing_recorder.h" -#include "third_party/blink/renderer/platform/graphics/paint/hit_test_display_item.h" #include "third_party/blink/renderer/platform/instrumentation/use_counter.h" namespace blink { @@ -186,12 +185,12 @@ void InlineFlowBoxPainter::PaintBackgroundBorderShadow( const LayoutPoint& paint_offset) { DCHECK(paint_info.phase == PaintPhase::kForeground); - RecordHitTestData(paint_info, paint_offset); - if (inline_flow_box_.GetLineLayoutItem().StyleRef().Visibility() != EVisibility::kVisible) return; + RecordHitTestData(paint_info, paint_offset); + // You can use p::first-line to specify a background. If so, the root line // boxes for a line may actually have to paint a background. LayoutObject* inline_flow_box_layout_object = @@ -340,17 +339,11 @@ void InlineFlowBoxPainter::RecordHitTestData(const PaintInfo& paint_info, LayoutObject* layout_object = LineLayoutAPIShim::LayoutObjectFrom(inline_flow_box_.GetLineLayoutItem()); - // If an object is not visible, it does not participate in hit testing. - if (layout_object->StyleRef().Visibility() != EVisibility::kVisible) - return; - - auto touch_action = layout_object->EffectiveAllowedTouchAction(); - if (touch_action == TouchAction::kTouchActionAuto) - return; + DCHECK_EQ(layout_object->StyleRef().Visibility(), EVisibility::kVisible); - HitTestDisplayItem::Record( - paint_info.context, inline_flow_box_, - HitTestRect(AdjustedPaintRect(paint_offset), touch_action)); + paint_info.context.GetPaintController().RecordHitTestData( + inline_flow_box_, PixelSnappedIntRect(AdjustedPaintRect(paint_offset)), + layout_object->EffectiveAllowedTouchAction()); } void InlineFlowBoxPainter::PaintNormalBoxShadow(const PaintInfo& info, |