Source/WebCore/ChangeLog

 12012-09-29 Glenn Adams <glenn@skynav.com>
 2
 3 Sign in front of keyframe selector causes stylesheet parsing to abort
 4 https://bugs.webkit.org/show_bug.cgi?id=96844
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 Allow optional unary operator (+|-) on PERCENTAGE in keyframe selector.
 9
 10 Test: animations/keyframe-selector-negative-percentage.html
 11
 12 * css/CSSGrammar.y:
 13 Add maybe_unary_operator to PERCENTAGE on keyframe selector. Negative keyframe
 14 selector value is already ignored in StyleKeyframe::parseKeyString.
 15
1162012-09-29 Dongwoo Joshua Im <dw.im@samsung.com>
217
318 AsyncFileSystem::openFileSystem should have FileSystemType as a parameter.

Source/WebCore/css/CSSGrammar.y

@@key_list:
685685 ;
686686
687687key:
688  PERCENTAGE { $$.id = 0; $$.isInt = false; $$.fValue = $1; $$.unit = CSSPrimitiveValue::CSS_NUMBER; }
 688 maybe_unary_operator PERCENTAGE { $$.id = 0; $$.isInt = false; $$.fValue = $1 * $2; $$.unit = CSSPrimitiveValue::CSS_NUMBER; }
689689 | IDENT {
690690 $$.id = 0; $$.isInt = false; $$.unit = CSSPrimitiveValue::CSS_NUMBER;
691691 CSSParserString& str = $1;

LayoutTests/ChangeLog

 12012-09-29 Glenn Adams <glenn@skynav.com>
 2
 3 Sign in front of keyframe selector causes stylesheet parsing to abort
 4 https://bugs.webkit.org/show_bug.cgi?id=96844
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 Add test case for correct handling of negative percentage in keyframe selector.
 9
 10 * animations/keyframe-selector-negative-percentage-expected.txt: Added.
 11 * animations/keyframe-selector-negative-percentage.html: Added.
 12
1132012-09-29 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
214
315 [EFL] Unskip test that seems to be passing now.

LayoutTests/animations/keyframe-selector-negative-percentage-expected.txt

 1The background color of this element should be green and the text should be white.
 2PASS: background color is green
 3PASS: text color is white
 4

LayoutTests/animations/keyframe-selector-negative-percentage.html

 1<!DOCTYPE html>
 2<html>
 3<head>
 4<title>Check that negative (out of range) key frame percentage doesn't cause subsequent first or second ruleset to be skipped.</title>
 5<style>
 6#test { background-color: red; color: black }
 7@-webkit-keyframes fade { -10% { color: red; } }
 8#test { background-color: green; } /* if skipped, then background will be red */
 9#test { color: white; } /* if skipped, then text will be black */
 10</style>
 11</head>
 12<body>
 13<div id="test">The background color of this element should be green and the text should be white.</div>
 14<div id="result"></div>
 15<script>
 16if (window.testRunner)
 17 testRunner.dumpAsText();
 18var r = '';
 19var s = getComputedStyle(document.getElementById("test"));
 20if (s.backgroundColor === "rgb(0, 128, 0)") {
 21 r += 'PASS: background color is green';
 22} else {
 23 r += 'FAIL: background color not green';
 24}
 25r += '<br>';
 26if (s.color === "rgb(255, 255, 255)") {
 27 r += 'PASS: text color is white';
 28} else {
 29 r += 'FAIL: text color not white';
 30}
 31r += '<br>';
 32document.getElementById("result").innerHTML = r;
 33</script>
 34</body>
 35</html>