X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fthird_party%2FWebKit%2FSource%2Fcore%2Frendering%2FRenderTableSection.cpp;h=c88b4903b3b26c7625bcc11c8afce4d37a4dc275;hb=ff3e2503a20db9193d323c1d19c38c68004dec4a;hp=bd7863a888193166d5e2e6691dcad701864ba5af;hpb=7338fba38ba696536d1cc9d389afd716a6ab2fe6;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/third_party/WebKit/Source/core/rendering/RenderTableSection.cpp b/src/third_party/WebKit/Source/core/rendering/RenderTableSection.cpp index bd7863a..c88b490 100644 --- a/src/third_party/WebKit/Source/core/rendering/RenderTableSection.cpp +++ b/src/third_party/WebKit/Source/core/rendering/RenderTableSection.cpp @@ -652,33 +652,25 @@ int RenderTableSection::calcRowLogicalHeight() if (current.inColSpan && cell->rowSpan() == 1) continue; - if (RuntimeEnabledFeatures::rowSpanLogicalHeightSpreadingEnabled()) { - if (cell->rowSpan() > 1) { - // For row spanning cells, we only handle them for the first row they span. This ensures we take their baseline into account. - if (lastRowSpanCell != cell && cell->rowIndex() == r) { + if (cell->rowSpan() > 1) { + // For row spanning cells, we only handle them for the first row they span. This ensures we take their baseline into account. + if (lastRowSpanCell != cell && cell->rowIndex() == r) { #ifndef NDEBUG - ASSERT(!uniqueCells.contains(cell)); - uniqueCells.add(cell); + ASSERT(!uniqueCells.contains(cell)); + uniqueCells.add(cell); #endif - rowSpanCells.append(cell); - lastRowSpanCell = cell; + rowSpanCells.append(cell); + lastRowSpanCell = cell; - // Find out the baseline. The baseline is set on the first row in a rowSpan. - updateBaselineForCell(cell, r, baselineDescent); - } - continue; + // Find out the baseline. The baseline is set on the first row in a rowSpan. + updateBaselineForCell(cell, r, baselineDescent); } - - ASSERT(cell->rowSpan() == 1); - } else { - // FIXME: We add all the logical row of a rowspan to the last rows - // until crbug.com/78724 is fixed and the runtime flag removed. - // This avoids propagating temporary regressions while we fix the bug. - if ((cell->rowIndex() + cell->rowSpan() - 1) != r) - continue; + continue; } + ASSERT(cell->rowSpan() == 1); + if (cell->hasOverrideHeight()) { if (!statePusher.didPush()) { // Technically, we should also push state for the row, but since @@ -690,20 +682,10 @@ int RenderTableSection::calcRowLogicalHeight() cell->forceChildLayout(); } - if (RuntimeEnabledFeatures::rowSpanLogicalHeightSpreadingEnabled()) { - m_rowPos[r + 1] = max(m_rowPos[r + 1], m_rowPos[r] + cell->logicalHeightForRowSizing()); - - // Find out the baseline. - updateBaselineForCell(cell, r, baselineDescent); - } else { - // For row spanning cells, |r| is the last row in the span. - unsigned cellStartRow = cell->rowIndex(); - - m_rowPos[r + 1] = max(m_rowPos[r + 1], m_rowPos[cellStartRow] + cell->logicalHeightForRowSizing()); + m_rowPos[r + 1] = max(m_rowPos[r + 1], m_rowPos[r] + cell->logicalHeightForRowSizing()); - // Find out the baseline. - updateBaselineForCell(cell, cellStartRow, baselineDescent); - } + // Find out the baseline. + updateBaselineForCell(cell, r, baselineDescent); } } @@ -712,10 +694,8 @@ int RenderTableSection::calcRowLogicalHeight() m_rowPos[r + 1] = max(m_rowPos[r + 1], m_rowPos[r]); } - if (!rowSpanCells.isEmpty()) { - ASSERT(RuntimeEnabledFeatures::rowSpanLogicalHeightSpreadingEnabled()); + if (!rowSpanCells.isEmpty()) distributeRowSpanHeightToRows(rowSpanCells); - } ASSERT(!needsLayout()); @@ -1628,7 +1608,7 @@ bool RenderTableSection::nodeAtPoint(const HitTestRequest& request, HitTestResul // Just forward to our children always. LayoutPoint adjustedLocation = accumulatedOffset + location(); - if (hasOverflowClip() && !locationInContainer.intersects(overflowClipRect(adjustedLocation, locationInContainer.region()))) + if (hasOverflowClip() && !locationInContainer.intersects(overflowClipRect(adjustedLocation))) return false; if (hasOverflowingCell()) {