| // 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_ |