Commit 8f3cf620 authored by Sean Gilhuly's avatar Sean Gilhuly Committed by Commit Bot

Web Tests: Adjust event coordinates for the main frame

TransformScreenToWidgetCoordinates() assumes that coordinates are given
in absolute space, but they are sent by EventSender relative to the main
frame. This caused a number of tests to fail when
--disable-headless-mode was passed due to the offset caused by the
window decorations and tool bar. Add this offset into the calculation.

This doesn't work for OOPIF tests because the main frame is a
WebRemoteFrame object without a corresponding RenderWidget, so the
offset can't be retrieved in the same way. None of these tests are run
out of headless mode, so this should be fine. Mark this expectation for
now.

Bug: 935970
Change-Id: I255cec584fc91176471861b45ab8ff37aade7b39
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1814838Reviewed-by: default avatarSadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: default avatarScott Violet <sky@chromium.org>
Commit-Queue: Sean Gilhuly <sgilhuly@chromium.org>
Cr-Commit-Position: refs/heads/master@{#715408}
parent 04ba87b8
......@@ -232,6 +232,22 @@ std::unique_ptr<blink::WebInputEvent> TransformScreenToWidgetCoordinates(
blink::WebRect view_rect = render_widget->ViewRect();
gfx::Vector2d delta(-view_rect.x, -view_rect.y);
// The coordinates are given in terms of the root widget, so adjust for the
// position of the main frame.
// TODO(sgilhuly): This doesn't work for events sent to OOPIFs because the
// main frame is remote, and doesn't have a corresponding RenderWidget.
// Currently none of those tests are run out of headless mode.
blink::WebFrame* frame =
web_widget_test_proxy->GetWebViewTestProxy()->webview()->MainFrame();
if (frame->IsWebLocalFrame()) {
test_runner::WebWidgetTestProxy* root_widget =
GetWebWidgetTestProxy(frame->ToWebLocalFrame());
blink::WebRect root_rect = root_widget->ViewRect();
gfx::Vector2d root_delta(root_rect.x, root_rect.y);
delta.Add(root_delta);
}
return ui::TranslateAndScaleWebInputEvent(event, delta, scale);
}
......
# Input timing doesn't match screenshots
crbug.com/935970 compositing/gestures/gesture-tapHighlight-img-and-text.html [ Skip ]
crbug.com/935970 compositing/gestures/gesture-tapHighlight-multicol.html [ Skip ]
crbug.com/935970 compositing/gestures/gesture-tapHighlight-nested-cursor.html [ Skip ]
crbug.com/935970 compositing/gestures/gesture-tapHighlight-nested-cursor3.html [ Skip ]
crbug.com/935970 compositing/gestures/gesture-tapHighlight-simple-scaled-document.html [ Skip ]
crbug.com/935970 compositing/gestures/gesture-tapHighlight-with-squashing.html [ Skip ]
crbug.com/935970 compositing/iframes/layout-on-compositing-change.html [ Skip ]
crbug.com/935970 compositing/squashing/squash-compositing-hover.html [ Skip ]
crbug.com/935970 compositing/squashing/squash-transform-repainting-child.html [ Skip ]
crbug.com/935970 compositing/squashing/squash-transform-repainting-transformed-child.html [ Skip ]
crbug.com/935970 css3/viewport-percentage-lengths/vh-resize.html [ Skip ]
crbug.com/935970 images/drag-image-2.html [ Skip ]
crbug.com/935970 images/drag-image-descendant-iframe-composited.html [ Skip ]
crbug.com/935970 images/drag-image-descendant-painting-sibling.html [ Skip ]
crbug.com/935970 images/drag-image-transformed-child.html [ Skip ]
crbug.com/935970 images/drag-image-transformed-parent.html [ Skip ]
crbug.com/935970 images/drag-image.html [ Skip ]
crbug.com/935970 images/server-side-imagemap.html [ Skip ]
crbug.com/935970 media/controls-drag-timebar.html [ Skip ]
crbug.com/935970 media/controls-timeline.html [ Skip ]
crbug.com/935970 media/controls/video-enter-exit-fullscreen-while-hovering-shows-controls.html [ Skip ]
crbug.com/935970 media/controls/video-enter-exit-fullscreen-without-hovering-doesnt-show-controls.html [ Skip ]
crbug.com/935970 media/media-controls-tap-show-controls-without-activating.html [ Skip ]
crbug.com/935970 media/remoteplayback/prompt-twice-throws.html [ Skip ]
crbug.com/935970 media/video-controls-always-visible-when-control-hovered.html [ Skip ]
crbug.com/935970 media/video-controls-auto-hide-after-play-by-touch.html [ Skip ]
crbug.com/935970 media/video-controls-fullscreen.html [ Skip ]
crbug.com/935970 media/video-controls-hide-after-touch-on-control.html [ Skip ]
crbug.com/935970 media/video-controls-hide-on-move-outside-controls.html [ Skip ]
crbug.com/935970 media/video-controls-mouse-events-captured.html [ Skip ]
crbug.com/935970 media/video-controls-overflow-menu-closed-captions-button.html [ Skip ]
crbug.com/935970 media/video-controls-overflow-menu-fullscreen-button.html [ Skip ]
crbug.com/935970 media/video-controls-overflow-menu-mute-button.html [ Skip ]
crbug.com/935970 media/video-controls-overflow-menu-play-button.html [ Skip ]
crbug.com/935970 media/video-controls-transformed.html [ Skip ]
crbug.com/935970 media/video-controls-visibility-multimodal-mouse-after-touch.html [ Skip ]
crbug.com/935970 media/video-controls-visibility-multimodal-touch-after-mouse.html [ Skip ]
crbug.com/935970 media/video-controls-visible-audio-only.html [ Skip ]
crbug.com/935970 media/video-persistence.html [ Skip ]
crbug.com/935970 media/video-src-blob.html [ Skip ]
crbug.com/935970 images/huge-image-viewport-scale.html [ Skip ]
crbug.com/935970 images/image-map-multiple-xhtml.xhtml [ Skip ]
crbug.com/935970 images/image-map-multiple.html [ Skip ]
crbug.com/935970 media/audio-delete-while-slider-thumb-clicked.html [ Skip ]
# TODO(jonross): Remove once Finch completes.
......@@ -31,3 +31,12 @@ crbug.com/1011512 [ Win ] media/encrypted-media/encrypted-media-playback-setmedi
crbug.com/1011512 [ Win ] media/video-currentTime-delay.html [ Skip ]
crbug.com/1011512 [ Win ] media/video-pause-immediately.html [ Skip ]
crbug.com/1011512 [ Win ] transforms/svg-vs-css.xhtml [ Skip ]
# OOPIF tests fail due to input event coordinates.
crbug.com/935970 http/tests/misc/scroll-cross-origin-iframes-scrollbar.html [ Skip ]
crbug.com/935970 http/tests/security/referrer-policy-redirect-link.html [ Skip ]
crbug.com/935970 http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change-async.html [ Skip ]
crbug.com/935970 http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change.html [ Skip ]
# Viewport image is the wrong size.
crbug.com/1009718 images/huge-image-viewport-scale.html [ Skip ]
......@@ -39,4 +39,13 @@ crbug.com/1002547 fast/canvas/imagebitmap/transferFromImageBitmap-no-alpha.html
crbug.com/1002547 fast/canvas/imagebitmap/transferFromImageBitmap.html [ Skip ]
# Crashing third_party/blink/tools/blinkpy/common/message_pool.py
crbug.com/1018884 compositing/overflow/scrollbar-layer-placement.html [ Skip ]
\ No newline at end of file
crbug.com/1018884 compositing/overflow/scrollbar-layer-placement.html [ Skip ]
# OOPIF tests fail due to input event coordinates.
crbug.com/935970 http/tests/misc/scroll-cross-origin-iframes-scrollbar.html [ Skip ]
crbug.com/935970 http/tests/security/referrer-policy-redirect-link.html [ Skip ]
crbug.com/935970 http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change-async.html [ Skip ]
crbug.com/935970 http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change.html [ Skip ]
# Viewport image is the wrong size.
crbug.com/1009718 images/huge-image-viewport-scale.html [ Skip ]
......@@ -5608,7 +5608,7 @@ crbug.com/1003943 virtual/scalefactor200withoutzoom/external/wpt/element-timing/
crbug.com/979298 [ Mac ] media/controls/captions-menu-always-visible.html [ Pass Failure ]
crbug.com/979298 [ Mac ] media/controls/overflow-menu-always-visible.html [ Pass Failure ]
crbug.com/979298 [ Mac ] media/controls/volumechange-muted-attribute.html [ Pass Failure ]
crbug.com/979298 [ Mac ] media/video-persistence.html [ Pass Failure ]
crbug.com/988248 [ Mac Linux ] media/video-persistence.html [ Pass Failure ]
crbug.com/979298 [ Mac ] media/video-zoom.html [ Pass Failure ]
crbug.com/979298 [ Mac ] virtual/audio-service/media/controls/captions-menu-always-visible.html [ Pass Failure ]
crbug.com/979298 [ Mac ] virtual/audio-service/media/controls/overflow-menu-always-visible.html [ Pass Failure ]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment