browser(firefox): Page.dispatchWheelEvent (#8439)

This commit is contained in:
Joel Einbinder 2021-08-25 11:27:12 -04:00 committed by GitHub
parent 831cff1a82
commit f7950352b9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 74 additions and 4 deletions

View file

@ -1,2 +1,2 @@
1281
Changed: joel.einbinder@gmail.com Tue 24 Aug 2021 12:02:01 PM PDT
1282
Changed: joel.einbinder@gmail.com Wed 25 Aug 2021 08:16:37 AM PDT

View file

@ -140,6 +140,7 @@ class PageAgent {
describeNode: this._describeNode.bind(this),
dispatchKeyEvent: this._dispatchKeyEvent.bind(this),
dispatchMouseEvent: this._dispatchMouseEvent.bind(this),
dispatchWheelEvent: this._dispatchWheelEvent.bind(this),
dispatchTouchEvent: this._dispatchTouchEvent.bind(this),
dispatchTapEvent: this._dispatchTapEvent.bind(this),
getContentQuads: this._getContentQuads.bind(this),
@ -760,6 +761,26 @@ class PageAgent {
}
}
async _dispatchWheelEvent({x, y, button, deltaX, deltaY, deltaZ, modifiers }) {
const deltaMode = 0; // WheelEvent.DOM_DELTA_PIXEL
const lineOrPageDeltaX = deltaX > 0 ? Math.floor(deltaX) : Math.ceil(deltaX);
const lineOrPageDeltaY = deltaY > 0 ? Math.floor(deltaY) : Math.ceil(deltaY);
const frame = this._frameTree.mainFrame();
frame.domWindow().windowUtils.sendWheelEvent(
x,
y,
deltaX,
deltaY,
deltaZ,
deltaMode,
modifiers,
lineOrPageDeltaX,
lineOrPageDeltaY,
0 /* options */);
}
async _insertText({text}) {
const frame = this._frameTree.mainFrame();
frame.textInputProcessor().commitCompositionWith(text);

View file

@ -354,6 +354,10 @@ class PageHandler {
return await this._contentPage.send('dispatchMouseEvent', options);
}
async ['Page.dispatchWheelEvent'](options) {
return await this._contentPage.send('dispatchWheelEvent', options);
}
async ['Page.insertText'](options) {
return await this._contentPage.send('insertText', options);
}

View file

@ -911,6 +911,16 @@ const Page = {
buttons: t.Number,
}
},
'dispatchWheelEvent': {
params: {
x: t.Number,
y: t.Number,
deltaX: t.Number,
deltaY: t.Number,
deltaZ: t.Number,
modifiers: t.Number,
}
},
'insertText': {
params: {
text: t.String,

View file

@ -1,2 +1,2 @@
1286
Changed: joel.einbinder@gmail.com Mon 23 Aug 2021 08:45:33 PM PDT
1287
Changed: joel.einbinder@gmail.com Wed 25 Aug 2021 08:15:20 AM PDT

View file

@ -140,6 +140,7 @@ class PageAgent {
describeNode: this._describeNode.bind(this),
dispatchKeyEvent: this._dispatchKeyEvent.bind(this),
dispatchMouseEvent: this._dispatchMouseEvent.bind(this),
dispatchWheelEvent: this._dispatchWheelEvent.bind(this),
dispatchTouchEvent: this._dispatchTouchEvent.bind(this),
dispatchTapEvent: this._dispatchTapEvent.bind(this),
getContentQuads: this._getContentQuads.bind(this),
@ -760,6 +761,26 @@ class PageAgent {
}
}
async _dispatchWheelEvent({x, y, button, deltaX, deltaY, deltaZ, modifiers }) {
const deltaMode = 0; // WheelEvent.DOM_DELTA_PIXEL
const lineOrPageDeltaX = deltaX > 0 ? Math.floor(deltaX) : Math.ceil(deltaX);
const lineOrPageDeltaY = deltaY > 0 ? Math.floor(deltaY) : Math.ceil(deltaY);
const frame = this._frameTree.mainFrame();
frame.domWindow().windowUtils.sendWheelEvent(
x,
y,
deltaX,
deltaY,
deltaZ,
deltaMode,
modifiers,
lineOrPageDeltaX,
lineOrPageDeltaY,
0 /* options */);
}
async _insertText({text}) {
const frame = this._frameTree.mainFrame();
frame.textInputProcessor().commitCompositionWith(text);

View file

@ -354,6 +354,10 @@ class PageHandler {
return await this._contentPage.send('dispatchMouseEvent', options);
}
async ['Page.dispatchWheelEvent'](options) {
return await this._contentPage.send('dispatchWheelEvent', options);
}
async ['Page.insertText'](options) {
return await this._contentPage.send('insertText', options);
}

View file

@ -911,6 +911,16 @@ const Page = {
buttons: t.Number,
}
},
'dispatchWheelEvent': {
params: {
x: t.Number,
y: t.Number,
deltaX: t.Number,
deltaY: t.Number,
deltaZ: t.Number,
modifiers: t.Number,
}
},
'insertText': {
params: {
text: t.String,