|
Lines 435-441
Link Here
|
| 435 |
var dragEnter = function (evt) { |
435 |
var dragEnter = function (evt) { |
| 436 |
if (dragStartTarget) { |
436 |
if (dragStartTarget) { |
| 437 |
var copy = util.isMac ? evt.altKey : evt.ctrlKey; |
437 |
var copy = util.isMac ? evt.altKey : evt.ctrlKey; |
| 438 |
dropEffect = evt.dataTransfer.dropEffect = copy ? "copy" : "move"; //$NON-NLS-1$ //$NON-NLS-0$ |
438 |
dropEffect = evt.dataTransfer.dropEffect = (copy ? "copy" : "move"); //$NON-NLS-1$ //$NON-NLS-0$ |
| 439 |
} else { |
439 |
} else { |
| 440 |
/* accessing dataTransfer.effectAllowed here throws an error on IE */ |
440 |
/* accessing dataTransfer.effectAllowed here throws an error on IE */ |
| 441 |
if (!util.isIE && (evt.dataTransfer.effectAllowed === "all" || //$NON-NLS-0$ |
441 |
if (!util.isIE && (evt.dataTransfer.effectAllowed === "all" || //$NON-NLS-0$ |
|
Lines 459-465
Link Here
|
| 459 |
var dragOver = function (evt) { |
459 |
var dragOver = function (evt) { |
| 460 |
if (dragStartTarget) { |
460 |
if (dragStartTarget) { |
| 461 |
var copy = util.isMac ? evt.altKey : evt.ctrlKey; |
461 |
var copy = util.isMac ? evt.altKey : evt.ctrlKey; |
| 462 |
dropEffect = evt.dataTransfer.dropEffect = copy ? "copy" : "move"; //$NON-NLS-1$ //$NON-NLS-0$ |
462 |
dropEffect = evt.dataTransfer.dropEffect = (copy ? "copy" : "move"); //$NON-NLS-1$ //$NON-NLS-0$ |
| 463 |
} else { |
463 |
} else { |
| 464 |
// default behavior is to not trigger a drop, so we override the default |
464 |
// default behavior is to not trigger a drop, so we override the default |
| 465 |
// behavior in order to enable drop. |
465 |
// behavior in order to enable drop. |
|
Lines 641-647
Link Here
|
| 641 |
deferred.then(function(result) { |
641 |
deferred.then(function(result) { |
| 642 |
var dispatcher = explorer.modelEventDispatcher; |
642 |
var dispatcher = explorer.modelEventDispatcher; |
| 643 |
dispatcher.dispatchEvent({type: isCopy ? "copy" : "move", oldValue: source, newValue: result, parent: item}); //$NON-NLS-1$ //$NON-NLS-0$ |
643 |
dispatcher.dispatchEvent({type: isCopy ? "copy" : "move", oldValue: source, newValue: result, parent: item}); //$NON-NLS-1$ //$NON-NLS-0$ |
| 644 |
}, errorHandler); |
644 |
}, function(error) { |
|
|
645 |
if (error.status === 400 || error.status === 412) { |
| 646 |
var resp = error.responseText; |
| 647 |
if (typeof resp === "string") { |
| 648 |
try { |
| 649 |
resp = JSON.parse(resp); |
| 650 |
resp.Message = messages[isCopy ? "CopyFailed" : "MoveFailed"]; |
| 651 |
error = resp; |
| 652 |
} catch(error) {} |
| 653 |
} |
| 654 |
} |
| 655 |
errorHandler(error); |
| 656 |
} |
| 657 |
); |
| 645 |
|
658 |
|
| 646 |
// webkit supports testing for and traversing directories |
659 |
// webkit supports testing for and traversing directories |
| 647 |
// http://wiki.whatwg.org/wiki/DragAndDropEntries |
660 |
// http://wiki.whatwg.org/wiki/DragAndDropEntries |