From 35618645429b426adbb54262665bcf344bbaff2f Mon Sep 17 00:00:00 2001 From: Dan Stillman Date: Thu, 4 May 2017 13:51:16 -0400 Subject: [PATCH] Ignore drags to tag selector background This was causing tags to be created with the text of all tags. --- .../content/zotero/bindings/tagselector.xml | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/chrome/content/zotero/bindings/tagselector.xml b/chrome/content/zotero/bindings/tagselector.xml index 37ddbe2f89..760f19a259 100644 --- a/chrome/content/zotero/bindings/tagselector.xml +++ b/chrome/content/zotero/bindings/tagselector.xml @@ -1011,10 +1011,17 @@ } } */ - + + var elem = event.target; + + // Ignore drops not on tags + if (elem.localName != 'button') { + return; + } + // Store the event, because drop event does not have shiftKey attribute set Zotero.DragDrop.currentEvent = event; - event.target.setAttribute('draggedOver', true); + elem.setAttribute('draggedOver', true); event.preventDefault(); event.dataTransfer.dropEffect = "copy"; } @@ -1026,8 +1033,14 @@ this.onDrop = Zotero.Promise.method(function (event) { - var node = event.target; - node.setAttribute('draggedOver', false); + var elem = event.target; + + // Ignore drops not on tags + if (elem.localName != 'button') { + return; + } + + elem.setAttribute('draggedOver', false); var dt = event.dataTransfer; var ids = dt.getData('zotero/item'); @@ -1038,7 +1051,7 @@ return Zotero.DB.executeTransaction(function* () { ids = ids.split(','); var items = Zotero.Items.get(ids); - var value = node.textContent + var value = elem.textContent for (let i=0; i