diff --git a/common/content/buffer.js b/common/content/buffer.js index 74621395..781c6a14 100644 --- a/common/content/buffer.js +++ b/common/content/buffer.js @@ -294,7 +294,10 @@ const Buffer = Module("buffer", { frame.dactylFocusAllowed = false; // Workaround for bugs 591425 and 606877, dactyl bug #81 - config.browser.mCurrentBrowser.collapsed = + let collapse = uri && uri.scheme === "dactyl" && webProgress.isLoadingDocument; + if (collapse) + config.focus.setFocus(window.documentElement); + config.browser.mCurrentBrowser.collapsed = collapse; uri && uri.scheme === "dactyl" && webProgress.isLoadingDocument; util.timeout(function () { diff --git a/common/modules/services.jsm b/common/modules/services.jsm index 4199f2ca..1460cf83 100644 --- a/common/modules/services.jsm +++ b/common/modules/services.jsm @@ -36,6 +36,7 @@ const Services = Module("Services", { this.add("environment", "@mozilla.org/process/environment;1", Ci.nsIEnvironment); this.add("extensionManager", "@mozilla.org/extensions/manager;1", Ci.nsIExtensionManager); this.add("favicon", "@mozilla.org/browser/favicon-service;1", Ci.nsIFaviconService); + this.add("focus", "@mozilla.org/focus-manager;1", Ci.nsIFocusManager); this.add("history", "@mozilla.org/browser/global-history;2", [Ci.nsIBrowserHistory, Ci.nsIGlobalHistory3, Ci.nsINavHistoryService, Ci.nsPIPlacesDatabase]); this.add("io", "@mozilla.org/network/io-service;1", Ci.nsIIOService);