- a/Source/WebCore/ChangeLog +15 lines
Lines 1-3 a/Source/WebCore/ChangeLog_sec1
1
2015-04-24  Manuel Rego Casasnovas  <rego@igalia.com>
2
3
        [CSS Grid Layout] LayoutBox::hasDefiniteLogicalHeight() should consider abspos boxes as definite
4
        https://bugs.webkit.org/show_bug.cgi?id=144144
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        Change order in hasDefiniteLogicalHeight() ifs to consider definite
9
        absolutely positioned elements.
10
11
        Test: fast/css-grid-layout/percent-track-breadths-regarding-container-size.html
12
13
        * rendering/RenderBox.cpp:
14
        (WebCore::RenderBox::hasDefiniteLogicalHeight):
15
1
2015-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
16
2015-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2
17
3
        [SOUP] Use a webkit subdirectory for the disk cache
18
        [SOUP] Use a webkit subdirectory for the disk cache
- a/Source/WebCore/rendering/RenderBox.cpp -2 / +2 lines
Lines 4542-4549 bool RenderBox::percentageLogicalHeightIsResolvableFromBlock(const RenderBlock* a/Source/WebCore/rendering/RenderBox.cpp_sec1
4542
bool RenderBox::hasDefiniteLogicalHeight() const
4542
bool RenderBox::hasDefiniteLogicalHeight() const
4543
{
4543
{
4544
    const Length& logicalHeight = style().logicalHeight();
4544
    const Length& logicalHeight = style().logicalHeight();
4545
    if (logicalHeight.isIntrinsicOrAuto())
4546
        return false;
4547
    if (logicalHeight.isFixed())
4545
    if (logicalHeight.isFixed())
4548
        return true;
4546
        return true;
4549
    // The size of the containing block of an absolutely positioned element is always definite with respect to that
4547
    // The size of the containing block of an absolutely positioned element is always definite with respect to that
Lines 4554-4559 bool RenderBox::hasDefiniteLogicalHeight() const a/Source/WebCore/rendering/RenderBox.cpp_sec2
4554
    if (hasOverrideContainingBlockLogicalHeight())
4552
    if (hasOverrideContainingBlockLogicalHeight())
4555
        return overrideContainingBlockContentLogicalHeight() != -1;
4553
        return overrideContainingBlockContentLogicalHeight() != -1;
4556
#endif
4554
#endif
4555
    if (logicalHeight.isIntrinsicOrAuto())
4556
        return false;
4557
4557
4558
    return percentageLogicalHeightIsResolvable(this);
4558
    return percentageLogicalHeightIsResolvable(this);
4559
}
4559
}
- a/LayoutTests/ChangeLog +12 lines
Lines 1-3 a/LayoutTests/ChangeLog_sec1
1
2015-04-24  Manuel Rego Casasnovas  <rego@igalia.com>
2
3
        [CSS Grid Layout] LayoutBox::hasDefiniteLogicalHeight() should consider abspos boxes as definite
4
        https://bugs.webkit.org/show_bug.cgi?id=144144
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        Add new test case to check absolutely positioned elements.
9
10
        * fast/css-grid-layout/percent-track-breadths-regarding-container-size-expected.txt:
11
        * fast/css-grid-layout/percent-track-breadths-regarding-container-size.html:
12
1
2015-04-23  Basile Clement  <basile_clement@apple.com>
13
2015-04-23  Basile Clement  <basile_clement@apple.com>
2
14
3
        Allow function allocation sinking
15
        Allow function allocation sinking
- a/LayoutTests/fast/css-grid-layout/percent-track-breadths-regarding-container-size-expected.txt +8 lines
Lines 40-42 XX a/LayoutTests/fast/css-grid-layout/percent-track-breadths-regarding-container-size-expected.txt_sec1
40
XXXXX
40
XXXXX
41
XXX
41
XXX
42
PASS
42
PASS
43
XX
44
XXXXX
45
XXX
46
PASS
47
XX
48
XXXXX
49
XXX
50
PASS
- a/LayoutTests/fast/css-grid-layout/percent-track-breadths-regarding-container-size.html +20 lines
Lines 23-28 a/LayoutTests/fast/css-grid-layout/percent-track-breadths-regarding-container-size.html_sec1
23
    height: 50%;
23
    height: 50%;
24
}
24
}
25
25
26
.absolutelyPositioned {
27
    position: absolute;
28
}
29
26
.indefiniteSize {
30
.indefiniteSize {
27
    width: -webkit-fit-content;
31
    width: -webkit-fit-content;
28
    height: auto;
32
    height: auto;
Lines 114-119 a/LayoutTests/fast/css-grid-layout/percent-track-breadths-regarding-container-size.html_sec2
114
    </div>
118
    </div>
115
119
116
    <div class="indefiniteSize">
120
    <div class="indefiniteSize">
121
        <div class="grid absolutelyPositioned">
122
            <div class="firstRowFirstColumn sizedToGridArea" data-expected-width="0" data-expected-height="0">XX</div>
123
            <div class="firstRowSecondColumn sizedToGridArea" data-expected-width="0" data-expected-height="0">XXXXX</div>
124
            <div class="firstRowThirdColumn sizedToGridArea" data-expected-width="0" data-expected-height="0">XXX</div>
125
        </div>
126
    </div>
127
128
    <div class="unconstrainedContainer">
129
        <div class="grid absolutelyPositioned">
130
            <div class="firstRowFirstColumn sizedToGridArea" data-expected-width="0" data-expected-height="0">XX</div>
131
            <div class="firstRowSecondColumn sizedToGridArea" data-expected-width="0" data-expected-height="0">XXXXX</div>
132
            <div class="firstRowThirdColumn sizedToGridArea" data-expected-width="0" data-expected-height="0">XXX</div>
133
        </div>
134
    </div>
135
136
    <div class="indefiniteSize">
117
        <div class="grid indefiniteSize">
137
        <div class="grid indefiniteSize">
118
            <div class="firstRowFirstColumn sizedToGridArea" data-expected-width="20" data-expected-height="10">XX</div>
138
            <div class="firstRowFirstColumn sizedToGridArea" data-expected-width="20" data-expected-height="10">XX</div>
119
            <div class="firstRowSecondColumn sizedToGridArea" data-expected-width="50" data-expected-height="10">XXXXX</div>
139
            <div class="firstRowSecondColumn sizedToGridArea" data-expected-width="50" data-expected-height="10">XXXXX</div>

Return to Bug 144144