Chromium Code Reviews| Index: ash/display/display_change_observer_chromeos.cc |
| diff --git a/ash/display/display_change_observer_chromeos.cc b/ash/display/display_change_observer_chromeos.cc |
| index fd2a66d1fa86e2aeb367725a758722e11a40b590..4ca4df453d6d4d595ff8036a8a5b35d8ed895096 100644 |
| --- a/ash/display/display_change_observer_chromeos.cc |
| +++ b/ash/display/display_change_observer_chromeos.cc |
| @@ -187,12 +187,11 @@ void DisplayChangeObserver::OnDisplayModeChanged( |
| continue; |
| float device_scale_factor = 1.0f; |
| + float dpi = kInchInMm * mode_info->size().width() / |
| + state->physical_size().width(); |
|
oshima
2015/08/19 02:07:08
This is physical DPI, and it may not represent the
bshe
2015/08/19 13:37:09
right. So I called this one device_dpi instead of
oshima
2015/08/20 00:20:32
What about 1440x956?
bshe
2015/08/20 14:42:05
I see. 1440x956 will return the wrong dpi as scale
|
| if (state->type() == ui::DISPLAY_CONNECTION_TYPE_INTERNAL) { |
| - if (!ui::IsDisplaySizeBlackListed(state->physical_size())) { |
| - device_scale_factor = |
| - FindDeviceScaleFactor((kInchInMm * mode_info->size().width() / |
| - state->physical_size().width())); |
| - } |
| + if (!ui::IsDisplaySizeBlackListed(state->physical_size())) |
| + device_scale_factor = FindDeviceScaleFactor(dpi); |
| } else { |
| DisplayMode mode; |
| if (Shell::GetInstance()->display_manager()->GetSelectedModeForDisplayId( |
| @@ -234,6 +233,7 @@ void DisplayChangeObserver::OnDisplayModeChanged( |
| new_info.set_native(true); |
| new_info.set_is_aspect_preserving_scaling( |
| state->is_aspect_preserving_scaling()); |
| + new_info.set_device_dpi(dpi); |
| std::vector<DisplayMode> display_modes = |
| (state->type() == ui::DISPLAY_CONNECTION_TYPE_INTERNAL) |