| 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..f167f9c10150fc27ee7ef8e96878f36294cd8580 100644
|
| --- a/ash/display/display_change_observer_chromeos.cc
|
| +++ b/ash/display/display_change_observer_chromeos.cc
|
| @@ -187,12 +187,14 @@ void DisplayChangeObserver::OnDisplayModeChanged(
|
| continue;
|
|
|
| float device_scale_factor = 1.0f;
|
| + // Sets dpi only if the screen size is not blacklisted.
|
| + float dpi = ui::IsDisplaySizeBlackListed(state->physical_size())
|
| + ? 0
|
| + : kInchInMm * mode_info->size().width() /
|
| + state->physical_size().width();
|
| 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 (dpi)
|
| + device_scale_factor = FindDeviceScaleFactor(dpi);
|
| } else {
|
| DisplayMode mode;
|
| if (Shell::GetInstance()->display_manager()->GetSelectedModeForDisplayId(
|
| @@ -234,6 +236,8 @@ void DisplayChangeObserver::OnDisplayModeChanged(
|
| new_info.set_native(true);
|
| new_info.set_is_aspect_preserving_scaling(
|
| state->is_aspect_preserving_scaling());
|
| + if (dpi)
|
| + new_info.set_device_dpi(dpi);
|
|
|
| std::vector<DisplayMode> display_modes =
|
| (state->type() == ui::DISPLAY_CONNECTION_TYPE_INTERNAL)
|
|
|