Index: chrome/browser/resources/options/options_page.js |
diff --git a/chrome/browser/resources/options/options_page.js b/chrome/browser/resources/options/options_page.js |
index 2d1093bdde7e6de689b47c707f314614cad06b3d..43606eb87437eba478a860ee67c9d3f7322cedc3 100644 |
--- a/chrome/browser/resources/options/options_page.js |
+++ b/chrome/browser/resources/options/options_page.js |
@@ -687,6 +687,15 @@ cr.define('options', function() { |
if (!topPage || topPage.isOverlay || !topPage.parentPage) |
return; |
+ // Do nothing if the client coordinates are not within the source element. |
+ // This occurs if the user toggles a checkbox by pressing spacebar. |
+ // This is a workaround to prevent keyboard events from closing the window. |
+ // See: crosbug.com/15678 |
+ if (event.clientX == -document.body.scrollLeft && |
+ event.clientY == -document.body.scrollTop) { |
+ return; |
+ } |
+ |
// Don't interfere with navbar clicks. |
if ($('navbar').contains(event.target)) |
return; |