Title: [109280] trunk
- Revision
- 109280
- Author
- dch...@chromium.org
- Date
- 2012-02-29 16:14:42 -0800 (Wed, 29 Feb 2012)
Log Message
[chromium] REGRESSION: Cannot drag a file out
https://bugs.webkit.org/show_bug.cgi?id=79817
Reviewed by Ryosuke Niwa.
Source/WebCore:
Temporary fix for file drag out. This change won't be needed once DataTransferItemList
support is better implemented.
Test: platform/chromium/fast/events/drag-downloadURL.html
* platform/chromium/ChromiumDataObject.cpp:
(WebCore::ChromiumDataObject::types):
LayoutTests:
* platform/chromium/fast/events/drag-downloadURL-expected.txt: Added.
* platform/chromium/fast/events/drag-downloadURL.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (109279 => 109280)
--- trunk/LayoutTests/ChangeLog 2012-03-01 00:11:45 UTC (rev 109279)
+++ trunk/LayoutTests/ChangeLog 2012-03-01 00:14:42 UTC (rev 109280)
@@ -1,3 +1,13 @@
+2012-02-29 Daniel Cheng <dch...@chromium.org>
+
+ [chromium] REGRESSION: Cannot drag a file out
+ https://bugs.webkit.org/show_bug.cgi?id=79817
+
+ Reviewed by Ryosuke Niwa.
+
+ * platform/chromium/fast/events/drag-downloadURL-expected.txt: Added.
+ * platform/chromium/fast/events/drag-downloadURL.html: Added.
+
2012-02-29 Gavin Barraclough <barraclo...@apple.com>
'source' property of RegExp instance cannot be ""
Added: trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL-expected.txt (0 => 109280)
--- trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL-expected.txt 2012-03-01 00:14:42 UTC (rev 109280)
@@ -0,0 +1,6 @@
+To manually test, drag 'Drag Me' to 'Drop Here' and drop. The word 'SUCCESS' should appear.
+
+Drag Me
+Drop Here
+SUCCESS
+
Property changes on: trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL-expected.txt
___________________________________________________________________
Added: svn:eol-style
Added: trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL.html (0 => 109280)
--- trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL.html (rev 0)
+++ trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL.html 2012-03-01 00:14:42 UTC (rev 109280)
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<html>
+<head>
+<style>
+#drag {
+ border: 1px solid black;
+ height: 200px;
+ width: 200px;
+}
+#drop {
+ border: 1px solid black;
+ height: 200px;
+ width: 200px;
+}
+</style>
+<script>
+function log(str)
+{
+ var result = document.getElementById('result');
+ result.appendChild(document.createTextNode(str));
+ result.appendChild(document.createElement('br'));
+}
+function dragstart(event) {
+ event.dataTransfer.setData('DownloadURL', 'http://google.com/');
+}
+function dragenter(event) {
+ event.preventDefault();
+}
+function dragover(event) {
+ event.preventDefault();
+}
+function drop(event) {
+ var failed = false;
+ if (event.dataTransfer.types.indexOf('downloadurl') < 0) {
+ log('types: ' + event.dataTransfer.types);
+ failed = true;
+ }
+ if (event.dataTransfer.getData('DownloadURL') != 'http://google.com/') {
+ log('getData: ' + event.dataTransfer.getData('DownloadURL'));
+ failed = true;
+ }
+ log(failed ? 'FAILURE' : 'SUCCESS');
+ if (window.layoutTestController)
+ layoutTestController.notifyDone();
+}
+window._onload_ = function()
+{
+ if (!window.layoutTestController)
+ return;
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+
+ var dragElement = document.getElementById('drag');
+ eventSender.mouseMoveTo(dragElement.offsetLeft + dragElement.offsetWidth / 2,
+ dragElement.offsetTop + dragElement.offsetHeight / 2);
+ eventSender.mouseDown();
+ eventSender.leapForward(100);
+ var dropElement = document.getElementById('drop');
+ eventSender.mouseMoveTo(dropElement.offsetLeft + dropElement.offsetWidth / 2,
+ dropElement.offsetTop + dropElement.offsetHeight / 2);
+ eventSender.mouseUp();
+}
+</script>
+</head>
+<body>
+<p>To manually test, drag 'Drag Me' to 'Drop Here' and drop. The word 'SUCCESS' should appear.
+<div draggable="true" id="drag" _ondragstart_="dragstart(event)">Drag Me</div>
+<div id="drop" _ondragenter_="dragenter(event)" _ondragover_="dragover(event)" _ondrop_="drop(event)">Drop Here</div>
+</div>
+<div id="result"></div>
+</body>
+</html>
Property changes on: trunk/LayoutTests/platform/chromium/fast/events/drag-downloadURL.html
___________________________________________________________________
Added: svn:eol-style
Modified: trunk/Source/WebCore/ChangeLog (109279 => 109280)
--- trunk/Source/WebCore/ChangeLog 2012-03-01 00:11:45 UTC (rev 109279)
+++ trunk/Source/WebCore/ChangeLog 2012-03-01 00:14:42 UTC (rev 109280)
@@ -1,3 +1,18 @@
+2012-02-29 Daniel Cheng <dch...@chromium.org>
+
+ [chromium] REGRESSION: Cannot drag a file out
+ https://bugs.webkit.org/show_bug.cgi?id=79817
+
+ Reviewed by Ryosuke Niwa.
+
+ Temporary fix for file drag out. This change won't be needed once DataTransferItemList
+ support is better implemented.
+
+ Test: platform/chromium/fast/events/drag-downloadURL.html
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::types):
+
2012-02-29 Luke Macpherson <macpher...@chromium.org>
Clean up CSSPrimitiveValue::computeLengthDouble().
Modified: trunk/Source/WebCore/platform/chromium/ChromiumDataObject.cpp (109279 => 109280)
--- trunk/Source/WebCore/platform/chromium/ChromiumDataObject.cpp 2012-03-01 00:11:45 UTC (rev 109279)
+++ trunk/Source/WebCore/platform/chromium/ChromiumDataObject.cpp 2012-03-01 00:14:42 UTC (rev 109280)
@@ -122,6 +122,9 @@
if (!m_textHtml.isEmpty())
results.add(mimeTypeTextHTML);
+ if (!m_downloadMetadata.isEmpty())
+ results.add(mimeTypeDownloadURL);
+
for (HashMap<String, String>::const_iterator::Keys it = m_customData.begin().keys();
it != m_customData.end().keys(); ++it) {
results.add(*it);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes