| Index: ui/events/event_utils.cc
|
| diff --git a/ui/events/event_utils.cc b/ui/events/event_utils.cc
|
| index e5a319e10f15bf0daab6633f98588eb86fd0b272..ad7820fdebc5997d4e9a680f26a6bab5df1371c0 100644
|
| --- a/ui/events/event_utils.cc
|
| +++ b/ui/events/event_utils.cc
|
| @@ -16,6 +16,44 @@ namespace {
|
| int g_custom_event_types = ET_LAST;
|
| } // namespace
|
|
|
| +Event* EventFromNative(const base::NativeEvent& native_event) {
|
| + EventType type = EventTypeFromNative(native_event);
|
| + switch(type) {
|
| + case ET_KEY_PRESSED:
|
| + case ET_KEY_RELEASED:
|
| + return new KeyEvent(native_event, false);
|
| +
|
| + case ET_TRANSLATED_KEY_PRESS:
|
| + case ET_TRANSLATED_KEY_RELEASE:
|
| + return new TranslatedKeyEvent(native_event, false);
|
| +
|
| + case ET_MOUSE_PRESSED:
|
| + case ET_MOUSE_DRAGGED:
|
| + case ET_MOUSE_RELEASED:
|
| + case ET_MOUSE_MOVED:
|
| + case ET_MOUSE_ENTERED:
|
| + case ET_MOUSE_EXITED:
|
| + return new MouseEvent(native_event);
|
| +
|
| + case ET_MOUSEWHEEL:
|
| + return new MouseWheelEvent(native_event);
|
| +
|
| + case ET_SCROLL_FLING_START:
|
| + case ET_SCROLL_FLING_CANCEL:
|
| + case ET_SCROLL:
|
| + return new ScrollEvent(native_event);
|
| +
|
| + case ET_TOUCH_RELEASED:
|
| + case ET_TOUCH_PRESSED:
|
| + case ET_TOUCH_MOVED:
|
| + case ET_TOUCH_CANCELLED:
|
| + return new TouchEvent(native_event);
|
| +
|
| + default:
|
| + return NULL;
|
| + }
|
| +}
|
| +
|
| int RegisterCustomEventType() {
|
| return ++g_custom_event_types;
|
| }
|
|
|