diff options
Diffstat (limited to '')
92 files changed, 868 insertions, 0 deletions
diff --git a/layout/reftests/native-theme/427122-1-ref.html b/layout/reftests/native-theme/427122-1-ref.html new file mode 100644 index 0000000000..0aa35f7167 --- /dev/null +++ b/layout/reftests/native-theme/427122-1-ref.html @@ -0,0 +1,17 @@ +<!DOCTYPE HTML> +<html> +<style> +div { + border: 1px solid black; +} + +select { +} +</style> +<body> + +<div><select><option>Hello</option></select></div> + +</body> + +</html> diff --git a/layout/reftests/native-theme/427122-1.html b/layout/reftests/native-theme/427122-1.html new file mode 100644 index 0000000000..8e1f547506 --- /dev/null +++ b/layout/reftests/native-theme/427122-1.html @@ -0,0 +1,18 @@ +<!DOCTYPE HTML> +<html> +<style> +div { + border: 1px solid black; +} + +select { + padding: 10px; +} +</style> +<body> + +<div><select><option>Hello</option></select></div> + +</body> + +</html> diff --git a/layout/reftests/native-theme/470711-1-ref.xhtml b/layout/reftests/native-theme/470711-1-ref.xhtml new file mode 100644 index 0000000000..a13bfda39a --- /dev/null +++ b/layout/reftests/native-theme/470711-1-ref.xhtml @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> + +<window id="window470711" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <tabbox> + <tabs> + <tab label="One"/> + <tab label="Two" style="padding: 0"/> + </tabs> + <tabpanels> + <label value="One"/> + <label value="Two"/> + </tabpanels> + </tabbox> +</window> diff --git a/layout/reftests/native-theme/470711-1.xhtml b/layout/reftests/native-theme/470711-1.xhtml new file mode 100644 index 0000000000..4060e89c4f --- /dev/null +++ b/layout/reftests/native-theme/470711-1.xhtml @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> + +<window id="window470711" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <tabbox> + <tabs> + <tab label="One"/> + <tab label="Two" style="padding: 0"/> + <tab label="Three" style="display: none"/> + </tabs> + <tabpanels> + <label value="One"/> + <label value="Two"/> + <label value="Three"/> + </tabpanels> + </tabbox> +</window> diff --git a/layout/reftests/native-theme/482955-1-ref.xhtml b/layout/reftests/native-theme/482955-1-ref.xhtml new file mode 100644 index 0000000000..38404e1985 --- /dev/null +++ b/layout/reftests/native-theme/482955-1-ref.xhtml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <hbox style="-moz-appearance: textfield;"> + <spacer style="padding: 50px;"/> + </hbox> + </hbox> +</window> diff --git a/layout/reftests/native-theme/482955-1.xhtml b/layout/reftests/native-theme/482955-1.xhtml new file mode 100644 index 0000000000..5235172e31 --- /dev/null +++ b/layout/reftests/native-theme/482955-1.xhtml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <hbox flex="1" style="-moz-appearance: textfield;"> + <spacer style="padding: 50px;"/> + </hbox> + <spacer width="10000" flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/492155-1.html b/layout/reftests/native-theme/492155-1.html new file mode 100644 index 0000000000..161a27ce88 --- /dev/null +++ b/layout/reftests/native-theme/492155-1.html @@ -0,0 +1,7 @@ +<!DOCTYPE html> +<div style="width: 200px; height: 200px; margin: 50px; -moz-transform: rotate(90deg); position: relative;"> + <div style="height: 200px; overflow: auto;"> + <div style="height: 400px;"></div> + </div> + <div style="position: absolute; top: -2px; right: -2px; bottom: -2px; width: 50px; background: white;"></div> +</div> diff --git a/layout/reftests/native-theme/492155-2.html b/layout/reftests/native-theme/492155-2.html new file mode 100644 index 0000000000..692f90b192 --- /dev/null +++ b/layout/reftests/native-theme/492155-2.html @@ -0,0 +1,7 @@ +<!DOCTYPE html> +<div style="width: 200px; height: 200px; margin: 50px; -moz-transform: scale(0.5); position: relative;"> + <div style="height: 200px; overflow: auto;"> + <div style="height: 400px;"></div> + </div> + <div style="position: absolute; top: -2px; right: -2px; bottom: -2px; width: 50px; background: white;"></div> +</div> diff --git a/layout/reftests/native-theme/492155-3.html b/layout/reftests/native-theme/492155-3.html new file mode 100644 index 0000000000..7424e7a744 --- /dev/null +++ b/layout/reftests/native-theme/492155-3.html @@ -0,0 +1,7 @@ +<!DOCTYPE html> +<div style="width: 200px; height: 200px; margin: 50px; -moz-transform: skewY(30deg); position: relative;"> + <div style="height: 200px; overflow: auto;"> + <div style="height: 400px;"></div> + </div> + <div style="position: absolute; top: -2px; right: -2px; bottom: -2px; width: 50px; background: white;"></div> +</div> diff --git a/layout/reftests/native-theme/492155-4.html b/layout/reftests/native-theme/492155-4.html new file mode 100644 index 0000000000..491eb62fc0 --- /dev/null +++ b/layout/reftests/native-theme/492155-4.html @@ -0,0 +1,10 @@ +<!DOCTYPE html> +<html style="height: 100%;"><body style="height: 100%; margin: 0;"> +<div style="height: 50%"></div> + +<div style="width: 200px; height: 200px; -moz-transform: scale(-1); position: relative;"> + <div style="height: 200px; overflow: auto;"> + <div style="height: 400px;"></div> + </div> +</div> +</div> diff --git a/layout/reftests/native-theme/676387-1-ref.xhtml b/layout/reftests/native-theme/676387-1-ref.xhtml new file mode 100644 index 0000000000..46c4d8f05a --- /dev/null +++ b/layout/reftests/native-theme/676387-1-ref.xhtml @@ -0,0 +1,6 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> +<window id="window676387-1-ref" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox><button id="button" label="SUCCESS"/></hbox> +</window> diff --git a/layout/reftests/native-theme/676387-1.xhtml b/layout/reftests/native-theme/676387-1.xhtml new file mode 100644 index 0000000000..208345ed68 --- /dev/null +++ b/layout/reftests/native-theme/676387-1.xhtml @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> +<window id="window676387-1" + class="reftest-wait" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + onload="var button = document.getElementById('button'); + var r = button.getBoundingClientRect(); + if (document.elementFromPoint(r.right, r.top) == button.parentNode) + button.label = 'SUCCESS'; + document.documentElement.className = '';"> + <hbox><button id="button" label="FAIL"/></hbox> +</window> diff --git a/layout/reftests/native-theme/blank-window.xhtml b/layout/reftests/native-theme/blank-window.xhtml new file mode 100644 index 0000000000..ad5e963b79 --- /dev/null +++ b/layout/reftests/native-theme/blank-window.xhtml @@ -0,0 +1,5 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Blank window" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"/> diff --git a/layout/reftests/native-theme/border-radius-ref.html b/layout/reftests/native-theme/border-radius-ref.html new file mode 100644 index 0000000000..908f9515d8 --- /dev/null +++ b/layout/reftests/native-theme/border-radius-ref.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML>
+<html>
+<body>
+<div style="padding:50px; border-radius:50px; width:400px; height:400px;">
+ <input type="radio">
+ <input type="checkbox">
+</div>
+</body>
+</html>
diff --git a/layout/reftests/native-theme/border-radius.html b/layout/reftests/native-theme/border-radius.html new file mode 100644 index 0000000000..43ed396459 --- /dev/null +++ b/layout/reftests/native-theme/border-radius.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML> +<html> +<body> +<div style="padding:50px; border-radius:50px; width:400px; height:400px; overflow:hidden;"> + <input type="radio"> + <input type="checkbox"> +</div> +</body> +</html> diff --git a/layout/reftests/native-theme/box-shadow-button-ref.html b/layout/reftests/native-theme/box-shadow-button-ref.html new file mode 100644 index 0000000000..87957a974f --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-button-ref.html @@ -0,0 +1 @@ +<button>Hello</button> diff --git a/layout/reftests/native-theme/box-shadow-button.html b/layout/reftests/native-theme/box-shadow-button.html new file mode 100644 index 0000000000..f87dbb5f22 --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-button.html @@ -0,0 +1 @@ +<button style="box-shadow: 10px 10px gold;">Hello</button> diff --git a/layout/reftests/native-theme/box-shadow-combobox-ref.html b/layout/reftests/native-theme/box-shadow-combobox-ref.html new file mode 100644 index 0000000000..8f93c10fba --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-combobox-ref.html @@ -0,0 +1,4 @@ +<select size="1"> + <option>Hello</option> + <option>Kitty</option> +</select> diff --git a/layout/reftests/native-theme/box-shadow-combobox.html b/layout/reftests/native-theme/box-shadow-combobox.html new file mode 100644 index 0000000000..009099af42 --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-combobox.html @@ -0,0 +1,4 @@ +<select size="1" style="box-shadow: 10px 10px gold;"> + <option>Hello</option> + <option>Kitty</option> +</select> diff --git a/layout/reftests/native-theme/box-shadow-input-ref.html b/layout/reftests/native-theme/box-shadow-input-ref.html new file mode 100644 index 0000000000..347c7681ae --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-input-ref.html @@ -0,0 +1 @@ +<input> diff --git a/layout/reftests/native-theme/box-shadow-input.html b/layout/reftests/native-theme/box-shadow-input.html new file mode 100644 index 0000000000..fbdd76003f --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-input.html @@ -0,0 +1 @@ +<input style="box-shadow: 10px 10px gold;"> diff --git a/layout/reftests/native-theme/box-shadow-listbox-ref.html b/layout/reftests/native-theme/box-shadow-listbox-ref.html new file mode 100644 index 0000000000..437cbd1c1e --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-listbox-ref.html @@ -0,0 +1,4 @@ +<select size="2"> + <option>Hello</option> + <option>Kitty</option> +</select> diff --git a/layout/reftests/native-theme/box-shadow-listbox.html b/layout/reftests/native-theme/box-shadow-listbox.html new file mode 100644 index 0000000000..d70fa5eeba --- /dev/null +++ b/layout/reftests/native-theme/box-shadow-listbox.html @@ -0,0 +1,4 @@ +<select size="2" style="box-shadow: 10px 10px gold;"> + <option>Hello</option> + <option>Kitty</option> +</select> diff --git a/layout/reftests/native-theme/button-html-not-blank.html b/layout/reftests/native-theme/button-html-not-blank.html new file mode 100644 index 0000000000..e6c324fc68 --- /dev/null +++ b/layout/reftests/native-theme/button-html-not-blank.html @@ -0,0 +1 @@ +<button></button> diff --git a/layout/reftests/native-theme/button-native.html b/layout/reftests/native-theme/button-native.html new file mode 100644 index 0000000000..852ede890b --- /dev/null +++ b/layout/reftests/native-theme/button-native.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="button" value="Button"> diff --git a/layout/reftests/native-theme/button-nonnative-when-styled-ref.html b/layout/reftests/native-theme/button-nonnative-when-styled-ref.html new file mode 100644 index 0000000000..a3d4271c04 --- /dev/null +++ b/layout/reftests/native-theme/button-nonnative-when-styled-ref.html @@ -0,0 +1,17 @@ +<!DOCTYPE HTML> +<!-- these should make the input non-native --> +<input type="button" value="Button" style="-moz-appearance: none; border-width: 0"> +<input type="button" value="Button" style="-moz-appearance: none; border-width: 1px"> +<input type="button" value="Button" style="-moz-appearance: none; border-width: 2px"> +<input type="button" value="Button" style="-moz-appearance: none; border-width: 3px"> +<input type="button" value="Button" style="-moz-appearance: none; border-width: 4px"> +<input type="button" value="Button" style="-moz-appearance: none; border-width: 5px"> +<input type="button" value="Button" style="-moz-appearance: none; border-width: 6px"> +<input type="button" value="Button" style="-moz-appearance: none; border-style: dotted"> +<input type="button" value="Button" style="-moz-appearance: none; border-color: green"> +<input type="button" value="Button" style="-moz-appearance: none; background-color: transparent"> +<input type="button" value="Button" style="-moz-appearance: none; background-color: white"> + +<!-- these should let it stay native --> +<input type="button" value=""> +<input type="button" value=""> diff --git a/layout/reftests/native-theme/button-nonnative-when-styled.html b/layout/reftests/native-theme/button-nonnative-when-styled.html new file mode 100644 index 0000000000..311a43daad --- /dev/null +++ b/layout/reftests/native-theme/button-nonnative-when-styled.html @@ -0,0 +1,17 @@ +<!DOCTYPE HTML> +<!-- these should make the input non-native --> +<input type="button" value="Button" style="border-width: 0"> +<input type="button" value="Button" style="border-width: 1px"> +<input type="button" value="Button" style="border-width: 2px"> +<input type="button" value="Button" style="border-width: 3px"> +<input type="button" value="Button" style="border-width: 4px"> +<input type="button" value="Button" style="border-width: 5px"> +<input type="button" value="Button" style="border-width: 6px"> +<input type="button" value="Button" style="border-style: dotted"> +<input type="button" value="Button" style="border-color: green"> +<input type="button" value="Button" style="background-color: transparent"> +<input type="button" value="Button" style="background-color: white"> + +<!-- these should let it stay native --> +<input type="button" value="" style="color: black"> +<input type="button" value="" style="font-weight: normal"> diff --git a/layout/reftests/native-theme/button-nonnative.html b/layout/reftests/native-theme/button-nonnative.html new file mode 100644 index 0000000000..fde9523b4b --- /dev/null +++ b/layout/reftests/native-theme/button-nonnative.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="button" value="Button" style="-moz-appearance: none"> diff --git a/layout/reftests/native-theme/button-not-blank.html b/layout/reftests/native-theme/button-not-blank.html new file mode 100644 index 0000000000..95baf49c6f --- /dev/null +++ b/layout/reftests/native-theme/button-not-blank.html @@ -0,0 +1 @@ +<input type="button"> diff --git a/layout/reftests/native-theme/checkbox-dynamic-1-ref.html b/layout/reftests/native-theme/checkbox-dynamic-1-ref.html new file mode 100644 index 0000000000..57ca0ff68c --- /dev/null +++ b/layout/reftests/native-theme/checkbox-dynamic-1-ref.html @@ -0,0 +1,18 @@ +<!DOCTYPE html> +<html> +<head> + <style> + #checkbox { + position: absolute; + left: 0px; + top: 0px; + background: linear-gradient(to right, white, brown); + } + </style> +</head> +<body> + <div id="checkbox"> + <input type="checkbox"> + </div> +</body> +</html> diff --git a/layout/reftests/native-theme/checkbox-dynamic-1.html b/layout/reftests/native-theme/checkbox-dynamic-1.html new file mode 100644 index 0000000000..582c6cc1c3 --- /dev/null +++ b/layout/reftests/native-theme/checkbox-dynamic-1.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html class="reftest-wait"> +<head> + <style> + #checkbox { + position: absolute; + left: 0px; + top: 0px; + background: linear-gradient(to right, white, brown); + } + #toremove { + position: absolute; + left: 0px; + top: 0px; + width: 100px; + height: 0px; + background: black; + } + </style> +</head> +<body> + <div id="checkbox"> + <input type="checkbox"> + </div> + <div id="toremove"> + </div> +</body> +<script type="text/javascript"> + var checkBox = document.getElementById("checkbox"); + var toRemove = document.getElementById("toremove"); + toRemove.style.height = checkBox.offsetHeight / 2 + 0.2 + "px"; + function boom() + { + toRemove.remove(); + document.documentElement.className = ""; + } + window.addEventListener("MozReftestInvalidate", boom); +</script> +</html> diff --git a/layout/reftests/native-theme/checkbox-native.html b/layout/reftests/native-theme/checkbox-native.html new file mode 100644 index 0000000000..e067ca405b --- /dev/null +++ b/layout/reftests/native-theme/checkbox-native.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="checkbox"> diff --git a/layout/reftests/native-theme/checkbox-nonnative.html b/layout/reftests/native-theme/checkbox-nonnative.html new file mode 100644 index 0000000000..3c0c11455a --- /dev/null +++ b/layout/reftests/native-theme/checkbox-nonnative.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="checkbox" style="-moz-appearance: none"> diff --git a/layout/reftests/native-theme/checkbox-not-blank.html b/layout/reftests/native-theme/checkbox-not-blank.html new file mode 100644 index 0000000000..74c06d2536 --- /dev/null +++ b/layout/reftests/native-theme/checkbox-not-blank.html @@ -0,0 +1 @@ +<input type="checkbox"> diff --git a/layout/reftests/native-theme/checkbox-not-mirrored-when-rtl-ref.html b/layout/reftests/native-theme/checkbox-not-mirrored-when-rtl-ref.html new file mode 100644 index 0000000000..801569d37d --- /dev/null +++ b/layout/reftests/native-theme/checkbox-not-mirrored-when-rtl-ref.html @@ -0,0 +1,2 @@ +<!DOCTYPE html> +<input type="checkbox" checked="checked" style="margin:3px"> diff --git a/layout/reftests/native-theme/checkbox-not-mirrored-when-rtl.html b/layout/reftests/native-theme/checkbox-not-mirrored-when-rtl.html new file mode 100644 index 0000000000..9221953df2 --- /dev/null +++ b/layout/reftests/native-theme/checkbox-not-mirrored-when-rtl.html @@ -0,0 +1,2 @@ +<!DOCTYPE html> +<input type="checkbox" checked="checked" dir="rtl" style="margin:3px"> diff --git a/layout/reftests/native-theme/checkbox-still-native-when-styled-ref.html b/layout/reftests/native-theme/checkbox-still-native-when-styled-ref.html new file mode 100644 index 0000000000..064888b295 --- /dev/null +++ b/layout/reftests/native-theme/checkbox-still-native-when-styled-ref.html @@ -0,0 +1,14 @@ +<!DOCTYPE HTML> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> +<input type="checkbox"> diff --git a/layout/reftests/native-theme/checkbox-still-native-when-styled.html b/layout/reftests/native-theme/checkbox-still-native-when-styled.html new file mode 100644 index 0000000000..84a49f48e9 --- /dev/null +++ b/layout/reftests/native-theme/checkbox-still-native-when-styled.html @@ -0,0 +1,14 @@ +<!DOCTYPE HTML> +<input type="checkbox" style="border-width: 0"> +<input type="checkbox" style="border-width: 1px"> +<input type="checkbox" style="border-width: 2px"> +<input type="checkbox" style="border-width: 3px"> +<input type="checkbox" style="border-width: 4px"> +<input type="checkbox" style="border-width: 5px"> +<input type="checkbox" style="border-width: 6px"> +<input type="checkbox" style="border-style: dotted"> +<input type="checkbox" style="border-color: green"> +<input type="checkbox" style="background-color: transparent"> +<input type="checkbox" style="background-color: white"> +<input type="checkbox" style="color: black"> +<input type="checkbox" style="font-weight: normal"> diff --git a/layout/reftests/native-theme/combobox-native.html b/layout/reftests/native-theme/combobox-native.html new file mode 100644 index 0000000000..2aa54c8855 --- /dev/null +++ b/layout/reftests/native-theme/combobox-native.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<select size="1"></select> diff --git a/layout/reftests/native-theme/combobox-nonnative-when-styled-ref.html b/layout/reftests/native-theme/combobox-nonnative-when-styled-ref.html new file mode 100644 index 0000000000..b374af4fa9 --- /dev/null +++ b/layout/reftests/native-theme/combobox-nonnative-when-styled-ref.html @@ -0,0 +1,24 @@ +<!DOCTYPE HTML> +<style> + select { inline-size: 2.5em } +</style> +<div style="position:relative"> +<!-- mask the dropdown button --> +<div style="position:absolute; width:50px; left:7px; top:0; bottom:0; background:black;"></div> +<!-- these should make the select non-native --> +<select size="1" style="-moz-appearance: none; border-width: 0"></select><br> +<select size="1" style="-moz-appearance: none; border-width: 1px"></select><br> +<select size="1" style="-moz-appearance: none; border-width: 2px"></select><br> +<select size="1" style="-moz-appearance: none; border-width: 3px"></select><br> +<select size="1" style="-moz-appearance: none; border-width: 4px"></select><br> +<select size="1" style="-moz-appearance: none; border-width: 5px"></select><br> +<select size="1" style="-moz-appearance: none; border-width: 6px"></select><br> +<select size="1" style="-moz-appearance: none; border-style: dotted"></select><br> +<select size="1" style="-moz-appearance: none; border-color: green"></select><br> +<select size="1" style="-moz-appearance: none; background-color: transparent"></select><br> +<select size="1" style="-moz-appearance: none; background-color: white"></select><br> +</div> + +<!-- these should let it stay native --> +<select size="1"></select> +<select size="1"></select> diff --git a/layout/reftests/native-theme/combobox-nonnative-when-styled.html b/layout/reftests/native-theme/combobox-nonnative-when-styled.html new file mode 100644 index 0000000000..d111075616 --- /dev/null +++ b/layout/reftests/native-theme/combobox-nonnative-when-styled.html @@ -0,0 +1,24 @@ +<!DOCTYPE HTML> +<style> + select { inline-size: 2.5em } +</style> +<div style="position:relative"> +<!-- mask the dropdown button --> +<div style="position:absolute; width:50px; left:7px; top:0; bottom:0; background:black;"></div> +<!-- these should make the select non-native --> +<select size="1" style="border-width: 0"></select><br> +<select size="1" style="border-width: 1px"></select><br> +<select size="1" style="border-width: 2px"></select><br> +<select size="1" style="border-width: 3px"></select><br> +<select size="1" style="border-width: 4px"></select><br> +<select size="1" style="border-width: 5px"></select><br> +<select size="1" style="border-width: 6px"></select><br> +<select size="1" style="border-style: dotted"></select><br> +<select size="1" style="border-color: green"></select><br> +<select size="1" style="background-color: transparent"></select><br> +<select size="1" style="background-color: white"></select><br> +</div> + +<!-- these should let it stay native --> +<select size="1" style="color: black"></select> +<select size="1" style="font-weight: normal"></select> diff --git a/layout/reftests/native-theme/combobox-nonnative.html b/layout/reftests/native-theme/combobox-nonnative.html new file mode 100644 index 0000000000..6683cdbe07 --- /dev/null +++ b/layout/reftests/native-theme/combobox-nonnative.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<select size="1" style="-moz-appearance: none"></select> diff --git a/layout/reftests/native-theme/combobox-not-blank.html b/layout/reftests/native-theme/combobox-not-blank.html new file mode 100644 index 0000000000..19c00bb60d --- /dev/null +++ b/layout/reftests/native-theme/combobox-not-blank.html @@ -0,0 +1 @@ +<select size="1"></select> diff --git a/layout/reftests/native-theme/fieldset-not-blank.html b/layout/reftests/native-theme/fieldset-not-blank.html new file mode 100644 index 0000000000..8c2da9831f --- /dev/null +++ b/layout/reftests/native-theme/fieldset-not-blank.html @@ -0,0 +1 @@ +<fieldset></fieldset> diff --git a/layout/reftests/native-theme/file-not-blank.html b/layout/reftests/native-theme/file-not-blank.html new file mode 100644 index 0000000000..c8bc13153e --- /dev/null +++ b/layout/reftests/native-theme/file-not-blank.html @@ -0,0 +1 @@ +<input type="file"> diff --git a/layout/reftests/native-theme/listbox-native.html b/layout/reftests/native-theme/listbox-native.html new file mode 100644 index 0000000000..d5b29a4f6c --- /dev/null +++ b/layout/reftests/native-theme/listbox-native.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<select size="3"></select> diff --git a/layout/reftests/native-theme/listbox-nonnative-when-styled-ref.html b/layout/reftests/native-theme/listbox-nonnative-when-styled-ref.html new file mode 100644 index 0000000000..b70a260731 --- /dev/null +++ b/layout/reftests/native-theme/listbox-nonnative-when-styled-ref.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML> +<!-- these should make the select non-native --> +<body onload="dump('\nDEBUG-bug660226: ' + document.activeElement + '\n\n');"> +<select size="3" style="-moz-appearance: none; border-width: 0"></select> +<select size="3" style="-moz-appearance: none; border-width: 1px"></select> +<select size="3" style="-moz-appearance: none; border-width: 2px"></select> +<select size="3" style="-moz-appearance: none; border-width: 3px"></select> +<select size="3" style="-moz-appearance: none; border-width: 4px"></select> +<select size="3" style="-moz-appearance: none; border-width: 5px"></select> +<select size="3" style="-moz-appearance: none; border-width: 6px"></select> +<select size="3" style="-moz-appearance: none; border-style: dotted"></select> +<select size="3" style="-moz-appearance: none; border-color: green"></select> +<select size="3" style="-moz-appearance: none; background-color: transparent"></select> +<select size="3" style="-moz-appearance: none; background-color: white"></select> + +<!-- these should let it stay native --> +<select size="3" style="color: black"></select> +<select size="3" style="font-weight: normal"></select> +</body> diff --git a/layout/reftests/native-theme/listbox-nonnative-when-styled.html b/layout/reftests/native-theme/listbox-nonnative-when-styled.html new file mode 100644 index 0000000000..26024bfd6b --- /dev/null +++ b/layout/reftests/native-theme/listbox-nonnative-when-styled.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML> +<body onload="dump('\nDEBUG-bug660226: ' + document.activeElement + '\n\n');"> +<!-- these should make the select non-native --> +<select size="3" style="border-width: 0"></select> +<select size="3" style="border-width: 1px"></select> +<select size="3" style="border-width: 2px"></select> +<select size="3" style="border-width: 3px"></select> +<select size="3" style="border-width: 4px"></select> +<select size="3" style="border-width: 5px"></select> +<select size="3" style="border-width: 6px"></select> +<select size="3" style="border-style: dotted"></select> +<select size="3" style="border-color: green"></select> +<select size="3" style="background-color: transparent"></select> +<select size="3" style="background-color: white"></select> + +<!-- these should let it stay native --> +<select size="3" style="color: black"></select> +<select size="3" style="font-weight: normal"></select> +</body> diff --git a/layout/reftests/native-theme/listbox-nonnative.html b/layout/reftests/native-theme/listbox-nonnative.html new file mode 100644 index 0000000000..a3f0efc59d --- /dev/null +++ b/layout/reftests/native-theme/listbox-nonnative.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<select size="3" style="-moz-appearance: none"></select> diff --git a/layout/reftests/native-theme/listbox-not-blank.html b/layout/reftests/native-theme/listbox-not-blank.html new file mode 100644 index 0000000000..05dbce8670 --- /dev/null +++ b/layout/reftests/native-theme/listbox-not-blank.html @@ -0,0 +1 @@ +<select size="3"></select> diff --git a/layout/reftests/native-theme/menulist-mirrored-when-rtl-ref.xhtml b/layout/reftests/native-theme/menulist-mirrored-when-rtl-ref.xhtml new file mode 100644 index 0000000000..ad041f0151 --- /dev/null +++ b/layout/reftests/native-theme/menulist-mirrored-when-rtl-ref.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="mirrored menulist" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <menulist width="200" style="-moz-transform: scaleX(-1);"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/menulist-mirrored-when-rtl.xhtml b/layout/reftests/native-theme/menulist-mirrored-when-rtl.xhtml new file mode 100644 index 0000000000..ebb5023fe6 --- /dev/null +++ b/layout/reftests/native-theme/menulist-mirrored-when-rtl.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="RTL menulist" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <menulist width="200" style="direction: rtl;"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/native-theme-disabled-cascade-levels-ref.html b/layout/reftests/native-theme/native-theme-disabled-cascade-levels-ref.html new file mode 100644 index 0000000000..d6b2efccf5 --- /dev/null +++ b/layout/reftests/native-theme/native-theme-disabled-cascade-levels-ref.html @@ -0,0 +1,6 @@ +<!DOCTYPE HTML> +<input type="text" value="Themed"> +<input type="text" value="Not Themed" style="-moz-appearance: none"> +<input type="text" value="Not Themed" style="-moz-appearance: none"> +<input type="text" value="Not Themed" style="-moz-appearance: none"> +<input type="text" value="Not Themed" style="-moz-appearance: none"> diff --git a/layout/reftests/native-theme/native-theme-disabled-cascade-levels.html b/layout/reftests/native-theme/native-theme-disabled-cascade-levels.html new file mode 100644 index 0000000000..283bd7ff34 --- /dev/null +++ b/layout/reftests/native-theme/native-theme-disabled-cascade-levels.html @@ -0,0 +1,10 @@ +<!DOCTYPE HTML> +<style type="text/css"> +#four { background-image: none; } +#five { background-image: none ! important; } +</style> +<input type="text" value="Themed"> +<input type="text" value="Not Themed" style="background-image: none"> +<input type="text" value="Not Themed" style="background-image: none ! important"> +<input type="text" value="Not Themed" id="four"> +<input type="text" value="Not Themed" id="five"> diff --git a/layout/reftests/native-theme/progress-nobar.html b/layout/reftests/native-theme/progress-nobar.html new file mode 100644 index 0000000000..a485d38c9f --- /dev/null +++ b/layout/reftests/native-theme/progress-nobar.html @@ -0,0 +1,7 @@ +<!DOCTYPE html> +<html> + <body> + <div style="-moz-appearance: progressbar; width:180px; height:6px;"> + </div> + </body> +</html> diff --git a/layout/reftests/native-theme/progress-overflow-ref.html b/layout/reftests/native-theme/progress-overflow-ref.html new file mode 100644 index 0000000000..22b3dbeddc --- /dev/null +++ b/layout/reftests/native-theme/progress-overflow-ref.html @@ -0,0 +1,10 @@ +<!DOCTYPE html> +<html> + <body> + <div style="overflow: hidden; -moz-appearance: progressbar; width:180px; height:40px;"> + <div style="-moz-appearance: progresschunk; width:50%; height:100%;"> + </div> + </div> + </body> +</html> + diff --git a/layout/reftests/native-theme/progress-overflow-small.html b/layout/reftests/native-theme/progress-overflow-small.html new file mode 100644 index 0000000000..96bccb29a6 --- /dev/null +++ b/layout/reftests/native-theme/progress-overflow-small.html @@ -0,0 +1,9 @@ +<!DOCTYPE html> +<html> + <body> + <div style="-moz-appearance: progressbar; width:180px; height:6px;"> + <div style="-moz-appearance: progresschunk; width:50%; height:100%;"> + </div> + </div> + </body> +</html> diff --git a/layout/reftests/native-theme/progress-overflow.html b/layout/reftests/native-theme/progress-overflow.html new file mode 100644 index 0000000000..d5611c473b --- /dev/null +++ b/layout/reftests/native-theme/progress-overflow.html @@ -0,0 +1,9 @@ +<!DOCTYPE html> +<html> + <body> + <div style="-moz-appearance: progressbar; width:180px; height:40px;"> + <div style="-moz-appearance: progresschunk; width:50%; height:100%;"> + </div> + </div> + </body> +</html> diff --git a/layout/reftests/native-theme/radio-native.html b/layout/reftests/native-theme/radio-native.html new file mode 100644 index 0000000000..af2d497fea --- /dev/null +++ b/layout/reftests/native-theme/radio-native.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="radio"> diff --git a/layout/reftests/native-theme/radio-nonnative.html b/layout/reftests/native-theme/radio-nonnative.html new file mode 100644 index 0000000000..4c2a74b4ed --- /dev/null +++ b/layout/reftests/native-theme/radio-nonnative.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="radio" style="-moz-appearance: none"> diff --git a/layout/reftests/native-theme/radio-not-blank.html b/layout/reftests/native-theme/radio-not-blank.html new file mode 100644 index 0000000000..1fcf43ef44 --- /dev/null +++ b/layout/reftests/native-theme/radio-not-blank.html @@ -0,0 +1 @@ +<input type="radio"> diff --git a/layout/reftests/native-theme/radio-still-native-when-styled-ref.html b/layout/reftests/native-theme/radio-still-native-when-styled-ref.html new file mode 100644 index 0000000000..b8c940bdda --- /dev/null +++ b/layout/reftests/native-theme/radio-still-native-when-styled-ref.html @@ -0,0 +1,14 @@ +<!DOCTYPE HTML> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> +<input type="radio"> diff --git a/layout/reftests/native-theme/radio-still-native-when-styled.html b/layout/reftests/native-theme/radio-still-native-when-styled.html new file mode 100644 index 0000000000..a98fafcd7b --- /dev/null +++ b/layout/reftests/native-theme/radio-still-native-when-styled.html @@ -0,0 +1,14 @@ +<!DOCTYPE HTML> +<input type="radio" style="border-width: 0"> +<input type="radio" style="border-width: 1px"> +<input type="radio" style="border-width: 2px"> +<input type="radio" style="border-width: 3px"> +<input type="radio" style="border-width: 4px"> +<input type="radio" style="border-width: 5px"> +<input type="radio" style="border-width: 6px"> +<input type="radio" style="border-style: dotted"> +<input type="radio" style="border-color: green"> +<input type="radio" style="background-color: transparent"> +<input type="radio" style="background-color: white"> +<input type="radio" style="color: black"> +<input type="radio" style="font-weight: normal"> diff --git a/layout/reftests/native-theme/reftest.list b/layout/reftests/native-theme/reftest.list new file mode 100644 index 0000000000..f6e1d17bcc --- /dev/null +++ b/layout/reftests/native-theme/reftest.list @@ -0,0 +1,82 @@ +!= button-html-not-blank.html about:blank +!= button-not-blank.html about:blank +!= checkbox-not-blank.html about:blank +!= combobox-not-blank.html about:blank +!= fieldset-not-blank.html about:blank +!= file-not-blank.html about:blank +!= listbox-not-blank.html about:blank +!= radio-not-blank.html about:blank +!= text-control-not-blank.html about:blank +!= textarea-not-blank.html about:blank + +!= text-input-native.html text-input-nonnative.html +fuzzy-if(skiaContent,0-2,0-88) == text-input-nonnative-when-styled.html text-input-nonnative-when-styled-ref.html +!= textarea-native.html textarea-nonnative.html +fuzzy-if(skiaContent,0-2,0-53) == textarea-nonnative-when-styled.html textarea-nonnative-when-styled-ref.html +!= button-native.html button-nonnative.html +== button-nonnative-when-styled.html button-nonnative-when-styled-ref.html +!= combobox-native.html combobox-nonnative.html +== combobox-nonnative-when-styled.html combobox-nonnative-when-styled-ref.html +needs-focus != listbox-native.html listbox-nonnative.html +needs-focus == listbox-nonnative-when-styled.html listbox-nonnative-when-styled-ref.html +!= radio-native.html radio-nonnative.html +== radio-still-native-when-styled.html radio-still-native-when-styled-ref.html +!= checkbox-native.html checkbox-nonnative.html +== checkbox-still-native-when-styled.html checkbox-still-native-when-styled-ref.html +== native-theme-disabled-cascade-levels.html native-theme-disabled-cascade-levels-ref.html + +!= 427122-1.html 427122-1-ref.html + +== chrome://reftest/content/native-theme/470711-1.xhtml chrome://reftest/content/native-theme/470711-1-ref.xhtml + +== chrome://reftest/content/native-theme/482955-1.xhtml chrome://reftest/content/native-theme/482955-1-ref.xhtml + +== 492155-1.html about:blank +== 492155-2.html about:blank +== 492155-3.html about:blank +fails-if(Android&&!asyncPan) != 492155-4.html about:blank + +!= box-shadow-input.html box-shadow-input-ref.html +!= box-shadow-button.html box-shadow-button-ref.html +!= box-shadow-listbox.html box-shadow-listbox-ref.html +!= box-shadow-combobox.html box-shadow-combobox-ref.html + +# RTL mirroring tests +== checkbox-not-mirrored-when-rtl.html checkbox-not-mirrored-when-rtl-ref.html +skip-if(!cocoaWidget) == chrome://reftest/content/native-theme/menulist-mirrored-when-rtl.xhtml chrome://reftest/content/native-theme/menulist-mirrored-when-rtl-ref.xhtml +skip-if(!cocoaWidget||debug) == chrome://reftest/content/native-theme/searchfield-mirrored-when-rtl.xhtml chrome://reftest/content/native-theme/searchfield-mirrored-when-rtl-ref.xhtml +skip-if(!cocoaWidget) == select-mirrored-when-rtl.html select-mirrored-when-rtl-ref.html + +!= chrome://reftest/content/native-theme/resizer-bottomend.xhtml chrome://reftest/content/native-theme/blank-window.xhtml +random-if(d2d) == chrome://reftest/content/native-theme/resizer-bottomend.xhtml chrome://reftest/content/native-theme/resizer-bottomright.xhtml # bug 581086 +!= chrome://reftest/content/native-theme/resizer-bottomend.xhtml chrome://reftest/content/native-theme/resizer-bottomend-rtl.xhtml +# Disabled on Linux (bug 519152), random on Windows (bug 581086) +skip-if(gtkWidget) != chrome://reftest/content/native-theme/resizer-bottomend-rtl.xhtml chrome://reftest/content/native-theme/blank-window.xhtml +skip-if(gtkWidget) random-if(d2d) == chrome://reftest/content/native-theme/resizer-bottomend-rtl.xhtml chrome://reftest/content/native-theme/resizer-bottomend-flipped.xhtml +skip-if(gtkWidget) == chrome://reftest/content/native-theme/resizer-bottomleft-rtl.xhtml chrome://reftest/content/native-theme/resizer-bottomleft.xhtml +skip-if(gtkWidget) == chrome://reftest/content/native-theme/resizer-bottomright-rtl.xhtml chrome://reftest/content/native-theme/resizer-bottomright.xhtml + +!= chrome://reftest/content/native-theme/resizer-bottomstart.xhtml chrome://reftest/content/native-theme/blank-window.xhtml +random-if(d2d) == chrome://reftest/content/native-theme/resizer-bottomstart.xhtml chrome://reftest/content/native-theme/resizer-bottomleft.xhtml +random-if(d2d) == chrome://reftest/content/native-theme/resizer-bottomstart.xhtml chrome://reftest/content/native-theme/resizer-left.xhtml +!= chrome://reftest/content/native-theme/resizer-bottomstart.xhtml chrome://reftest/content/native-theme/resizer-bottomstart-rtl.xhtml +skip-if(gtkWidget) != chrome://reftest/content/native-theme/resizer-bottomstart-rtl.xhtml chrome://reftest/content/native-theme/blank-window.xhtml +skip-if(gtkWidget) random-if(d2d) == chrome://reftest/content/native-theme/resizer-bottomstart-rtl.xhtml chrome://reftest/content/native-theme/resizer-bottomend.xhtml + +# Windows-only, depends on native scrollbar metrics +skip-if(!winWidget) == scroll-thumb-minimum-size-notheme.html scroll-thumb-minimum-size-notheme-ref.html +# skip-if(!winWidget) == scroll-thumb-minimum-size-theme.html scroll-thumb-minimum-size-theme-ref.html # Bug 512206 + +== border-radius.html border-radius-ref.html + +== checkbox-dynamic-1.html checkbox-dynamic-1-ref.html + +# These tests have been written to test the overflow of the window widget +# (bug 568825) but we can't test it on Windows and Cocoa because they have +# animated progress bars. +# Nothing shows up on Android, presumably because that appearance type is +# not implemented. +skip-if(cocoaWidget) skip-if(winWidget) == progress-overflow.html progress-overflow-ref.html +fails-if(Android) skip-if(cocoaWidget) skip-if(winWidget) == progress-overflow-small.html progress-nobar.html + +== chrome://reftest/content/native-theme/676387-1.xhtml chrome://reftest/content/native-theme/676387-1-ref.xhtml diff --git a/layout/reftests/native-theme/resizer-bottomend-flipped.xhtml b/layout/reftests/native-theme/resizer-bottomend-flipped.xhtml new file mode 100644 index 0000000000..513ead7b63 --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomend-flipped.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <resizer dir="bottomend" style="-moz-transform: scaleX(-1)"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomend-rtl.xhtml b/layout/reftests/native-theme/resizer-bottomend-rtl.xhtml new file mode 100644 index 0000000000..89cec8a2c3 --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomend-rtl.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" localedir="rtl"> + <hbox> + <spacer flex="1"/> + <resizer dir="bottomend"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomend.xhtml b/layout/reftests/native-theme/resizer-bottomend.xhtml new file mode 100644 index 0000000000..a6023ce680 --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomend.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <resizer dir="bottomend"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomleft-rtl.xhtml b/layout/reftests/native-theme/resizer-bottomleft-rtl.xhtml new file mode 100644 index 0000000000..a369b50a5f --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomleft-rtl.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" localedir="rtl"> + <hbox> + <spacer flex="1"/> + <resizer dir="bottomleft"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomleft.xhtml b/layout/reftests/native-theme/resizer-bottomleft.xhtml new file mode 100644 index 0000000000..3bbf13020f --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomleft.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <resizer dir="bottomleft"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomright-rtl.xhtml b/layout/reftests/native-theme/resizer-bottomright-rtl.xhtml new file mode 100644 index 0000000000..c2b5ba5642 --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomright-rtl.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" localedir="rtl"> + <hbox> + <spacer flex="1"/> + <resizer dir="bottomright"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomright.xhtml b/layout/reftests/native-theme/resizer-bottomright.xhtml new file mode 100644 index 0000000000..d00935a204 --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomright.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <resizer dir="bottomright"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomstart-rtl.xhtml b/layout/reftests/native-theme/resizer-bottomstart-rtl.xhtml new file mode 100644 index 0000000000..bfcd0f2741 --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomstart-rtl.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" localedir="rtl"> + <hbox> + <spacer flex="1"/> + <resizer dir="bottomstart"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-bottomstart.xhtml b/layout/reftests/native-theme/resizer-bottomstart.xhtml new file mode 100644 index 0000000000..30fad8e7bc --- /dev/null +++ b/layout/reftests/native-theme/resizer-bottomstart.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <resizer dir="bottomstart"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/resizer-left.xhtml b/layout/reftests/native-theme/resizer-left.xhtml new file mode 100644 index 0000000000..8dc6cf9f7c --- /dev/null +++ b/layout/reftests/native-theme/resizer-left.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="Resizer" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <resizer dir="left"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/scroll-thumb-minimum-size-notheme-ref.html b/layout/reftests/native-theme/scroll-thumb-minimum-size-notheme-ref.html new file mode 100644 index 0000000000..e6aade6617 --- /dev/null +++ b/layout/reftests/native-theme/scroll-thumb-minimum-size-notheme-ref.html @@ -0,0 +1,4 @@ +<!DOCTYPE html> +<div style="width: 200px; height: 200px; overflow: scroll; -moz-appearance:none"> + <div style="width: 100000px; height: 1000000px"></div> +</div> diff --git a/layout/reftests/native-theme/scroll-thumb-minimum-size-notheme.html b/layout/reftests/native-theme/scroll-thumb-minimum-size-notheme.html new file mode 100644 index 0000000000..c46abf5da0 --- /dev/null +++ b/layout/reftests/native-theme/scroll-thumb-minimum-size-notheme.html @@ -0,0 +1,31 @@ +<!DOCTYPE html> +<div style="width: 200px; height: 200px; overflow: scroll;; -moz-appearance:none"> + <div style="width: 3725px; height: 3725px"></div> +</div> +<!-- +The size of the inner div is computed as follow: + +Input: + outer_div_size: size of the div containing the scrollbar + button_size: size of the scrollbar arrow buttons + scrollbar_thickness: width/height of a vertical/horizontal scrollbar respectively + thumb_size: height/width of the thumb of a vertical/horizontal scrollbar respectively +Output: + inner_div_size: size of the div to be scrolled + +Formula: + slider_size = outer_div_size - 2 * button_size - scrollbar_thickness + thumb_size = slider_size * (outer_div_size / inner_div_size) + which gives: + inner_div_size = (outer_div_size - 2 * button_size - scrollbar_thickness) * (outer_div_size / thumb_size) + +Testcase constants: + outer_div_size = 200 + +On XP/Vista at 96 dpi with theme disabled: + thumb_size = 8 (minimum size) + button_size = 17 + scrollbar_thickness = 17 + + inner_div_size = (200 - 2 * 17 - 17) * (200 / 8) = 3725 +--> diff --git a/layout/reftests/native-theme/scroll-thumb-minimum-size-theme-ref.html b/layout/reftests/native-theme/scroll-thumb-minimum-size-theme-ref.html new file mode 100644 index 0000000000..d592e44849 --- /dev/null +++ b/layout/reftests/native-theme/scroll-thumb-minimum-size-theme-ref.html @@ -0,0 +1,4 @@ +<!DOCTYPE html> +<div style="width: 200px; height: 200px; overflow: scroll;"> + <div style="width: 100000px; height: 1000000px"></div> +</div> diff --git a/layout/reftests/native-theme/scroll-thumb-minimum-size-theme.html b/layout/reftests/native-theme/scroll-thumb-minimum-size-theme.html new file mode 100644 index 0000000000..03a539c3cc --- /dev/null +++ b/layout/reftests/native-theme/scroll-thumb-minimum-size-theme.html @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<div style="width: 200px; height: 200px; overflow: scroll;"> + <div style="width: 1753px; height: 1753px"></div> +</div> +<!-- +See scroll-thumb-minimum-size-notheme.html for the formula. + +On XP/Vista at 96 dpi with theme enabled: + thumb_size = 17 (minimum size) + button_size = 17 + scrollbar_thickness = 17 + + inner_div_size = (200 - 2 * 17 - 17) * (200 / 17) = 1753 +--> diff --git a/layout/reftests/native-theme/searchfield-mirrored-when-rtl-ref.xhtml b/layout/reftests/native-theme/searchfield-mirrored-when-rtl-ref.xhtml new file mode 100644 index 0000000000..bfc6c8134d --- /dev/null +++ b/layout/reftests/native-theme/searchfield-mirrored-when-rtl-ref.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="mirrored searchfield" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <search-textbox width="200" id="searchbox" style="-moz-transform: scaleX(-1);"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/searchfield-mirrored-when-rtl.xhtml b/layout/reftests/native-theme/searchfield-mirrored-when-rtl.xhtml new file mode 100644 index 0000000000..8abca2ba47 --- /dev/null +++ b/layout/reftests/native-theme/searchfield-mirrored-when-rtl.xhtml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> + +<window title="RTL searchfield" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> + <hbox> + <search-textbox width="200" id="searchbox" style="direction: rtl;"/> + <spacer flex="1"/> + </hbox> +</window> diff --git a/layout/reftests/native-theme/select-mirrored-when-rtl-ref.html b/layout/reftests/native-theme/select-mirrored-when-rtl-ref.html new file mode 100644 index 0000000000..1713defff6 --- /dev/null +++ b/layout/reftests/native-theme/select-mirrored-when-rtl-ref.html @@ -0,0 +1,4 @@ +<!DOCTYPE html> +<select style="width: 200px; -moz-transform: scaleX(-1);"> + <option> </option> +</select> diff --git a/layout/reftests/native-theme/select-mirrored-when-rtl.html b/layout/reftests/native-theme/select-mirrored-when-rtl.html new file mode 100644 index 0000000000..8c94f9bcf7 --- /dev/null +++ b/layout/reftests/native-theme/select-mirrored-when-rtl.html @@ -0,0 +1,4 @@ +<!DOCTYPE html> +<select dir="rtl" style="width: 200px;"> + <option> </option> +</select> diff --git a/layout/reftests/native-theme/text-control-not-blank.html b/layout/reftests/native-theme/text-control-not-blank.html new file mode 100644 index 0000000000..4856de5179 --- /dev/null +++ b/layout/reftests/native-theme/text-control-not-blank.html @@ -0,0 +1 @@ +<input type="text"> diff --git a/layout/reftests/native-theme/text-input-native.html b/layout/reftests/native-theme/text-input-native.html new file mode 100644 index 0000000000..8f5eec6b13 --- /dev/null +++ b/layout/reftests/native-theme/text-input-native.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="text" value=""> diff --git a/layout/reftests/native-theme/text-input-nonnative-when-styled-ref.html b/layout/reftests/native-theme/text-input-nonnative-when-styled-ref.html new file mode 100644 index 0000000000..b8786e0ac3 --- /dev/null +++ b/layout/reftests/native-theme/text-input-nonnative-when-styled-ref.html @@ -0,0 +1,23 @@ +<!DOCTYPE HTML> +<!-- these should make the input non-native --> +<input type="text" value="Text Input" style="-moz-appearance: none; border-width: 0"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-width: 1px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-width: 2px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-width: 3px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-width: 4px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-width: 5px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-width: 6px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-style: dotted"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-color: green"> +<input type="text" value="Text Input" style="-moz-appearance: none; background-color: transparent"> +<input type="text" value="Text Input" style="-moz-appearance: none; background-color: white"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-top-left-radius: 0px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-top-right-radius: 1px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-bottom-right-radius: 2px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-bottom-left-radius: 3px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-inline-start-width: 3px"> +<input type="text" value="Text Input" style="-moz-appearance: none; border-inline-end-width: 3px"> + +<!-- these should let it stay native --> +<input type="text" value=""> +<input type="text" value=""> diff --git a/layout/reftests/native-theme/text-input-nonnative-when-styled.html b/layout/reftests/native-theme/text-input-nonnative-when-styled.html new file mode 100644 index 0000000000..327e22034f --- /dev/null +++ b/layout/reftests/native-theme/text-input-nonnative-when-styled.html @@ -0,0 +1,23 @@ +<!DOCTYPE HTML> +<!-- these should make the input non-native --> +<input type="text" value="Text Input" style="border-width: 0"> +<input type="text" value="Text Input" style="border-width: 1px"> +<input type="text" value="Text Input" style="border-width: 2px"> +<input type="text" value="Text Input" style="border-width: 3px"> +<input type="text" value="Text Input" style="border-width: 4px"> +<input type="text" value="Text Input" style="border-width: 5px"> +<input type="text" value="Text Input" style="border-width: 6px"> +<input type="text" value="Text Input" style="border-style: dotted"> +<input type="text" value="Text Input" style="border-color: green"> +<input type="text" value="Text Input" style="background-color: transparent"> +<input type="text" value="Text Input" style="background-color: white"> +<input type="text" value="Text Input" style="border-top-left-radius: 0px"> +<input type="text" value="Text Input" style="border-top-right-radius: 1px"> +<input type="text" value="Text Input" style="border-bottom-right-radius: 2px"> +<input type="text" value="Text Input" style="border-bottom-left-radius: 3px"> +<input type="text" value="Text Input" style="border-inline-start-width: 3px"> +<input type="text" value="Text Input" style="border-inline-end-width: 3px"> + +<!-- these should let it stay native --> +<input type="text" value="" style="color: black"> +<input type="text" value="" style="font-weight: normal"> diff --git a/layout/reftests/native-theme/text-input-nonnative.html b/layout/reftests/native-theme/text-input-nonnative.html new file mode 100644 index 0000000000..a3e4335b1c --- /dev/null +++ b/layout/reftests/native-theme/text-input-nonnative.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<input type="text" value="" style="-moz-appearance: none"> diff --git a/layout/reftests/native-theme/textarea-native.html b/layout/reftests/native-theme/textarea-native.html new file mode 100644 index 0000000000..03e7dcdb13 --- /dev/null +++ b/layout/reftests/native-theme/textarea-native.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<textarea></textarea> diff --git a/layout/reftests/native-theme/textarea-nonnative-when-styled-ref.html b/layout/reftests/native-theme/textarea-nonnative-when-styled-ref.html new file mode 100644 index 0000000000..1679479152 --- /dev/null +++ b/layout/reftests/native-theme/textarea-nonnative-when-styled-ref.html @@ -0,0 +1,17 @@ +<!DOCTYPE HTML> +<!-- these should make the textarea non-native --> +<textarea style="-moz-appearance: none; border-width: 0; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-width: 1px; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-width: 2px; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-width: 3px; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-width: 4px; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-width: 5px; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-width: 6px; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-style: dotted; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; border-color: green; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; background-color: transparent; resize: none;">Textarea</textarea> +<textarea style="-moz-appearance: none; background-color: white; resize: none;">Textarea</textarea> + +<!-- these should let it stay native --> +<textarea></textarea> +<textarea></textarea> diff --git a/layout/reftests/native-theme/textarea-nonnative-when-styled.html b/layout/reftests/native-theme/textarea-nonnative-when-styled.html new file mode 100644 index 0000000000..dff21453db --- /dev/null +++ b/layout/reftests/native-theme/textarea-nonnative-when-styled.html @@ -0,0 +1,18 @@ +<!DOCTYPE HTML> +<!-- these should make the textarea non-native and hide resizers since we can't control + their native vs. non-native appearance --> +<textarea style="border-width: 0; resize: none;">Textarea</textarea> +<textarea style="border-width: 1px; resize: none;">Textarea</textarea> +<textarea style="border-width: 2px; resize: none;">Textarea</textarea> +<textarea style="border-width: 3px; resize: none;">Textarea</textarea> +<textarea style="border-width: 4px; resize: none;">Textarea</textarea> +<textarea style="border-width: 5px; resize: none;">Textarea</textarea> +<textarea style="border-width: 6px; resize: none;">Textarea</textarea> +<textarea style="border-style: dotted; resize: none;">Textarea</textarea> +<textarea style="border-color: green; resize: none;">Textarea</textarea> +<textarea style="background-color: transparent; resize: none;">Textarea</textarea> +<textarea style="background-color: white; resize: none;">Textarea</textarea> + +<!-- these should let it stay native --> +<textarea style="color: black"></textarea> +<textarea style="font-weight: normal"></textarea> diff --git a/layout/reftests/native-theme/textarea-nonnative.html b/layout/reftests/native-theme/textarea-nonnative.html new file mode 100644 index 0000000000..87f3b4cdd6 --- /dev/null +++ b/layout/reftests/native-theme/textarea-nonnative.html @@ -0,0 +1,2 @@ +<!DOCTYPE HTML> +<textarea style="-moz-appearance: none"></textarea> diff --git a/layout/reftests/native-theme/textarea-not-blank.html b/layout/reftests/native-theme/textarea-not-blank.html new file mode 100644 index 0000000000..d017476088 --- /dev/null +++ b/layout/reftests/native-theme/textarea-not-blank.html @@ -0,0 +1 @@ +<textarea rows="5" cols="40"></textarea> |