Chromium Code Reviews| Index: content/child/blink_platform_impl.cc |
| diff --git a/content/child/blink_platform_impl.cc b/content/child/blink_platform_impl.cc |
| index 78939bb0167d693444707233ea5ba300d1cc7eb3..9c87777d0758caeca30573143c6c77fc881c2384 100644 |
| --- a/content/child/blink_platform_impl.cc |
| +++ b/content/child/blink_platform_impl.cc |
| @@ -71,6 +71,7 @@ |
| #include "third_party/WebKit/public/web/WebSecurityOrigin.h" |
| #include "ui/base/layout.h" |
| #include "ui/events/gestures/blink/web_gesture_curve_impl.h" |
| +#include "ui/events/keycodes/dom/dom_key.h" |
| #include "ui/events/keycodes/dom/keycode_converter.h" |
| using blink::WebData; |
| @@ -1392,4 +1393,23 @@ int BlinkPlatformImpl::domEnumFromCodeString(const WebString& code) { |
| code.utf8().data())); |
| } |
| +WebString BlinkPlatformImpl::domKeyStringFromEnum(int dom_key) { |
| + if (dom_key < DOM_KEY_PRINT_NON_DIFF) { |
| + std::string dom_key_char = base::StringPrintf("%c", dom_key); |
| + return WebString::fromUTF8(dom_key_char); |
| + } else { |
| + return WebString::fromUTF8(ui::KeycodeConverter::DomKeyToKeyString( |
| + static_cast<ui::DomKey>(dom_key - DOM_KEY_PRINT_NON_DIFF))); |
| + } |
| +} |
| + |
| +int BlinkPlatformImpl::domKeyEnumFromString(const WebString& key) { |
| + ui::DomKey dom_key = |
| + ui::KeycodeConverter::KeyStringToDomKey(key.utf8().data()); |
| + if (ui::DomKey::NONE == dom_key) { |
|
Wez
2015/06/25 10:40:21
This should be testing for DomKey::CHARACTER, not
Habib Virji
2015/06/26 17:35:38
KeyStringToDomKey returns DomKey::NONE if no match
|
| + return key.at(0); |
| + } |
| + return static_cast<int>(dom_key); |
| +} |
| + |
| } // namespace content |