diff --git a/resources/celerity/map.php b/resources/celerity/map.php --- a/resources/celerity/map.php +++ b/resources/celerity/map.php @@ -11,7 +11,7 @@ 'core.pkg.js' => '808ae845', 'darkconsole.pkg.js' => 'e7393ebb', 'differential.pkg.css' => '2de124c9', - 'differential.pkg.js' => '6b42b4bc', + 'differential.pkg.js' => 'd0cd0df6', 'diffusion.pkg.css' => 'f45955ed', 'diffusion.pkg.js' => '3a9a8bfa', 'maniphest.pkg.css' => '4845691a', @@ -446,7 +446,7 @@ 'rsrc/js/application/uiexample/gesture-example.js' => '558829c2', 'rsrc/js/application/uiexample/notification-example.js' => '8ce821c5', 'rsrc/js/core/Busy.js' => '59a7976a', - 'rsrc/js/core/DragAndDropFileUpload.js' => 'da044194', + 'rsrc/js/core/DragAndDropFileUpload.js' => '81f182b5', 'rsrc/js/core/DraggableList.js' => '8905523d', 'rsrc/js/core/FileUpload.js' => '680ea2c8', 'rsrc/js/core/Hovercard.js' => '1bd28176', @@ -741,7 +741,7 @@ 'phabricator-core-css' => '5b3563c8', 'phabricator-countdown-css' => 'e7544472', 'phabricator-dashboard-css' => 'eb458607', - 'phabricator-drag-and-drop-file-upload' => 'da044194', + 'phabricator-drag-and-drop-file-upload' => '81f182b5', 'phabricator-draggable-list' => '8905523d', 'phabricator-fatal-config-template-css' => '8e6c6fcd', 'phabricator-feed-css' => 'ecd4ec57', @@ -1451,6 +1451,14 @@ 'javelin-vector', 'javelin-stratcom', ), + '81f182b5' => array( + 'javelin-install', + 'javelin-util', + 'javelin-request', + 'javelin-dom', + 'javelin-uri', + 'phabricator-file-upload', + ), '834a1173' => array( 'javelin-behavior', 'javelin-scrollbar', @@ -1890,14 +1898,6 @@ 'javelin-util', 'phabricator-shaped-request', ), - 'da044194' => array( - 'javelin-install', - 'javelin-util', - 'javelin-request', - 'javelin-dom', - 'javelin-uri', - 'phabricator-file-upload', - ), 'dbbf48b6' => array( 'javelin-behavior', 'javelin-stratcom', diff --git a/webroot/rsrc/js/core/DragAndDropFileUpload.js b/webroot/rsrc/js/core/DragAndDropFileUpload.js --- a/webroot/rsrc/js/core/DragAndDropFileUpload.js +++ b/webroot/rsrc/js/core/DragAndDropFileUpload.js @@ -107,13 +107,18 @@ return; } - if (!this._node && !this._depth) { - this._target = e.getNode(this._sigil); + if (!this._node) { + var target = e.getNode(this._sigil); + if (target !== this._target) { + this._updateDepth(-this._depth); + this._target = target; + } } if (contains(this._getTarget(), e.getTarget())) { this._updateDepth(1); } + }); var on_dragleave = JX.bind(this, function(e) { @@ -121,6 +126,10 @@ return; } + if (!this._getTarget()) { + return; + } + if (contains(this._getTarget(), e.getTarget())) { this._updateDepth(-1); }