diff options
author | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-12 17:27:30 +0000 |
---|---|---|
committer | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-12 17:27:30 +0000 |
commit | dd996c3f9be94818b494653078143224e1bc583c (patch) | |
tree | 179e19d88aaff31d86ee76eefb5b505ec1a7dd17 | |
parent | 0b8a1756fd97f6df198482cf2e45f4ba814bcb51 (diff) | |
download | chromium_src-dd996c3f9be94818b494653078143224e1bc583c.zip chromium_src-dd996c3f9be94818b494653078143224e1bc583c.tar.gz chromium_src-dd996c3f9be94818b494653078143224e1bc583c.tar.bz2 |
Refactor UpdatePrintableSizeInPrintParameters() function in print_web_view_helper.cc
BUG=none
TEST=printing works after code changes.
Review URL: http://codereview.chromium.org/6165004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71186 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/renderer/print_web_view_helper.cc | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/chrome/renderer/print_web_view_helper.cc b/chrome/renderer/print_web_view_helper.cc index cdf3127..c1014ae 100644 --- a/chrome/renderer/print_web_view_helper.cc +++ b/chrome/renderer/print_web_view_helper.cc @@ -373,25 +373,31 @@ void PrintWebViewHelper::UpdatePrintableSizeInPrintParameters( &content_width_in_points, &content_height_in_points, &margin_top_in_points, &margin_right_in_points, &margin_bottom_in_points, &margin_left_in_points); - #if defined(OS_MACOSX) - params->page_size = gfx::Size( - static_cast<int>(content_width_in_points + - margin_left_in_points + margin_right_in_points), - static_cast<int>(content_height_in_points + - margin_top_in_points + margin_bottom_in_points)); - - params->printable_size = gfx::Size(static_cast<int>(content_width_in_points), - static_cast<int>(content_height_in_points)); + // On the Mac, the printable area is in points, don't do any scaling based + // on dpi. + int dpi = printing::kPointsPerInch; #else + int dpi = static_cast<int>(params->dpi); +#endif // defined(OS_MACOSX) params->printable_size = gfx::Size( - static_cast<int>(ConvertUnitDouble( - content_width_in_points, printing::kPointsPerInch, params->dpi)), - static_cast<int>(ConvertUnitDouble( - content_height_in_points, printing::kPointsPerInch, params->dpi))); -#endif - params->margin_top = static_cast<int>(margin_top_in_points); - params->margin_left = static_cast<int>(margin_left_in_points); + static_cast<int>(ConvertUnitDouble(content_width_in_points, + printing::kPointsPerInch, dpi)), + static_cast<int>(ConvertUnitDouble(content_height_in_points, + printing::kPointsPerInch, dpi))); + + params->page_size = gfx::Size( + static_cast<int>(ConvertUnitDouble(content_width_in_points + + margin_left_in_points + margin_right_in_points, + printing::kPointsPerInch, dpi)), + static_cast<int>(ConvertUnitDouble(content_height_in_points + + margin_top_in_points + margin_bottom_in_points, + printing::kPointsPerInch, dpi))); + + params->margin_top = static_cast<int>(ConvertUnitDouble( + margin_top_in_points, printing::kPointsPerInch, dpi)); + params->margin_left = static_cast<int>(ConvertUnitDouble( + margin_left_in_points, printing::kPointsPerInch, dpi)); } bool PrintWebViewHelper::InitPrintSettings(WebFrame* frame) { |