Index: chrome/browser/ui/webui/print_preview_handler.cc |
diff --git a/chrome/browser/ui/webui/print_preview_handler.cc b/chrome/browser/ui/webui/print_preview_handler.cc |
index 3aae34e536cfff2819a3f35de5807c52b9b32189..d904c18a5f2d9bc59a888d9aba7055fb5cdca3f3 100644 |
--- a/chrome/browser/ui/webui/print_preview_handler.cc |
+++ b/chrome/browser/ui/webui/print_preview_handler.cc |
@@ -493,6 +493,24 @@ void PrintPreviewHandler::HandleGetPreview(const ListValue* args) { |
print_preview_ui->OnPrintPreviewFailed(); |
return; |
} |
+ |
+ // Retrieve the page title and url and send it to the renderer process if |
+ // headers and footers are to be displayed. |
+ bool display_header_footer = false; |
+ if (!settings->GetBoolean(printing::kSettingHeaderFooterEnabled, |
+ &display_header_footer)) { |
+ NOTREACHED(); |
+ } |
+ if (display_header_footer) { |
+ settings->SetString(printing::kSettingHeaderFooterTitle, |
+ initiator_tab->GetTitle()); |
+ std::string url; |
+ NavigationEntry* entry = initiator_tab->controller().GetActiveEntry(); |
+ if (entry) |
+ url = entry->virtual_url().spec(); |
+ settings->SetString(printing::kSettingHeaderFooterURL, url); |
+ } |
+ |
VLOG(1) << "Print preview request start"; |
RenderViewHost* rvh = initiator_tab->render_view_host(); |
rvh->Send(new PrintMsg_PrintPreview(rvh->routing_id(), *settings)); |
@@ -522,6 +540,8 @@ void PrintPreviewHandler::HandlePrint(const ListValue* args) { |
bool print_to_pdf = false; |
settings->GetBoolean(printing::kSettingPrintToPDF, &print_to_pdf); |
+ settings->SetBoolean(printing::kSettingHeaderFooterEnabled, false); |
+ |
TabContentsWrapper* preview_tab_wrapper = |
TabContentsWrapper::GetCurrentWrapperForContents(preview_tab()); |