Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1181)

Side by Side Diff: printing/print_settings.cc

Issue 8351063: PrintPreview: [LINUX] Update the margin values after flipping the paper orientation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: '' Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « printing/page_setup_unittest.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "printing/print_settings.h" 5 #include "printing/print_settings.h"
6 6
7 #include "base/atomic_sequence_num.h" 7 #include "base/atomic_sequence_num.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "printing/print_job_constants.h" 9 #include "printing/print_job_constants.h"
10 #include "printing/units.h" 10 #include "printing/units.h"
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 void PrintSettings::SetPrinterPrintableArea( 146 void PrintSettings::SetPrinterPrintableArea(
147 gfx::Size const& physical_size_device_units, 147 gfx::Size const& physical_size_device_units,
148 gfx::Rect const& printable_area_device_units, 148 gfx::Rect const& printable_area_device_units,
149 int units_per_inch) { 149 int units_per_inch) {
150 int header_footer_text_height = 0; 150 int header_footer_text_height = 0;
151 if (display_header_footer) { 151 if (display_header_footer) {
152 // Hard-code text_height = 0.5cm = ~1/5 of inch. 152 // Hard-code text_height = 0.5cm = ~1/5 of inch.
153 header_footer_text_height = ConvertUnit(kSettingHeaderFooterInterstice, 153 header_footer_text_height = ConvertUnit(kSettingHeaderFooterInterstice,
154 kPointsPerInch, units_per_inch); 154 kPointsPerInch, units_per_inch);
155 } 155 }
156 page_setup_device_units_.Init(physical_size_device_units,
157 printable_area_device_units,
158 header_footer_text_height);
159 156
160 PageMargins margins; 157 PageMargins margins;
161 switch (margin_type) { 158 switch (margin_type) {
162 case DEFAULT_MARGINS: { 159 case DEFAULT_MARGINS: {
163 // Default margins 1.0cm = ~2/5 of an inch. 160 // Default margins 1.0cm = ~2/5 of an inch.
164 int margin_printer_units = ConvertUnit(1000, kHundrethsMMPerInch, 161 int margin_printer_units = ConvertUnit(1000, kHundrethsMMPerInch,
165 units_per_inch); 162 units_per_inch);
166 margins.header = header_footer_text_height; 163 margins.header = header_footer_text_height;
167 margins.footer = header_footer_text_height; 164 margins.footer = header_footer_text_height;
168 margins.top = margin_printer_units; 165 margins.top = margin_printer_units;
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 } 201 }
205 default: { 202 default: {
206 NOTREACHED(); 203 NOTREACHED();
207 } 204 }
208 } 205 }
209 206
210 if (margin_type == DEFAULT_MARGINS || margin_type == PRINTABLE_AREA_MARGINS) 207 if (margin_type == DEFAULT_MARGINS || margin_type == PRINTABLE_AREA_MARGINS)
211 page_setup_device_units_.SetRequestedMargins(margins); 208 page_setup_device_units_.SetRequestedMargins(margins);
212 else 209 else
213 page_setup_device_units_.ForceRequestedMargins(margins); 210 page_setup_device_units_.ForceRequestedMargins(margins);
211
212 page_setup_device_units_.Init(physical_size_device_units,
213 printable_area_device_units,
214 header_footer_text_height);
214 } 215 }
215 216
216 void PrintSettings::SetCustomMargins( 217 void PrintSettings::SetCustomMargins(
217 const PageMargins& requested_margins_in_points) { 218 const PageMargins& requested_margins_in_points) {
218 requested_custom_margins_in_points_ = requested_margins_in_points; 219 requested_custom_margins_in_points_ = requested_margins_in_points;
219 margin_type = CUSTOM_MARGINS; 220 margin_type = CUSTOM_MARGINS;
220 } 221 }
221 222
222 bool PrintSettings::Equals(const PrintSettings& rhs) const { 223 bool PrintSettings::Equals(const PrintSettings& rhs) const {
223 // Do not test the display device name (printer_name_) for equality since it 224 // Do not test the display device name (printer_name_) for equality since it
(...skipping 15 matching lines...) Expand all
239 } 240 }
240 241
241 void PrintSettings::SetOrientation(bool landscape) { 242 void PrintSettings::SetOrientation(bool landscape) {
242 if (landscape_ != landscape) { 243 if (landscape_ != landscape) {
243 landscape_ = landscape; 244 landscape_ = landscape;
244 page_setup_device_units_.FlipOrientation(); 245 page_setup_device_units_.FlipOrientation();
245 } 246 }
246 } 247 }
247 248
248 } // namespace printing 249 } // namespace printing
OLDNEW
« no previous file with comments | « printing/page_setup_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698