Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2317)

Unified Diff: chrome/renderer/mock_render_thread.cc

Issue 276004: Wire up printing on the Mac (Closed)
Patch Set: Created 11 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/renderer/mock_render_thread.cc
diff --git a/chrome/renderer/mock_render_thread.cc b/chrome/renderer/mock_render_thread.cc
index 6445dceb7350b1f19f3386faae67f53d8add683d..bcb15175c26e8aa96953a088153db501b2bcb9bb 100644
--- a/chrome/renderer/mock_render_thread.cc
+++ b/chrome/renderer/mock_render_thread.cc
@@ -4,6 +4,7 @@
#include "chrome/renderer/mock_render_thread.h"
+#include "base/process_util.h"
#include "chrome/common/render_messages.h"
#include "ipc/ipc_message_utils.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -74,7 +75,7 @@ void MockRenderThread::OnMessageReceived(const IPC::Message& msg) {
IPC_MESSAGE_HANDLER(ViewHostMsg_CreateWidget, OnMsgCreateWidget);
IPC_MESSAGE_HANDLER(ViewHostMsg_OpenChannelToExtension,
OnMsgOpenChannelToExtension);
-#if defined(OS_WIN)
+#if defined(OS_WIN) || defined(OS_MACOSX)
IPC_MESSAGE_HANDLER(ViewHostMsg_GetDefaultPrintSettings,
OnGetDefaultPrintSettings);
IPC_MESSAGE_HANDLER(ViewHostMsg_ScriptedPrint,
@@ -82,8 +83,14 @@ void MockRenderThread::OnMessageReceived(const IPC::Message& msg) {
IPC_MESSAGE_HANDLER(ViewHostMsg_DidGetPrintedPagesCount,
OnDidGetPrintedPagesCount)
IPC_MESSAGE_HANDLER(ViewHostMsg_DidPrintPage, OnDidPrintPage)
+#endif
+#if defined(OS_WIN)
IPC_MESSAGE_HANDLER(ViewHostMsg_DuplicateSection, OnDuplicateSection)
#endif
+#if defined(OS_MACOSX)
+ IPC_MESSAGE_HANDLER(ViewHostMsg_AllocatePDFTransport,
+ OnAllocatePDFTransport)
+#endif
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP_EX()
}
@@ -103,6 +110,7 @@ void MockRenderThread::OnMsgOpenChannelToExtension(
*port_id = 0;
}
+#if defined(OS_WIN)
void MockRenderThread::OnDuplicateSection(
base::SharedMemoryHandle renderer_handle,
base::SharedMemoryHandle* browser_handle) {
@@ -110,6 +118,21 @@ void MockRenderThread::OnDuplicateSection(
// separate a browser process from a renderer process.
*browser_handle = renderer_handle;
}
+#endif
+
+#if defined(OS_MACOSX)
+void MockRenderThread::OnAllocatePDFTransport(
+ size_t buffer_size, base::SharedMemoryHandle* handle) {
+ base::SharedMemory shared_buf;
+ shared_buf.Create(L"", false, false, buffer_size);
+ if (!shared_buf.Map(buffer_size)) {
+ *handle = base::SharedMemory::NULLHandle();
+ NOTREACHED() << "Cannot map PDF transport buffer";
+ return;
+ }
+ shared_buf.GiveToProcess(base::GetCurrentProcessHandle(), handle);
+}
+#endif
void MockRenderThread::OnGetDefaultPrintSettings(ViewMsg_Print_Params* params) {
if (printer_.get())

Powered by Google App Engine
This is Rietveld 408576698