diff options
author | tfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-14 00:50:46 +0000 |
---|---|---|
committer | tfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-14 00:50:46 +0000 |
commit | fd4bfad96a43a31d06db35716e7e2fff4863cb94 (patch) | |
tree | 1dc31a7b8070a62db9f57534df74d3aac972a8fe | |
parent | 0d3c156a884405e625bcb78033a38aab7f75e676 (diff) | |
download | chromium_src-fd4bfad96a43a31d06db35716e7e2fff4863cb94.zip chromium_src-fd4bfad96a43a31d06db35716e7e2fff4863cb94.tar.gz chromium_src-fd4bfad96a43a31d06db35716e7e2fff4863cb94.tar.bz2 |
Move UnhandledKeyboardEventHandler closer to WebView.
By doing this we can include it from c/b/chromeos and also from c/b/ui/views/.
That also means that c/b/chromeos/ does not depend on UI stuff from c/b/ui/views/
And allow us to remove another entry from c/b/DEPS file.
BUG=125846
R=xiyuan@chromium.org,ben@chromium.org
Review URL: https://chromiumcodereview.appspot.com/13856004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194113 0039d316-1c4b-4281-b951-d872f2087c98
13 files changed, 41 insertions, 28 deletions
diff --git a/chrome/browser/DEPS b/chrome/browser/DEPS index 46a1623..e893764 100644 --- a/chrome/browser/DEPS +++ b/chrome/browser/DEPS @@ -83,7 +83,6 @@ include_rules = [ "!chrome/browser/ui/views/notifications/balloon_view_host.h", "!chrome/browser/ui/views/reload_button.h", "!chrome/browser/ui/views/select_file_dialog_extension.h", - "!chrome/browser/ui/views/unhandled_keyboard_event_handler.h", # DO NOT ADD ANY MORE ITEMS TO THE ABOVE LIST! # Other libraries. diff --git a/chrome/browser/chromeos/login/webui_login_view.h b/chrome/browser/chromeos/login/webui_login_view.h index 669626a..9f17bf4 100644 --- a/chrome/browser/chromeos/login/webui_login_view.h +++ b/chrome/browser/chromeos/login/webui_login_view.h @@ -8,10 +8,10 @@ #include <map> #include <string> -#include "chrome/browser/ui/views/unhandled_keyboard_event_handler.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" #include "content/public/browser/web_contents_delegate.h" +#include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" #include "ui/views/widget/widget.h" #include "ui/views/widget/widget_delegate.h" @@ -136,7 +136,7 @@ class WebUILoginView : public views::View, views::Widget* login_window_; // Converts keyboard events on the WebContents to accelerators. - UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; + views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; // Maps installed accelerators to OOBE webui accelerator identifiers. AccelMap accel_map_; 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/chrome_browser_ui.gypi b/chrome/chrome_browser_ui.gypi index f8c9c30..553af1ed 100644 --- a/chrome/chrome_browser_ui.gypi +++ b/chrome/chrome_browser_ui.gypi @@ -1816,10 +1816,6 @@ 'browser/ui/views/toolbar_view.cc', 'browser/ui/views/toolbar_view.h', 'browser/ui/views/top_level_widget_views.cc', - 'browser/ui/views/unhandled_keyboard_event_handler.cc', - 'browser/ui/views/unhandled_keyboard_event_handler.h', - 'browser/ui/views/unhandled_keyboard_event_handler_aurax11.cc', - 'browser/ui/views/unhandled_keyboard_event_handler_win.cc', 'browser/ui/views/uninstall_view.cc', 'browser/ui/views/uninstall_view.h', 'browser/ui/views/update_recommended_message_box.cc', diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler.cc b/ui/views/controls/webview/unhandled_keyboard_event_handler.cc index b89cb93..0a43353 100644 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler.cc +++ b/ui/views/controls/webview/unhandled_keyboard_event_handler.cc @@ -2,7 +2,11 @@ // 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 "ui/views/controls/webview/unhandled_keyboard_event_handler.h" + +namespace views { UnhandledKeyboardEventHandler::~UnhandledKeyboardEventHandler() { } + +} // namespace views diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler.h b/ui/views/controls/webview/unhandled_keyboard_event_handler.h index 9e0b981..825fade 100644 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler.h +++ b/ui/views/controls/webview/unhandled_keyboard_event_handler.h @@ -2,10 +2,11 @@ // 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_ +#ifndef UI_VIEWS_CONTROLS_WEBVIEW_UNHANDLED_KEYBOARD_EVENT_HANDLER_H_ +#define UI_VIEWS_CONTROLS_WEBVIEW_UNHANDLED_KEYBOARD_EVENT_HANDLER_H_ #include "base/basictypes.h" +#include "ui/views/controls/webview/webview_export.h" namespace content { struct NativeWebKeyboardEvent; @@ -13,17 +14,16 @@ struct NativeWebKeyboardEvent; namespace views { class FocusManager; -} // This class handles unhandled keyboard messages coming back from the renderer // process. -class UnhandledKeyboardEventHandler { +class WEBVIEW_EXPORT UnhandledKeyboardEventHandler { public: UnhandledKeyboardEventHandler(); ~UnhandledKeyboardEventHandler(); void HandleKeyboardEvent(const content::NativeWebKeyboardEvent& event, - views::FocusManager* focus_manager); + FocusManager* focus_manager); private: #if defined(OS_WIN) @@ -39,4 +39,6 @@ class UnhandledKeyboardEventHandler { DISALLOW_COPY_AND_ASSIGN(UnhandledKeyboardEventHandler); }; -#endif // CHROME_BROWSER_UI_VIEWS_UNHANDLED_KEYBOARD_EVENT_HANDLER_H_ +} // namespace views + +#endif // UI_VIEWS_CONTROLS_WEBVIEW_UNHANDLED_KEYBOARD_EVENT_HANDLER_H_ diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler_aurax11.cc b/ui/views/controls/webview/unhandled_keyboard_event_handler_aurax11.cc index eac8e5e..41c90ff 100644 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler_aurax11.cc +++ b/ui/views/controls/webview/unhandled_keyboard_event_handler_aurax11.cc @@ -2,7 +2,7 @@ // 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 "ui/views/controls/webview/unhandled_keyboard_event_handler.h" #include "base/logging.h" #include "content/public/browser/native_web_keyboard_event.h" @@ -11,12 +11,14 @@ using content::NativeWebKeyboardEvent; +namespace views { + UnhandledKeyboardEventHandler::UnhandledKeyboardEventHandler() { } void UnhandledKeyboardEventHandler::HandleKeyboardEvent( const NativeWebKeyboardEvent& event, - views::FocusManager* focus_manager) { + FocusManager* focus_manager) { if (!focus_manager) { NOTREACHED(); return; @@ -24,3 +26,5 @@ void UnhandledKeyboardEventHandler::HandleKeyboardEvent( if (event.os_event && !event.skip_in_browser) focus_manager->OnKeyEvent(*static_cast<ui::KeyEvent*>(event.os_event)); } + +} // namespace views diff --git a/chrome/browser/ui/views/unhandled_keyboard_event_handler_win.cc b/ui/views/controls/webview/unhandled_keyboard_event_handler_win.cc index 39df86a..fd82608 100644 --- a/chrome/browser/ui/views/unhandled_keyboard_event_handler_win.cc +++ b/ui/views/controls/webview/unhandled_keyboard_event_handler_win.cc @@ -2,7 +2,7 @@ // 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 "ui/views/controls/webview/unhandled_keyboard_event_handler.h" #include "base/logging.h" #include "content/public/browser/native_web_keyboard_event.h" @@ -11,13 +11,15 @@ using content::NativeWebKeyboardEvent; +namespace views { + UnhandledKeyboardEventHandler::UnhandledKeyboardEventHandler() { ignore_next_char_event_ = false; } void UnhandledKeyboardEventHandler::HandleKeyboardEvent( const NativeWebKeyboardEvent& event, - views::FocusManager* focus_manager) { + FocusManager* focus_manager) { if (!focus_manager) { NOTREACHED(); return; @@ -64,3 +66,5 @@ void UnhandledKeyboardEventHandler::HandleKeyboardEvent( #endif DefWindowProc(message.hwnd, message.message, message.wParam, message.lParam); } + +} // namespace views diff --git a/ui/views/controls/webview/webview.gyp b/ui/views/controls/webview/webview.gyp index 68bd84d..f03edae 100644 --- a/ui/views/controls/webview/webview.gyp +++ b/ui/views/controls/webview/webview.gyp @@ -25,6 +25,10 @@ 'WEBVIEW_IMPLEMENTATION', ], 'sources': [ + 'unhandled_keyboard_event_handler.cc', + 'unhandled_keyboard_event_handler.h', + 'unhandled_keyboard_event_handler_aurax11.cc', + 'unhandled_keyboard_event_handler_win.cc', 'web_dialog_view.cc', 'web_dialog_view.h', 'webview.cc', |