diff options
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/renderer/print_web_view_helper.cc | 4 | ||||
-rw-r--r-- | chrome/renderer/print_web_view_helper.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/chrome/renderer/print_web_view_helper.cc b/chrome/renderer/print_web_view_helper.cc index 518529d..5ca14e6 100644 --- a/chrome/renderer/print_web_view_helper.cc +++ b/chrome/renderer/print_web_view_helper.cc @@ -82,6 +82,8 @@ PrepareFrameAndViewForPrint::PrepareFrameAndViewForPrint( print_layout_size.set_height(static_cast<int>( static_cast<double>(print_layout_size.height()) * 1.25)); + if (WebFrame* web_frame = web_view_->mainFrame()) + prev_scroll_offset_ = web_frame->scrollOffset(); prev_view_size_ = web_view->size(); web_view->resize(print_layout_size); @@ -97,6 +99,8 @@ PrepareFrameAndViewForPrint::PrepareFrameAndViewForPrint( PrepareFrameAndViewForPrint::~PrepareFrameAndViewForPrint() { frame_->printEnd(); web_view_->resize(prev_view_size_); + if (WebFrame* web_frame = web_view_->mainFrame()) + web_frame->setScrollOffset(prev_scroll_offset_); } diff --git a/chrome/renderer/print_web_view_helper.h b/chrome/renderer/print_web_view_helper.h index 5c7afcc..dfe3e92 100644 --- a/chrome/renderer/print_web_view_helper.h +++ b/chrome/renderer/print_web_view_helper.h @@ -60,6 +60,7 @@ class PrepareFrameAndViewForPrint { WebKit::WebView* web_view_; gfx::Size print_canvas_size_; gfx::Size prev_view_size_; + gfx::Size prev_scroll_offset_; int expected_pages_count_; bool use_browser_overlays_; |