| 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 b5ed39d6c18e17969c7e5bb833022ddcd671d2c8..72f2a6622410f09a7867ab40a050c3dcef25524c 100644
|
| --- a/chrome/browser/resources/ntp4/tile_page.js
|
| +++ b/chrome/browser/resources/ntp4/tile_page.js
|
| @@ -20,6 +20,19 @@ cr.define('ntp4', function() {
|
| }
|
|
|
| /**
|
| + * Changes the current dropEffect of a drag. This modifies the native cursor
|
| + * and serves as an indicator of what we should do at the end of the drag as
|
| + * well as give indication to the user if a drop would succeed if they let go.
|
| + * @param {DataTransfer} dataTransfer A dataTransfer object from a drag event.
|
| + * @param {string} effect A drop effect to change to (i.e. copy, move, none).
|
| + */
|
| + function setCurrentDropEffect(dataTransfer, effect) {
|
| + dataTransfer.dropEffect = effect;
|
| + if (currentlyDraggingTile)
|
| + currentlyDraggingTile.lastDropEffect = dataTransfer.dropEffect;
|
| + }
|
| +
|
| + /**
|
| * Creates a new Tile object. Tiles wrap content on a TilePage, providing
|
| * some styling and drag functionality.
|
| * @constructor
|
| @@ -161,8 +174,8 @@ cr.define('ntp4', function() {
|
| } else if (tilePage) {
|
| // TODO(dbeam): Until we fix dropEffect to the correct behavior it will
|
| // differ on windows - crbug.com/39399. That's why we use the custom
|
| - // tilePage.lastDropEffect_ instead of e.dataTransfer.dropEffect.
|
| - if (tilePage.selected && tilePage.lastDropEffect_ != 'copy') {
|
| + // this.lastDropEffect instead of e.dataTransfer.dropEffect.
|
| + if (tilePage.selected && this.lastDropEffect != 'copy') {
|
| // The drag clone can still be hidden from the last drag move event.
|
| this.dragClone.hidden = false;
|
| // The tile's contents may have moved following the respositioning;
|
| @@ -183,6 +196,7 @@ cr.define('ntp4', function() {
|
| }
|
| }
|
|
|
| + delete this.lastDropEffect;
|
| this.landedOnTrash = false;
|
| },
|
|
|
| @@ -934,8 +948,6 @@ cr.define('ntp4', function() {
|
| if (newDragIndex < 0 || newDragIndex >= this.tileElements_.length)
|
| newDragIndex = this.dragItemIndex_;
|
| this.updateDropIndicator_(newDragIndex);
|
| -
|
| - this.lastDropEffect_ = e.dataTransfer.dropEffect;
|
| },
|
|
|
| /**
|
| @@ -1074,6 +1086,7 @@ cr.define('ntp4', function() {
|
|
|
| return {
|
| getCurrentlyDraggingTile: getCurrentlyDraggingTile,
|
| + setCurrentDropEffect: setCurrentDropEffect,
|
| TilePage: TilePage,
|
| };
|
| });
|
|
|