diff options
Diffstat (limited to 'chrome/browser/ui/views')
9 files changed, 10 insertions, 152 deletions
diff --git a/chrome/browser/ui/views/constrained_web_dialog_delegate_views.cc b/chrome/browser/ui/views/constrained_web_dialog_delegate_views.cc index fa36100..c05c1d7 100644 --- a/chrome/browser/ui/views/constrained_web_dialog_delegate_views.cc +++ b/chrome/browser/ui/views/constrained_web_dialog_delegate_views.cc @@ -6,13 +6,13 @@ #include "base/utf_string_conversions.h" #include "chrome/browser/ui/views/constrained_window_views.h" -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" #include "chrome/browser/ui/web_contents_modal_dialog_manager.h" #include "chrome/browser/ui/web_contents_modal_dialog_manager_delegate.h" #include "content/public/browser/native_web_keyboard_event.h" #include "content/public/browser/web_contents.h" #include "content/public/browser/web_contents_view.h" #include "ui/gfx/size.h" +#include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" #include "ui/views/controls/webview/webview.h" #include "ui/views/view.h" #include "ui/views/widget/widget.h" @@ -63,7 +63,7 @@ class ConstrainedWebDialogDelegateViews private: // Converts keyboard events on the WebContents to accelerators. - UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; + views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; views::WebView* view_; views::Widget* window_; diff --git a/chrome/browser/ui/views/extensions/extension_view_views.h b/chrome/browser/ui/views/extensions/extension_view_views.h index ba03e04..15d4949 100644 --- a/chrome/browser/ui/views/extensions/extension_view_views.h +++ b/chrome/browser/ui/views/extensions/extension_view_views.h @@ -7,10 +7,10 @@ #include "base/basictypes.h" #include "base/compiler_specific.h" -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" #include "content/public/browser/native_web_keyboard_event.h" #include "third_party/skia/include/core/SkBitmap.h" #include "ui/views/controls/native/native_view_host.h" +#include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" class Browser; @@ -107,7 +107,7 @@ class ExtensionViewViews : public views::NativeViewHost { // A handler to handle unhandled keyboard messages coming back from the // renderer process. - UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; + views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; DISALLOW_COPY_AND_ASSIGN(ExtensionViewViews); }; diff --git a/chrome/browser/ui/views/extensions/native_app_window_views.h b/chrome/browser/ui/views/extensions/native_app_window_views.h index 0b7fd22..6d89918 100644 --- a/chrome/browser/ui/views/extensions/native_app_window_views.h +++ b/chrome/browser/ui/views/extensions/native_app_window_views.h @@ -9,11 +9,11 @@ #include "chrome/browser/ui/base_window.h" #include "chrome/browser/ui/extensions/native_app_window.h" #include "chrome/browser/ui/extensions/shell_window.h" -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" #include "content/public/browser/web_contents_observer.h" #include "third_party/skia/include/core/SkRegion.h" #include "ui/gfx/image/image_skia.h" #include "ui/gfx/rect.h" +#include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" #include "ui/views/widget/widget_delegate.h" #include "ui/views/widget/widget_observer.h" @@ -168,7 +168,7 @@ class NativeAppWindowViews : public NativeAppWindow, // The class that registers for keyboard shortcuts for extension commands. scoped_ptr<ExtensionKeybindingRegistryViews> extension_keybinding_registry_; - UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; + views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; base::WeakPtrFactory<NativeAppWindowViews> weak_ptr_factory_; diff --git a/chrome/browser/ui/views/external_tab_container_win.h b/chrome/browser/ui/views/external_tab_container_win.h index 6a94f4b..79a28652 100644 --- a/chrome/browser/ui/views/external_tab_container_win.h +++ b/chrome/browser/ui/views/external_tab_container_win.h @@ -18,7 +18,6 @@ #include "chrome/browser/infobars/infobar_container.h" #include "chrome/browser/net/chrome_url_request_context.h" #include "chrome/browser/ui/blocked_content/blocked_content_tab_helper_delegate.h" -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" #include "content/public/browser/navigation_type.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" @@ -26,6 +25,7 @@ #include "content/public/browser/web_contents_delegate.h" #include "content/public/browser/web_contents_observer.h" #include "ui/base/accelerators/accelerator.h" +#include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" #include "ui/views/widget/widget_observer.h" class AutomationProvider; @@ -295,7 +295,7 @@ class ExternalTabContainerWin : public ExternalTabContainer, // The URL request context to be used for this tab. Can be NULL. scoped_refptr<ChromeURLRequestContextGetter> request_context_; - UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; + views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; // A mapping between accelerators and commands. std::map<ui::Accelerator, int> accelerator_table_; diff --git a/chrome/browser/ui/views/frame/browser_view.h b/chrome/browser/ui/views/frame/browser_view.h index 6d273dc..b83530a 100644 --- a/chrome/browser/ui/views/frame/browser_view.h +++ b/chrome/browser/ui/views/frame/browser_view.h @@ -20,13 +20,13 @@ #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" #include "chrome/browser/ui/views/frame/browser_frame.h" #include "chrome/browser/ui/views/load_complete_listener.h" -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" #include "ui/base/accelerators/accelerator.h" #include "ui/base/models/simple_menu_model.h" #include "ui/gfx/native_widget_types.h" #include "ui/gfx/sys_color_change_listener.h" #include "ui/views/controls/button/button.h" #include "ui/views/controls/single_split_view_listener.h" +#include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" #include "ui/views/widget/widget_delegate.h" #include "ui/views/widget/widget_observer.h" #include "ui/views/window/client_view.h" @@ -732,7 +732,7 @@ class BrowserView : public BrowserWindow, // The timer used to update frames for the Loading Animation. base::RepeatingTimer<BrowserView> loading_animation_timer_; - UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; + views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; // Used to measure the loading spinner animation rate. base::TimeTicks last_animation_time_; diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler.cc b/chrome/browser/ui/views/unhandled_keyboard_event_handler.cc deleted file mode 100644 index b89cb93..0000000 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler.cc +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" - -UnhandledKeyboardEventHandler::~UnhandledKeyboardEventHandler() { -} diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler.h b/chrome/browser/ui/views/unhandled_keyboard_event_handler.h deleted file mode 100644 index 9e0b981..0000000 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler.h +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CHROME_BROWSER_UI_VIEWS_UNHANDLED_KEYBOARD_EVENT_HANDLER_H_ -#define CHROME_BROWSER_UI_VIEWS_UNHANDLED_KEYBOARD_EVENT_HANDLER_H_ - -#include "base/basictypes.h" - -namespace content { -struct NativeWebKeyboardEvent; -} - -namespace views { -class FocusManager; -} - -// This class handles unhandled keyboard messages coming back from the renderer -// process. -class UnhandledKeyboardEventHandler { - public: - UnhandledKeyboardEventHandler(); - ~UnhandledKeyboardEventHandler(); - - void HandleKeyboardEvent(const content::NativeWebKeyboardEvent& event, - views::FocusManager* focus_manager); - - private: -#if defined(OS_WIN) - // Whether to ignore the next Char keyboard event. - // If a RawKeyDown event was handled as a shortcut key, then we're done - // handling it and should eat any Char event that the translate phase may - // have produced from it. (Handling this event may cause undesirable effects, - // such as a beep if DefWindowProc() has no default handling for the given - // Char.) - bool ignore_next_char_event_; -#endif - - DISALLOW_COPY_AND_ASSIGN(UnhandledKeyboardEventHandler); -}; - -#endif // CHROME_BROWSER_UI_VIEWS_UNHANDLED_KEYBOARD_EVENT_HANDLER_H_ diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler_aurax11.cc b/chrome/browser/ui/views/unhandled_keyboard_event_handler_aurax11.cc deleted file mode 100644 index eac8e5e..0000000 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler_aurax11.cc +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" - -#include "base/logging.h" -#include "content/public/browser/native_web_keyboard_event.h" -#include "ui/base/events/event.h" -#include "ui/views/focus/focus_manager.h" - -using content::NativeWebKeyboardEvent; - -UnhandledKeyboardEventHandler::UnhandledKeyboardEventHandler() { -} - -void UnhandledKeyboardEventHandler::HandleKeyboardEvent( - const NativeWebKeyboardEvent& event, - views::FocusManager* focus_manager) { - if (!focus_manager) { - NOTREACHED(); - return; - } - if (event.os_event && !event.skip_in_browser) - focus_manager->OnKeyEvent(*static_cast<ui::KeyEvent*>(event.os_event)); -} diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler_win.cc b/chrome/browser/ui/views/unhandled_keyboard_event_handler_win.cc deleted file mode 100644 index 39df86a..0000000 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler_win.cc +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" - -#include "base/logging.h" -#include "content/public/browser/native_web_keyboard_event.h" -#include "ui/base/events/event.h" -#include "ui/views/focus/focus_manager.h" - -using content::NativeWebKeyboardEvent; - -UnhandledKeyboardEventHandler::UnhandledKeyboardEventHandler() { - ignore_next_char_event_ = false; -} - -void UnhandledKeyboardEventHandler::HandleKeyboardEvent( - const NativeWebKeyboardEvent& event, - views::FocusManager* focus_manager) { - if (!focus_manager) { - NOTREACHED(); - return; - } - // Previous calls to TranslateMessage can generate Char events as well as - // RawKeyDown events, even if the latter triggered an accelerator. In these - // cases, we discard the Char events. - if (event.type == WebKit::WebInputEvent::Char && ignore_next_char_event_) { - ignore_next_char_event_ = false; - return; - } - // It's necessary to reset this flag, because a RawKeyDown event may not - // always generate a Char event. - ignore_next_char_event_ = false; - - if (event.type == WebKit::WebInputEvent::RawKeyDown) { - ui::Accelerator accelerator( - static_cast<ui::KeyboardCode>(event.windowsKeyCode), - content::GetModifiersFromNativeWebKeyboardEvent(event)); - - // This is tricky: we want to set ignore_next_char_event_ if - // ProcessAccelerator returns true. But ProcessAccelerator might delete - // |this| if the accelerator is a "close tab" one. So we speculatively - // set the flag and fix it if no event was handled. - ignore_next_char_event_ = true; - - if (focus_manager->ProcessAccelerator(accelerator)) { - return; - } - - // ProcessAccelerator didn't handle the accelerator, so we know both - // that |this| is still valid, and that we didn't want to set the flag. - ignore_next_char_event_ = false; - } - - // Any unhandled keyboard/character messages should be defproced. - // This allows stuff like F10, etc to work correctly. -#if defined(USE_AURA) - if (!event.os_event) - return; - const MSG& message(event.os_event->native_event()); -#else - const MSG& message(event.os_event); -#endif - DefWindowProc(message.hwnd, message.message, message.wParam, message.lParam); -} |