summaryrefslogtreecommitdiffstats
path: root/ash
diff options
context:
space:
mode:
authormukai@chromium.org <mukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-15 21:11:29 +0000
committermukai@chromium.org <mukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-15 21:11:29 +0000
commit355629f9ef3bd0d170e99783b5eb37f0590f2ac9 (patch)
tree49fa63d463a235fcc0556810138c2ac5dafc8012 /ash
parentf5cf0d8871e331fae399288df41dfe8ae6a19652 (diff)
downloadchromium_src-355629f9ef3bd0d170e99783b5eb37f0590f2ac9.zip
chromium_src-355629f9ef3bd0d170e99783b5eb37f0590f2ac9.tar.gz
chromium_src-355629f9ef3bd0d170e99783b5eb37f0590f2ac9.tar.bz2
Fixes the display notification message to consider device scale factor.
Current code uses size_in_pixel() which doesn't take the device scale factor into account, so the display size shown in Pixel is doubled. R=oshima@chromium.org, stevenjb@chromium.org BUG=259910 Review URL: https://chromiumcodereview.appspot.com/18992003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211698 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash')
-rw-r--r--ash/system/chromeos/tray_display.cc18
1 files changed, 15 insertions, 3 deletions
diff --git a/ash/system/chromeos/tray_display.cc b/ash/system/chromeos/tray_display.cc
index 29c07aa..eb4bfb7 100644
--- a/ash/system/chromeos/tray_display.cc
+++ b/ash/system/chromeos/tray_display.cc
@@ -43,14 +43,26 @@ base::string16 GetDisplayName(int64 display_id) {
return UTF8ToUTF16(GetDisplayManager()->GetDisplayNameForId(display_id));
}
+base::string16 GetDisplaySize(int64 display_id) {
+ DisplayManager* display_manager = GetDisplayManager();
+
+ const gfx::Display* display = &display_manager->GetDisplayForId(display_id);
+ if (display_manager->IsMirrored() &&
+ display_manager->mirrored_display().id() == display_id) {
+ display = &display_manager->mirrored_display();
+ }
+
+ DCHECK(display->is_valid());
+ return UTF8ToUTF16(display->size().ToString());
+}
+
// Returns 1-line information for the specified display, like
// "InternalDisplay: 1280x750"
base::string16 GetDisplayInfoLine(int64 display_id) {
const DisplayInfo& display_info =
GetDisplayManager()->GetDisplayInfo(display_id);
- base::string16 size_text = UTF8ToUTF16(
- display_info.size_in_pixel().ToString());
+ base::string16 size_text = GetDisplaySize(display_id);
base::string16 display_data;
if (display_info.has_overscan()) {
display_data = l10n_util::GetStringFUTF16(
@@ -368,7 +380,7 @@ base::string16 TrayDisplay::GetDisplayMessageForNotification() {
return l10n_util::GetStringFUTF16(
IDS_ASH_STATUS_TRAY_DISPLAY_RESOLUTION_CHANGED,
GetDisplayName(iter->first),
- UTF8ToUTF16(iter->second.size_in_pixel().ToString()));
+ GetDisplaySize(iter->first));
}
if (iter->second.rotation() != old_iter->second.rotation()) {
return l10n_util::GetStringFUTF16(