Index: chrome/browser/resources/ntp4/tile_page.js |
diff --git a/chrome/browser/resources/ntp4/tile_page.js b/chrome/browser/resources/ntp4/tile_page.js |
index a83b4a41d8933c73d52b7199a686f8ed39f9a231..6c7e67fc4ecde20ef6b70b4927fb7ebb7000ef7a 100644 |
--- a/chrome/browser/resources/ntp4/tile_page.js |
+++ b/chrome/browser/resources/ntp4/tile_page.js |
@@ -159,7 +159,7 @@ cr.define('ntp4', function() { |
if (this.landedOnTrash) { |
this.dragClone.classList.add('deleting'); |
} else if (this.tilePage) { |
- if (this.tilePage.selected) { |
+ if (this.tilePage.selected && e.dataTransfer.dropEffect != 'copy') { |
// The tile's contents may have moved following the respositioning; |
// adjust for that. |
var contentDiffX = this.dragClone.firstChild.offsetLeft - |
@@ -879,11 +879,7 @@ cr.define('ntp4', function() { |
doDragOver: function(e) { |
e.preventDefault(); |
- if (currentlyDraggingTile) |
- e.dataTransfer.dropEffect = 'move'; |
- else |
- e.dataTransfer.dropEffect = 'copy'; |
- |
+ this.setDropEffect(e.dataTransfer); |
var newDragIndex = this.getWouldBeIndexForPoint_(e.pageX, e.pageY); |
if (newDragIndex < 0 || newDragIndex >= this.tileElements_.length) |
newDragIndex = this.dragItemIndex_; |
@@ -1006,6 +1002,15 @@ cr.define('ntp4', function() { |
*/ |
tileMoved: function(draggedTile) { |
}, |
+ |
+ /** |
+ * Sets the drop effect on |dataTransfer| to the desired value (e.g. |
+ * 'copy'). |
+ * @param {Object} dataTransfer The drag event dataTransfer object. |
+ */ |
+ setDropEffect: function(dataTransfer) { |
+ assert(false); |
+ }, |
}; |
return { |