Chromium Code Reviews| Index: components/cloud_devices/common/printer_description.cc |
| diff --git a/components/cloud_devices/common/printer_description.cc b/components/cloud_devices/common/printer_description.cc |
| index 86977958a7d5dce87c7c8dbf6be0b022494ab800..37cb8c7210f7d271b29cf20c62d8134f7c32a362 100644 |
| --- a/components/cloud_devices/common/printer_description.cc |
| +++ b/components/cloud_devices/common/printer_description.cc |
| @@ -162,7 +162,7 @@ const int32 kSizeTrasholdUm = 1000; |
| static_cast<int>(height* unit_um + 0.5) \ |
| } |
| -const struct MadiaDefinition { |
| +const struct MediaDefinition { |
| MediaType id; |
| const char* const json_name; |
| int width_um; |
| @@ -335,8 +335,16 @@ const struct MadiaDefinition { |
| MAP_CLOUD_PRINT_MEDIA_TYPE(OM_INVITE, 220, 220, kMmToUm)}; |
| #undef MAP_CLOUD_PRINT_MEDIA_TYPE |
| -const MadiaDefinition* FindMediaBySize(int32 width_um, int32 height_um) { |
| - const MadiaDefinition* result = NULL; |
| +const MediaDefinition* FindMediaByType(MediaType type) { |
| + for (size_t i = 0; i < arraysize(kMediaDefinitions); ++i) { |
| + if (kMediaDefinitions[i].id == type) |
| + return &kMediaDefinitions[i]; |
| + } |
| + return NULL; |
|
Vitaly Buka (NO REVIEWS)
2014/05/22 01:11:21
NOTREACHED here
Aleksey Shlyapnikov
2014/05/22 03:51:18
Done.
|
| +} |
| + |
| +const MediaDefinition* FindMediaBySize(int32 width_um, int32 height_um) { |
| + const MediaDefinition* result = NULL; |
| for (size_t i = 0; i < arraysize(kMediaDefinitions); ++i) { |
| int32 diff = std::max(std::abs(width_um - kMediaDefinitions[i].width_um), |
| std::abs(height_um - kMediaDefinitions[i].height_um)); |
| @@ -432,6 +440,13 @@ Media::Media() |
| : type(CUSTOM_MEDIA), width_um(0), height_um(0), is_continuous_feed(false) { |
| } |
| +Media::Media(MediaType type) |
| + : type(type), |
| + width_um(0), |
|
Vitaly Buka (NO REVIEWS)
2014/05/22 01:11:21
just call MatchByType() here
Aleksey Shlyapnikov
2014/05/22 03:51:18
Done.
|
| + height_um(0), |
| + is_continuous_feed(false) { |
| +} |
| + |
| Media::Media(MediaType type, int32 width_um, int32 height_um) |
| : type(type), |
| width_um(width_um), |
| @@ -449,8 +464,19 @@ Media::Media(const std::string& custom_display_name, |
| custom_display_name(custom_display_name) { |
| } |
| +bool Media::MatchByType() { |
| + const MediaDefinition* media = FindMediaByType(type); |
| + if (!media) |
| + return false; |
| + width_um = media->width_um; |
| + height_um = media->height_um; |
| + is_continuous_feed = width_um <= 0 || height_um <= 0; |
| + custom_display_name.clear(); |
| + return true; |
| +} |
| + |
| bool Media::MatchBySize() { |
| - const MadiaDefinition* media = FindMediaBySize(width_um, height_um); |
| + const MediaDefinition* media = FindMediaBySize(width_um, height_um); |
| if (!media) |
| return false; |
| type = media->id; |