- a/Source/WebCore/ChangeLog +16 lines
Lines 1-3 a/Source/WebCore/ChangeLog_sec1
1
2013-01-02  Mike Lawther  <mikelawther@chromium.org>
2
3
        CSS3 calc: working with translate and scale transforms
4
        https://bugs.webkit.org/show_bug.cgi?id=105985
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        Allow convertTo[Float|Int]Length functions to process calculated values.
9
10
        Tests: css3/calc/transforms-scale.html
11
               css3/calc/transforms-translate.html
12
13
        * css/StyleResolver.cpp:
14
        (WebCore::StyleResolver::convertToIntLength):
15
        (WebCore::StyleResolver::convertToFloatLength):
16
1
2012-12-28  Rafael Weinstein  <rafaelw@chromium.org>
17
2012-12-28  Rafael Weinstein  <rafaelw@chromium.org>
2
18
3
        [Templates]: Fix assert in colgroup parse handling
19
        [Templates]: Fix assert in colgroup parse handling
- a/Source/WebCore/css/StyleResolver.cpp -2 / +2 lines
Lines 2283-2294 bool StyleResolver::checkRegionSelector(CSSSelector* regionSelector, Element* re a/Source/WebCore/css/StyleResolver.cpp_sec1
2283
2283
2284
Length StyleResolver::convertToIntLength(CSSPrimitiveValue* primitiveValue, RenderStyle* style, RenderStyle* rootStyle, double multiplier)
2284
Length StyleResolver::convertToIntLength(CSSPrimitiveValue* primitiveValue, RenderStyle* style, RenderStyle* rootStyle, double multiplier)
2285
{
2285
{
2286
    return primitiveValue ? primitiveValue->convertToLength<FixedIntegerConversion | PercentConversion | FractionConversion | ViewportPercentageConversion>(style, rootStyle, multiplier) : Length(Undefined);
2286
    return primitiveValue ? primitiveValue->convertToLength<FixedIntegerConversion | PercentConversion | CalculatedConversion | FractionConversion | ViewportPercentageConversion>(style, rootStyle, multiplier) : Length(Undefined);
2287
}
2287
}
2288
2288
2289
Length StyleResolver::convertToFloatLength(CSSPrimitiveValue* primitiveValue, RenderStyle* style, RenderStyle* rootStyle, double multiplier)
2289
Length StyleResolver::convertToFloatLength(CSSPrimitiveValue* primitiveValue, RenderStyle* style, RenderStyle* rootStyle, double multiplier)
2290
{
2290
{
2291
    return primitiveValue ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | FractionConversion | ViewportPercentageConversion>(style, rootStyle, multiplier) : Length(Undefined);
2291
    return primitiveValue ? primitiveValue->convertToLength<FixedFloatConversion | PercentConversion | CalculatedConversion | FractionConversion | ViewportPercentageConversion>(style, rootStyle, multiplier) : Length(Undefined);
2292
}
2292
}
2293
2293
2294
template <StyleResolver::StyleApplicationPass pass>
2294
template <StyleResolver::StyleApplicationPass pass>
- a/LayoutTests/ChangeLog +12 lines
Lines 1-3 a/LayoutTests/ChangeLog_sec1
1
2013-01-02  Mike Lawther  <mikelawther@chromium.org>
2
3
        CSS3 calc: working with translate and scale transforms
4
        https://bugs.webkit.org/show_bug.cgi?id=105985
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        * css3/calc/transforms-scale-expected.html: Added.
9
        * css3/calc/transforms-scale.html: Added.
10
        * css3/calc/transforms-translate-expected.html: Added.
11
        * css3/calc/transforms-translate.html: Added.
12
1
2012-12-28  Fady Samuel  <fsamuel@chromium.org>
13
2012-12-28  Fady Samuel  <fsamuel@chromium.org>
2
14
3
        Unreviewed rebaseline.
15
        Unreviewed rebaseline.
- a/LayoutTests/css3/calc/transforms-scale-expected.html +18 lines
Line 0 a/LayoutTests/css3/calc/transforms-scale-expected.html_sec1
1
<!DOCTYPE HTML>
2
<style>
3
  div {
4
    width:100px;
5
    height:100px;
6
    margin:50px;
7
    background-color:green;  	
8
  }
9
10
  #scalex {
11
    -webkit-transform: scalex(1.5);
12
  }
13
  #scaley {
14
    -webkit-transform: scaley(0.75);
15
  }
16
</style>
17
<div id="scalex">scale x</div>
18
<div id="scaley">scale y</div>
- a/LayoutTests/css3/calc/transforms-scale.html +18 lines
Line 0 a/LayoutTests/css3/calc/transforms-scale.html_sec1
1
<!DOCTYPE HTML>
2
<style>
3
  div {
4
    width:100px;
5
    height:100px;
6
    margin:50px;
7
    background-color:green;  	
8
  }
9
10
  #scalex {
11
    -webkit-transform: scalex(-webkit-calc(3 / 2));
12
  }
13
  #scaley {
14
    -webkit-transform: scaley(-webkit-calc(1 - 0.25));
15
  }
16
</style>
17
<div id="scalex">scale x</div>
18
<div id="scaley">scale y</div>
- a/LayoutTests/css3/calc/transforms-translate-expected.html +22 lines
Line 0 a/LayoutTests/css3/calc/transforms-translate-expected.html_sec1
1
<!DOCTYPE HTML>
2
<style>
3
  div {
4
    width:100px;
5
    height:100px;
6
    margin:50px;
7
    background-color:green;  	
8
  }
9
10
  #translatex {
11
    -webkit-transform: translatex(60px);
12
  }
13
  #translatey {
14
    -webkit-transform: translatey(35px);
15
  }
16
  #translatez {
17
    -webkit-transform: perspective(500px) translatez(100px);
18
  }
19
</style>
20
<div id="translatex">translate x</div>
21
<div id="translatey">translate y</div>
22
<div id="translatez">translate z</div>
- a/LayoutTests/css3/calc/transforms-translate.html +22 lines
Line 0 a/LayoutTests/css3/calc/transforms-translate.html_sec1
1
<!DOCTYPE HTML>
2
<style>
3
  div {
4
    width:100px;
5
    height:100px;
6
    margin:50px;
7
    background-color:green;  	
8
  }
9
10
  #translatex {
11
    -webkit-transform: translatex(-webkit-calc(50% + 10px));
12
  }
13
  #translatey {
14
    -webkit-transform: translatey(-webkit-calc(40% - 5px));
15
  }
16
  #translatez {
17
    -webkit-transform: perspective(-webkit-calc(100px * 5)) translatez(-webkit-calc(10px + 90px));
18
  }
19
</style>
20
<div id="translatex">translate x</div>
21
<div id="translatey">translate y</div>
22
<div id="translatez">translate z</div>

Return to Bug 105985