New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 755539 link

Starred by 0 users

Issue metadata

Status: Fixed
Owner:
NOT IN USE
Closed: Aug 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Non-propagated body background repaints whole viewport

Reported by r...@opera.com, Aug 15 2017

Issue description

If the documentElement has a specified background, hence the body background is not propagated to the viewport, the whole viewport is still repainted when the body background changes.

 
Project Member

Comment 1 by bugdroid1@chromium.org, Aug 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851

commit 1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851
Author: Rune Lillesveen <rune@opera.com>
Date: Fri Aug 18 16:31:46 2017

Let LayoutView::StyleWillChange handle viewport invalidation.

Make sure we only do a single SetStyle for viewport ComputedStyle
to which we propagate certain documentElement/body styles. That way we
can do style invalidation diffing on SetStyle. The invalidation will
now be done on LayoutView::StyleWillChange instead of invalidating
LayoutView from LayoutBox::StyleWillChange for documentElement and body
changes.

The LayoutView invalidation does still use a limited repaint based on
propagated background changes.

Bug:  755539 

Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I629098e0073827513801311b730c62fc98079db4
Reviewed-on: https://chromium-review.googlesource.com/609984
Commit-Queue: Rune Lillesveen <rune@opera.com>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#495573}
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/body-background-image-expected.txt
[add] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/body-background-not-propagated-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/paint/invalidation/body-background-image-expected.txt
[add] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/paint/invalidation/body-background-not-propagated-expected.txt
[add] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/paint/invalidation/body-background-not-propagated.html
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/paint/invalidation/scrolled-iframe-scrollbar-change-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/paint/invalidation/svg/absolute-sized-document-no-scrollbars-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/paint/invalidation/svg/relative-sized-document-scrollbars-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/body-background-image-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/overflow-scroll-body-appear-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/compositing/iframe-inside-squashed-layer-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/overflow-scroll-body-appear-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/body-background-image-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/compositing/iframe-inside-squashed-layer-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/LayoutTests/platform/win/paint/invalidation/overflow-scroll-body-appear-expected.txt
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/Source/core/dom/Document.cpp
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/Source/core/dom/Document.h
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/Source/core/layout/LayoutBox.cpp
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/Source/core/layout/LayoutView.cpp
[modify] https://crrev.com/1fac40c94ca96fc8bac2b00aab7bddc0d3a7b851/third_party/WebKit/Source/core/layout/LayoutView.h

Comment 2 by r...@opera.com, Aug 18 2017

Status: Fixed (was: Started)

Sign in to add a comment