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

Side by Side Diff: chrome/test/data/drag_and_drop/event_monitoring.js

Issue 2505183002: Have tests verify clientX/Y and pageX/Y properties in drag-and-drop DOM events. (Closed)
Patch Set: Created 4 years, 1 month 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /* Reports an event to DragAndDropBrowserTest and DOMDragEventWaiter */ 5 /* Reports an event to DragAndDropBrowserTest and DOMDragEventWaiter */
6 window.reportDragAndDropEvent = function(ev) { 6 window.reportDragAndDropEvent = function(ev) {
7 function safe(f) { 7 function safe(f) {
8 try { 8 try {
9 return f(); 9 return f();
10 } catch(err) { 10 } catch(err) {
11 return "exception: " + err.message; 11 return "exception: " + err.message;
12 } 12 }
13 } 13 }
14 14
15 console.log("got event: " + ev.type); 15 console.log("got event: " + ev.type);
16 16
17 if (window.domAutomationController) { 17 if (window.domAutomationController) {
18 window.domAutomationController.setAutomationId(0); 18 window.domAutomationController.setAutomationId(0);
19 window.domAutomationController.send({ 19 window.domAutomationController.send({
20 client_position: safe(function() {
21 return "(" + ev.clientX + ", " + ev.clientY + ")";
22 }),
20 drop_effect: safe(function() { return ev.dataTransfer.dropEffect; }), 23 drop_effect: safe(function() { return ev.dataTransfer.dropEffect; }),
21 effect_allowed: safe(function() { 24 effect_allowed: safe(function() {
22 return ev.dataTransfer.effectAllowed; 25 return ev.dataTransfer.effectAllowed;
23 }), 26 }),
24 event_type: ev.type, 27 event_type: ev.type,
25 file_names: safe(function() { 28 file_names: safe(function() {
26 return Array 29 return Array
27 .from(ev.dataTransfer.files) 30 .from(ev.dataTransfer.files)
28 .map(function(file) { return file.name; }) 31 .map(function(file) { return file.name; })
29 .sort().join(); 32 .sort().join();
30 }), 33 }),
31 mime_types: safe(function() { 34 mime_types: safe(function() {
32 return Array.from(ev.dataTransfer.types).sort().join(); 35 return Array.from(ev.dataTransfer.types).sort().join();
33 }), 36 }),
37 page_position: safe(function() {
38 return "(" + ev.pageX + ", " + ev.pageY + ")";
39 }),
34 window_name: window.name 40 window_name: window.name
35 }); 41 });
36 } 42 }
37 } 43 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698