Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(201)

Side by Side Diff: content/public/browser/native_web_keyboard_event.h

Issue 739993002: MacViews: Fix build errors related to NativeWebKeyboardEvent (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase and fix for Sadrul Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_PUBLIC_BROWSER_NATIVE_WEB_KEYBOARD_EVENT_H_ 5 #ifndef CONTENT_PUBLIC_BROWSER_NATIVE_WEB_KEYBOARD_EVENT_H_
6 #define CONTENT_PUBLIC_BROWSER_NATIVE_WEB_KEYBOARD_EVENT_H_ 6 #define CONTENT_PUBLIC_BROWSER_NATIVE_WEB_KEYBOARD_EVENT_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "build/build_config.h" 10 #include "build/build_config.h"
11 #include "content/common/content_export.h" 11 #include "content/common/content_export.h"
12 #include "third_party/WebKit/public/web/WebInputEvent.h" 12 #include "third_party/WebKit/public/web/WebInputEvent.h"
13 #include "ui/events/event_constants.h" 13 #include "ui/events/event_constants.h"
14 #include "ui/gfx/native_widget_types.h" 14 #include "ui/gfx/native_widget_types.h"
15 15
16 namespace ui {
17 class KeyEvent;
18 }
19
16 namespace content { 20 namespace content {
17 21
18 // Owns a platform specific event; used to pass own and pass event through 22 // Owns a platform specific event; used to pass own and pass event through
19 // platform independent code. 23 // platform independent code.
20 struct CONTENT_EXPORT NativeWebKeyboardEvent : 24 struct CONTENT_EXPORT NativeWebKeyboardEvent :
21 NON_EXPORTED_BASE(public blink::WebKeyboardEvent) { 25 NON_EXPORTED_BASE(public blink::WebKeyboardEvent) {
22 NativeWebKeyboardEvent(); 26 NativeWebKeyboardEvent();
23 27
24 explicit NativeWebKeyboardEvent(gfx::NativeEvent native_event); 28 explicit NativeWebKeyboardEvent(gfx::NativeEvent native_event);
25 #if defined(USE_AURA) 29 #if defined(OS_ANDROID)
26 NativeWebKeyboardEvent(ui::EventType type,
27 bool is_char,
28 wchar_t character,
29 int state,
30 double time_stamp_seconds);
31 #elif defined(OS_MACOSX)
32 // TODO(suzhe): Limit these constructors to Linux native Gtk port.
33 // For Linux Views port, after using RenderWidgetHostViewViews to replace
34 // RenderWidgetHostViewGtk, we can use constructors for TOOLKIT_VIEWS defined
35 // below.
36 NativeWebKeyboardEvent(wchar_t character,
37 int state,
38 double time_stamp_seconds);
39 #elif defined(OS_ANDROID)
40 NativeWebKeyboardEvent(blink::WebInputEvent::Type type, 30 NativeWebKeyboardEvent(blink::WebInputEvent::Type type,
41 int modifiers, 31 int modifiers,
42 double time_secs, 32 double time_secs,
43 int keycode, 33 int keycode,
44 int unicode_character, 34 int unicode_character,
45 bool is_system_key); 35 bool is_system_key);
46 // Takes ownership of android_key_event. 36 // Takes ownership of android_key_event.
47 NativeWebKeyboardEvent(jobject android_key_event, 37 NativeWebKeyboardEvent(jobject android_key_event,
48 blink::WebInputEvent::Type type, 38 blink::WebInputEvent::Type type,
49 int modifiers, 39 int modifiers,
50 double time_secs, 40 double time_secs,
51 int keycode, 41 int keycode,
52 int unicode_character, 42 int unicode_character,
53 bool is_system_key); 43 bool is_system_key);
44 #else
45 explicit NativeWebKeyboardEvent(const ui::KeyEvent& key_event);
46 #if defined(USE_AURA)
47 NativeWebKeyboardEvent(ui::EventType type,
48 bool is_char,
49 wchar_t character,
50 int state,
51 double time_stamp_seconds);
52 #endif
54 #endif 53 #endif
55 54
56 NativeWebKeyboardEvent(const NativeWebKeyboardEvent& event); 55 NativeWebKeyboardEvent(const NativeWebKeyboardEvent& event);
57 ~NativeWebKeyboardEvent(); 56 ~NativeWebKeyboardEvent();
58 57
59 NativeWebKeyboardEvent& operator=(const NativeWebKeyboardEvent& event); 58 NativeWebKeyboardEvent& operator=(const NativeWebKeyboardEvent& event);
60 59
61 gfx::NativeEvent os_event; 60 gfx::NativeEvent os_event;
62 61
63 // True if the browser should ignore this event if it's not handled by the 62 // True if the browser should ignore this event if it's not handled by the
64 // renderer. This happens for RawKeyDown events that are created while IME is 63 // renderer. This happens for RawKeyDown events that are created while IME is
65 // active and is necessary to prevent backspace from doing "history back" if 64 // active and is necessary to prevent backspace from doing "history back" if
66 // it is hit in ime mode. 65 // it is hit in ime mode.
67 // Currently, it's only used by Linux and Mac ports. 66 // Currently, it's only used by Linux and Mac ports.
68 bool skip_in_browser; 67 bool skip_in_browser;
69 68
70 #if defined(USE_AURA) 69 #if defined(USE_AURA)
71 // True if the key event matches an edit command. In order to ensure the edit 70 // True if the key event matches an edit command. In order to ensure the edit
72 // command always work in web page, the browser should not pre-handle this key 71 // command always work in web page, the browser should not pre-handle this key
73 // event as a reserved accelerator. See http://crbug.com/54573 72 // event as a reserved accelerator. See http://crbug.com/54573
74 bool match_edit_command; 73 bool match_edit_command;
75 #endif 74 #endif
76 }; 75 };
77 76
78 } // namespace content 77 } // namespace content
79 78
80 #endif // CONTENT_PUBLIC_BROWSER_NATIVE_WEB_KEYBOARD_EVENT_H_ 79 #endif // CONTENT_PUBLIC_BROWSER_NATIVE_WEB_KEYBOARD_EVENT_H_
OLDNEW
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_aura.cc ('k') | content/renderer/render_view_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698