Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(373)

Side by Side Diff: third_party/WebKit/LayoutTests/external/wpt_automation/pointerevents/pointerevent_common_input.js

Issue 2629693002: Replace pen actions in pointer event tests with pointerActionSequence (Closed)
Patch Set: pointer pen test Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/renderer/gpu/actions_parser.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // This file contains the commonly used functions in pointerevent tests. 1 // This file contains the commonly used functions in pointerevent tests.
2 2
3 const scrollOffset = 30; 3 const scrollOffset = 30;
4 const boundaryOffset = 5; 4 const boundaryOffset = 5;
5 const touchSourceType = 1; 5 const touchSourceType = 1;
6 6
7 function delayPromise(delay) { 7 function delayPromise(delay) {
8 return new Promise(function(resolve, reject) { 8 return new Promise(function(resolve, reject) {
9 window.setTimeout(resolve, delay); 9 window.setTimeout(resolve, delay);
10 }); 10 });
(...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 chrome.gpuBenchmarking.pointerActionSequence(pointerActions, resolve); 288 chrome.gpuBenchmarking.pointerActionSequence(pointerActions, resolve);
289 } else { 289 } else {
290 reject(); 290 reject();
291 } 291 }
292 }); 292 });
293 } 293 }
294 294
295 // Pen inputs. 295 // Pen inputs.
296 function penMoveToDocument() { 296 function penMoveToDocument() {
297 return new Promise(function(resolve, reject) { 297 return new Promise(function(resolve, reject) {
298 if (window.eventSender) { 298 if (window.chrome && chrome.gpuBenchmarking) {
299 eventSender.mouseMoveTo(0, 0, [], "pen", 0); 299 chrome.gpuBenchmarking.pointerActionSequence( [
300 resolve(); 300 {"source": "pen",
301 "actions": [
302 { "name": "pointerMove", "x": 0, "y": 0 }
303 ]}], resolve);
301 } else { 304 } else {
302 reject(); 305 reject();
303 } 306 }
304 }); 307 });
305 } 308 }
306 309
307 function penMoveIntoTarget(targetSelector, targetFrame) { 310 function penMoveIntoTarget(targetSelector, targetFrame) {
308 var targetDocument = document; 311 var targetDocument = document;
309 var frameLeft = 0; 312 var frameLeft = 0;
310 var frameTop = 0; 313 var frameTop = 0;
311 if (targetFrame !== undefined) { 314 if (targetFrame !== undefined) {
312 targetDocument = targetFrame.contentDocument; 315 targetDocument = targetFrame.contentDocument;
313 var frameRect = targetFrame.getBoundingClientRect(); 316 var frameRect = targetFrame.getBoundingClientRect();
314 frameLeft = frameRect.left; 317 frameLeft = frameRect.left;
315 frameTop = frameRect.top; 318 frameTop = frameRect.top;
316 } 319 }
317 return new Promise(function(resolve, reject) { 320 return new Promise(function(resolve, reject) {
318 if (window.eventSender) { 321 if (window.chrome && chrome.gpuBenchmarking) {
319 var target = targetDocument.querySelector(targetSelector); 322 var target = targetDocument.querySelector(targetSelector);
320 var targetRect = target.getBoundingClientRect(); 323 var targetRect = target.getBoundingClientRect();
321 eventSender.mouseMoveTo(frameLeft + targetRect.left + boundaryOffset, fram eTop + targetRect.top + boundaryOffset, [], "pen", 0); 324 var xPosition = frameLeft + targetRect.left + boundaryOffset;
322 resolve(); 325 var yPosition = frameTop + targetRect.top + boundaryOffset;
326 chrome.gpuBenchmarking.pointerActionSequence( [
327 {"source": "pen",
328 "actions": [
329 { "name": "pointerMove", "x": xPosition, "y": yPosition }
330 ]}], resolve);
323 } else { 331 } else {
324 reject(); 332 reject();
325 } 333 }
326 }); 334 });
327 } 335 }
328 336
329 function penClickInTarget(targetSelector, targetFrame) { 337 function penClickInTarget(targetSelector, targetFrame) {
330 return penMoveIntoTarget(targetSelector, targetFrame).then(function() { 338 var targetDocument = document;
331 return new Promise(function(resolve, reject) { 339 var frameLeft = 0;
332 if (window.eventSender) { 340 var frameTop = 0;
333 eventSender.mouseDown(0, [], "pen", 0); 341 if (targetFrame !== undefined) {
334 eventSender.mouseUp(0, [], "pen", 0); 342 targetDocument = targetFrame.contentDocument;
335 resolve(); 343 var frameRect = targetFrame.getBoundingClientRect();
336 } else { 344 frameLeft = frameRect.left;
337 reject(); 345 frameTop = frameRect.top;
338 } 346 }
339 }); 347 return new Promise(function(resolve, reject) {
348 if (window.chrome && chrome.gpuBenchmarking) {
349 scrollPageIfNeeded(targetSelector, targetDocument);
350 var target = targetDocument.querySelector(targetSelector);
351 var targetRect = target.getBoundingClientRect();
352 var xPosition = frameLeft + targetRect.left + boundaryOffset;
353 var yPosition = frameTop + targetRect.top + boundaryOffset;
354 chrome.gpuBenchmarking.pointerActionSequence( [
355 {"source": "pen",
356 "actions": [
357 { "name": "pointerMove", "x": xPosition, "y": yPosition },
358 { "name": "pointerDown", "x": xPosition, "y": yPosition },
359 { "name": "pointerUp" }
360 ]}], resolve);
361 } else {
362 reject();
363 }
340 }); 364 });
341 } 365 }
342 366
343 // Keyboard inputs. 367 // Keyboard inputs.
344 function keyboardScroll(direction) { 368 function keyboardScroll(direction) {
345 return new Promise(function(resolve, reject) { 369 return new Promise(function(resolve, reject) {
346 if (window.eventSender) { 370 if (window.eventSender) {
347 if (direction == 'down') 371 if (direction == 'down')
348 eventSender.keyDown('ArrowDown'); 372 eventSender.keyDown('ArrowDown');
349 else if (direction == 'right') 373 else if (direction == 'right')
350 eventSender.keyDown('ArrowRight'); 374 eventSender.keyDown('ArrowRight');
351 else 375 else
352 reject(); 376 reject();
353 resolve(); 377 resolve();
354 } else { 378 } else {
355 reject(); 379 reject();
356 } 380 }
357 }); 381 });
358 } 382 }
359 383
360 { 384 {
361 var pointerevent_automation = async_test("PointerEvent Automation"); 385 var pointerevent_automation = async_test("PointerEvent Automation");
362 // Defined in every test and should return a promise that gets resolved when i nput is finished. 386 // Defined in every test and should return a promise that gets resolved when i nput is finished.
363 inject_input().then(function() { 387 inject_input().then(function() {
364 pointerevent_automation.done(); 388 pointerevent_automation.done();
365 }); 389 });
366 } 390 }
367 391
OLDNEW
« no previous file with comments | « content/renderer/gpu/actions_parser.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698