| OLD | NEW |
| 1 <html> | 1 <html> |
| 2 <head> | 2 <head> |
| 3 | 3 |
| 4 <style type="text/css" media="screen"> | 4 <style type="text/css" media="screen"> |
| 5 @media (max-device-width: 478px) and (max-device-height: 959px) { | 5 @media (max-device-width: 478px) and (max-device-height: 799px) { |
| 6 #main { background: red; } | 6 #main { background: red; } |
| 7 } | 7 } |
| 8 | 8 |
| 9 @media (max-device-width: 480px) and (max-device-height: 960px) { | 9 @media (max-device-width: 480px) and (max-device-height: 800px) { |
| 10 #main { background: green; } | 10 #main { background: green; } |
| 11 } | 11 } |
| 12 | 12 |
| 13 @media (min-device-width: 481px) and (min-device-height: 961px) { | 13 @media (min-device-width: 481px) and (min-device-height: 801px) { |
| 14 #main { background: yellow; } | 14 #main { background: yellow; } |
| 15 } | 15 } |
| 16 | 16 |
| 17 body { | 17 body { |
| 18 position: absolute; | 18 position: absolute; |
| 19 top: 0; | 19 top: 0; |
| 20 right: 0; | 20 right: 0; |
| 21 bottom: 0; | 21 bottom: 0; |
| 22 left: 0; | 22 left: 0; |
| 23 margin: 0; | 23 margin: 0; |
| (...skipping 11 matching lines...) Expand all Loading... |
| 35 return JSON.stringify({ | 35 return JSON.stringify({ |
| 36 screen: window.screen.width + "x" + window.screen.height, | 36 screen: window.screen.width + "x" + window.screen.height, |
| 37 inner: window.innerWidth + "x" + window.innerHeight, | 37 inner: window.innerWidth + "x" + window.innerHeight, |
| 38 body: document.body.offsetWidth + "x" + document.body.offsetHeight | 38 body: document.body.offsetWidth + "x" + document.body.offsetHeight |
| 39 }); | 39 }); |
| 40 } | 40 } |
| 41 | 41 |
| 42 function test() | 42 function test() |
| 43 { | 43 { |
| 44 var exceededDimension = 10000001; | 44 var exceededDimension = 10000001; |
| 45 var overridesEnabled = false; |
| 45 var originalScreenSize; | 46 var originalScreenSize; |
| 46 | 47 |
| 47 function saveSizeCallback(jsonResult) | 48 function saveSizeCallback(jsonResult) |
| 48 { | 49 { |
| 49 var value = JSON.parse(jsonResult.value); | 50 var value = JSON.parse(jsonResult.value); |
| 50 originalScreenSize = value.screen; | 51 originalScreenSize = value.screen; |
| 51 if (!originalScreenSize || originalScreenSize.indexOf("x") === -1) | 52 if (!originalScreenSize || originalScreenSize.indexOf("x") === -1) |
| 52 InspectorTest.addResult("Invalid original screen size: " + originalS
creenSize + ". Expect runtime failures later on."); | 53 InspectorTest.addResult("Invalid original screen size: " + originalS
creenSize + ". Expect runtime failures later on."); |
| 53 | 54 |
| 54 InspectorTest.selectNodeAndWaitForStyles("main", step0); | 55 InspectorTest.selectNodeAndWaitForStyles("main", step0); |
| 55 } | 56 } |
| 56 | 57 |
| 57 InspectorTest.evaluateInPage("getSizes()", saveSizeCallback); | 58 InspectorTest.evaluateInPage("getSizes()", saveSizeCallback); |
| 58 | 59 |
| 59 | 60 |
| 60 function step0() | 61 function step0() |
| 61 { | 62 { |
| 62 overrideAndDumpData(480, 800, step1); | 63 overrideAndDumpData(480, 800, step1); |
| 63 } | 64 } |
| 64 | 65 |
| 65 function step1() | 66 function step1() |
| 66 { | 67 { |
| 68 overrideAndDumpData(800, 480, step2); |
| 69 } |
| 70 |
| 71 function step2() |
| 72 { |
| 73 applyOverride(exceededDimension, 800, step3); |
| 74 } |
| 75 |
| 76 function step3() |
| 77 { |
| 78 applyOverride(-1, 800, step4); |
| 79 } |
| 80 |
| 81 function step4() |
| 82 { |
| 83 applyOverride(480, exceededDimension, step5); |
| 84 } |
| 85 |
| 86 function step5() |
| 87 { |
| 88 function callback() |
| 89 { |
| 90 InspectorTest.addResult("Current dimensions:"); |
| 91 getAndDumpSizes(step6); |
| 92 } |
| 93 applyOverride(480, -1, callback); |
| 94 } |
| 95 |
| 96 function step6() |
| 97 { |
| 67 function compareSizeCallback(jsonResult) | 98 function compareSizeCallback(jsonResult) |
| 68 { | 99 { |
| 69 // Check that the screen size reported is the same as the original o
ne. | 100 // Check that the screen size reported is the same as the original o
ne. |
| 70 var result = JSON.parse(jsonResult.value); | 101 var result = JSON.parse(jsonResult.value); |
| 71 if (result.screen !== originalScreenSize) | 102 if (result.screen !== originalScreenSize) |
| 72 InspectorTest.addResult("Original size " + originalScreenSize +
" not restored, found: " + result.screen); | 103 InspectorTest.addResult("Original size " + originalScreenSize +
" not restored, found: " + result.screen); |
| 73 step2(); | 104 InspectorTest.completeTest(); |
| 74 } | 105 } |
| 75 | 106 |
| 76 function overrideCallback() | 107 function overrideCallback() |
| 77 { | 108 { |
| 78 InspectorTest.evaluateInPage("getSizes()", compareSizeCallback); | 109 InspectorTest.evaluateInPage("getSizes()", compareSizeCallback); |
| 79 } | 110 } |
| 80 | 111 |
| 81 // Disable overrides. | 112 // Disable overrides. |
| 82 PageAgent.setDeviceMetricsOverride(0, 0, 1, true, overrideCallback); | 113 applyOverride(0, 0, overrideCallback); |
| 83 } | |
| 84 | |
| 85 function step2() | |
| 86 { | |
| 87 overrideAndDumpData(800, 480, step3); | |
| 88 } | |
| 89 | |
| 90 function step3() | |
| 91 { | |
| 92 applyOverride(exceededDimension, 800, step4); | |
| 93 } | |
| 94 | |
| 95 function step4() | |
| 96 { | |
| 97 applyOverride(-1, 800, step5); | |
| 98 } | |
| 99 | |
| 100 function step5() | |
| 101 { | |
| 102 applyOverride(480, exceededDimension, step6); | |
| 103 } | |
| 104 | |
| 105 function step6() | |
| 106 { | |
| 107 function callback() | |
| 108 { | |
| 109 InspectorTest.addResult("Current dimensions:"); | |
| 110 getAndDumpSizes(step7); | |
| 111 } | |
| 112 applyOverride(480, -1, callback); | |
| 113 } | |
| 114 | |
| 115 function step7() | |
| 116 { | |
| 117 function callback(jsonResult) | |
| 118 { | |
| 119 var value = JSON.parse(jsonResult.value); | |
| 120 if (value.screen !== originalScreenSize) | |
| 121 InspectorTest.addResult("Screen size not restored, actual: " + v
alue.screen + ", expected: " + originalScreenSize); | |
| 122 else | |
| 123 InspectorTest.addResult("Screen size same as original - OK"); | |
| 124 step8(); | |
| 125 } | |
| 126 | |
| 127 InspectorTest.addResult("Disable PageAgent:"); | |
| 128 PageAgent.disable(); | |
| 129 InspectorTest.evaluateInPage("getSizes()", callback); | |
| 130 } | |
| 131 | |
| 132 function step8() | |
| 133 { | |
| 134 function callback(jsonResult) | |
| 135 { | |
| 136 var value = JSON.parse(jsonResult.value); | |
| 137 if (value.screen !== originalScreenSize) | |
| 138 InspectorTest.addResult("Screen size not restored, actual: " + v
alue.screen + ", expected: " + originalScreenSize); | |
| 139 else | |
| 140 InspectorTest.addResult("Screen size same as original - OK"); | |
| 141 InspectorTest.completeTest(); | |
| 142 } | |
| 143 | |
| 144 InspectorTest.addResult("Enable PageAgent:"); | |
| 145 PageAgent.enable(); | |
| 146 InspectorTest.evaluateInPage("getSizes()", callback); | |
| 147 } | 114 } |
| 148 | 115 |
| 149 function applyOverride(width, height, userCallback) | 116 function applyOverride(width, height, userCallback) |
| 150 { | 117 { |
| 151 function callback(error) | 118 function callback(reload, error) |
| 152 { | 119 { |
| 153 if (error) | 120 if (error) |
| 154 InspectorTest.addResult("Override: " + width + "x" + height + "
=> ERROR"); | 121 InspectorTest.addResult("Override: " + width + "x" + height + "
=> ERROR"); |
| 155 userCallback(); | 122 if (reload && !error) { |
| 123 InspectorTest.reloadPage(userCallback); |
| 124 } else { |
| 125 userCallback(); |
| 126 } |
| 156 } | 127 } |
| 157 PageAgent.setDeviceMetricsOverride(width, height, 1, true, callback); | 128 |
| 129 var enabled = width != 0 || height != 0; |
| 130 PageAgent.setDeviceMetricsOverride(width, height, 1, true, callback.bind
(null, enabled != overridesEnabled)); |
| 131 overridesEnabled = enabled; |
| 158 } | 132 } |
| 159 | 133 |
| 160 function overrideAndDumpData(width, height, callback) | 134 function overrideAndDumpData(width, height, callback) |
| 161 { | 135 { |
| 162 function finalCallback() | 136 function finalCallback() |
| 163 { | 137 { |
| 164 InspectorTest.addResult("Main style:"); | 138 InspectorTest.addResult("Main style:"); |
| 165 InspectorTest.dumpSelectedElementStyles(true, false, true); | 139 InspectorTest.dumpSelectedElementStyles(true, false, true); |
| 166 callback(); | 140 callback(); |
| 167 } | 141 } |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 211 </head> | 185 </head> |
| 212 | 186 |
| 213 <body onload="runTest()"> | 187 <body onload="runTest()"> |
| 214 <p> | 188 <p> |
| 215 Tests that screen dimension overrides affect media rules, body dimensions, and w
indow.screen. | 189 Tests that screen dimension overrides affect media rules, body dimensions, and w
indow.screen. |
| 216 </p> | 190 </p> |
| 217 | 191 |
| 218 <div id="main"></div> | 192 <div id="main"></div> |
| 219 </body> | 193 </body> |
| 220 </html> | 194 </html> |
| OLD | NEW |