New issue
Advanced search Search tips

Issue 640457 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug



Sign in to add a comment

"WebInputEventBuilderMacTest.ScrollWheelMatchesUIEvent" is flaky

Project Member Reported by chromium...@appspot.gserviceaccount.com, Aug 24 2016

Issue description

"WebInputEventBuilderMacTest.ScrollWheelMatchesUIEvent" is flaky.

This issue was created automatically by the chromium-try-flakes app. Please find the right owner to fix the respective test/step and assign this issue to them. If the step/test is infrastructure-related, please add Infra-Troopers label and change issue status to Untriaged. When done, please remove the issue from Sheriff Bug Queue by removing the Sheriff-Chromium label.

We have detected 5 recent flakes. List of all flakes can be found at https://chromium-try-flakes.appspot.com/all_flake_occurrences?key=ahVzfmNocm9taXVtLXRyeS1mbGFrZXNyQAsSBUZsYWtlIjVXZWJJbnB1dEV2ZW50QnVpbGRlck1hY1Rlc3QuU2Nyb2xsV2hlZWxNYXRjaGVzVUlFdmVudAw.

Flaky tests should be disabled within 30 minutes unless culprit CL is found and reverted. Please see more details here: https://sites.google.com/a/chromium.org/dev/developers/tree-sheriffs/sheriffing-bug-queues#triaging-auto-filed-flakiness-bugs
 

Comment 1 by joh...@chromium.org, Aug 26 2016

Labels: Proj-MacViews
Owner: tapted@chromium.org
Status: Assigned (was: Untriaged)
Also flaky on Mac10.9 Tests (dbg):
http://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=content_unittests&tests=WebInputEventBuilderMacTest.ScrollWheelMatchesUIEvent

Test was added 2 weeks ago, in https://codereview.chromium.org/2226933004

Comment 2 by joh...@chromium.org, Aug 26 2016

Labels: -Sheriff-Chromium
Marking flaky; https://codereview.chromium.org/2286713002
Project Member

Comment 3 by bugdroid1@chromium.org, Aug 26 2016

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

commit 2a83230d22978adfb14d897638ac37070e1f2d5b
Author: johnme <johnme@chromium.org>
Date: Fri Aug 26 13:53:30 2016

Mark WebInputEventBuilderMacTest.ScrollWheelMatchesUIEvent flaky

NOTREECHECKS=true
NOTRY=true
TBR=tapted@chromium.org,avi@chromium.org
BUG= 640457 

Review-Url: https://codereview.chromium.org/2286713002
Cr-Commit-Position: refs/heads/master@{#414702}

[modify] https://crrev.com/2a83230d22978adfb14d897638ac37070e1f2d5b/content/browser/renderer_host/input/web_input_event_builders_mac_unittest.mm

Project Member

Comment 4 by bugdroid1@chromium.org, Sep 27 2016

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

commit b94b06c07b4dada802959a10f8753d3b1a2dcc03
Author: tapted <tapted@chromium.org>
Date: Tue Sep 27 02:16:15 2016

MacViews: Send Mac scrollWheel NSEvents as ui::ET_SCROLL (ui::ScrollEvent).

On Mac, mouse wheel ticks and two-finger trackpad scroll events both
arrive via -[NSView scrollWheel:]. These are currently converted to a
ui::MouseWheel. However, ui::MouseWheel doesn't have the necessary event
phase information that the cc::InputHandler needs to properly calculate
scroll elasticity.

ui::ScrollEvent is a closer fit, but Mac generates a continuous event
"stream" through the momentum portion of a scroll "flick". To support
this, add an EventMomentumPhase enum, and populate the ScrollEvent with
it.  EventMomentumPhase is a simplified representation of the phase
information on the native NSEvent: it hides states that don't matter to
the scrolling machinery for the cc::InputHandler (i.e.
cc::LayerTreeHostImpl).

Elastic scrolling overview CL: http://crrev.com/2189583004

Add test coverage by fleshing out cocoa_test_event_utils::
TestScrollEvent(..). Fixes possible flakiness in tests using that method
since it didn't previously set event flags explicitly to zero. The
result could be that NSEvent uses the current global keyboard state to
populate its event flags, which could be influenced by tests running in
parallel.

BUG= 355659 , 615948,  640457 

Review-Url: https://codereview.chromium.org/2193153002
Cr-Commit-Position: refs/heads/master@{#421082}

[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/base/mac/sdk_forward_declarations.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/content/browser/renderer_host/input/web_input_event_builders_mac_unittest.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/cocoa/events_mac.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/cocoa/events_mac_unittest.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event_constants.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event_utils.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event_utils.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/events_default.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/events_stub.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/test/cocoa_test_event_utils.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/test/cocoa_test_event_utils.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/win/events_win.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/x/events_x.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/views/cocoa/bridged_content_view.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/views/controls/scroll_view.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/views/controls/scroll_view.h

Project Member

Comment 5 by bugdroid1@chromium.org, Sep 27 2016

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

commit b94b06c07b4dada802959a10f8753d3b1a2dcc03
Author: tapted <tapted@chromium.org>
Date: Tue Sep 27 02:16:15 2016

MacViews: Send Mac scrollWheel NSEvents as ui::ET_SCROLL (ui::ScrollEvent).

On Mac, mouse wheel ticks and two-finger trackpad scroll events both
arrive via -[NSView scrollWheel:]. These are currently converted to a
ui::MouseWheel. However, ui::MouseWheel doesn't have the necessary event
phase information that the cc::InputHandler needs to properly calculate
scroll elasticity.

ui::ScrollEvent is a closer fit, but Mac generates a continuous event
"stream" through the momentum portion of a scroll "flick". To support
this, add an EventMomentumPhase enum, and populate the ScrollEvent with
it.  EventMomentumPhase is a simplified representation of the phase
information on the native NSEvent: it hides states that don't matter to
the scrolling machinery for the cc::InputHandler (i.e.
cc::LayerTreeHostImpl).

Elastic scrolling overview CL: http://crrev.com/2189583004

Add test coverage by fleshing out cocoa_test_event_utils::
TestScrollEvent(..). Fixes possible flakiness in tests using that method
since it didn't previously set event flags explicitly to zero. The
result could be that NSEvent uses the current global keyboard state to
populate its event flags, which could be influenced by tests running in
parallel.

BUG= 355659 , 615948,  640457 

Review-Url: https://codereview.chromium.org/2193153002
Cr-Commit-Position: refs/heads/master@{#421082}

[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/base/mac/sdk_forward_declarations.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/content/browser/renderer_host/input/web_input_event_builders_mac_unittest.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/cocoa/events_mac.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/cocoa/events_mac_unittest.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event_constants.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event_utils.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/event_utils.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/events_default.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/events_stub.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/test/cocoa_test_event_utils.h
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/test/cocoa_test_event_utils.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/win/events_win.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/events/x/events_x.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/views/cocoa/bridged_content_view.mm
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/views/controls/scroll_view.cc
[modify] https://crrev.com/b94b06c07b4dada802959a10f8753d3b1a2dcc03/ui/views/controls/scroll_view.h

Comment 6 by tapted@chromium.org, Sep 27 2016

Status: Fixed (was: Assigned)

Sign in to add a comment