Index: chrome/browser/chromeos/display/display_preferences.cc |
diff --git a/chrome/browser/chromeos/display/display_preferences.cc b/chrome/browser/chromeos/display/display_preferences.cc |
index a6a6b89f88cdfab9ab91270f505f1db68db2a502..168404ce39e35ed7d02732aa6c94771428f4f2c2 100644 |
--- a/chrome/browser/chromeos/display/display_preferences.cc |
+++ b/chrome/browser/chromeos/display/display_preferences.cc |
@@ -135,13 +135,20 @@ void LoadDisplayProperties() { |
int ui_scale_value = 0; |
if (dict_value->GetInteger("ui-scale", &ui_scale_value)) |
ui_scale = static_cast<float>(ui_scale_value) / 1000.0f; |
+ |
+ int width = 0, height = 0; |
+ dict_value->GetInteger("width", &width); |
+ dict_value->GetInteger("height", &height); |
+ gfx::Size resolution_in_pixels(width, height); |
+ |
gfx::Insets insets; |
if (ValueToInsets(*dict_value, &insets)) |
insets_to_set = &insets; |
GetDisplayManager()->RegisterDisplayProperty(id, |
rotation, |
ui_scale, |
- insets_to_set); |
+ insets_to_set, |
+ resolution_in_pixels); |
} |
} |
@@ -182,7 +189,8 @@ void StoreCurrentDisplayProperties() { |
size_t num = display_manager->GetNumDisplays(); |
for (size_t i = 0; i < num; ++i) { |
- int64 id = display_manager->GetDisplayAt(i).id(); |
+ const gfx::Display& display = display_manager->GetDisplayAt(i); |
+ int64 id = display.id(); |
ash::internal::DisplayInfo info = display_manager->GetDisplayInfo(id); |
scoped_ptr<base::DictionaryValue> property_value( |
@@ -190,6 +198,13 @@ void StoreCurrentDisplayProperties() { |
property_value->SetInteger("rotation", static_cast<int>(info.rotation())); |
property_value->SetInteger("ui-scale", |
static_cast<int>(info.ui_scale() * 1000)); |
+ gfx::Size resolution; |
+ if (!display.IsInternal() && |
+ display_manager->GetSelectedResolutionForDisplayId(id, &resolution)) { |
+ property_value->SetInteger("width", resolution.width()); |
+ property_value->SetInteger("height", resolution.height()); |
+ } |
+ |
if (!info.overscan_insets_in_dip().empty()) |
InsetsToValue(info.overscan_insets_in_dip(), property_value.get()); |
pref_data->Set(base::Int64ToString(id), property_value.release()); |