diff --git a/chrome/content/zotero/bindings/itembox.xml b/chrome/content/zotero/bindings/itembox.xml index 285203fa42..68f37f8d31 100644 --- a/chrome/content/zotero/bindings/itembox.xml +++ b/chrome/content/zotero/bindings/itembox.xml @@ -1467,9 +1467,24 @@ t.select(); + // Leave text field open when window loses focus + var ignoreBlur = function () { + this.ignoreBlur = true; + }.bind(this); + var unignoreBlur = function () { + this.ignoreBlur = false; + }.bind(this); + addEventListener("deactivate", ignoreBlur); + addEventListener("activate", unignoreBlur); + t.addEventListener('blur', function () { - document.getBindingParent(this).blurHandler(this); - }, false); + var self = document.getBindingParent(this); + if (self.ignoreBlur) return; + + removeEventListener("deactivate", ignoreBlur); + removeEventListener("activate", unignoreBlur); + self.blurHandler(this); + }); t.setAttribute('onkeypress', "return document.getBindingParent(this).handleKeyPress(event)"); this._tabDirection = false;