| OLD | NEW |
| 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 #include "ui/events/event.h" | 5 #include "ui/events/event.h" |
| 6 | 6 |
| 7 #if defined(USE_X11) | 7 #if defined(USE_X11) |
| 8 #include <X11/extensions/XInput2.h> | 8 #include <X11/extensions/XInput2.h> |
| 9 #include <X11/Xlib.h> | 9 #include <X11/Xlib.h> |
| 10 #endif | 10 #endif |
| (...skipping 555 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 566 event.flags() == last_key_event_->flags() && | 566 event.flags() == last_key_event_->flags() && |
| 567 (event.time_stamp() - last_key_event_->time_stamp()).InMilliseconds() < | 567 (event.time_stamp() - last_key_event_->time_stamp()).InMilliseconds() < |
| 568 kMaxAutoRepeatTimeMs) { | 568 kMaxAutoRepeatTimeMs) { |
| 569 return true; | 569 return true; |
| 570 } | 570 } |
| 571 delete last_key_event_; | 571 delete last_key_event_; |
| 572 last_key_event_ = new KeyEvent(event); | 572 last_key_event_ = new KeyEvent(event); |
| 573 return false; | 573 return false; |
| 574 } | 574 } |
| 575 | 575 |
| 576 KeyEvent::KeyEvent(const base::NativeEvent& native_event, bool is_char) | 576 KeyEvent::KeyEvent(const base::NativeEvent& native_event) |
| 577 : Event(native_event, | 577 : Event(native_event, |
| 578 EventTypeFromNative(native_event), | 578 EventTypeFromNative(native_event), |
| 579 EventFlagsFromNative(native_event)), | 579 EventFlagsFromNative(native_event)), |
| 580 key_code_(KeyboardCodeFromNative(native_event)), | 580 key_code_(KeyboardCodeFromNative(native_event)), |
| 581 code_(CodeFromNative(native_event)), | 581 code_(CodeFromNative(native_event)), |
| 582 is_char_(is_char), | 582 is_char_(IsCharFromNative(native_event)), |
| 583 platform_keycode_(PlatformKeycodeFromNative(native_event)), | 583 platform_keycode_(PlatformKeycodeFromNative(native_event)), |
| 584 character_(0) { | 584 character_(0) { |
| 585 if (IsRepeated(*this)) | 585 if (IsRepeated(*this)) |
| 586 set_flags(flags() | ui::EF_IS_REPEAT); | 586 set_flags(flags() | ui::EF_IS_REPEAT); |
| 587 | 587 |
| 588 #if defined(USE_X11) | 588 #if defined(USE_X11) |
| 589 NormalizeFlags(); | 589 NormalizeFlags(); |
| 590 #endif | 590 #endif |
| 591 } | 591 } |
| 592 | 592 |
| 593 KeyEvent::KeyEvent(EventType type, | 593 KeyEvent::KeyEvent(EventType type, |
| 594 KeyboardCode key_code, | 594 KeyboardCode key_code, |
| 595 int flags, | 595 int flags) |
| 596 bool is_char) | |
| 597 : Event(type, EventTimeForNow(), flags), | 596 : Event(type, EventTimeForNow(), flags), |
| 598 key_code_(key_code), | 597 key_code_(key_code), |
| 599 is_char_(is_char), | 598 is_char_(false), |
| 600 platform_keycode_(0), | 599 platform_keycode_(0), |
| 601 character_(GetCharacterFromKeyCode(key_code, flags)) { | 600 character_(GetCharacterFromKeyCode(key_code, flags)) { |
| 602 } | 601 } |
| 603 | 602 |
| 604 KeyEvent::KeyEvent(EventType type, | 603 KeyEvent::KeyEvent(EventType type, |
| 605 KeyboardCode key_code, | 604 KeyboardCode key_code, |
| 606 const std::string& code, | 605 const std::string& code, |
| 607 int flags, | 606 int flags) |
| 608 bool is_char) | |
| 609 : Event(type, EventTimeForNow(), flags), | 607 : Event(type, EventTimeForNow(), flags), |
| 610 key_code_(key_code), | 608 key_code_(key_code), |
| 611 code_(code), | 609 code_(code), |
| 612 is_char_(is_char), | 610 is_char_(false), |
| 613 platform_keycode_(0), | 611 platform_keycode_(0), |
| 614 character_(GetCharacterFromKeyCode(key_code, flags)) { | 612 character_(GetCharacterFromKeyCode(key_code, flags)) { |
| 615 } | 613 } |
| 616 | 614 |
| 617 uint16 KeyEvent::GetCharacter() const { | 615 KeyEvent::KeyEvent(base::char16 character, KeyboardCode key_code, int flags) |
| 616 : Event(ET_KEY_PRESSED, EventTimeForNow(), flags), |
| 617 key_code_(key_code), |
| 618 code_(""), |
| 619 is_char_(true), |
| 620 character_(character) { |
| 621 } |
| 622 |
| 623 base::char16 KeyEvent::GetCharacter() const { |
| 618 if (character_) | 624 if (character_) |
| 619 return character_; | 625 return character_; |
| 620 | 626 |
| 621 #if defined(OS_WIN) | 627 #if defined(OS_WIN) |
| 622 return (native_event().message == WM_CHAR) ? key_code_ : | 628 return (native_event().message == WM_CHAR) ? key_code_ : |
| 623 GetCharacterFromKeyCode(key_code_, flags()); | 629 GetCharacterFromKeyCode(key_code_, flags()); |
| 624 #elif defined(USE_X11) | 630 #elif defined(USE_X11) |
| 625 if (!native_event()) | 631 if (!native_event()) |
| 626 return GetCharacterFromKeyCode(key_code_, flags()); | 632 return GetCharacterFromKeyCode(key_code_, flags()); |
| 627 | 633 |
| (...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 782 gfx::PointF(x, y), | 788 gfx::PointF(x, y), |
| 783 time_stamp, | 789 time_stamp, |
| 784 flags | EF_FROM_TOUCH), | 790 flags | EF_FROM_TOUCH), |
| 785 details_(details) { | 791 details_(details) { |
| 786 } | 792 } |
| 787 | 793 |
| 788 GestureEvent::~GestureEvent() { | 794 GestureEvent::~GestureEvent() { |
| 789 } | 795 } |
| 790 | 796 |
| 791 } // namespace ui | 797 } // namespace ui |
| OLD | NEW |