diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-27 18:09:06 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-27 18:09:06 +0000 |
commit | 666900e16050b1469e1e21376a5e0cae6d668945 (patch) | |
tree | 877ba3b0ea379fff655c1203fbaf75aada5603fc | |
parent | e1249b3fb4d47da09a36469bbe9c9fc94250d042 (diff) | |
download | chromium_src-666900e16050b1469e1e21376a5e0cae6d668945.zip chromium_src-666900e16050b1469e1e21376a5e0cae6d668945.tar.gz chromium_src-666900e16050b1469e1e21376a5e0cae6d668945.tar.bz2 |
Move native_web_keyboard_event_views.cc to chrome, so that we don't have any views code in content. Although this is now away from the other NativeWebKeyboardEvent implementations, it's at least in the same module as the rest of the views related implementations like RenderWidgetHostViewViews and TabContentViewViews which use it.
Review URL: http://codereview.chromium.org/7766012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98570 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/renderer_host/render_widget_host_view_views.cc | 12 | ||||
-rw-r--r-- | chrome/chrome_common.gypi | 6 | ||||
-rw-r--r-- | chrome/common/native_web_keyboard_event_views.cc (renamed from content/common/native_web_keyboard_event_views.cc) | 23 | ||||
-rw-r--r-- | chrome/common/native_web_keyboard_event_views.h | 33 | ||||
-rw-r--r-- | content/common/native_web_keyboard_event.h | 21 | ||||
-rw-r--r-- | content/content_common.gypi | 5 |
6 files changed, 59 insertions, 41 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_view_views.cc b/chrome/browser/renderer_host/render_widget_host_view_views.cc index 9b6a7af..53f1aed 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_views.cc +++ b/chrome/browser/renderer_host/render_widget_host_view_views.cc @@ -14,10 +14,10 @@ #include "base/task.h" #include "base/time.h" #include "base/utf_string_conversions.h" +#include "chrome/common/native_web_keyboard_event_views.h" #include "chrome/common/render_messages.h" #include "content/browser/renderer_host/backing_store_skia.h" #include "content/browser/renderer_host/render_widget_host.h" -#include "content/common/native_web_keyboard_event.h" #include "content/common/result_codes.h" #include "content/common/view_messages.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h" @@ -488,14 +488,14 @@ bool RenderWidgetHostViewViews::OnKeyPressed(const views::KeyEvent& event) { // TODO(suzhe): Support editor key bindings. if (!host_) return false; - host_->ForwardKeyboardEvent(NativeWebKeyboardEvent(event)); + host_->ForwardKeyboardEvent(NativeWebKeyboardEventViews(event)); return true; } bool RenderWidgetHostViewViews::OnKeyReleased(const views::KeyEvent& event) { if (!host_) return false; - host_->ForwardKeyboardEvent(NativeWebKeyboardEvent(event)); + host_->ForwardKeyboardEvent(NativeWebKeyboardEventViews(event)); return true; } @@ -578,9 +578,9 @@ void RenderWidgetHostViewViews::InsertText(const string16& text) { void RenderWidgetHostViewViews::InsertChar(char16 ch, int flags) { if (host_) { - NativeWebKeyboardEvent::FromViewsEvent from_views_event; - NativeWebKeyboardEvent wke(ch, flags, base::Time::Now().ToDoubleT(), - from_views_event); + NativeWebKeyboardEventViews::FromViewsEvent from_views_event; + NativeWebKeyboardEventViews wke(ch, flags, base::Time::Now().ToDoubleT(), + from_views_event); host_->ForwardKeyboardEvent(wke); } } diff --git a/chrome/chrome_common.gypi b/chrome/chrome_common.gypi index f1553a3..a5110d6 100644 --- a/chrome/chrome_common.gypi +++ b/chrome/chrome_common.gypi @@ -265,6 +265,12 @@ ], }, },], + ['toolkit_views==1', { + 'sources': [ + 'common/native_web_keyboard_event_views.cc', + 'common/native_web_keyboard_event_views.h', + ], + }], ['os_posix == 1 and OS != "mac"', { 'include_dirs': [ '<(SHARED_INTERMEDIATE_DIR)', diff --git a/content/common/native_web_keyboard_event_views.cc b/chrome/common/native_web_keyboard_event_views.cc index b9c2eea..21e23cd 100644 --- a/content/common/native_web_keyboard_event_views.cc +++ b/chrome/common/native_web_keyboard_event_views.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 "content/common/native_web_keyboard_event.h" +#include "chrome/common/native_web_keyboard_event_views.h" #if defined(TOOLKIT_USES_GTK) #include <gdk/gdk.h> @@ -23,9 +23,9 @@ int ViewsFlagsToWebInputEventModifiers(int flags) { } // namespace -NativeWebKeyboardEvent::NativeWebKeyboardEvent( - const views::KeyEvent& event) - : skip_in_browser(false) { +NativeWebKeyboardEventViews::NativeWebKeyboardEventViews( + const views::KeyEvent& event) { + skip_in_browser = false; DCHECK(event.type() == ui::ET_KEY_PRESSED || event.type() == ui::ET_KEY_RELEASED); @@ -60,11 +60,13 @@ NativeWebKeyboardEvent::NativeWebKeyboardEvent( #endif } -NativeWebKeyboardEvent::NativeWebKeyboardEvent(uint16 character, - int flags, - double time_stamp_seconds, - FromViewsEvent) - : skip_in_browser(true) { +NativeWebKeyboardEventViews::NativeWebKeyboardEventViews( + uint16 character, + int flags, + double time_stamp_seconds, + FromViewsEvent) { + skip_in_browser = true; + type = WebKit::WebInputEvent::Char; modifiers = ViewsFlagsToWebInputEventModifiers(flags); timeStampSeconds = time_stamp_seconds; @@ -84,3 +86,6 @@ NativeWebKeyboardEvent::NativeWebKeyboardEvent(uint16 character, match_edit_command = false; #endif } + +NativeWebKeyboardEventViews::~NativeWebKeyboardEventViews() { +} diff --git a/chrome/common/native_web_keyboard_event_views.h b/chrome/common/native_web_keyboard_event_views.h new file mode 100644 index 0000000..2c33511 --- /dev/null +++ b/chrome/common/native_web_keyboard_event_views.h @@ -0,0 +1,33 @@ +// Copyright (c) 2011 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_COMMON_NATIVE_WEB_KEYBOARD_EVENT_VIEWS_H_ +#define CHROME_COMMON_NATIVE_WEB_KEYBOARD_EVENT_VIEWS_H_ +#pragma once + +#include "content/common/native_web_keyboard_event.h" + +namespace views { +class KeyEvent; +} + +// A views implementation of NativeWebKeyboardEvent. +struct NativeWebKeyboardEventViews : public NativeWebKeyboardEvent { + // TODO(suzhe): remove once we get rid of Gtk from Views. + struct FromViewsEvent {}; + // These two constructors are shared between Windows and Linux Views ports. + explicit NativeWebKeyboardEventViews(const views::KeyEvent& event); + // TODO(suzhe): Sadly, we need to add a meanless FromViewsEvent parameter to + // distinguish between this contructor and above Gtk one, because they use + // different modifier flags. We can remove this extra parameter as soon as we + // disable above Gtk constructor in Linux Views port. + NativeWebKeyboardEventViews(uint16 character, + int flags, + double time_stamp_seconds, + FromViewsEvent); + + ~NativeWebKeyboardEventViews(); +}; + +#endif // CHROME_COMMON_NATIVE_WEB_KEYBOARD_EVENT_VIEWS_H_ diff --git a/content/common/native_web_keyboard_event.h b/content/common/native_web_keyboard_event.h index 21e358a..7de71a4 100644 --- a/content/common/native_web_keyboard_event.h +++ b/content/common/native_web_keyboard_event.h @@ -22,12 +22,6 @@ class NSEvent; typedef struct _GdkEventKey GdkEventKey; #endif -#if defined(TOOLKIT_VIEWS) -namespace views { -class KeyEvent; -} -#endif - // Owns a platform specific event; used to pass own and pass event through // platform independent code. struct NativeWebKeyboardEvent : public WebKit::WebKeyboardEvent { @@ -51,21 +45,6 @@ struct NativeWebKeyboardEvent : public WebKit::WebKeyboardEvent { double time_stamp_seconds); #endif -#if defined(TOOLKIT_VIEWS) - // TODO(suzhe): remove once we get rid of Gtk from Views. - struct FromViewsEvent {}; - // These two constructors are shared between Windows and Linux Views ports. - explicit NativeWebKeyboardEvent(const views::KeyEvent& event); - // TODO(suzhe): Sadly, we need to add a meanless FromViewsEvent parameter to - // distinguish between this contructor and above Gtk one, because they use - // different modifier flags. We can remove this extra parameter as soon as we - // disable above Gtk constructor in Linux Views port. - NativeWebKeyboardEvent(uint16 character, - int flags, - double time_stamp_seconds, - FromViewsEvent); -#endif - NativeWebKeyboardEvent(const NativeWebKeyboardEvent& event); ~NativeWebKeyboardEvent(); diff --git a/content/content_common.gypi b/content/content_common.gypi index d974d29..9590b72 100644 --- a/content/content_common.gypi +++ b/content/content_common.gypi @@ -282,11 +282,6 @@ 'common/gpu/x_util.h', ], }], - ['toolkit_views==1', { - 'sources': [ - 'common/native_web_keyboard_event_views.cc', - ], - }], ['touchui==1', { 'sources': [ 'common/gpu/image_transport_surface_linux.h', |