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) { |
|
Habib Virji
2015/06/24 14:32:13
This is to check if it is printable character. The
|
| + std::string dom_key_char = base::StringPrintf("%c", dom_key); |
|
Habib Virji
2015/06/24 14:32:13
This was needed as we needed to convert int to cha
|
| + return WebString::fromUTF8(dom_key_char); |
| + } else { |
| + return WebString::fromUTF8(ui::KeycodeConverter::DomKeyToKeyString( |
| + static_cast<ui::DomKey>(dom_key - DOM_KEY_PRINT_NON_DIFF))); |
|
Habib Virji
2015/06/24 14:32:13
Here value is decremented to get correct mapping t
|
| + } |
| +} |
| + |
| +int BlinkPlatformImpl::domKeyEnumFromString(const WebString& key) { |
| + ui::DomKey dom_key = |
| + ui::KeycodeConverter::KeyStringToDomKey(key.utf8().data()); |
| + if (ui::DomKey::NONE == dom_key) { |
|
Habib Virji
2015/06/24 14:32:13
KeyStringToDomKey is returning DomKey::NONE if it
|
| + return key.at(0); |
|
Habib Virji
2015/06/24 14:32:13
This is to convert back printable character to int
|
| + } |
| + return static_cast<int>(dom_key); |
| +} |
| + |
| } // namespace content |