Diff
Modified: branches/safari-605-branch/Source/WebCore/ChangeLog (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/ChangeLog 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/ChangeLog 2018-01-12 04:52:01 UTC (rev 226846)
@@ -1,5 +1,9 @@
2018-01-11 Jason Marcell <jmarc...@apple.com>
+ Revert r226127. rdar://problem/36123315
+
+2018-01-11 Jason Marcell <jmarc...@apple.com>
+
Revert r226140. rdar://problem/36139222
2018-01-11 Jason Marcell <jmarc...@apple.com>
Modified: branches/safari-605-branch/Source/WebCore/Sources.txt (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/Sources.txt 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/Sources.txt 2018-01-12 04:52:01 UTC (rev 226846)
@@ -1984,7 +1984,6 @@
rendering/svg/SVGTextQuery.cpp
rendering/updating/RenderTreeBuilder.cpp
-rendering/updating/RenderTreeBuilderTable.cpp
rendering/updating/RenderTreePosition.cpp
rendering/updating/RenderTreeUpdater.cpp
rendering/updating/RenderTreeUpdaterFirstLetter.cpp
Modified: branches/safari-605-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2018-01-12 04:52:01 UTC (rev 226846)
@@ -390,7 +390,6 @@
10FB084B14E15C7E00A3DB98 /* PublicURLManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 10FB084A14E15C7E00A3DB98 /* PublicURLManager.h */; };
112B34D51E60B98300BB310A /* SimpleLineLayoutPagination.h in Headers */ = {isa = PBXBuildFile; fileRef = 112B34D41E60B98300BB310A /* SimpleLineLayoutPagination.h */; };
113D0B521F9FDD2B00F611BB /* LayoutContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 113D0B501F9FDD2B00F611BB /* LayoutContext.h */; settings = {ATTRIBUTES = (Private, ); }; };
- 119340791FE8B92300935F1E /* RenderTreeBuilderTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 119340771FE8B92300935F1E /* RenderTreeBuilderTable.h */; };
11E067EE1E6246E500162D16 /* SimpleLineLayoutCoverage.h in Headers */ = {isa = PBXBuildFile; fileRef = 11E067ED1E6246E500162D16 /* SimpleLineLayoutCoverage.h */; settings = {ATTRIBUTES = (Private, ); }; };
1400D7A817136EA70077CE05 /* ScriptWrappableInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 1400D7A717136EA70077CE05 /* ScriptWrappableInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
1403B99709EB13AF00797C7F /* DOMWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 1403B99509EB13AF00797C7F /* DOMWindow.h */; settings = {ATTRIBUTES = (Private, ); }; };
@@ -5580,8 +5579,6 @@
112B34D41E60B98300BB310A /* SimpleLineLayoutPagination.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleLineLayoutPagination.h; sourceTree = "<group>"; };
113D0B4F1F9FDD2B00F611BB /* LayoutContext.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = LayoutContext.cpp; sourceTree = "<group>"; };
113D0B501F9FDD2B00F611BB /* LayoutContext.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LayoutContext.h; sourceTree = "<group>"; };
- 119340761FE8B92300935F1E /* RenderTreeBuilderTable.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeBuilderTable.cpp; sourceTree = "<group>"; };
- 119340771FE8B92300935F1E /* RenderTreeBuilderTable.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RenderTreeBuilderTable.h; sourceTree = "<group>"; };
11E067EB1E62461300162D16 /* SimpleLineLayoutCoverage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleLineLayoutCoverage.cpp; sourceTree = "<group>"; };
11E067ED1E6246E500162D16 /* SimpleLineLayoutCoverage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleLineLayoutCoverage.h; sourceTree = "<group>"; };
1400D7A717136EA70077CE05 /* ScriptWrappableInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptWrappableInlines.h; sourceTree = "<group>"; };
@@ -24620,8 +24617,6 @@
children = (
E47C39201FE6E0D900BBBC6B /* RenderTreeBuilder.cpp */,
E47C392A1FE6E0DE00BBBC6B /* RenderTreeBuilder.h */,
- 119340761FE8B92300935F1E /* RenderTreeBuilderTable.cpp */,
- 119340771FE8B92300935F1E /* RenderTreeBuilderTable.h */,
E47C39291FE6E0DE00BBBC6B /* RenderTreePosition.cpp */,
E47C39241FE6E0DB00BBBC6B /* RenderTreePosition.h */,
E47C391F1FE6E0D800BBBC6B /* RenderTreeUpdater.cpp */,
@@ -26488,6 +26483,7 @@
079D086B162F21F900DB8658 /* CaptionUserPreferencesMediaAF.h in Headers */,
07B7116D1D899E63009F0FFB /* CaptureDevice.h in Headers */,
07B7116F1D899E63009F0FFB /* CaptureDeviceManager.h in Headers */,
+ E47C392D1FE6E0F300BBBC6B /* RenderTreeBuilder.h in Headers */,
CDC734151977896D0046BFC5 /* CARingBuffer.h in Headers */,
6550B69E099DF0270090D781 /* CDATASection.h in Headers */,
CDF4B7161E00B7E500E235A2 /* CDM.h in Headers */,
@@ -26593,6 +26589,7 @@
9746AF2114F4DDE6003E7A71 /* Coordinates.h in Headers */,
3F8020351E9E47BF00DEC61D /* CoreAudioCaptureDevice.h in Headers */,
3F8020371E9E47C500DEC61D /* CoreAudioCaptureDeviceManager.h in Headers */,
+ E47C392E1FE6E0F700BBBC6B /* RenderTreePosition.h in Headers */,
07AFF4221EFB144900B545B3 /* CoreAudioCaptureSourceIOS.h in Headers */,
CD7D33481C7A16BF00041293 /* CoreVideoSoftLink.h in Headers */,
862F129E18C1576F005C54AF /* CountedUserActivity.h in Headers */,
@@ -26952,6 +26949,7 @@
A7CFB3D20B7ED10A0070C32D /* DragImage.h in Headers */,
1AF5E4D91E5677A9004A1F01 /* DragItem.h in Headers */,
81F65FF613788FAA00FF6F2D /* DragState.h in Headers */,
+ E47C39321FE6E10500BBBC6B /* RenderTreeUpdaterListItem.h in Headers */,
E1BA66F11742BD8600C20251 /* DynamicLinkerInterposing.h in Headers */,
FD6ED2C8136B8E66003CF072 /* DynamicsCompressor.h in Headers */,
FD537357137B653B00008DCE /* DynamicsCompressorKernel.h in Headers */,
@@ -27348,6 +27346,7 @@
977B3878122883E900B81FF8 /* HTMLTokenizer.h in Headers */,
0707568C142262D600414161 /* HTMLTrackElement.h in Headers */,
977B37261228721700B81FF8 /* HTMLTreeBuilder.h in Headers */,
+ E47C39301FE6E0FD00BBBC6B /* RenderTreeUpdaterFirstLetter.h in Headers */,
A8EA79F20A1916DF00A8EF5F /* HTMLUListElement.h in Headers */,
AD49914318F0815100BF0092 /* HTMLUnknownElement.h in Headers */,
E44613AB0CD6331000FADA75 /* HTMLVideoElement.h in Headers */,
@@ -28640,6 +28639,7 @@
1A569D0B0D7E2B82007C3983 /* NP_jsobject.h in Headers */,
1A927FD21416A15B003A83C8 /* npapi.h in Headers */,
1A219B3B0DCA87AB0040E3A0 /* npfunctions.h in Headers */,
+ E47C392F1FE6E0F900BBBC6B /* RenderTreeUpdater.h in Headers */,
1A927FD31416A15B003A83C8 /* npruntime.h in Headers */,
1A569D0F0D7E2B82007C3983 /* npruntime_impl.h in Headers */,
1A569D100D7E2B82007C3983 /* npruntime_internal.h in Headers */,
@@ -28792,6 +28792,7 @@
070E09191875EEFC003A1D3C /* PlatformMediaSession.h in Headers */,
07F944161864D046005D31CB /* PlatformMediaSessionManager.h in Headers */,
41BF70100FE86F61005E8DEC /* PlatformMessagePortChannel.h in Headers */,
+ E47C39331FE6E10800BBBC6B /* RenderTreeUpdaterMultiColumn.h in Headers */,
935C476909AC4D4300A6AAB4 /* PlatformMouseEvent.h in Headers */,
C598905814E9C29900E8D18B /* PlatformPasteboard.h in Headers */,
BCEC01D70C274EB4009F4EC9 /* PlatformScreen.h in Headers */,
@@ -29043,14 +29044,6 @@
FED13D520CEA949700D89466 /* RenderThemeIOS.h in Headers */,
BCEA4887097D93020094C9E4 /* RenderThemeMac.h in Headers */,
93F1998C08245E59001E9ABC /* RenderTreeAsText.h in Headers */,
- E47C392D1FE6E0F300BBBC6B /* RenderTreeBuilder.h in Headers */,
- 119340791FE8B92300935F1E /* RenderTreeBuilderTable.h in Headers */,
- E47C392E1FE6E0F700BBBC6B /* RenderTreePosition.h in Headers */,
- E47C392F1FE6E0F900BBBC6B /* RenderTreeUpdater.h in Headers */,
- E47C39301FE6E0FD00BBBC6B /* RenderTreeUpdaterFirstLetter.h in Headers */,
- E47C39311FE6E10200BBBC6B /* RenderTreeUpdaterGeneratedContent.h in Headers */,
- E47C39321FE6E10500BBBC6B /* RenderTreeUpdaterListItem.h in Headers */,
- E47C39331FE6E10800BBBC6B /* RenderTreeUpdaterMultiColumn.h in Headers */,
E44614520CD68A3500FADA75 /* RenderVideo.h in Headers */,
BCEA4868097D93020094C9E4 /* RenderView.h in Headers */,
BE20507E18A458C20080647E /* RenderVTTCue.h in Headers */,
@@ -29333,6 +29326,7 @@
97BC6A3C1505F081001B74AC /* SQLError.h in Headers */,
1A22464A0CC98DDB00C05240 /* SQLiteDatabase.h in Headers */,
7E474E1F12494DC900235364 /* SQLiteDatabaseTracker.h in Headers */,
+ E47C39311FE6E10200BBBC6B /* RenderTreeUpdaterGeneratedContent.h in Headers */,
7E474E1E12494DC900235364 /* SQLiteDatabaseTrackerClient.h in Headers */,
B5A684220FFABE9800D24689 /* SQLiteFileSystem.h in Headers */,
512BDB4B1C456FFA006494DF /* SQLiteIDBBackingStore.h in Headers */,
Modified: branches/safari-605-branch/Source/WebCore/rendering/RenderTableRow.cpp (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/rendering/RenderTableRow.cpp 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/rendering/RenderTableRow.cpp 2018-01-12 04:52:01 UTC (rev 226846)
@@ -113,12 +113,58 @@
void RenderTableRow::addChild(RenderTreeBuilder& builder, RenderPtr<RenderObject> child, RenderObject* beforeChild)
{
+ if (!is<RenderTableCell>(*child)) {
+ RenderObject* last = beforeChild;
+ if (!last)
+ last = lastCell();
+ if (last && last->isAnonymous() && is<RenderTableCell>(*last) && !last->isBeforeOrAfterContent()) {
+ RenderTableCell& cell = downcast<RenderTableCell>(*last);
+ if (beforeChild == &cell)
+ beforeChild = cell.firstChild();
+ builder.insertChild(cell, WTFMove(child), beforeChild);
+ return;
+ }
+
+ if (beforeChild && !beforeChild->isAnonymous() && beforeChild->parent() == this) {
+ RenderObject* cell = beforeChild->previousSibling();
+ if (is<RenderTableCell>(cell) && cell->isAnonymous()) {
+ builder.insertChild(downcast<RenderTableCell>(*cell), WTFMove(child));
+ return;
+ }
+ }
+
+ // Try to find an anonymous container for the child.
+ if (last && last->parent() && last->parent()->isAnonymous() && !last->parent()->isBeforeOrAfterContent()) {
+ // If beforeChild is inside an anonymous cell, insert into the cell.
+ if (!is<RenderTableCell>(*last)) {
+ builder.insertChild(*last->parent(), WTFMove(child), beforeChild);
+ return;
+ }
+ // If beforeChild is inside an anonymous row, insert into the row.
+ auto& parent = *last->parent();
+ if (is<RenderTableRow>(parent)) {
+ auto newCell = RenderTableCell::createAnonymousWithParentRenderer(*this);
+ auto& cell = *newCell;
+ builder.insertChild(parent, WTFMove(newCell), beforeChild);
+ builder.insertChild(cell, WTFMove(child));
+ return;
+ }
+ }
+ auto newCell = RenderTableCell::createAnonymousWithParentRenderer(*this);
+ auto& cell = *newCell;
+ builder.insertChild(*this, WTFMove(newCell), beforeChild);
+ builder.insertChild(cell, WTFMove(child));
+ return;
+ }
+
if (beforeChild && beforeChild->parent() != this)
beforeChild = splitAnonymousBoxesAroundChild(beforeChild);
+ RenderTableCell& cell = downcast<RenderTableCell>(*child);
+
// Generated content can result in us having a null section so make sure to null check our parent.
- if (auto* section = this->section())
- section->addCell(&downcast<RenderTableCell>(*child), this);
+ if (RenderTableSection* section = this->section())
+ section->addCell(&cell, this);
ASSERT(!beforeChild || is<RenderTableCell>(*beforeChild));
RenderBox::addChild(builder, WTFMove(child), beforeChild);
Modified: branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp 2018-01-12 04:52:01 UTC (rev 226846)
@@ -30,9 +30,7 @@
#include "RenderRuby.h"
#include "RenderRubyBase.h"
#include "RenderRubyRun.h"
-#include "RenderTableRow.h"
#include "RenderText.h"
-#include "RenderTreeBuilderTable.h"
#include "RenderTreeUpdater.h"
namespace WebCore {
@@ -41,7 +39,6 @@
RenderTreeBuilder::RenderTreeBuilder(RenderView& view)
: m_view(view)
- , m_tableBuilder(std::make_unique<Table>(*this))
{
RELEASE_ASSERT(!s_current || &m_view != &s_current->m_view);
m_previous = s_current;
@@ -62,11 +59,6 @@
beforeChild = wrapperInline;
}
- if (is<RenderTableRow>(parent)) {
- m_tableBuilder->findOrCreateParentForChild(downcast<RenderTableRow>(parent), *child, beforeChild).addChild(*this, WTFMove(child), beforeChild);
- return;
- }
-
if (is<RenderRubyRun>(parent)) {
rubyRunInsertChild(downcast<RenderRubyRun>(parent), WTFMove(child), beforeChild);
return;
Modified: branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilder.h (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilder.h 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilder.h 2018-01-12 04:52:01 UTC (rev 226846)
@@ -45,14 +45,11 @@
static RenderTreeBuilder* current() { return s_current; }
private:
- class Table;
-
void rubyRunInsertChild(RenderRubyRun&, RenderPtr<RenderObject> child, RenderObject* beforeChild);
RenderView& m_view;
RenderTreeBuilder* m_previous { nullptr };
- std::unique_ptr<Table> m_tableBuilder;
static RenderTreeBuilder* s_current;
};
Deleted: branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilderTable.cpp (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilderTable.cpp 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilderTable.cpp 2018-01-12 04:52:01 UTC (rev 226846)
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "RenderTreeBuilderTable.h"
-
-#include "RenderTableCell.h"
-#include "RenderTableRow.h"
-#include "RenderTreeBuilder.h"
-
-namespace WebCore {
-
-RenderTreeBuilder::Table::Table(RenderTreeBuilder& builder)
- : m_builder(builder)
-{
-}
-
-RenderElement& RenderTreeBuilder::Table::findOrCreateParentForChild(RenderTableRow& parent, const RenderObject& child, RenderObject*& beforeChild)
-{
- if (is<RenderTableCell>(child))
- return parent;
-
- if (beforeChild && !beforeChild->isAnonymous() && beforeChild->parent() == &parent) {
- auto* previousSibling = beforeChild->previousSibling();
- if (is<RenderTableCell>(previousSibling) && previousSibling->isAnonymous()) {
- beforeChild = nullptr;
- return downcast<RenderElement>(*previousSibling);
- }
- }
-
- auto* lastChild = beforeChild ? beforeChild : parent.lastCell();
- if (lastChild) {
- if (is<RenderTableCell>(*lastChild) && lastChild->isAnonymous() && !lastChild->isBeforeOrAfterContent()) {
- if (beforeChild == lastChild)
- beforeChild = downcast<RenderElement>(*lastChild).firstChild();
- return downcast<RenderElement>(*lastChild);
- }
-
- // Try to find an anonymous container for the child.
- if (auto* lastChildParent = lastChild->parent()) {
- if (lastChildParent->isAnonymous() && !lastChildParent->isBeforeOrAfterContent()) {
- // If beforeChild is inside an anonymous cell, insert into the cell.
- if (!is<RenderTableCell>(*lastChild))
- return *lastChildParent;
- // If beforeChild is inside an anonymous row, insert into the row.
- if (is<RenderTableRow>(*lastChildParent)) {
- auto newCell = RenderTableCell::createAnonymousWithParentRenderer(parent);
- auto& cell = *newCell;
- m_builder.insertChild(*lastChildParent, WTFMove(newCell), beforeChild);
- beforeChild = nullptr;
- return cell;
- }
- }
- }
- }
- auto newCell = RenderTableCell::createAnonymousWithParentRenderer(parent);
- auto& cell = *newCell;
- m_builder.insertChild(parent, WTFMove(newCell), beforeChild);
- beforeChild = nullptr;
- return cell;
-}
-
-}
Deleted: branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilderTable.h (226845 => 226846)
--- branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilderTable.h 2018-01-12 04:51:58 UTC (rev 226845)
+++ branches/safari-605-branch/Source/WebCore/rendering/updating/RenderTreeBuilderTable.h 2018-01-12 04:52:01 UTC (rev 226846)
@@ -1,47 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#include "RenderTreeUpdater.h"
-
-namespace WebCore {
-
-class RenderElement;
-class RenderObject;
-class RenderTableRow;
-class RenderTreeBuilder;
-
-class RenderTreeBuilder::Table {
-public:
- Table(RenderTreeBuilder&);
-
- RenderElement& findOrCreateParentForChild(RenderTableRow& parent, const RenderObject& child, RenderObject*& beforeChild);
-
-private:
- RenderTreeBuilder& m_builder;
-};
-
-}