From 0b3b296e28305bb4a8e73ab3d1ba6ebdde4c7411 Mon Sep 17 00:00:00 2001 From: Dan Stillman Date: Fri, 26 Dec 2014 14:16:41 -0500 Subject: [PATCH] Keep active item pane editing field open when window loses focus Closes #153 --- chrome/content/zotero/bindings/itembox.xml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/chrome/content/zotero/bindings/itembox.xml b/chrome/content/zotero/bindings/itembox.xml index 285203fa4..68f37f8d3 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;