Chromium Code Reviews| Index: ui/base/clipboard/clipboard_android.cc |
| diff --git a/ui/base/clipboard/clipboard_android.cc b/ui/base/clipboard/clipboard_android.cc |
| index 4eb052acf7a3a45f112052b4e96978f0001b542b..4c23984d30a5c8ce9e810fe0cb5f5bec56f5465b 100644 |
| --- a/ui/base/clipboard/clipboard_android.cc |
| +++ b/ui/base/clipboard/clipboard_android.cc |
| @@ -101,6 +101,21 @@ void ClipboardMap::Set(const std::string& format, const std::string& data) { |
| env, data.c_str()); |
| DCHECK(str.obj() && !ClearException(env)); |
| Java_Clipboard_setText(env, clipboard_manager_.obj(), str.obj()); |
| + } else if (format == kHTMLFormat) { |
| + // Android's API for storing HTML content on the clipboard requires a plain- |
| + // text representation to be available as well. Because of an std::map's |
| + // keys being ordered, any plain-text representation will be set already. |
| + if (!ContainsKey(map_, kPlainTextFormat)) |
| + return; |
| + |
| + ScopedJavaLocalRef<jstring> html = ConvertUTF8ToJavaString( |
| + env, data.c_str()); |
| + ScopedJavaLocalRef<jstring> text = ConvertUTF8ToJavaString( |
| + env, map_[kPlainTextFormat].c_str()); |
| + |
| + DCHECK(html.obj() && text.obj() && !ClearException(env)); |
| + Java_Clipboard_setHTMLText( |
| + env, clipboard_manager_.obj(), html.obj(), text.obj()); |
|
dcheng
2013/10/02 22:24:15
What is the expected behavior if a JS paste handle
Peter Beverloo
2013/10/23 17:11:34
That's a good question. Pasting HTML on Android r
|
| } |
| } |