Closed Bug 1746601 Opened 2 years ago Closed 2 years ago

Support for scroll (wheel) actions

Categories

(Remote Protocol :: Marionette, enhancement, P1)

Default
enhancement

Tracking

(firefox106 fixed)

RESOLVED FIXED
106 Branch
Tracking Status
firefox106 --- fixed

People

(Reporter: jgraham, Assigned: jgraham)

References

(Blocks 2 open bugs)

Details

(Whiteboard: [webdriver:m4][webdriver:relnote])

Attachments

(2 files)

Blocks: 1689546

Lets make it a meta bug because this requires work on Marionette and geckodriver. Maybe even in smaller chunks.

Blocks: webdriver
Keywords: meta
Summary: Implement scroll actions → [meta] Implement scroll (wheel) actions

Lets use bug 1663581 for the actual implementation in Marionette.

Type: task → enhancement
Summary: [meta] Implement scroll (wheel) actions → [meta] Support for scroll (wheel) actions

Ah, I think I searched for "scroll" and so missed the existing bug. We can probably also just close this as a dupe, but it's up to you.

From the experience when working on CDP and now BiDi it's actually fine to have a meta bug. It makes it easier to find specific bugs at a later time, especially when work happens in chunks.

Assignee: nobody → james
Status: NEW → ASSIGNED
Pushed by james@hoppipolla.co.uk:
https://hg.mozilla.org/integration/autoland/rev/0d0c8aa6e1d0
Implement wheel input support in marionette, r=webdriver-reviewers,jdescottes
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/35336 for changes under testing/web-platform/tests

Backed out for causing wpt failures on iframe-chains.html.

Push with failures

Failure log

Backout link

