| <!DOCTYPE html> |
| <!-- |
| This tests verifies that filters repaint correctly in software mode when the filter property is changed. |
| You should see 5 green rectangles. First 4 of the rectangles have a blue shadow. There should be no red. |
| --> |
| <html> |
| <head> |
| <style> |
| .box { |
| height: 50px; |
| width: 50px; |
| margin-left: 20px; |
| margin-bottom: 60px; |
| background-color: green; |
| } |
| |
| .software_from_none { |
| -webkit-filter: drop-shadow(0px 0px 10px blue); |
| } |
| |
| .software_from_none.before { |
| -webkit-filter: none; |
| } |
| |
| .software_from_software { |
| -webkit-filter: drop-shadow(0px 0px 10px blue); |
| } |
| |
| .software_from_software.before { |
| -webkit-filter: drop-shadow(0px 0px 10px red); |
| } |
| |
| .composited_from_software { |
| /* force a composited layer */ |
| -webkit-transform: translate3d(0, 0, 0); |
| -webkit-filter: drop-shadow(0px 0px 10px blue); |
| } |
| |
| .composited_from_software.before { |
| -webkit-transform: none; |
| -webkit-filter: drop-shadow(0px 0px 10px red); |
| } |
| |
| .software_from_composited { |
| -webkit-transform: none; |
| -webkit-filter: drop-shadow(0px 0px 10px blue); |
| } |
| |
| .software_from_composited.before { |
| /* force a composited layer */ |
| -webkit-transform: translate3d(0, 0, 0); |
| -webkit-filter: drop-shadow(0px 0px 10px red); |
| } |
| |
| .none_from_software { |
| -webkit-filter: none; |
| } |
| |
| .none_from_software.before { |
| -webkit-filter: drop-shadow(0px 0px 10px red); |
| } |
| </style> |
| |
| <script src="../../fast/repaint/resources/repaint.js"></script> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(true); |
| |
| function repaintTest() |
| { |
| var items = document.getElementsByClassName('before'); |
| while (items.length) |
| items[0].classList.remove("before"); |
| } |
| </script> |
| </head> |
| |
| <body onload="runRepaintTest()"> |
| <div class="box software_from_none before"></div> |
| <div class="box software_from_software before"></div> |
| <div class="box composited_from_software before"></div> |
| <div class="box software_from_composited before"></div> |
| <div class="box none_from_software before"></div> |
| </body> |
| </html> |