diff --git a/chrome/content/zotero/bindings/noteeditor.xml b/chrome/content/zotero/bindings/noteeditor.xml
index 32308e9dec..b9377ad186 100644
--- a/chrome/content/zotero/bindings/noteeditor.xml
+++ b/chrome/content/zotero/bindings/noteeditor.xml
@@ -268,11 +268,28 @@
-
+
diff --git a/chrome/content/zotero/zoteroPane.js b/chrome/content/zotero/zoteroPane.js
index 62e55501ee..b89387b44c 100644
--- a/chrome/content/zotero/zoteroPane.js
+++ b/chrome/content/zotero/zoteroPane.js
@@ -509,6 +509,19 @@ var ZoteroPane = new function()
return;
}
+ else if (from == 'zotero-items-tree') {
+ // Focus TinyMCE explicitly on tab key, since the normal focusing
+ // doesn't work right
+ if (!event.shiftKey && event.keyCode == event.DOM_VK_TAB) {
+ var deck = document.getElementById('zotero-item-pane-content');
+ if (deck.selectedPanel.id == 'zotero-view-note') {
+ setTimeout(function () {
+ document.getElementById('zotero-note-editor').focus();
+ }, 0);
+ }
+ }
+ return;
+ }
// Ignore keystrokes if Zotero pane is closed
var zoteroPane = document.getElementById('zotero-pane-stack');
diff --git a/chrome/content/zotero/zoteroPane.xul b/chrome/content/zotero/zoteroPane.xul
index 77c0800e0e..1f1b71eac3 100644
--- a/chrome/content/zotero/zoteroPane.xul
+++ b/chrome/content/zotero/zoteroPane.xul
@@ -331,6 +331,7 @@
id="zotero-items-tree" context="zotero-itemmenu"
enableColumnDrag="true"
onfocus="if (ZoteroPane_Local.itemsView.rowCount && !ZoteroPane_Local.itemsView.selection.count) { ZoteroPane_Local.itemsView.selection.select(0); }"
+ onkeydown="ZoteroPane_Local.handleKeyDown(event, this.id)"
onkeypress="ZoteroPane_Local.handleKeyPress(event, this.id)"
onselect="ZoteroPane_Local.itemSelected(event)"
ondragstart="if (event.target.localName == 'treechildren') { ZoteroPane_Local.itemsView.onDragStart(event); }"