diff --git a/mozilla/xpfe/components/bookmarks/resources/bookmarksMenu.js b/mozilla/xpfe/components/bookmarks/resources/bookmarksMenu.js index 45320cab6ed..55af80a8d68 100644 --- a/mozilla/xpfe/components/bookmarks/resources/bookmarksMenu.js +++ b/mozilla/xpfe/components/bookmarks/resources/bookmarksMenu.js @@ -473,6 +473,17 @@ var BookmarksMenuDNDObserver = { canDrop: function (aEvent, aDragSession) { var target = aEvent.target; + + if (aDragSession) { // this function gets its API abused by onDragStart + var orientation = BookmarksMenu.getBTOrientation(aEvent, target); + if (target == aDragSession.sourceNode || + (target == aDragSession.sourceNode.previousSibling && + orientation == BookmarksUtils.DROP_AFTER) || + (target == aDragSession.sourceNode.nextSibling && + orientation == BookmarksUtils.DROP_BEFORE)) + return false; + } + return BookmarksMenu.isBTBookmark(target.id) && target.id != "NC:SystemBookmarksStaticRoot" && target.id.substring(0,5) != "find:" ||