Bug 1381032 Ignore keypress events in about:addons when focus is in an embedded options browser
MozReview-Commit-ID: D3KqkYfXbri
--- a/toolkit/mozapps/extensions/content/extensions.js
+++ b/toolkit/mozapps/extensions/content/extensions.js
@@ -158,16 +158,23 @@ function initialize(event) {
});
addonPage.addEventListener("dragover", function(event) {
gDragDrop.onDragOver(event);
});
addonPage.addEventListener("drop", function(event) {
gDragDrop.onDrop(event);
});
addonPage.addEventListener("keypress", function(event) {
+ // If there is an embedded preferences <browser> running in a remote
+ // process, we will see the event here first before it gets a chance
+ // to bubble up through the embedded page. To avoid stealing focus,
+ // we just ignore events when focus is in an options browser.
+ if (event.target.classList.contains("inline-options-browser")) {
+ return;
+ }
gHeader.onKeyPress(event);
});
if (!isDiscoverEnabled()) {
gViewDefault = "addons://list/extension";
}
gViewController.initialize();