Chromium Code Reviews| Index: chrome/browser/renderer_host/render_view_host.cc |
| diff --git a/chrome/browser/renderer_host/render_view_host.cc b/chrome/browser/renderer_host/render_view_host.cc |
| index aaebf9f9caebe95028732e3080970b7e2c848b45..d2a001d1a78eea3f4ae6a6b7b06eaaf5f8c903cb 100644 |
| --- a/chrome/browser/renderer_host/render_view_host.cc |
| +++ b/chrome/browser/renderer_host/render_view_host.cc |
| @@ -24,6 +24,7 @@ |
| #include "chrome/browser/in_process_webkit/session_storage_namespace.h" |
| #include "chrome/browser/net/predictor_api.h" |
| #include "chrome/browser/notifications/desktop_notification_service.h" |
| +#include "chrome/browser/printing/print_preview_tab_controller.h" |
| #include "chrome/browser/profile.h" |
| #include "chrome/browser/renderer_host/render_process_host.h" |
| #include "chrome/browser/renderer_host/render_view_host_delegate.h" |
| @@ -2213,9 +2214,27 @@ void RenderViewHost::OnMsgShowPopup( |
| } |
| #endif |
| +TabContents* RenderViewHost::GetPrintPreviewTab() { |
| + // |current_tab| is initiator tab. |
|
James Hawkins
2010/11/16 02:15:42
s/current/initiator/
kmadhusu
2010/11/16 18:16:09
Done.
|
| + TabContents* current_tab = delegate_ ? delegate_->GetAsTabContents() : NULL; |
| + if (current_tab) { |
| + // Get/Create preview tab for initiator tab. |
| + printing::PrintPreviewTabController* tab_controller = |
| + printing::PrintPreviewTabController::GetInstance(); |
| + if (tab_controller) |
| + return tab_controller->GetOrCreatePreviewTab( |
| + current_tab, delegate_->GetBrowserWindowID()); |
| + } |
| + return NULL; |
| +} |
| + |
| #if defined(OS_MACOSX) || defined(OS_WIN) |
| void RenderViewHost::OnPageReadyForPreview( |
| const ViewHostMsg_DidPrintPage_Params& params) { |
| + // Get the print preview tab. |
| + TabContents* preview_tab = GetPrintPreviewTab(); |
|
James Hawkins
2010/11/16 02:15:42
print_preview_tab
James Hawkins
2010/11/16 02:15:42
Does GetPrintPreviewTab() open/activate a tab?
kmadhusu
2010/11/16 18:16:09
Done.
kmadhusu
2010/11/16 18:16:09
Yes. I renamed the function to "GetOrCreatePrintPr
|
| + DCHECK(preview_tab); |
| + |
| // TODO(kmadhusu): Function definition needs to be changed. |
| // 'params' contains the metafile handle for preview. |
| @@ -2224,6 +2243,10 @@ void RenderViewHost::OnPageReadyForPreview( |
| } |
| #else |
| void RenderViewHost::OnPagesReadyForPreview(int fd_in_browser) { |
| + // Get the print preview tab. |
| + TabContents* preview_tab = GetPrintPreviewTab(); |
| + DCHECK(preview_tab); |
| + |
| // TODO(kmadhusu): Function definition needs to be changed. |
| // fd_in_browser should be the file descriptor of the metafile. |