[task 2022-08-04T14:00:18.837Z] 14:00:18     INFO - TEST-START | /dom/events/scrolling/iframe-chains.html
[task 2022-08-04T14:00:18.867Z] 14:00:18     INFO - Setting pref privacy.reduceTimerPrecision to false
[task 2022-08-04T14:00:18.889Z] 14:00:18     INFO - Setting pref dom.w3c_touch_events.legacy_apis.enabled to true
[task 2022-08-04T14:00:18.943Z] 14:00:18     INFO - PID 8228 | [Child 8489, Main Thread] WARNING: '!CanHandleWith(aPresContext)', file /builds/worker/checkouts/gecko/dom/events/IMEStateManager.cpp:498
[task 2022-08-04T14:00:19.328Z] 14:00:19     INFO - {'actions': [{'type': 'none', 'actions': [{'type': 'pause', 'duration': 16}], 'id': '0'}, {'type': 'wheel', 'actions': [{'type': 'scroll', 'x': 50, 'y': 50, 'deltaX': 0, 'deltaY': 50, 'origin': 'viewport'}], 'id': '1'}]}
[task 2022-08-04T14:00:19.447Z] 14:00:19     INFO - 
[task 2022-08-04T14:00:19.447Z] 14:00:19     INFO - TEST-UNEXPECTED-PASS | /dom/events/scrolling/iframe-chains.html | Wheel scroll in iframe chains to containing element. - expected FAIL
[task 2022-08-04T14:00:19.447Z] 14:00:19     INFO - TEST-INFO | expected FAIL
[task 2022-08-04T14:00:19.447Z] 14:00:19     INFO - TEST-OK | /dom/events/scrolling/iframe-chains.html | took 610ms
[task 2022-08-04T14:00:19.450Z] 14:00:19     INFO - PID 8228 | 1659621619449	Marionette	INFO	Stopped listening on port 33741
[task 2022-08-04T14:00:19.460Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Main Thread] WARNING: ContentParent: id=7ff4c8ab8d00 - BlockShutdown: NotifyImpendingShutdown.: file /builds/worker/checkouts/gecko/dom/ipc/ContentParent.cpp:3612
[task 2022-08-04T14:00:19.462Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Main Thread] WARNING: ContentParent: id=7ff4c81fdc00 - BlockShutdown: NotifyImpendingShutdown.: file /builds/worker/checkouts/gecko/dom/ipc/ContentParent.cpp:3612
[task 2022-08-04T14:00:19.463Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Main Thread] WARNING: ContentParent: id=7ff4c2ea0e00 - BlockShutdown: NotifyImpendingShutdown.: file /builds/worker/checkouts/gecko/dom/ipc/ContentParent.cpp:3612
[task 2022-08-04T14:00:19.464Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Main Thread] WARNING: ContentParent: id=7ff4c6203b00 - BlockShutdown: NotifyImpendingShutdown.: file /builds/worker/checkouts/gecko/dom/ipc/ContentParent.cpp:3612
[task 2022-08-04T14:00:19.464Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Main Thread] WARNING: ContentParent: id=7ff4c2ea3600 - BlockShutdown: NotifyImpendingShutdown.: file /builds/worker/checkouts/gecko/dom/ipc/ContentParent.cpp:3612
[task 2022-08-04T14:00:19.494Z] 14:00:19     INFO - PID 8228 | [Child 8341, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:19.496Z] 14:00:19     INFO - PID 8228 | [Child 8341, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:19.507Z] 14:00:19     INFO - PID 8228 | [Child 8341, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:19.518Z] 14:00:19     INFO - PID 8228 | [Child 8341, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:19.521Z] 14:00:19     INFO - PID 8228 | [Child 8341, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:19.521Z] 14:00:19     INFO - PID 8228 | [Child 8341, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:19.524Z] 14:00:19     INFO - PID 8228 | [Child 8341, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:19.601Z] 14:00:19     INFO - PID 8228 | [Child 8366, Main Thread] WARNING: DispatchEvent called on non-current inner window, dropping. Please check the window in the caller instead.: file /builds/worker/checkouts/gecko/dom/base/nsGlobalWindowInner.cpp:4355
[task 2022-08-04T14:00:19.607Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Main Thread] WARNING: '!CanHandleWith(aPresContext)', file /builds/worker/checkouts/gecko/dom/events/IMEStateManager.cpp:498
[task 2022-08-04T14:00:19.608Z] 14:00:19     INFO - PID 8228 | [Child 8489, Main Thread] WARNING: DispatchEvent called on non-current inner window, dropping. Please check the window in the caller instead.: file /builds/worker/checkouts/gecko/dom/base/nsGlobalWindowInner.cpp:4355
[task 2022-08-04T14:00:19.626Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Compositor] WARNING: Possibly dropping task posted to updater thread: file /builds/worker/checkouts/gecko/gfx/layers/apz/src/APZUpdater.cpp:371
[task 2022-08-04T14:00:19.627Z] 14:00:19     INFO - PID 8228 | [Child 8489, Main Thread] WARNING: '!CanHandleWith(aPresContext)', file /builds/worker/checkouts/gecko/dom/events/IMEStateManager.cpp:498
[task 2022-08-04T14:00:19.649Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Compositor] WARNING: IPC Connection Error: [Parent][PCompositorManagerParent] RunMessage(msgname=PCompositorBridge::Msg___delete__) Channel closing: too late to send/recv, messages will be lost: file /builds/worker/checkouts/gecko/ipc/glue/MessageChannel.cpp:1876
[task 2022-08-04T14:00:19.651Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Compositor] WARNING: IPC Connection Error: [Parent][PImageBridgeParent] RunMessage(msgname=PImageBridge::Msg_WillClose) Channel closing: too late to send/recv, messages will be lost: file /builds/worker/checkouts/gecko/ipc/glue/MessageChannel.cpp:1876
[task 2022-08-04T14:00:19.672Z] 14:00:19     INFO - PID 8228 | [Parent 8228, IPDL Background] WARNING: IPC Connection Error: [Parent][PBackgroundParent] RunMessage(msgname=PRemoteWorkerService::Msg___delete__) Channel closing: too late to send/recv, messages will be lost: file /builds/worker/checkouts/gecko/ipc/glue/MessageChannel.cpp:1876
[task 2022-08-04T14:00:19.687Z] 14:00:19     INFO - PID 8228 | JavaScript error: resource://gre/modules/AsyncShutdown.jsm, line 719: Error: Phase "quit-application-granted" is finished, it is too late to register completion condition "ContentParent: id=7ff4bc6d7100"
[task 2022-08-04T14:00:19.705Z] 14:00:19     INFO - PID 8228 | [Parent 8228, Socket Thread] WARNING: cannot post event if not initialized: file /builds/worker/checkouts/gecko/netwerk/protocol/http/nsHttpConnectionMgr.cpp:197
[task 2022-08-04T14:00:19.747Z] 14:00:19     INFO - PID 8228 | [Child 8366, Main Thread] WARNING: Extra shutdown CC: 'i < NORMAL_SHUTDOWN_COLLECTIONS', file /builds/worker/checkouts/gecko/xpcom/base/nsCycleCollector.cpp:3359
[task 2022-08-04T14:00:19.750Z] 14:00:19     INFO - PID 8228 | [Child 8366, Main Thread] WARNING: NS_ENSURE_TRUE(InitStaticMembers()) failed: file /builds/worker/workspace/obj-build/dist/include/mozilla/Preferences.h:129
[task 2022-08-04T14:00:19.757Z] 14:00:19     INFO - PID 8228 | [Child 8366, Main Thread] WARNING: NS_ENSURE_TRUE(Preferences::InitStaticMembers()) failed: file /builds/worker/checkouts/gecko/modules/libpref/Preferences.cpp:4595
[task 2022-08-04T14:00:19.769Z] 14:00:19     INFO - PID 8228 | ### XPCOM_MEM_BLOAT_LOG defined -- logging bloat/leaks to /tmp/tmpq2pdxsk9/runtests_leaks_1193_tab_pid8637.log
[task 2022-08-04T14:00:19.769Z] 14:00:19     INFO - PID 8228 | [8637, Main Thread] WARNING: XPCOM_MEM_BLOAT_LOG is set, disabling native allocations.: file /builds/worker/checkouts/gecko/tools/profiler/core/platform.cpp:339
<...>
[task 2022-08-04T14:00:21.929Z] 14:00:21     INFO - PID 8419 | [Child 8688, Main Thread] WARNING: could not set real-time limit in CubebUtils::InitLibrary: file /builds/worker/checkouts/gecko/dom/media/CubebUtils.cpp:707
[task 2022-08-04T14:00:21.930Z] 14:00:21     INFO - PID 8419 | Couldn't convert chrome URL: chrome://branding/locale/brand.properties
[task 2022-08-04T14:00:21.932Z] 14:00:21     INFO - PID 8419 | [Child 8688, Main Thread] WARNING: Could not get the program name for a cubeb stream.: 'NS_SUCCEEDED(rv)', file /builds/worker/checkouts/gecko/dom/media/CubebUtils.cpp:427
[task 2022-08-04T14:00:21.933Z] 14:00:21     INFO - PID 8419 | [2022-08-04T14:00:20Z WARN  webrender::device::gl] Cropping texture upload Box2D((0, 0), (0, 1)) to None
[task 2022-08-04T14:00:21.934Z] 14:00:21     INFO - PID 8419 | [2022-08-04T14:00:20Z WARN  webrender::device::gl] Cropping texture upload Box2D((0, 0), (0, 1)) to None
[task 2022-08-04T14:00:21.935Z] 14:00:21     INFO - PID 8419 | [2022-08-04T14:00:20Z WARN  webrender::device::gl] Cropping texture upload Box2D((0, 0), (0, 1)) to None
[task 2022-08-04T14:00:21.937Z] 14:00:21     INFO - PID 8419 | console.warn: SearchSettings: "get: No settings file exists, new profile?" (new NotFoundError("Could not open the file at /tmp/tmpezz6m35k/search.json.mozlz4", (void 0)))
[task 2022-08-04T14:00:21.938Z] 14:00:21     INFO - PID 8419 | [Child 8543, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:21.939Z] 14:00:21     INFO - PID 8419 | [Child 8543, Main Thread] WARNING: '!CanSend() || !mManager || !mManager->CanSend()', file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:44
[task 2022-08-04T14:00:21.941Z] 14:00:21     INFO - PID 8419 | [Parent 8419, Main Thread] WARNING: Failed to retarget HTML data delivery to the parser thread.: file /builds/worker/checkouts/gecko/parser/html/nsHtml5StreamParser.cpp:1234
[task 2022-08-04T14:00:21.942Z] 14:00:21     INFO - PID 8419 | [Child 8543, Main Thread] WARNING: Fallback to BasicLayerManager: file /builds/worker/checkouts/gecko/dom/ipc/BrowserChild.cpp:2822
[task 2022-08-04T14:00:21.943Z] 14:00:21     INFO - Starting runner
[task 2022-08-04T14:00:21.949Z] 14:00:21     INFO - PID 8419 | [Parent 8419, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005 (NS_ERROR_FAILURE): file /builds/worker/checkouts/gecko/dom/base/ThirdPartyUtil.cpp:421
[task 2022-08-04T14:00:21.950Z] 14:00:21     INFO - PID 8419 | [Parent 8419, Main Thread] WARNING: Failed to retarget HTML data delivery to the parser thread.: file /builds/worker/checkouts/gecko/parser/html/nsHtml5StreamParser.cpp:1234
[task 2022-08-04T14:00:22.629Z] 14:00:22     INFO - PID 8419 | ### XPCOM_MEM_BLOAT_LOG defined -- logging bloat/leaks to /tmp/tmpezz6m35k/runtests_leaks_1193_tab_pid8785.log
[task 2022-08-04T14:00:22.630Z] 14:00:22     INFO - PID 8419 | [8785, Main Thread] WARNING: XPCOM_MEM_BLOAT_LOG is set, disabling native allocations.: file /builds/worker/checkouts/gecko/tools/profiler/core/platform.cpp:339
[task 2022-08-04T14:00:22.662Z] 14:00:22     INFO - PID 8419 | [Child 8785, Main Thread] WARNING: could not set real-time limit in CubebUtils::InitLibrary: file /builds/worker/checkouts/gecko/dom/media/CubebUtils.cpp:707
[task 2022-08-04T14:00:22.726Z] 14:00:22     INFO - PID 8419 | ### XPCOM_MEM_BLOAT_LOG defined -- logging bloat/leaks to /tmp/tmpezz6m35k/runtests_leaks_1193_tab_pid8794.log
[task 2022-08-04T14:00:22.727Z] 14:00:22     INFO - PID 8419 | [8794, Main Thread] WARNING: XPCOM_MEM_BLOAT_LOG is set, disabling native allocations.: file /builds/worker/checkouts/gecko/tools/profiler/core/platform.cpp:339
[task 2022-08-04T14:00:22.764Z] 14:00:22     INFO - PID 8419 | [Child 8794, Main Thread] WARNING: could not set real-time limit in CubebUtils::InitLibrary: file /builds/worker/checkouts/gecko/dom/media/CubebUtils.cpp:707
[task 2022-08-04T14:00:23.163Z] 14:00:23     INFO - TEST-START | /dom/events/scrolling/input-text-scroll-event-when-using-arrow-keys.html
Flags: needinfo?(james)
Upstream PR was closed without merging

The remaining problem here seems to be that the test /dom/events/scrolling/iframe-chains.html unexpectedly passes in some more test job configurations. I've added a comment to the Phabricator revision.

Keywords: meta
Summary: [meta] Support for scroll (wheel) actions → Support for scroll (wheel) actions
Pushed by james@hoppipolla.co.uk:
https://hg.mozilla.org/integration/autoland/rev/22296ec54ef5
Implement wheel input support in marionette, r=webdriver-reviewers,jdescottes
https://hg.mozilla.org/integration/autoland/rev/efabaf7b335b
Wait for scrollOffset to be updated in test, r=webdriver-reviewers,whimboo
Regressions: 1789879
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 106 Branch
Upstream PR merged by moz-wptsync-bot
Regressions: 1789957
No longer depends on: 1663581
Blocks: 1750691
Whiteboard: [webdriver:m4][webdriver:relnote]
Flags: needinfo?(james)
Product: Testing → Remote Protocol
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: