Index: ui/views/mus/clipboard_mus.cc |
diff --git a/ui/views/mus/clipboard_mus.cc b/ui/views/mus/clipboard_mus.cc |
index 0886507ce92ef0b2ee2a017ad4a4565eb3d99f20..208a15e2e1e29269878d1544c61ff4165f62eb04 100644 |
--- a/ui/views/mus/clipboard_mus.cc |
+++ b/ui/views/mus/clipboard_mus.cc |
@@ -11,7 +11,6 @@ |
#include "base/logging.h" |
#include "base/stl_util.h" |
#include "base/strings/utf_string_conversions.h" |
-#include "mojo/common/common_type_converters.h" |
#include "mojo/public/cpp/bindings/sync_call_restrictions.h" |
#include "services/service_manager/public/cpp/connector.h" |
#include "services/ui/public/interfaces/constants.mojom.h" |
@@ -155,10 +154,10 @@ void ClipboardMus::ReadText(ui::ClipboardType type, |
base::Optional<std::vector<uint8_t>> text_data; |
uint64_t sequence_number = 0; |
if (clipboard_->ReadClipboardData(GetType(type), ui::mojom::kMimeTypeText, |
- &sequence_number, &text_data)) { |
- std::string text = |
- mojo::Array<uint8_t>(std::move(text_data)).To<std::string>(); |
- *result = base::UTF8ToUTF16(text); |
+ &sequence_number, &text_data) && |
+ text_data) { |
+ *result = base::UTF8ToUTF16(base::StringPiece( |
+ reinterpret_cast<char*>(text_data->data()), text_data->size())); |
} |
} |
@@ -168,8 +167,9 @@ void ClipboardMus::ReadAsciiText(ui::ClipboardType type, |
base::Optional<std::vector<uint8_t>> text_data; |
uint64_t sequence_number = 0; |
if (clipboard_->ReadClipboardData(GetType(type), ui::mojom::kMimeTypeText, |
- &sequence_number, &text_data)) { |
- *result = mojo::Array<uint8_t>(std::move(text_data)).To<std::string>(); |
+ &sequence_number, &text_data) && |
+ text_data) { |
+ result->assign(text_data->begin(), text_data->end()); |
} |
} |
@@ -188,17 +188,19 @@ void ClipboardMus::ReadHTML(ui::ClipboardType type, |
base::Optional<std::vector<uint8_t>> html_data; |
uint64_t sequence_number = 0; |
if (clipboard_->ReadClipboardData(GetType(type), ui::mojom::kMimeTypeHTML, |
- &sequence_number, &html_data)) { |
- *markup = base::UTF8ToUTF16( |
- mojo::Array<uint8_t>(std::move(html_data)).To<std::string>()); |
+ &sequence_number, &html_data) && |
+ html_data) { |
+ *markup = base::UTF8ToUTF16(base::StringPiece( |
+ reinterpret_cast<char*>(html_data->data()), html_data->size())); |
*fragment_end = static_cast<uint32_t>(markup->length()); |
// We only bother fetching the source url if we were the ones who wrote |
// this html data to the clipboard. |
base::Optional<std::vector<uint8_t>> url_data; |
if (clipboard_->ReadClipboardData(GetType(type), kInternalSourceURL, |
- &sequence_number, &url_data)) { |
- *src_url = mojo::Array<uint8_t>(std::move(url_data)).To<std::string>(); |
+ &sequence_number, &url_data) && |
+ url_data) { |
+ src_url->assign(url_data->begin(), url_data->end()); |
} |
} |
} |
@@ -208,8 +210,9 @@ void ClipboardMus::ReadRTF(ui::ClipboardType type, std::string* result) const { |
base::Optional<std::vector<uint8_t>> rtf_data; |
uint64_t sequence_number = 0; |
if (clipboard_->ReadClipboardData(GetType(type), ui::mojom::kMimeTypeRTF, |
- &sequence_number, &rtf_data)) { |
- *result = mojo::Array<uint8_t>(std::move(rtf_data)).To<std::string>(); |
+ &sequence_number, &rtf_data) && |
+ rtf_data) { |
+ result->assign(rtf_data->begin(), rtf_data->end()); |
} |
} |
@@ -255,8 +258,9 @@ void ClipboardMus::ReadData(const FormatType& format, |
uint64_t sequence_number = 0; |
if (clipboard_->ReadClipboardData(ui::mojom::Clipboard::Type::COPY_PASTE, |
GetMimeTypeFor(format), &sequence_number, |
- &data)) { |
- *result = mojo::Array<uint8_t>(std::move(data)).To<std::string>(); |
+ &data) && |
+ data) { |
+ result->assign(data->begin(), data->end()); |
} |
} |
@@ -276,8 +280,7 @@ void ClipboardMus::WriteObjects(ui::ClipboardType type, |
void ClipboardMus::WriteText(const char* text_data, size_t text_len) { |
DCHECK(current_clipboard_); |
current_clipboard_.value()[ui::mojom::kMimeTypeText] = |
- mojo::Array<uint8_t>::From(base::StringPiece(text_data, text_len)) |
- .PassStorage(); |
+ std::vector<uint8_t>(text_data, text_data + text_len); |
} |
void ClipboardMus::WriteHTML(const char* markup_data, |
@@ -286,20 +289,17 @@ void ClipboardMus::WriteHTML(const char* markup_data, |
size_t url_len) { |
DCHECK(current_clipboard_); |
current_clipboard_.value()[ui::mojom::kMimeTypeHTML] = |
- mojo::Array<uint8_t>::From(base::StringPiece(markup_data, markup_len)) |
- .PassStorage(); |
+ std::vector<uint8_t>(markup_data, markup_data + markup_len); |
if (url_len > 0) { |
current_clipboard_.value()[kInternalSourceURL] = |
- mojo::Array<uint8_t>::From(base::StringPiece(url_data, url_len)) |
- .PassStorage(); |
+ std::vector<uint8_t>(url_data, url_data + url_len); |
} |
} |
void ClipboardMus::WriteRTF(const char* rtf_data, size_t data_len) { |
DCHECK(current_clipboard_); |
current_clipboard_.value()[ui::mojom::kMimeTypeRTF] = |
- mojo::Array<uint8_t>::From(base::StringPiece(rtf_data, data_len)) |
- .PassStorage(); |
+ std::vector<uint8_t>(rtf_data, rtf_data + data_len); |
} |
void ClipboardMus::WriteBookmark(const char* title_data, |
@@ -314,7 +314,9 @@ void ClipboardMus::WriteBookmark(const char* title_data, |
DCHECK(current_clipboard_); |
current_clipboard_.value()[ui::mojom::kMimeTypeMozillaURL] = |
- mojo::Array<uint8_t>::From(bookmark).PassStorage(); |
+ std::vector<uint8_t>( |
+ reinterpret_cast<const uint8_t*>(bookmark.data()), |
+ reinterpret_cast<const uint8_t*>(bookmark.data() + bookmark.size())); |
} |
void ClipboardMus::WriteWebSmartPaste() { |
@@ -328,8 +330,7 @@ void ClipboardMus::WriteBitmap(const SkBitmap& bitmap) { |
// Encode the bitmap as a PNG for transport. |
std::vector<unsigned char> output; |
if (gfx::PNGCodec::FastEncodeBGRASkBitmap(bitmap, false, &output)) { |
- current_clipboard_.value()[ui::mojom::kMimeTypePNG] = |
- mojo::Array<uint8_t>::From(output).PassStorage(); |
+ current_clipboard_.value()[ui::mojom::kMimeTypePNG] = std::move(output); |
} |
} |
@@ -338,8 +339,7 @@ void ClipboardMus::WriteData(const FormatType& format, |
size_t data_len) { |
DCHECK(current_clipboard_); |
current_clipboard_.value()[GetMimeTypeFor(format)] = |
- mojo::Array<uint8_t>::From(base::StringPiece(data_data, data_len)) |
- .PassStorage(); |
+ std::vector<uint8_t>(data_data, data_data + data_len); |
} |
} // namespace views |