diff options
Diffstat (limited to 'chrome/browser/ui/browser_command_controller.cc')
-rw-r--r-- | chrome/browser/ui/browser_command_controller.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/chrome/browser/ui/browser_command_controller.cc b/chrome/browser/ui/browser_command_controller.cc index 71a5265..510221b 100644 --- a/chrome/browser/ui/browser_command_controller.cc +++ b/chrome/browser/ui/browser_command_controller.cc @@ -68,6 +68,10 @@ #include "chrome/browser/ui/browser_commands_chromeos.h" #endif +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#include "ui/events/x/text_edit_key_bindings_delegate_x11.h" +#endif + using content::NavigationEntry; using content::NavigationController; using content::WebContents; @@ -282,6 +286,16 @@ bool BrowserCommandController::IsReservedCommandOrKey( if (window()->IsFullscreen() && command_id == IDC_FULLSCREEN) return true; + +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(TOOLKIT_GTK) + // If this key was registered by the user as a content editing hotkey, then + // it is not reserved. + ui::TextEditKeyBindingsDelegateX11* delegate = + ui::GetTextEditKeyBindingsDelegate(); + if (delegate && delegate->MatchEvent(*event.os_event, NULL)) + return false; +#endif + return command_id == IDC_CLOSE_TAB || command_id == IDC_CLOSE_WINDOW || command_id == IDC_NEW_INCOGNITO_WINDOW || |