[LayoutFormattingContext] Initial commit.
authorzalan@apple.com <zalan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Apr 2018 23:08:47 +0000 (23:08 +0000)
committerzalan@apple.com <zalan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Apr 2018 23:08:47 +0000 (23:08 +0000)
commit8b5fa36e7ea0fde399e6108a1c558abb807537d4
treee51fe22f38b5e9fe6b0f98cd9a9d8b413a9457e7
parentabed39e525072be455880a805cb316d404bc0b8a
[LayoutFormattingContext] Initial commit.
https://bugs.webkit.org/show_bug.cgi?id=184896

Reviewed by Antti Koivisto.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

This is the initial commit of the new layout component -class definitions only (and mostly public functions).
See the header files (and Tools/LayoutReloaded project) for more information.

// Top level layout.
rootContainer = TreeBuilder::createLayoutTree(document);
rootDisplayBox = new Display::Box();
rootDisplayBox->setSize(viewportSize);
layoutContext = new LayoutContext(rootContainer, rootDisplayBox);
layoutContext->layout(rootContainer);

Driven by build time flag (currently off). Not testable yet.

* Configurations/FeatureDefines.xcconfig:
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* layout/BlockFormatting/BlockFormattingContext.cpp: Added.
* layout/BlockFormatting/BlockFormattingContext.h: Added.
* layout/BlockFormatting/BlockFormattingState.cpp: Added.
* layout/BlockFormatting/BlockFormattingState.h: Added.
* layout/BlockFormatting/BlockMarginCollapse.cpp: Added.
* layout/BlockFormatting/BlockMarginCollapse.h: Added.
* layout/DisplayTree/DisplayBox.cpp: Added.
* layout/DisplayTree/DisplayBox.h: Added.
* layout/FloatingContext.cpp: Added.
* layout/FloatingContext.h: Added.
* layout/FloatingState.cpp: Added.
* layout/FloatingState.h: Added.
* layout/FormattingContext.cpp: Added.
* layout/FormattingContext.h: Added.
* layout/FormattingState.cpp: Added.
* layout/FormattingState.h: Added.
* layout/InlineFormatting/InlineFormattingContext.cpp: Added.
* layout/InlineFormatting/InlineFormattingContext.h: Added.
* layout/InlineFormatting/InlineFormattingState.cpp: Added.
* layout/InlineFormatting/InlineFormattingState.h: Added.
* layout/LayoutCtx.cpp: Added.
* layout/LayoutCtx.h: Added.
* layout/LayoutTree/LayoutBlockContainer.cpp: Added.
* layout/LayoutTree/LayoutBlockContainer.h: Added.
* layout/LayoutTree/LayoutBox.cpp: Added.
* layout/LayoutTree/LayoutBox.h: Added.
* layout/LayoutTree/LayoutContainer.cpp: Added.
* layout/LayoutTree/LayoutContainer.h: Added.
* layout/LayoutTree/LayoutCtx.h: Added.
* layout/LayoutTree/LayoutInlineBox.cpp: Added.
* layout/LayoutTree/LayoutInlineBox.h: Added.
* layout/LayoutTree/LayoutInlineContainer.cpp: Added.
* layout/LayoutTree/LayoutInlineContainer.h: Added.

Source/WebCore/PAL:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit:

* Configurations/FeatureDefines.xcconfig:

Source/WebKitLegacy/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@230931 268f45cc-cd09-0410-ab3c-d52691b4dbfc
48 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig
Source/WTF/ChangeLog
Source/WTF/wtf/FeatureDefines.h
Source/WebCore/ChangeLog
Source/WebCore/Configurations/FeatureDefines.xcconfig
Source/WebCore/PAL/ChangeLog
Source/WebCore/PAL/Configurations/FeatureDefines.xcconfig
Source/WebCore/Sources.txt
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/layout/FloatingContext.cpp [new file with mode: 0644]
Source/WebCore/layout/FloatingContext.h [new file with mode: 0644]
Source/WebCore/layout/FloatingState.cpp [new file with mode: 0644]
Source/WebCore/layout/FloatingState.h [new file with mode: 0644]
Source/WebCore/layout/FormattingContext.cpp [new file with mode: 0644]
Source/WebCore/layout/FormattingContext.h [new file with mode: 0644]
Source/WebCore/layout/FormattingState.cpp [new file with mode: 0644]
Source/WebCore/layout/FormattingState.h [new file with mode: 0644]
Source/WebCore/layout/LayoutCtx.cpp [new file with mode: 0644]
Source/WebCore/layout/LayoutCtx.h [new file with mode: 0644]
Source/WebCore/layout/blockformatting/BlockFormattingContext.cpp [new file with mode: 0644]
Source/WebCore/layout/blockformatting/BlockFormattingContext.h [new file with mode: 0644]
Source/WebCore/layout/blockformatting/BlockFormattingState.cpp [new file with mode: 0644]
Source/WebCore/layout/blockformatting/BlockFormattingState.h [new file with mode: 0644]
Source/WebCore/layout/blockformatting/BlockMarginCollapse.cpp [new file with mode: 0644]
Source/WebCore/layout/blockformatting/BlockMarginCollapse.h [new file with mode: 0644]
Source/WebCore/layout/displaytree/DisplayBox.cpp [new file with mode: 0644]
Source/WebCore/layout/displaytree/DisplayBox.h [new file with mode: 0644]
Source/WebCore/layout/inlineformatting/InlineFormattingContext.cpp [new file with mode: 0644]
Source/WebCore/layout/inlineformatting/InlineFormattingContext.h [new file with mode: 0644]
Source/WebCore/layout/inlineformatting/InlineFormattingState.cpp [new file with mode: 0644]
Source/WebCore/layout/inlineformatting/InlineFormattingState.h [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutBlockContainer.cpp [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutBlockContainer.h [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutBox.cpp [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutBox.h [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutContainer.cpp [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutContainer.h [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutInlineBox.cpp [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutInlineBox.h [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutInlineContainer.cpp [new file with mode: 0644]
Source/WebCore/layout/layouttree/LayoutInlineContainer.h [new file with mode: 0644]
Source/WebKit/ChangeLog
Source/WebKit/Configurations/FeatureDefines.xcconfig
Source/WebKitLegacy/mac/ChangeLog
Source/WebKitLegacy/mac/Configurations/FeatureDefines.xcconfig
Tools/ChangeLog
Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig