| Index: LayoutTests/inspector/styles/override-screen-size.html
|
| diff --git a/LayoutTests/inspector/styles/override-screen-size.html b/LayoutTests/inspector/styles/override-screen-size.html
|
| index 826f1babb7c32969545f3266a8f091cb76e6b6f1..c1b741545828cb4eec5838dd57a274cde0b94164 100644
|
| --- a/LayoutTests/inspector/styles/override-screen-size.html
|
| +++ b/LayoutTests/inspector/styles/override-screen-size.html
|
| @@ -2,15 +2,15 @@
|
| <head>
|
|
|
| <style type="text/css" media="screen">
|
| -@media (max-device-width: 478px) and (max-device-height: 959px) {
|
| +@media (max-device-width: 478px) and (max-device-height: 799px) {
|
| #main { background: red; }
|
| }
|
|
|
| -@media (max-device-width: 480px) and (max-device-height: 960px) {
|
| +@media (max-device-width: 480px) and (max-device-height: 800px) {
|
| #main { background: green; }
|
| }
|
|
|
| -@media (min-device-width: 481px) and (min-device-height: 961px) {
|
| +@media (min-device-width: 481px) and (min-device-height: 801px) {
|
| #main { background: yellow; }
|
| }
|
|
|
| @@ -42,6 +42,7 @@ function getSizes()
|
| function test()
|
| {
|
| var exceededDimension = 10000001;
|
| + var overridesEnabled = false;
|
| var originalScreenSize;
|
|
|
| function saveSizeCallback(jsonResult)
|
| @@ -64,97 +65,70 @@ function test()
|
|
|
| function step1()
|
| {
|
| - function compareSizeCallback(jsonResult)
|
| - {
|
| - // Check that the screen size reported is the same as the original one.
|
| - var result = JSON.parse(jsonResult.value);
|
| - if (result.screen !== originalScreenSize)
|
| - InspectorTest.addResult("Original size " + originalScreenSize + " not restored, found: " + result.screen);
|
| - step2();
|
| - }
|
| -
|
| - function overrideCallback()
|
| - {
|
| - InspectorTest.evaluateInPage("getSizes()", compareSizeCallback);
|
| - }
|
| -
|
| - // Disable overrides.
|
| - PageAgent.setDeviceMetricsOverride(0, 0, 1, true, overrideCallback);
|
| + overrideAndDumpData(800, 480, step2);
|
| }
|
|
|
| function step2()
|
| {
|
| - overrideAndDumpData(800, 480, step3);
|
| + applyOverride(exceededDimension, 800, step3);
|
| }
|
|
|
| function step3()
|
| {
|
| - applyOverride(exceededDimension, 800, step4);
|
| + applyOverride(-1, 800, step4);
|
| }
|
|
|
| function step4()
|
| {
|
| - applyOverride(-1, 800, step5);
|
| + applyOverride(480, exceededDimension, step5);
|
| }
|
|
|
| function step5()
|
| {
|
| - applyOverride(480, exceededDimension, step6);
|
| - }
|
| -
|
| - function step6()
|
| - {
|
| function callback()
|
| {
|
| InspectorTest.addResult("Current dimensions:");
|
| - getAndDumpSizes(step7);
|
| + getAndDumpSizes(step6);
|
| }
|
| applyOverride(480, -1, callback);
|
| }
|
|
|
| - function step7()
|
| + function step6()
|
| {
|
| - function callback(jsonResult)
|
| + function compareSizeCallback(jsonResult)
|
| {
|
| - var value = JSON.parse(jsonResult.value);
|
| - if (value.screen !== originalScreenSize)
|
| - InspectorTest.addResult("Screen size not restored, actual: " + value.screen + ", expected: " + originalScreenSize);
|
| - else
|
| - InspectorTest.addResult("Screen size same as original - OK");
|
| - step8();
|
| + // Check that the screen size reported is the same as the original one.
|
| + var result = JSON.parse(jsonResult.value);
|
| + if (result.screen !== originalScreenSize)
|
| + InspectorTest.addResult("Original size " + originalScreenSize + " not restored, found: " + result.screen);
|
| + InspectorTest.completeTest();
|
| }
|
|
|
| - InspectorTest.addResult("Disable PageAgent:");
|
| - PageAgent.disable();
|
| - InspectorTest.evaluateInPage("getSizes()", callback);
|
| - }
|
| -
|
| - function step8()
|
| - {
|
| - function callback(jsonResult)
|
| + function overrideCallback()
|
| {
|
| - var value = JSON.parse(jsonResult.value);
|
| - if (value.screen !== originalScreenSize)
|
| - InspectorTest.addResult("Screen size not restored, actual: " + value.screen + ", expected: " + originalScreenSize);
|
| - else
|
| - InspectorTest.addResult("Screen size same as original - OK");
|
| - InspectorTest.completeTest();
|
| + InspectorTest.evaluateInPage("getSizes()", compareSizeCallback);
|
| }
|
|
|
| - InspectorTest.addResult("Enable PageAgent:");
|
| - PageAgent.enable();
|
| - InspectorTest.evaluateInPage("getSizes()", callback);
|
| + // Disable overrides.
|
| + applyOverride(0, 0, overrideCallback);
|
| }
|
|
|
| function applyOverride(width, height, userCallback)
|
| {
|
| - function callback(error)
|
| + function callback(reload, error)
|
| {
|
| if (error)
|
| InspectorTest.addResult("Override: " + width + "x" + height + " => ERROR");
|
| - userCallback();
|
| + if (reload && !error) {
|
| + InspectorTest.reloadPage(userCallback);
|
| + } else {
|
| + userCallback();
|
| + }
|
| }
|
| - PageAgent.setDeviceMetricsOverride(width, height, 1, true, callback);
|
| +
|
| + var enabled = width != 0 || height != 0;
|
| + PageAgent.setDeviceMetricsOverride(width, height, 1, true, callback.bind(null, enabled != overridesEnabled));
|
| + overridesEnabled = enabled;
|
| }
|
|
|
| function overrideAndDumpData(width, height, callback)
|
|
|