diff --git a/common/content/buffer.js b/common/content/buffer.js index 7773519f..ed5670b8 100644 --- a/common/content/buffer.js +++ b/common/content/buffer.js @@ -258,7 +258,7 @@ var Buffer = Module("buffer", { else if (flags & Ci.nsIWebProgressListener.STATE_STOP) { // Workaround for bugs 591425 and 606877, dactyl bug #81 config.browser.mCurrentBrowser.collapsed = false; - if (!dactyl.focusedElement) + if (!dactyl.focusedElement || dactyl.focusedElement === document.documentElement) dactyl.focusContent(); statusline.updateUrl(); } diff --git a/common/content/events.js b/common/content/events.js index 69d39fda..fe689949 100644 --- a/common/content/events.js +++ b/common/content/events.js @@ -719,6 +719,7 @@ var Events = Module("events", { let rect = dactyl.focusedElement.getBoundingClientRect(); if (!rect.width || !rect.height) { services.focus.clearFocus(window); + document.commandDispatcher.focusedWindow = content; // onFocusChange needs to die. this.onFocusChange(); } @@ -726,12 +727,14 @@ var Events = Module("events", { }, onBlur: function onFocus(event) { - if (event.originalTarget instanceof Window && services.focus.activeWindow == null) + if (event.originalTarget instanceof Window && services.focus.activeWindow == null) { // Deals with circumstances where, after the main window // blurs while a collapsed frame has focus, re-activating // the main window does not restore focus and we lose key // input. services.focus.clearFocus(window); + document.commandDispatcher.focusedWindow = content; + } }, // TODO: Merge with onFocusChange diff --git a/common/content/tabs.js b/common/content/tabs.js index d1e88e1c..404f5969 100644 --- a/common/content/tabs.js +++ b/common/content/tabs.js @@ -976,9 +976,9 @@ var Tabs = Module("tabs", { return value; }, completer: function (context) [ - ["never", "Never show tab bar"], - ["multitab", "Show tab bar when there are multiple tabs"], - ["always", "Always show tab bar"] + ["never", "Never show the tab bar"], + ["multitab", "Show the tab bar when there are multiple tabs"], + ["always", "Always show the tab bar"] ] }); diff --git a/common/locale/en-US/options.xml b/common/locale/en-US/options.xml index ca0651dd..3f52d9b2 100644 --- a/common/locale/en-US/options.xml +++ b/common/locale/en-US/options.xml @@ -4,11 +4,10 @@ + //input[not(@type='hidden')] | //xhtml:input[not(@type='hidden')] | + //a | //xhtml:a | //area | //xhtml:area | + //button | //xhtml:button | //iframe | //xhtml:iframe | + //select | //xhtml:select | //textarea | //xhtml:textarea"> ]> + //textarea | //xhtml:textarea | + //button | //xhtml:button | + //select | //xhtml:select'

Defines specialized XPath expressions for arbitrary @@ -1356,9 +1353,9 @@

Define when the tab bar is visible.

-
always
Always show tab bar
-
multitab
Show tab bar when there are multiple tabs
-
never
Never show tab bar
+
always
Always show the tab bar
+
multitab
Show the tab bar when there are multiple tabs
+
never
Never show the tab bar