New issue
Advanced search Search tips
Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Feature

Blocking:
issue 524134



Sign in to add a comment
link

Issue 909749: Support touch action regions with composite-after-paint

Reported by pdr@google.com, Nov 28 Project Member

Issue description

This task is to support touch-action regions with composite-after-paint (SPV2).
 

Comment 1 by bugdroid1@chromium.org, Nov 28

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8608f015c9e5e88cb918d8f62f1416ef181a7dec

commit 8608f015c9e5e88cb918d8f62f1416ef181a7dec
Author: Philip Rogers <pdr@chromium.org>
Date: Wed Nov 28 18:28:50 2018

[SPV2] Support touch action rects in composite-after-paint

This patch implements touch-action rects in composite-after-paint by
generalizing the ScrollingCoordinator UpdateLayerTouchActionRects
function to work with both SPV1 and SPV2.

Several tests are failing due to cc::Layer::position being zero,
though the touch-action rects are correct. Expectation entries have
been added for these.

This patch also reorders some lines in internals.h. This was found in
the review of http://crrev.com/611376 but was mistakenly left out when
the patch landed.

Bug: 909749

Change-Id: I9d66ebdfef25d46388ce5740121a7b4844de1ca5
Reviewed-on: https://chromium-review.googlesource.com/c/1351802
Commit-Queue: Philip Rogers <pdr@chromium.org>
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#611785}
[modify] https://crrev.com/8608f015c9e5e88cb918d8f62f1416ef181a7dec/third_party/blink/renderer/core/page/scrolling/scrolling_coordinator.cc
[modify] https://crrev.com/8608f015c9e5e88cb918d8f62f1416ef181a7dec/third_party/blink/renderer/core/testing/internals.cc
[modify] https://crrev.com/8608f015c9e5e88cb918d8f62f1416ef181a7dec/third_party/blink/renderer/core/testing/internals.h
[modify] https://crrev.com/8608f015c9e5e88cb918d8f62f1416ef181a7dec/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.cc
[modify] https://crrev.com/8608f015c9e5e88cb918d8f62f1416ef181a7dec/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.h
[modify] https://crrev.com/8608f015c9e5e88cb918d8f62f1416ef181a7dec/third_party/blink/web_tests/FlagExpectations/enable-slimming-paint-v2

Comment 2 by bugdroid1@chromium.org, Jan 9

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3bd7c1a4642a4e15b4e4896f9cec4515c5092513

commit 3bd7c1a4642a4e15b4e4896f9cec4515c5092513
Author: Philip Rogers <pdr@chromium.org>
Date: Wed Jan 09 17:07:27 2019

[CompositeAfterPaint] Use layer offset to xform parent in hit test tests

In CompositeAfterPaint (CAP), cc::Layer::offset_to_transform_parent is
used instead of cc::Layer::position (which is only for the unused cc
property tree builder). This patch switches CAP to use the cc::Layer
offset and rebaselines the touch action rect tests.

Bug: 909749
Change-Id: I8ffd26007c1616d11b3caec0d63e0af1f1bbd274
Reviewed-on: https://chromium-review.googlesource.com/c/1403061
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Commit-Queue: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#621187}
[modify] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/renderer/core/testing/internals.cc
[modify] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/FlagExpectations/enable-blink-features=CompositeAfterPaint
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-animation-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-global-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-many-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-non-composited-scroll-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-non-composited-scroll-overflow-with-handler-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-scroll-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-squashing-expected.txt
[add] https://crrev.com/3bd7c1a4642a4e15b4e4896f9cec4515c5092513/third_party/blink/web_tests/flag-specific/enable-blink-features=CompositeAfterPaint/fast/events/touch/compositor-touch-hit-rects-with-negative-child-expected.txt

Comment 3 by wangxianzhu@chromium.org, Jan 11

Cc: wangxianzhu@chromium.org
I saw the following expected failure lines in FlagExpectations/enable-blink-features=CompositeAfterPaint:

# These tests have additional hit test rects. These may correct and simply due
# to different layerization decisions, but this needs investigation.
crbug.com/909749 fast/events/touch/compositor-touch-hit-rects-global.html [ Failure ]
crbug.com/909749 fast/events/touch/compositor-touch-hit-rects-non-composited-scroll.html [ Failure ]

but the test are passing and we have CAP baselines for them. Should we keep the lines, or remove the CAP baselines?

Comment 5 by pdr@chromium.org, Jan 22

Blocking: 667946
The remaining task here is to simply fix these two tests:

# These tests have additional hit test rects. These may correct and simply due
# to different layerization decisions, but this needs investigation.
crbug.com/909749 fast/events/touch/compositor-touch-hit-rects-global.html [ Failure ]
crbug.com/909749 fast/events/touch/compositor-touch-hit-rects-non-composited-scroll.html [ Failure ]

Comment 6 by pdr@chromium.org, Jan 22

Blocking: -667946 524134

Sign in to add a comment