Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(136)

Side by Side Diff: ash/display/display_manager_unittest.cc

Issue 2196923002: Make ash::DisplayMode more like ui::DisplayMode (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review comments Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ash/display/display_manager.h" 5 #include "ash/display/display_manager.h"
6 6
7 #include "ash/accelerators/accelerator_commands_aura.h" 7 #include "ash/accelerators/accelerator_commands_aura.h"
8 #include "ash/common/ash_switches.h" 8 #include "ash/common/ash_switches.h"
9 #include "ash/common/display/display_info.h" 9 #include "ash/common/display/display_info.h"
10 #include "ash/common/material_design/material_design_controller.h" 10 #include "ash/common/material_design/material_design_controller.h"
(...skipping 886 matching lines...) Expand 10 before | Expand all | Expand 10 after
897 GetDisplayForId(internal_display_id).bounds().ToString()); 897 GetDisplayForId(internal_display_id).bounds().ToString());
898 EXPECT_EQ("0,0 100x100", GetDisplayForId(10).bounds().ToString()); 898 EXPECT_EQ("0,0 100x100", GetDisplayForId(10).bounds().ToString());
899 } 899 }
900 900
901 // TODO(msw): Broken on Windows. http://crbug.com/584038 901 // TODO(msw): Broken on Windows. http://crbug.com/584038
902 #if defined(OS_CHROMEOS) 902 #if defined(OS_CHROMEOS)
903 TEST_P(DisplayManagerTest, DontRememberBestResolution) { 903 TEST_P(DisplayManagerTest, DontRememberBestResolution) {
904 int display_id = 1000; 904 int display_id = 1000;
905 DisplayInfo native_display_info = 905 DisplayInfo native_display_info =
906 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1000, 500)); 906 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1000, 500));
907 std::vector<DisplayMode> display_modes; 907 DisplayInfo::DisplayModeList display_modes;
908 display_modes.push_back( 908 display_modes.push_back(make_scoped_refptr(
909 DisplayMode(gfx::Size(1000, 500), 58.0f, false, true)); 909 new DisplayMode(gfx::Size(1000, 500), 58.0f, false, true)));
910 display_modes.push_back( 910 display_modes.push_back(make_scoped_refptr(
911 DisplayMode(gfx::Size(800, 300), 59.0f, false, false)); 911 new DisplayMode(gfx::Size(800, 300), 59.0f, false, false)));
912 display_modes.push_back( 912 display_modes.push_back(make_scoped_refptr(
913 DisplayMode(gfx::Size(400, 500), 60.0f, false, false)); 913 new DisplayMode(gfx::Size(400, 500), 60.0f, false, false)));
914 914
915 native_display_info.SetDisplayModes(display_modes); 915 native_display_info.SetDisplayModes(display_modes);
916 916
917 std::vector<DisplayInfo> display_info_list; 917 std::vector<DisplayInfo> display_info_list;
918 display_info_list.push_back(native_display_info); 918 display_info_list.push_back(native_display_info);
919 display_manager()->OnNativeDisplaysChanged(display_info_list); 919 display_manager()->OnNativeDisplaysChanged(display_info_list);
920 920
921 DisplayMode mode; 921 scoped_refptr<DisplayMode> mode;
922 DisplayMode expected_mode; 922 scoped_refptr<DisplayMode> expected_mode(
923 expected_mode.size = gfx::Size(1000, 500); 923 new DisplayMode(gfx::Size(1000, 500), 0.0f, false, false));
924 EXPECT_FALSE( 924
925 display_manager()->GetSelectedModeForDisplayId(display_id, &mode)); 925 mode = display_manager()->GetSelectedModeForDisplayId(display_id);
926 EXPECT_TRUE(expected_mode.IsEquivalent( 926 EXPECT_FALSE(!!mode);
927 EXPECT_TRUE(expected_mode->IsEquivalent(
927 display_manager()->GetActiveModeForDisplayId(display_id))); 928 display_manager()->GetActiveModeForDisplayId(display_id)));
928 929
929 // Unsupported resolution. 930 // Unsupported resolution.
930 test::SetDisplayResolution(display_id, gfx::Size(800, 4000)); 931 test::SetDisplayResolution(display_id, gfx::Size(800, 4000));
931 EXPECT_FALSE( 932 mode = display_manager()->GetSelectedModeForDisplayId(display_id);
932 display_manager()->GetSelectedModeForDisplayId(display_id, &mode)); 933 EXPECT_FALSE(!!mode);
933 EXPECT_TRUE(expected_mode.IsEquivalent( 934 EXPECT_TRUE(expected_mode->IsEquivalent(
934 display_manager()->GetActiveModeForDisplayId(display_id))); 935 display_manager()->GetActiveModeForDisplayId(display_id)));
935 936
936 // Supported resolution. 937 // Supported resolution.
937 test::SetDisplayResolution(display_id, gfx::Size(800, 300)); 938 test::SetDisplayResolution(display_id, gfx::Size(800, 300));
938 EXPECT_TRUE( 939 mode = display_manager()->GetSelectedModeForDisplayId(display_id);
939 display_manager()->GetSelectedModeForDisplayId(display_id, &mode)); 940 EXPECT_TRUE(!!mode);
940 EXPECT_EQ("800x300", mode.size.ToString()); 941 EXPECT_EQ("800x300", mode->size().ToString());
941 EXPECT_EQ(59.0f, mode.refresh_rate); 942 EXPECT_EQ(59.0f, mode->refresh_rate());
942 EXPECT_FALSE(mode.native); 943 EXPECT_FALSE(mode->native());
943 expected_mode.size = gfx::Size(800, 300); 944
944 EXPECT_TRUE(expected_mode.IsEquivalent( 945 expected_mode = new DisplayMode(gfx::Size(800, 300), 0.0f, false, false);
946
947 EXPECT_TRUE(expected_mode->IsEquivalent(
945 display_manager()->GetActiveModeForDisplayId(display_id))); 948 display_manager()->GetActiveModeForDisplayId(display_id)));
946 949
947 // Best resolution. 950 // Best resolution.
948 test::SetDisplayResolution(display_id, gfx::Size(1000, 500)); 951 test::SetDisplayResolution(display_id, gfx::Size(1000, 500));
949 EXPECT_TRUE( 952 mode = display_manager()->GetSelectedModeForDisplayId(display_id);
950 display_manager()->GetSelectedModeForDisplayId(display_id, &mode)); 953 EXPECT_TRUE(!!mode);
951 EXPECT_EQ("1000x500", mode.size.ToString()); 954 EXPECT_EQ("1000x500", mode->size().ToString());
952 EXPECT_EQ(58.0f, mode.refresh_rate); 955 EXPECT_EQ(58.0f, mode->refresh_rate());
953 EXPECT_TRUE(mode.native); 956 EXPECT_TRUE(mode->native());
954 expected_mode.size = gfx::Size(1000, 500); 957
955 EXPECT_TRUE(expected_mode.IsEquivalent( 958 expected_mode = new DisplayMode(gfx::Size(1000, 500), 0.0f, false, false);
959
960 EXPECT_TRUE(expected_mode->IsEquivalent(
956 display_manager()->GetActiveModeForDisplayId(display_id))); 961 display_manager()->GetActiveModeForDisplayId(display_id)));
957 } 962 }
958 #endif // defined(OS_CHROMEOS) 963 #endif // defined(OS_CHROMEOS)
959 964
960 // TODO(msw): Broken on Windows. http://crbug.com/584038 965 // TODO(msw): Broken on Windows. http://crbug.com/584038
961 #if defined(OS_CHROMEOS) 966 #if defined(OS_CHROMEOS)
962 TEST_P(DisplayManagerTest, ResolutionFallback) { 967 TEST_P(DisplayManagerTest, ResolutionFallback) {
963 int display_id = 1000; 968 int display_id = 1000;
964 DisplayInfo native_display_info = 969 DisplayInfo native_display_info =
965 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1000, 500)); 970 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1000, 500));
966 std::vector<DisplayMode> display_modes; 971 DisplayInfo::DisplayModeList display_modes;
967 display_modes.push_back( 972 display_modes.push_back(make_scoped_refptr(
968 DisplayMode(gfx::Size(1000, 500), 58.0f, false, true)); 973 new DisplayMode(gfx::Size(1000, 500), 58.0f, false, true)));
969 display_modes.push_back( 974 display_modes.push_back(make_scoped_refptr(
970 DisplayMode(gfx::Size(800, 300), 59.0f, false, false)); 975 new DisplayMode(gfx::Size(800, 300), 59.0f, false, false)));
971 display_modes.push_back( 976 display_modes.push_back(make_scoped_refptr(
972 DisplayMode(gfx::Size(400, 500), 60.0f, false, false)); 977 new DisplayMode(gfx::Size(400, 500), 60.0f, false, false)));
973 978
974 std::vector<DisplayMode> copy = display_modes; 979 DisplayInfo::DisplayModeList copy = display_modes;
975 native_display_info.SetDisplayModes(copy); 980 native_display_info.SetDisplayModes(copy);
976 981
977 std::vector<DisplayInfo> display_info_list; 982 std::vector<DisplayInfo> display_info_list;
978 display_info_list.push_back(native_display_info); 983 display_info_list.push_back(native_display_info);
979 display_manager()->OnNativeDisplaysChanged(display_info_list); 984 display_manager()->OnNativeDisplaysChanged(display_info_list);
980 { 985 {
981 test::SetDisplayResolution(display_id, gfx::Size(800, 300)); 986 test::SetDisplayResolution(display_id, gfx::Size(800, 300));
982 DisplayInfo new_native_display_info = 987 DisplayInfo new_native_display_info =
983 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 400, 500)); 988 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 400, 500));
984 copy = display_modes; 989 copy = display_modes;
985 new_native_display_info.SetDisplayModes(copy); 990 new_native_display_info.SetDisplayModes(copy);
986 std::vector<DisplayInfo> new_display_info_list; 991 std::vector<DisplayInfo> new_display_info_list;
987 new_display_info_list.push_back(new_native_display_info); 992 new_display_info_list.push_back(new_native_display_info);
988 display_manager()->OnNativeDisplaysChanged(new_display_info_list); 993 display_manager()->OnNativeDisplaysChanged(new_display_info_list);
989 994
990 DisplayMode mode; 995 scoped_refptr<DisplayMode> mode =
991 EXPECT_TRUE( 996 display_manager()->GetSelectedModeForDisplayId(display_id);
992 display_manager()->GetSelectedModeForDisplayId(display_id, &mode)); 997 EXPECT_TRUE(!!mode);
993 EXPECT_EQ("400x500", mode.size.ToString()); 998 EXPECT_EQ("400x500", mode->size().ToString());
994 EXPECT_EQ(60.0f, mode.refresh_rate); 999 EXPECT_EQ(60.0f, mode->refresh_rate());
995 EXPECT_FALSE(mode.native); 1000 EXPECT_FALSE(mode->native());
996 } 1001 }
997 { 1002 {
998 // Best resolution should find itself on the resolutions list. 1003 // Best resolution should find itself on the resolutions list.
999 test::SetDisplayResolution(display_id, gfx::Size(800, 300)); 1004 test::SetDisplayResolution(display_id, gfx::Size(800, 300));
1000 DisplayInfo new_native_display_info = 1005 DisplayInfo new_native_display_info =
1001 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1000, 500)); 1006 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1000, 500));
1002 std::vector<DisplayMode> copy = display_modes; 1007 DisplayInfo::DisplayModeList copy = display_modes;
1003 new_native_display_info.SetDisplayModes(copy); 1008 new_native_display_info.SetDisplayModes(copy);
1004 std::vector<DisplayInfo> new_display_info_list; 1009 std::vector<DisplayInfo> new_display_info_list;
1005 new_display_info_list.push_back(new_native_display_info); 1010 new_display_info_list.push_back(new_native_display_info);
1006 display_manager()->OnNativeDisplaysChanged(new_display_info_list); 1011 display_manager()->OnNativeDisplaysChanged(new_display_info_list);
1007 1012
1008 DisplayMode mode; 1013 scoped_refptr<DisplayMode> mode =
1009 EXPECT_TRUE( 1014 display_manager()->GetSelectedModeForDisplayId(display_id);
1010 display_manager()->GetSelectedModeForDisplayId(display_id, &mode)); 1015 EXPECT_TRUE(!!mode);
1011 EXPECT_EQ("1000x500", mode.size.ToString()); 1016 EXPECT_EQ("1000x500", mode->size().ToString());
1012 EXPECT_EQ(58.0f, mode.refresh_rate); 1017 EXPECT_EQ(58.0f, mode->refresh_rate());
1013 EXPECT_TRUE(mode.native); 1018 EXPECT_TRUE(mode->native());
1014 } 1019 }
1015 } 1020 }
1016 #endif // defined(OS_CHROMEOS) 1021 #endif // defined(OS_CHROMEOS)
1017 1022
1018 TEST_P(DisplayManagerTest, Rotate) { 1023 TEST_P(DisplayManagerTest, Rotate) {
1019 if (!SupportsMultipleDisplays()) 1024 if (!SupportsMultipleDisplays())
1020 return; 1025 return;
1021 1026
1022 UpdateDisplay("100x200/r,300x400/l"); 1027 UpdateDisplay("100x200/r,300x400/l");
1023 EXPECT_EQ("1,1 100x200", GetDisplayInfoAt(0).bounds_in_native().ToString()); 1028 EXPECT_EQ("1,1 100x200", GetDisplayInfoAt(0).bounds_in_native().ToString());
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
1195 EXPECT_EQ("1280x850", display.bounds().size().ToString()); 1200 EXPECT_EQ("1280x850", display.bounds().size().ToString());
1196 } 1201 }
1197 #endif // defined(OS_CHROMEOS) 1202 #endif // defined(OS_CHROMEOS)
1198 1203
1199 TEST_P(DisplayManagerTest, UIScaleWithDisplayMode) { 1204 TEST_P(DisplayManagerTest, UIScaleWithDisplayMode) {
1200 int display_id = 1000; 1205 int display_id = 1000;
1201 1206
1202 // Setup the display modes with UI-scale. 1207 // Setup the display modes with UI-scale.
1203 DisplayInfo native_display_info = 1208 DisplayInfo native_display_info =
1204 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1280, 800)); 1209 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1280, 800));
1205 const DisplayMode base_mode(gfx::Size(1280, 800), 60.0f, false, false); 1210 const scoped_refptr<DisplayMode>& base_mode(
1206 std::vector<DisplayMode> mode_list = CreateInternalDisplayModeList(base_mode); 1211 new DisplayMode(gfx::Size(1280, 800), 60.0f, false, false));
1212 DisplayInfo::DisplayModeList mode_list =
1213 CreateInternalDisplayModeList(base_mode);
1207 native_display_info.SetDisplayModes(mode_list); 1214 native_display_info.SetDisplayModes(mode_list);
1208 1215
1209 std::vector<DisplayInfo> display_info_list; 1216 std::vector<DisplayInfo> display_info_list;
1210 display_info_list.push_back(native_display_info); 1217 display_info_list.push_back(native_display_info);
1211 display_manager()->OnNativeDisplaysChanged(display_info_list); 1218 display_manager()->OnNativeDisplaysChanged(display_info_list);
1212 1219
1213 DisplayMode expected_mode = base_mode; 1220 scoped_refptr<DisplayMode> expected_mode = base_mode;
1214 EXPECT_TRUE(expected_mode.IsEquivalent( 1221 EXPECT_TRUE(expected_mode->IsEquivalent(
1215 display_manager()->GetActiveModeForDisplayId(display_id))); 1222 display_manager()->GetActiveModeForDisplayId(display_id)));
1216 1223
1217 test::ScopedSetInternalDisplayId set_internal(display_id); 1224 test::ScopedSetInternalDisplayId set_internal(display_id);
1218 1225
1219 SetDisplayUIScale(display_id, 1.5f); 1226 SetDisplayUIScale(display_id, 1.5f);
1220 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).configured_ui_scale()); 1227 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).configured_ui_scale());
1221 EXPECT_TRUE(expected_mode.IsEquivalent( 1228 EXPECT_TRUE(expected_mode->IsEquivalent(
1222 display_manager()->GetActiveModeForDisplayId(display_id))); 1229 display_manager()->GetActiveModeForDisplayId(display_id)));
1223 SetDisplayUIScale(display_id, 1.25f); 1230 SetDisplayUIScale(display_id, 1.25f);
1224 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).configured_ui_scale()); 1231 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).configured_ui_scale());
1225 EXPECT_TRUE(expected_mode.IsEquivalent( 1232 EXPECT_TRUE(expected_mode->IsEquivalent(
1226 display_manager()->GetActiveModeForDisplayId(display_id))); 1233 display_manager()->GetActiveModeForDisplayId(display_id)));
1227 SetDisplayUIScale(display_id, 1.125f); 1234 SetDisplayUIScale(display_id, 1.125f);
1228 EXPECT_EQ(1.125f, GetDisplayInfoAt(0).configured_ui_scale()); 1235 EXPECT_EQ(1.125f, GetDisplayInfoAt(0).configured_ui_scale());
1229 expected_mode.ui_scale = 1.125f; 1236
1230 EXPECT_TRUE(expected_mode.IsEquivalent( 1237 expected_mode = new DisplayMode(
1238 expected_mode->size(), expected_mode->refresh_rate(),
1239 expected_mode->is_interlaced(), expected_mode->native(),
1240 1.125f /* ui_scale */, expected_mode->device_scale_factor());
1241
1242 EXPECT_TRUE(expected_mode->IsEquivalent(
1231 display_manager()->GetActiveModeForDisplayId(display_id))); 1243 display_manager()->GetActiveModeForDisplayId(display_id)));
1232 SetDisplayUIScale(display_id, 0.8f); 1244 SetDisplayUIScale(display_id, 0.8f);
1233 EXPECT_EQ(0.8f, GetDisplayInfoAt(0).configured_ui_scale()); 1245 EXPECT_EQ(0.8f, GetDisplayInfoAt(0).configured_ui_scale());
1234 expected_mode.ui_scale = 0.8f; 1246
1235 EXPECT_TRUE(expected_mode.IsEquivalent( 1247 expected_mode = new DisplayMode(
1248 expected_mode->size(), expected_mode->refresh_rate(),
1249 expected_mode->is_interlaced(), expected_mode->native(),
1250 0.8f /* ui_scale */, expected_mode->device_scale_factor());
1251
1252 EXPECT_TRUE(expected_mode->IsEquivalent(
1236 display_manager()->GetActiveModeForDisplayId(display_id))); 1253 display_manager()->GetActiveModeForDisplayId(display_id)));
1237 SetDisplayUIScale(display_id, 0.75f); 1254 SetDisplayUIScale(display_id, 0.75f);
1238 EXPECT_EQ(0.8f, GetDisplayInfoAt(0).configured_ui_scale()); 1255 EXPECT_EQ(0.8f, GetDisplayInfoAt(0).configured_ui_scale());
1239 EXPECT_TRUE(expected_mode.IsEquivalent( 1256 EXPECT_TRUE(expected_mode->IsEquivalent(
1240 display_manager()->GetActiveModeForDisplayId(display_id))); 1257 display_manager()->GetActiveModeForDisplayId(display_id)));
1241 SetDisplayUIScale(display_id, 0.625f); 1258 SetDisplayUIScale(display_id, 0.625f);
1242 EXPECT_EQ(0.625f, GetDisplayInfoAt(0).configured_ui_scale()); 1259 EXPECT_EQ(0.625f, GetDisplayInfoAt(0).configured_ui_scale());
1243 expected_mode.ui_scale = 0.625f; 1260
1244 EXPECT_TRUE(expected_mode.IsEquivalent( 1261 expected_mode = new DisplayMode(
1262 expected_mode->size(), expected_mode->refresh_rate(),
1263 expected_mode->is_interlaced(), expected_mode->native(),
1264 0.625f /* ui_scale */, expected_mode->device_scale_factor());
1265
1266 EXPECT_TRUE(expected_mode->IsEquivalent(
1245 display_manager()->GetActiveModeForDisplayId(display_id))); 1267 display_manager()->GetActiveModeForDisplayId(display_id)));
1246 SetDisplayUIScale(display_id, 0.6f); 1268 SetDisplayUIScale(display_id, 0.6f);
1247 EXPECT_EQ(0.625f, GetDisplayInfoAt(0).configured_ui_scale()); 1269 EXPECT_EQ(0.625f, GetDisplayInfoAt(0).configured_ui_scale());
1248 EXPECT_TRUE(expected_mode.IsEquivalent( 1270 EXPECT_TRUE(expected_mode->IsEquivalent(
1249 display_manager()->GetActiveModeForDisplayId(display_id))); 1271 display_manager()->GetActiveModeForDisplayId(display_id)));
1250 SetDisplayUIScale(display_id, 0.5f); 1272 SetDisplayUIScale(display_id, 0.5f);
1251 EXPECT_EQ(0.5f, GetDisplayInfoAt(0).configured_ui_scale()); 1273 EXPECT_EQ(0.5f, GetDisplayInfoAt(0).configured_ui_scale());
1252 expected_mode.ui_scale = 0.5f; 1274
1253 EXPECT_TRUE(expected_mode.IsEquivalent( 1275 expected_mode = new DisplayMode(
1276 expected_mode->size(), expected_mode->refresh_rate(),
1277 expected_mode->is_interlaced(), expected_mode->native(),
1278 0.5f /* ui_scale */, expected_mode->device_scale_factor());
1279
1280 EXPECT_TRUE(expected_mode->IsEquivalent(
1254 display_manager()->GetActiveModeForDisplayId(display_id))); 1281 display_manager()->GetActiveModeForDisplayId(display_id)));
1255 } 1282 }
1256 1283
1257 // TODO(msw): Broken on Windows. http://crbug.com/584038 1284 // TODO(msw): Broken on Windows. http://crbug.com/584038
1258 #if defined(OS_CHROMEOS) 1285 #if defined(OS_CHROMEOS)
1259 TEST_P(DisplayManagerTest, Use125DSFForUIScaling) { 1286 TEST_P(DisplayManagerTest, Use125DSFForUIScaling) {
1260 int64_t display_id = display::Screen::GetScreen()->GetPrimaryDisplay().id(); 1287 int64_t display_id = display::Screen::GetScreen()->GetPrimaryDisplay().id();
1261 1288
1262 test::ScopedSetInternalDisplayId set_internal(display_id); 1289 test::ScopedSetInternalDisplayId set_internal(display_id);
1263 UpdateDisplay("1920x1080*1.25"); 1290 UpdateDisplay("1920x1080*1.25");
(...skipping 23 matching lines...) Expand all
1287 int64_t display_id = display::Screen::GetScreen()->GetPrimaryDisplay().id(); 1314 int64_t display_id = display::Screen::GetScreen()->GetPrimaryDisplay().id();
1288 1315
1289 display_id++; 1316 display_id++;
1290 test::ScopedSetInternalDisplayId set_internal(display_id); 1317 test::ScopedSetInternalDisplayId set_internal(display_id);
1291 1318
1292 // Setup the display modes with UI-scale. 1319 // Setup the display modes with UI-scale.
1293 DisplayInfo native_display_info = 1320 DisplayInfo native_display_info =
1294 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1920, 1080)); 1321 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1920, 1080));
1295 native_display_info.set_device_scale_factor(1.25); 1322 native_display_info.set_device_scale_factor(1.25);
1296 1323
1297 const DisplayMode base_mode(gfx::Size(1920, 1080), 60.0f, false, false); 1324 const scoped_refptr<DisplayMode>& base_mode(
1298 std::vector<DisplayMode> mode_list = CreateInternalDisplayModeList(base_mode); 1325 new DisplayMode(gfx::Size(1920, 1080), 60.0f, false, false));
1326 DisplayInfo::DisplayModeList mode_list =
1327 CreateInternalDisplayModeList(base_mode);
1299 native_display_info.SetDisplayModes(mode_list); 1328 native_display_info.SetDisplayModes(mode_list);
1300 1329
1301 std::vector<DisplayInfo> display_info_list; 1330 std::vector<DisplayInfo> display_info_list;
1302 display_info_list.push_back(native_display_info); 1331 display_info_list.push_back(native_display_info);
1303 1332
1304 display_manager()->OnNativeDisplaysChanged(display_info_list); 1333 display_manager()->OnNativeDisplaysChanged(display_info_list);
1305 1334
1306 EXPECT_EQ(1.25f, GetDisplayInfoAt(0).GetEffectiveDeviceScaleFactor()); 1335 EXPECT_EQ(1.25f, GetDisplayInfoAt(0).GetEffectiveDeviceScaleFactor());
1307 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).GetEffectiveUIScale()); 1336 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).GetEffectiveUIScale());
1308 } 1337 }
(...skipping 11 matching lines...) Expand all
1320 const gfx::Insets dummy_overscan_insets; 1349 const gfx::Insets dummy_overscan_insets;
1321 display_manager()->RegisterDisplayProperty( 1350 display_manager()->RegisterDisplayProperty(
1322 display_id, display::Display::ROTATE_0, 1.0f, &dummy_overscan_insets, 1351 display_id, display::Display::ROTATE_0, 1.0f, &dummy_overscan_insets,
1323 gfx::Size(), 1.0f, ui::ColorCalibrationProfile()); 1352 gfx::Size(), 1.0f, ui::ColorCalibrationProfile());
1324 1353
1325 // Setup the display modes with UI-scale. 1354 // Setup the display modes with UI-scale.
1326 DisplayInfo native_display_info = 1355 DisplayInfo native_display_info =
1327 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1920, 1080)); 1356 CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1920, 1080));
1328 native_display_info.set_device_scale_factor(1.25); 1357 native_display_info.set_device_scale_factor(1.25);
1329 1358
1330 const DisplayMode base_mode(gfx::Size(1920, 1080), 60.0f, false, false); 1359 const scoped_refptr<DisplayMode>& base_mode(
1331 std::vector<DisplayMode> mode_list = CreateInternalDisplayModeList(base_mode); 1360 new DisplayMode(gfx::Size(1920, 1080), 60.0f, false, false));
1361 DisplayInfo::DisplayModeList mode_list =
1362 CreateInternalDisplayModeList(base_mode);
1332 native_display_info.SetDisplayModes(mode_list); 1363 native_display_info.SetDisplayModes(mode_list);
1333 1364
1334 std::vector<DisplayInfo> display_info_list; 1365 std::vector<DisplayInfo> display_info_list;
1335 display_info_list.push_back(native_display_info); 1366 display_info_list.push_back(native_display_info);
1336 1367
1337 display_manager()->OnNativeDisplaysChanged(display_info_list); 1368 display_manager()->OnNativeDisplaysChanged(display_info_list);
1338 1369
1339 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).GetEffectiveDeviceScaleFactor()); 1370 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).GetEffectiveDeviceScaleFactor());
1340 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).GetEffectiveUIScale()); 1371 EXPECT_EQ(1.0f, GetDisplayInfoAt(0).GetEffectiveUIScale());
1341 } 1372 }
1342 #endif // defined(OS_CHROMEOS) 1373 #endif // defined(OS_CHROMEOS)
1343 1374
1344 TEST_P(DisplayManagerTest, ResolutionChangeInUnifiedMode) { 1375 TEST_P(DisplayManagerTest, ResolutionChangeInUnifiedMode) {
1345 if (!SupportsMultipleDisplays()) 1376 if (!SupportsMultipleDisplays())
1346 return; 1377 return;
1347 // Don't check root window destruction in unified mode. 1378 // Don't check root window destruction in unified mode.
1348 Shell::GetPrimaryRootWindow()->RemoveObserver(this); 1379 Shell::GetPrimaryRootWindow()->RemoveObserver(this);
1349 1380
1350 display_manager()->SetUnifiedDesktopEnabled(true); 1381 display_manager()->SetUnifiedDesktopEnabled(true);
1351 1382
1352 UpdateDisplay("200x200, 400x400"); 1383 UpdateDisplay("200x200, 400x400");
1353 1384
1354 int64_t unified_id = display::Screen::GetScreen()->GetPrimaryDisplay().id(); 1385 int64_t unified_id = display::Screen::GetScreen()->GetPrimaryDisplay().id();
1355 DisplayInfo info = display_manager()->GetDisplayInfo(unified_id); 1386 DisplayInfo info = display_manager()->GetDisplayInfo(unified_id);
1356 ASSERT_EQ(2u, info.display_modes().size()); 1387 ASSERT_EQ(2u, info.display_modes().size());
1357 EXPECT_EQ("400x200", info.display_modes()[0].size.ToString()); 1388 EXPECT_EQ("400x200", info.display_modes()[0]->size().ToString());
1358 EXPECT_TRUE(info.display_modes()[0].native); 1389 EXPECT_TRUE(info.display_modes()[0]->native());
1359 EXPECT_EQ("800x400", info.display_modes()[1].size.ToString()); 1390 EXPECT_EQ("800x400", info.display_modes()[1]->size().ToString());
1360 EXPECT_FALSE(info.display_modes()[1].native); 1391 EXPECT_FALSE(info.display_modes()[1]->native());
1361 EXPECT_EQ( 1392 EXPECT_EQ(
1362 "400x200", 1393 "400x200",
1363 display::Screen::GetScreen()->GetPrimaryDisplay().size().ToString()); 1394 display::Screen::GetScreen()->GetPrimaryDisplay().size().ToString());
1364 DisplayMode active_mode = 1395 scoped_refptr<DisplayMode> active_mode =
1365 display_manager()->GetActiveModeForDisplayId(unified_id); 1396 display_manager()->GetActiveModeForDisplayId(unified_id);
1366 EXPECT_EQ(1.0f, active_mode.ui_scale); 1397 EXPECT_EQ(1.0f, active_mode->ui_scale());
1367 EXPECT_EQ("400x200", active_mode.size.ToString()); 1398 EXPECT_EQ("400x200", active_mode->size().ToString());
1368 1399
1369 EXPECT_TRUE(test::SetDisplayResolution(unified_id, gfx::Size(800, 400))); 1400 EXPECT_TRUE(test::SetDisplayResolution(unified_id, gfx::Size(800, 400)));
1370 EXPECT_EQ( 1401 EXPECT_EQ(
1371 "800x400", 1402 "800x400",
1372 display::Screen::GetScreen()->GetPrimaryDisplay().size().ToString()); 1403 display::Screen::GetScreen()->GetPrimaryDisplay().size().ToString());
1373 1404
1374 active_mode = display_manager()->GetActiveModeForDisplayId(unified_id); 1405 active_mode = display_manager()->GetActiveModeForDisplayId(unified_id);
1375 EXPECT_EQ(1.0f, active_mode.ui_scale); 1406 EXPECT_EQ(1.0f, active_mode->ui_scale());
1376 EXPECT_EQ("800x400", active_mode.size.ToString()); 1407 EXPECT_EQ("800x400", active_mode->size().ToString());
1377 1408
1378 // resolution change will not persist in unified desktop mode. 1409 // resolution change will not persist in unified desktop mode.
1379 UpdateDisplay("600x600, 200x200"); 1410 UpdateDisplay("600x600, 200x200");
1380 EXPECT_EQ( 1411 EXPECT_EQ(
1381 "1200x600", 1412 "1200x600",
1382 display::Screen::GetScreen()->GetPrimaryDisplay().size().ToString()); 1413 display::Screen::GetScreen()->GetPrimaryDisplay().size().ToString());
1383 active_mode = display_manager()->GetActiveModeForDisplayId(unified_id); 1414 active_mode = display_manager()->GetActiveModeForDisplayId(unified_id);
1384 EXPECT_EQ(1.0f, active_mode.ui_scale); 1415 EXPECT_EQ(1.0f, active_mode->ui_scale());
1385 EXPECT_TRUE(active_mode.native); 1416 EXPECT_TRUE(active_mode->native());
1386 EXPECT_EQ("1200x600", active_mode.size.ToString()); 1417 EXPECT_EQ("1200x600", active_mode->size().ToString());
1387 } 1418 }
1388 1419
1389 // TODO(scottmg): RootWindow doesn't get resized on Windows 1420 // TODO(scottmg): RootWindow doesn't get resized on Windows
1390 // Ash. http://crbug.com/247916. 1421 // Ash. http://crbug.com/247916.
1391 #if defined(OS_CHROMEOS) 1422 #if defined(OS_CHROMEOS)
1392 TEST_P(DisplayManagerTest, UpdateMouseCursorAfterRotateZoom) { 1423 TEST_P(DisplayManagerTest, UpdateMouseCursorAfterRotateZoom) {
1393 // Make sure just rotating will not change native location. 1424 // Make sure just rotating will not change native location.
1394 UpdateDisplay("300x200,200x150"); 1425 UpdateDisplay("300x200,200x150");
1395 aura::Window::Windows root_windows = Shell::GetAllRootWindows(); 1426 aura::Window::Windows root_windows = Shell::GetAllRootWindows();
1396 aura::Env* env = aura::Env::GetInstance(); 1427 aura::Env* env = aura::Env::GetInstance();
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after
1898 Shell::GetPrimaryRootWindow()->RemoveObserver(this); 1929 Shell::GetPrimaryRootWindow()->RemoveObserver(this);
1899 1930
1900 display_manager()->SetUnifiedDesktopEnabled(true); 1931 display_manager()->SetUnifiedDesktopEnabled(true);
1901 display::Screen* screen = display::Screen::GetScreen(); 1932 display::Screen* screen = display::Screen::GetScreen();
1902 1933
1903 // 2nd display is 2x. 1934 // 2nd display is 2x.
1904 UpdateDisplay("400x500,1000x800*2"); 1935 UpdateDisplay("400x500,1000x800*2");
1905 DisplayInfo info = 1936 DisplayInfo info =
1906 display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id()); 1937 display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id());
1907 EXPECT_EQ(2u, info.display_modes().size()); 1938 EXPECT_EQ(2u, info.display_modes().size());
1908 EXPECT_EQ("1640x800", info.display_modes()[0].size.ToString()); 1939 EXPECT_EQ("1640x800", info.display_modes()[0]->size().ToString());
1909 EXPECT_EQ(2.0f, info.display_modes()[0].device_scale_factor); 1940 EXPECT_EQ(2.0f, info.display_modes()[0]->device_scale_factor());
1910 EXPECT_EQ("1025x500", info.display_modes()[1].size.ToString()); 1941 EXPECT_EQ("1025x500", info.display_modes()[1]->size().ToString());
1911 EXPECT_EQ(1.0f, info.display_modes()[1].device_scale_factor); 1942 EXPECT_EQ(1.0f, info.display_modes()[1]->device_scale_factor());
1912 1943
1913 // For 1x, 400 + 500 / 800 * 100 = 1025. 1944 // For 1x, 400 + 500 / 800 * 100 = 1025.
1914 EXPECT_EQ("1025x500", screen->GetPrimaryDisplay().size().ToString()); 1945 EXPECT_EQ("1025x500", screen->GetPrimaryDisplay().size().ToString());
1915 EXPECT_EQ("1025x500", 1946 EXPECT_EQ("1025x500",
1916 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 1947 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1917 accelerators::ZoomInternalDisplay(false); 1948 accelerators::ZoomInternalDisplay(false);
1918 // (800 / 500 * 400 + 500) /2 = 820 1949 // (800 / 500 * 400 + 500) /2 = 820
1919 EXPECT_EQ("820x400", screen->GetPrimaryDisplay().size().ToString()); 1950 EXPECT_EQ("820x400", screen->GetPrimaryDisplay().size().ToString());
1920 EXPECT_EQ("820x400", 1951 EXPECT_EQ("820x400",
1921 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 1952 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1922 1953
1923 // 1st display is 2x. 1954 // 1st display is 2x.
1924 UpdateDisplay("1200x800*2,1000x1000"); 1955 UpdateDisplay("1200x800*2,1000x1000");
1925 info = display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id()); 1956 info = display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id());
1926 EXPECT_EQ(2u, info.display_modes().size()); 1957 EXPECT_EQ(2u, info.display_modes().size());
1927 EXPECT_EQ("2000x800", info.display_modes()[0].size.ToString()); 1958 EXPECT_EQ("2000x800", info.display_modes()[0]->size().ToString());
1928 EXPECT_EQ(2.0f, info.display_modes()[0].device_scale_factor); 1959 EXPECT_EQ(2.0f, info.display_modes()[0]->device_scale_factor());
1929 EXPECT_EQ("2500x1000", info.display_modes()[1].size.ToString()); 1960 EXPECT_EQ("2500x1000", info.display_modes()[1]->size().ToString());
1930 EXPECT_EQ(1.0f, info.display_modes()[1].device_scale_factor); 1961 EXPECT_EQ(1.0f, info.display_modes()[1]->device_scale_factor());
1931 1962
1932 // For 2x, (800 / 1000 * 1000 + 1200) / 2 = 1000 1963 // For 2x, (800 / 1000 * 1000 + 1200) / 2 = 1000
1933 EXPECT_EQ("1000x400", screen->GetPrimaryDisplay().size().ToString()); 1964 EXPECT_EQ("1000x400", screen->GetPrimaryDisplay().size().ToString());
1934 EXPECT_EQ("1000x400", 1965 EXPECT_EQ("1000x400",
1935 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 1966 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1936 accelerators::ZoomInternalDisplay(true); 1967 accelerators::ZoomInternalDisplay(true);
1937 // 1000 / 800 * 1200 + 1000 = 2500 1968 // 1000 / 800 * 1200 + 1000 = 2500
1938 EXPECT_EQ("2500x1000", screen->GetPrimaryDisplay().size().ToString()); 1969 EXPECT_EQ("2500x1000", screen->GetPrimaryDisplay().size().ToString());
1939 EXPECT_EQ("2500x1000", 1970 EXPECT_EQ("2500x1000",
1940 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 1971 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1941 1972
1942 // Both displays are 2x. 1973 // Both displays are 2x.
1943 // 1st display is 2x. 1974 // 1st display is 2x.
1944 UpdateDisplay("1200x800*2,1000x1000*2"); 1975 UpdateDisplay("1200x800*2,1000x1000*2");
1945 info = display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id()); 1976 info = display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id());
1946 EXPECT_EQ(2u, info.display_modes().size()); 1977 EXPECT_EQ(2u, info.display_modes().size());
1947 EXPECT_EQ("2000x800", info.display_modes()[0].size.ToString()); 1978 EXPECT_EQ("2000x800", info.display_modes()[0]->size().ToString());
1948 EXPECT_EQ(2.0f, info.display_modes()[0].device_scale_factor); 1979 EXPECT_EQ(2.0f, info.display_modes()[0]->device_scale_factor());
1949 EXPECT_EQ("2500x1000", info.display_modes()[1].size.ToString()); 1980 EXPECT_EQ("2500x1000", info.display_modes()[1]->size().ToString());
1950 EXPECT_EQ(2.0f, info.display_modes()[1].device_scale_factor); 1981 EXPECT_EQ(2.0f, info.display_modes()[1]->device_scale_factor());
1951 1982
1952 EXPECT_EQ("1000x400", screen->GetPrimaryDisplay().size().ToString()); 1983 EXPECT_EQ("1000x400", screen->GetPrimaryDisplay().size().ToString());
1953 EXPECT_EQ("1000x400", 1984 EXPECT_EQ("1000x400",
1954 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 1985 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1955 accelerators::ZoomInternalDisplay(true); 1986 accelerators::ZoomInternalDisplay(true);
1956 EXPECT_EQ("1250x500", screen->GetPrimaryDisplay().size().ToString()); 1987 EXPECT_EQ("1250x500", screen->GetPrimaryDisplay().size().ToString());
1957 EXPECT_EQ("1250x500", 1988 EXPECT_EQ("1250x500",
1958 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 1989 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1959 1990
1960 // Both displays have the same physical height, with the first display 1991 // Both displays have the same physical height, with the first display
1961 // being 2x. 1992 // being 2x.
1962 UpdateDisplay("1000x800*2,300x800"); 1993 UpdateDisplay("1000x800*2,300x800");
1963 info = display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id()); 1994 info = display_manager()->GetDisplayInfo(screen->GetPrimaryDisplay().id());
1964 EXPECT_EQ(2u, info.display_modes().size()); 1995 EXPECT_EQ(2u, info.display_modes().size());
1965 EXPECT_EQ("1300x800", info.display_modes()[0].size.ToString()); 1996 EXPECT_EQ("1300x800", info.display_modes()[0]->size().ToString());
1966 EXPECT_EQ(2.0f, info.display_modes()[0].device_scale_factor); 1997 EXPECT_EQ(2.0f, info.display_modes()[0]->device_scale_factor());
1967 EXPECT_EQ("1300x800", info.display_modes()[1].size.ToString()); 1998 EXPECT_EQ("1300x800", info.display_modes()[1]->size().ToString());
1968 EXPECT_EQ(1.0f, info.display_modes()[1].device_scale_factor); 1999 EXPECT_EQ(1.0f, info.display_modes()[1]->device_scale_factor());
1969 2000
1970 EXPECT_EQ("650x400", screen->GetPrimaryDisplay().size().ToString()); 2001 EXPECT_EQ("650x400", screen->GetPrimaryDisplay().size().ToString());
1971 EXPECT_EQ("650x400", 2002 EXPECT_EQ("650x400",
1972 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 2003 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1973 accelerators::ZoomInternalDisplay(true); 2004 accelerators::ZoomInternalDisplay(true);
1974 EXPECT_EQ("1300x800", screen->GetPrimaryDisplay().size().ToString()); 2005 EXPECT_EQ("1300x800", screen->GetPrimaryDisplay().size().ToString());
1975 EXPECT_EQ("1300x800", 2006 EXPECT_EQ("1300x800",
1976 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 2007 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1977 2008
1978 // Both displays have the same physical height, with the second display 2009 // Both displays have the same physical height, with the second display
1979 // being 2x. 2010 // being 2x.
1980 UpdateDisplay("1000x800,300x800*2"); 2011 UpdateDisplay("1000x800,300x800*2");
1981 EXPECT_EQ(2u, info.display_modes().size()); 2012 EXPECT_EQ(2u, info.display_modes().size());
1982 EXPECT_EQ("1300x800", info.display_modes()[0].size.ToString()); 2013 EXPECT_EQ("1300x800", info.display_modes()[0]->size().ToString());
1983 EXPECT_EQ(2.0f, info.display_modes()[0].device_scale_factor); 2014 EXPECT_EQ(2.0f, info.display_modes()[0]->device_scale_factor());
1984 EXPECT_EQ("1300x800", info.display_modes()[1].size.ToString()); 2015 EXPECT_EQ("1300x800", info.display_modes()[1]->size().ToString());
1985 EXPECT_EQ(1.0f, info.display_modes()[1].device_scale_factor); 2016 EXPECT_EQ(1.0f, info.display_modes()[1]->device_scale_factor());
1986 2017
1987 EXPECT_EQ("1300x800", screen->GetPrimaryDisplay().size().ToString()); 2018 EXPECT_EQ("1300x800", screen->GetPrimaryDisplay().size().ToString());
1988 EXPECT_EQ("1300x800", 2019 EXPECT_EQ("1300x800",
1989 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 2020 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1990 accelerators::ZoomInternalDisplay(false); 2021 accelerators::ZoomInternalDisplay(false);
1991 EXPECT_EQ("650x400", screen->GetPrimaryDisplay().size().ToString()); 2022 EXPECT_EQ("650x400", screen->GetPrimaryDisplay().size().ToString());
1992 EXPECT_EQ("650x400", 2023 EXPECT_EQ("650x400",
1993 Shell::GetPrimaryRootWindow()->bounds().size().ToString()); 2024 Shell::GetPrimaryRootWindow()->bounds().size().ToString());
1994 } 2025 }
1995 2026
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
2085 2116
2086 display_info_list.clear(); 2117 display_info_list.clear();
2087 display_info_list.push_back(external_display_info); 2118 display_info_list.push_back(external_display_info);
2088 display_manager()->OnNativeDisplaysChanged(display_info_list); 2119 display_manager()->OnNativeDisplaysChanged(display_info_list);
2089 EXPECT_EQ(1U, display_manager()->active_display_list().size()); 2120 EXPECT_EQ(1U, display_manager()->active_display_list().size());
2090 2121
2091 EXPECT_TRUE(display_manager()->IsActiveDisplayId(external_id)); 2122 EXPECT_TRUE(display_manager()->IsActiveDisplayId(external_id));
2092 EXPECT_FALSE(display_manager()->IsActiveDisplayId(internal_id)); 2123 EXPECT_FALSE(display_manager()->IsActiveDisplayId(internal_id));
2093 2124
2094 const DisplayInfo& info = display_manager()->GetDisplayInfo(internal_id); 2125 const DisplayInfo& info = display_manager()->GetDisplayInfo(internal_id);
2095 DisplayMode mode;
2096 2126
2097 EXPECT_FALSE(GetDisplayModeForNextUIScale(info, true, &mode)); 2127 EXPECT_FALSE(!!GetDisplayModeForNextUIScale(info, true));
2098 EXPECT_FALSE(GetDisplayModeForNextUIScale(info, false, &mode)); 2128 EXPECT_FALSE(!!GetDisplayModeForNextUIScale(info, false));
2099 EXPECT_FALSE(SetDisplayUIScale(internal_id, 1.0f)); 2129 EXPECT_FALSE(SetDisplayUIScale(internal_id, 1.0f));
2100 2130
2101 DisplayInfo invalid_info; 2131 DisplayInfo invalid_info;
2102 EXPECT_FALSE(GetDisplayModeForNextUIScale(invalid_info, true, &mode)); 2132 EXPECT_FALSE(!!GetDisplayModeForNextUIScale(invalid_info, true));
2103 EXPECT_FALSE(GetDisplayModeForNextUIScale(invalid_info, false, &mode)); 2133 EXPECT_FALSE(!!GetDisplayModeForNextUIScale(invalid_info, false));
2104 EXPECT_FALSE(SetDisplayUIScale(display::Display::kInvalidDisplayID, 1.0f)); 2134 EXPECT_FALSE(SetDisplayUIScale(display::Display::kInvalidDisplayID, 1.0f));
2105 } 2135 }
2106 2136
2107 // Make sure that bad layout information is ignored and does not crash. 2137 // Make sure that bad layout information is ignored and does not crash.
2108 TEST_P(DisplayManagerTest, DontRegisterBadConfig) { 2138 TEST_P(DisplayManagerTest, DontRegisterBadConfig) {
2109 if (!SupportsMultipleDisplays()) 2139 if (!SupportsMultipleDisplays())
2110 return; 2140 return;
2111 display::DisplayIdList list = ash::test::CreateDisplayIdList2(1, 2); 2141 display::DisplayIdList list = ash::test::CreateDisplayIdList2(1, 2);
2112 display::DisplayLayoutBuilder builder(1); 2142 display::DisplayLayoutBuilder builder(1);
2113 builder.AddDisplayPlacement(2, 1, display::DisplayPlacement::LEFT, 0); 2143 builder.AddDisplayPlacement(2, 1, display::DisplayPlacement::LEFT, 0);
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
2327 const display::DisplayLayout& stored = 2357 const display::DisplayLayout& stored =
2328 layout_store->GetRegisteredDisplayLayout(list); 2358 layout_store->GetRegisteredDisplayLayout(list);
2329 2359
2330 EXPECT_EQ(id1, stored.placement_list[0].parent_display_id); 2360 EXPECT_EQ(id1, stored.placement_list[0].parent_display_id);
2331 EXPECT_EQ(id2, stored.placement_list[0].display_id); 2361 EXPECT_EQ(id2, stored.placement_list[0].display_id);
2332 } 2362 }
2333 2363
2334 #endif // OS_CHROMEOS 2364 #endif // OS_CHROMEOS
2335 2365
2336 } // namespace ash 2366 } // namespace ash
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698