Fix crash on app list start page contents not existing.
[chromium-blink-merge.git] / content / renderer / clipboard_utils.cc
blobeb88332af4a32488cc551ca0554388475feb7067
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "content/renderer/clipboard_utils.h"
7 #include "base/strings/utf_string_conversions.h"
8 #include "net/base/escape.h"
9 #include "third_party/WebKit/public/platform/WebString.h"
10 #include "third_party/WebKit/public/platform/WebURL.h"
12 namespace content {
14 std::string URLToMarkup(const blink::WebURL& url,
15 const blink::WebString& title) {
16 std::string markup("<a href=\"");
17 markup.append(url.spec());
18 markup.append("\">");
19 // TODO(darin): HTML escape this
20 markup.append(net::EscapeForHTML(base::UTF16ToUTF8(title)));
21 markup.append("</a>");
22 return markup;
25 std::string URLToImageMarkup(const blink::WebURL& url,
26 const blink::WebString& title) {
27 std::string markup("<img src=\"");
28 markup.append(net::EscapeForHTML(url.spec()));
29 markup.append("\"");
30 if (!title.isEmpty()) {
31 markup.append(" alt=\"");
32 markup.append(net::EscapeForHTML(base::UTF16ToUTF8(title)));
33 markup.append("\"");
35 markup.append("/>");
36 return markup;
39 } // namespace content