New issue
Advanced search Search tips

Issue 856802 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: 50
NextAction: ----
OS: ----
Pri: 2
Type: Bug


Show other hotlists

Hotlists containing this issue:
Hotlist-4


Sign in to add a comment

Fix layering violation in ScrollbarPainter

Project Member Reported by wangxianzhu@chromium.org, Jun 26 2018

Issue description

https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/paint/scrollbar_painter.cc?rcl=4a458a69ceb15f48bf104437f900992875f5c5b0&l=31:

  // Make sure our dimensions match the rect.
  // FIXME: Setting these is a bad layering violation!
  const_cast<LayoutScrollbarPart&>(layout_scrollbar_part)
      .SetLocation(rect.Location() - ToSize(paint_offset));
  const_cast<LayoutScrollbarPart&>(layout_scrollbar_part)
      .SetWidth(rect.Width());
  const_cast<LayoutScrollbarPart&>(layout_scrollbar_part)
      .SetHeight(rect.Height());

This is bad, and also prevents us from generate correct paint offset for the scrollbar parts during PrePaint.
 

Sign in to add a comment