summaryrefslogtreecommitdiffstats
path: root/chrome/test
diff options
context:
space:
mode:
authorarv@chromium.org <arv@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-01 21:55:17 +0000
committerarv@chromium.org <arv@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-01 21:55:17 +0000
commitfa3844251da59714b2a7cf7b19935a1238ac1983 (patch)
treeb5f7df9a5c456076489de9e300984c2df8dd79c6 /chrome/test
parente5a6310ba2adb86cc39603dc104f49e86e83bb05 (diff)
downloadchromium_src-fa3844251da59714b2a7cf7b19935a1238ac1983.zip
chromium_src-fa3844251da59714b2a7cf7b19935a1238ac1983.tar.gz
chromium_src-fa3844251da59714b2a7cf7b19935a1238ac1983.tar.bz2
Add the DnD work around to bookmark manager as well.
BUG=None TEST=Add the extension and try dragging items around. Review URL: http://codereview.chromium.org/553178 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37747 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test')
-rw-r--r--chrome/test/data/extensions/bookmarkmanager/main.html15
1 files changed, 14 insertions, 1 deletions
diff --git a/chrome/test/data/extensions/bookmarkmanager/main.html b/chrome/test/data/extensions/bookmarkmanager/main.html
index db688c3..823e973 100644
--- a/chrome/test/data/extensions/bookmarkmanager/main.html
+++ b/chrome/test/data/extensions/bookmarkmanager/main.html
@@ -618,6 +618,9 @@ addBookmarkModelListeners();
<script>
var dnd = {
+
+ DND_EFFECT: cr.isMac ? 'move' : 'copy', // http://crbug.com/14654
+
dragBookmarkNodes: [],
getBookmarkElement: function(el) {
@@ -838,8 +841,10 @@ var dnd = {
// console.log(draggedItems, this.dragBookmarkNodes)
+ // TODO(arv): Fix this once we expose DnD in the extension API
// Mac requires setData to be called
e.dataTransfer.setData('text/uri-list', 'http://www.google.com/');
+ e.dataTransfer.effectAllowed = this.DND_EFFECT;
if (!this.dragBookmarkNodes.length) {
e.preventDefault();
@@ -892,6 +897,8 @@ var dnd = {
var dropPos;
e.preventDefault();
+ // TODO(arv): Fix this once we expose DnD in the extension API
+ e.dataTransfer.dropEffect = this.DND_EFFECT;
var rect;
if (overElement instanceof TreeItem) {
@@ -987,6 +994,7 @@ var dnd = {
* @private
*/
showDropOverlay_: function(targetRect, overlayType) {
+ window.clearTimeout(this.hideDropOverlayTimer_);
var overlay = $('drop-overlay');
if (overlayType == 'on') {
overlay.className = '';
@@ -1016,7 +1024,12 @@ var dnd = {
* @private
*/
hideDropOverlay_: function() {
- $('drop-overlay').style.display = '';
+ // Hide the overlay in a timeout to reduce flickering as we move between
+ // valid drop targets.
+ window.clearTimeout(this.hideDropOverlayTimer_);
+ this.hideDropOverlayTimer_ = window.setTimeout(function() {
+ $('drop-overlay').style.display = '';
+ }, 100);
},
handleDragLeave: function(e) {