Index: chrome/test/data/extensions/platform_apps/web_view/drag_drop/main.js |
diff --git a/chrome/test/data/extensions/platform_apps/web_view/drag_drop/main.js b/chrome/test/data/extensions/platform_apps/web_view/drag_drop/main.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8f8e089be169cc6cf2637e3198932d84a3620449 |
--- /dev/null |
+++ b/chrome/test/data/extensions/platform_apps/web_view/drag_drop/main.js |
@@ -0,0 +1,88 @@ |
+// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+// See chrome/browser/extensions/web_view_interactive_browsertest.cc |
+// (WebViewInteractiveTest, DragDrop) for documentation on this test. |
+var dragging_ = false; |
+var drag_inside_success_ = false; |
+var drag_out_success_ = false; |
+var drag_into_success_ = false; |
+ |
+var startTest = function() { |
+ window.addEventListener("message", receiveMessage, false); |
+ chrome.test.sendMessage('guest-loaded'); |
+ var webview = document.getElementById('webview'); |
+ webview.addEventListener('loadstop', function(e) { |
+ webview.contentWindow.postMessage("msg", "*"); |
+ }); |
+}; |
+ |
+var receiveMessage = function(event) { |
+ if (event.data == 'drag-inside-success') |
+ drag_inside_success_ = true; |
+ if (event.data == 'drag-into-success') |
+ drag_into_success_ = true; |
+ if (event.data == 'drag-end') { |
+ dragging_ = false; |
+ } |
+ chrome.test.sendMessage(event.data); |
+} |
+ |
+document.addEventListener("dragenter", function( event ) { |
+ console.log('drag-enter-document'); |
+ setTimeout(function() { dragging_ = true; }, 10); |
+}, false); |
+ |
+document.getElementById('textbox3').addEventListener("drop", function (e) { |
+ console.log('drag-out-success'); |
+ if (e.dataTransfer.getData("text/plain") == "Drop me into text boxes 1 & 3") { |
+ setTimeout(function() { drag_out_success_ = true; }, 10); |
+ setTimeout(function() { chrome.test.sendMessage("timeout"); }, 5000); |
+ } |
+}, false); |
+ |
+document.getElementById('textbox3').addEventListener("dragover", function (e) { |
+ console.log('drag-over-3'); |
+ setTimeout(function() {chrome.test.sendMessage("drag-over");}, 10); |
+}, false); |
+ |
+document.getElementById('textbox3').addEventListener("dragenter", function (e) { |
+ console.log('drag-enter-3'); |
+ setTimeout(function() {chrome.test.sendMessage("drag-enter-3");}, 10); |
+}, false); |
+ |
+document.addEventListener("mousedown", function (e) { |
+ setTimeout(function() {chrome.test.sendMessage('mouse-down');}, 10); |
+}, false); |
+ |
+document.addEventListener("mousemove", function (e) { |
+ setTimeout(function() {chrome.test.sendMessage('mouse-move');}, 10); |
+}); |
+ |
+document.addEventListener("dragend", function (e) { |
+ console.log('dragend'); |
+ setTimeout(function() { dragging_ = false; }, 10); |
+}); |
+ |
+document.addEventListener("mouseup", function (e) { |
+ setTimeout(function() {chrome.test.sendMessage("mouse-up");}, 10); |
+}); |
+ |
+chrome.test.getConfig(function(config) { |
+ var guestURL = 'http://localhost:' + config.testServer.port + |
+ '/files/extensions/platform_apps/web_view/drag_drop/guest.html'; |
+ var guestURL2 = 'http://localhost:' + config.testServer.port + |
+ '/files/extensions/platform_apps/web_view/drag_drop/guest2.html'; |
+ document.querySelector('#webview-tag-container').innerHTML = |
+ '<webview id=\'webview\' style="width: 300px; height: 150px; ' + |
+ 'margin: 0; padding: 0;"' + |
+ ' src="' + guestURL + '"' + |
+ '></webview>'; |
+ document.querySelector('#webview-tag-container-2').innerHTML = |
+ '<webview id=\'webview2\' style="width: 300px; height: 50px; ' + |
+ 'margin: 0; padding: 0;"' + |
+ ' src="' + guestURL2 + '"' + |
+ '></webview>'; |
+ startTest(); |
+}); |