diff options
author | dcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-15 20:56:19 +0000 |
---|---|---|
committer | dcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-15 20:56:19 +0000 |
commit | 3d4a691b9495479f49eaac0b2ff9411e34208b3a (patch) | |
tree | 46b193a3855ca14bacc14d57408d283d75abfd81 /content/browser | |
parent | 78600f488d65bd1e5c64e590a4e20c1bceebbe59 (diff) | |
download | chromium_src-3d4a691b9495479f49eaac0b2ff9411e34208b3a.zip chromium_src-3d4a691b9495479f49eaac0b2ff9411e34208b3a.tar.gz chromium_src-3d4a691b9495479f49eaac0b2ff9411e34208b3a.tar.bz2 |
Add stubs and glue for routing a request for an image from the clipboard.
BUG=75237
TEST=none
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78134
Review URL: http://codereview.chromium.org/6625075
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78283 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser')
-rw-r--r-- | content/browser/renderer_host/clipboard_message_filter.cc | 10 | ||||
-rw-r--r-- | content/browser/renderer_host/clipboard_message_filter.h | 1 |
2 files changed, 10 insertions, 1 deletions
diff --git a/content/browser/renderer_host/clipboard_message_filter.cc b/content/browser/renderer_host/clipboard_message_filter.cc index 8cb3b9d..ca71e5d 100644 --- a/content/browser/renderer_host/clipboard_message_filter.cc +++ b/content/browser/renderer_host/clipboard_message_filter.cc @@ -38,7 +38,9 @@ ClipboardMessageFilter::ClipboardMessageFilter() { void ClipboardMessageFilter::OverrideThreadForMessage( const IPC::Message& message, BrowserThread::ID* thread) { #if defined(USE_X11) - if (IPC_MESSAGE_CLASS(message) == ClipboardMsgStart) + if (message.type() == ClipboardHostMsg_ReadImage::ID) + *thread = BrowserThread::BACKGROUND_X11; + else if (IPC_MESSAGE_CLASS(message) == ClipboardMsgStart) *thread = BrowserThread::UI; #endif } @@ -53,6 +55,7 @@ bool ClipboardMessageFilter::OnMessageReceived(const IPC::Message& message, IPC_MESSAGE_HANDLER(ClipboardHostMsg_ReadText, OnReadText) IPC_MESSAGE_HANDLER(ClipboardHostMsg_ReadAsciiText, OnReadAsciiText) IPC_MESSAGE_HANDLER(ClipboardHostMsg_ReadHTML, OnReadHTML) + IPC_MESSAGE_HANDLER(ClipboardHostMsg_ReadImage, OnReadImage) #if defined(OS_MACOSX) IPC_MESSAGE_HANDLER(ClipboardHostMsg_FindPboardWriteStringAsync, OnFindPboardWriteString) @@ -132,6 +135,11 @@ void ClipboardMessageFilter::OnReadHTML( *url = GURL(src_url_str); } +void ClipboardMessageFilter::OnReadImage( + ui::Clipboard::Buffer buffer, std::string* data) { + GetClipboard()->ReadImage(buffer, data); +} + void ClipboardMessageFilter::OnReadAvailableTypes( ui::Clipboard::Buffer buffer, bool* succeeded, std::vector<string16>* types, bool* contains_filenames) { diff --git a/content/browser/renderer_host/clipboard_message_filter.h b/content/browser/renderer_host/clipboard_message_filter.h index f755d91..682e241e 100644 --- a/content/browser/renderer_host/clipboard_message_filter.h +++ b/content/browser/renderer_host/clipboard_message_filter.h @@ -35,6 +35,7 @@ class ClipboardMessageFilter : public BrowserMessageFilter { void OnReadText(ui::Clipboard::Buffer buffer, string16* result); void OnReadAsciiText(ui::Clipboard::Buffer buffer, std::string* result); void OnReadHTML(ui::Clipboard::Buffer buffer, string16* markup, GURL* url); + void OnReadImage(ui::Clipboard::Buffer buffer, std::string* data); #if defined(OS_MACOSX) void OnFindPboardWriteString(const string16& text); #endif |