diff --git a/mozilla/browser/base/content/customizeToolbar.js b/mozilla/browser/base/content/customizeToolbar.js index b2ea6c1092c..0b5e6c518d1 100644 --- a/mozilla/browser/base/content/customizeToolbar.js +++ b/mozilla/browser/base/content/customizeToolbar.js @@ -55,6 +55,7 @@ function buildDialog() var paletteEnclosure = document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "toolbarpaletteitem"); + paletteEnclosure.setAttribute("ondraggesture", "nsDragAndDrop.startDrag(event, dragObserver)"); paletteEnclosure.appendChild(newItem); newToolbar.appendChild(paletteEnclosure); toolbarItem = toolbarItem.nextSibling; @@ -163,8 +164,10 @@ var dropObserver = { // Don't allow duplicates. var toolbarItem = toolbar.firstChild; while (toolbarItem) { - if (toolbarItem.firstChild.id == newButtonId) - return; + if (toolbarItem.firstChild.id == newButtonId) { + toolbar.removeChild(toolbarItem); + break; + } toolbarItem = toolbarItem.nextSibling; } @@ -183,6 +186,7 @@ var dropObserver = { var paletteEnclosure = document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "toolbarpaletteitem"); + paletteEnclosure.setAttribute("ondraggesture", "nsDragAndDrop.startDrag(event, dragObserver)"); paletteEnclosure.appendChild(paletteItem); toolbar.insertBefore(paletteEnclosure, gCurrentDragOverItem);