summaryrefslogtreecommitdiffstats
path: root/chrome/renderer
diff options
context:
space:
mode:
authorkmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-27 22:36:21 +0000
committerkmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-27 22:36:21 +0000
commit76de16e7c78d65c1a4e4f48968f92f7350c37ebc (patch)
tree18151608366c7f04069d05a32c821da467bf03fd /chrome/renderer
parent40c7ee4e84ba84f73b85521b47fe33e866c1d2da (diff)
downloadchromium_src-76de16e7c78d65c1a4e4f48968f92f7350c37ebc.zip
chromium_src-76de16e7c78d65c1a4e4f48968f92f7350c37ebc.tar.gz
chromium_src-76de16e7c78d65c1a4e4f48968f92f7350c37ebc.tar.bz2
PrintPreview: Fix the regression caused by r90320.
Clear |old_print_pages_params_| before creating a print preview tab. BUG=none TEST=Open a webpage. Press Ctrl+P to display a preview tab. Once the preview tab is loaded, close the preview tab. Press Ctrl+P again on Initiator tab. A new preview tab is created and the associated preview data is displayed to the user. Review URL: http://codereview.chromium.org/7273007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90663 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer')
-rw-r--r--chrome/renderer/print_web_view_helper.cc11
-rw-r--r--chrome/renderer/print_web_view_helper.h2
2 files changed, 10 insertions, 3 deletions
diff --git a/chrome/renderer/print_web_view_helper.cc b/chrome/renderer/print_web_view_helper.cc
index e15b78d..408d480 100644
--- a/chrome/renderer/print_web_view_helper.cc
+++ b/chrome/renderer/print_web_view_helper.cc
@@ -178,7 +178,7 @@ void PrintWebViewHelper::PrintPage(WebKit::WebFrame* frame) {
if (is_preview_) {
script_initiated_preview_frame_ = frame;
context_menu_preview_node_.reset();
- Send(new PrintHostMsg_RequestPrintPreview(routing_id()));
+ RequestPrintPreview();
} else {
Print(frame, NULL);
}
@@ -299,7 +299,7 @@ void PrintWebViewHelper::OnPrintNodeUnderContextMenu() {
if (is_preview_) {
context_menu_preview_node_.reset(new WebNode(context_menu_node));
script_initiated_preview_frame_ = NULL;
- Send(new PrintHostMsg_RequestPrintPreview(routing_id()));
+ RequestPrintPreview();
} else {
WebNode duplicate_node(context_menu_node);
Print(duplicate_node.document().frame(), &duplicate_node);
@@ -310,7 +310,7 @@ void PrintWebViewHelper::OnInitiatePrintPreview() {
DCHECK(is_preview_);
script_initiated_preview_frame_ = NULL;
context_menu_preview_node_.reset();
- Send(new PrintHostMsg_RequestPrintPreview(routing_id()));
+ RequestPrintPreview();
}
void PrintWebViewHelper::Print(WebKit::WebFrame* frame, WebKit::WebNode* node) {
@@ -799,3 +799,8 @@ void PrintWebViewHelper::DisplayPrintJobError() {
web_view->mainFrame(),
l10n_util::GetStringUTF16(IDS_PRINT_SPOOL_FAILED_ERROR_TEXT));
}
+
+void PrintWebViewHelper::RequestPrintPreview() {
+ old_print_pages_params_.reset();
+ Send(new PrintHostMsg_RequestPrintPreview(routing_id()));
+}
diff --git a/chrome/renderer/print_web_view_helper.h b/chrome/renderer/print_web_view_helper.h
index 1ca5670..7c453e1 100644
--- a/chrome/renderer/print_web_view_helper.h
+++ b/chrome/renderer/print_web_view_helper.h
@@ -259,6 +259,8 @@ class PrintWebViewHelper : public RenderViewObserver ,
// Displays the print job error message to the user.
void DisplayPrintJobError();
+ void RequestPrintPreview();
+
WebKit::WebView* print_web_view_;
// The frame to print for script initiated print preview.