mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-27 11:48:32 +00:00
Inline layout is now done by LayoutBlock. Blocks with inline children will split them into line boxes during layout. A LayoutBlock can have zero or more LineBox objects. Each LineBox represents one visual line. A LineBox can have any number of LineBoxFragment children. A fragment is an offset+length into a specific LayoutNode. To paint a LayoutBlock with inline children, we walk its line boxes, and walk their fragments, painting each fragment at a time by calling LineBoxFragment::render(), which in turn calls the LayoutNode via LayoutText::render_fragment(). Hit testing works similarly. This is very incomplete and has many bugs, but should make it easier for us to move forward with this code.
55 lines
1.3 KiB
Makefile
55 lines
1.3 KiB
Makefile
LIBHTML_OBJS = \
|
|
DOM/Node.o \
|
|
DOM/ParentNode.o \
|
|
DOM/Element.o \
|
|
DOM/HTMLElement.o \
|
|
DOM/HTMLAnchorElement.o \
|
|
DOM/HTMLHeadingElement.o \
|
|
DOM/HTMLHeadElement.o \
|
|
DOM/HTMLHRElement.o \
|
|
DOM/HTMLHtmlElement.o \
|
|
DOM/HTMLStyleElement.o \
|
|
DOM/HTMLTitleElement.o \
|
|
DOM/Document.o \
|
|
DOM/Text.o \
|
|
CSS/Selector.o \
|
|
CSS/StyleSheet.o \
|
|
CSS/StyleRule.o \
|
|
CSS/StyleDeclaration.o \
|
|
CSS/StyleValue.o \
|
|
CSS/StyleProperties.o \
|
|
CSS/StyleResolver.o \
|
|
CSS/DefaultStyleSheetSource.o \
|
|
Parser/HTMLParser.o \
|
|
Parser/CSSParser.o \
|
|
Layout/LayoutNode.o \
|
|
Layout/LayoutText.o \
|
|
Layout/LayoutBlock.o \
|
|
Layout/LayoutInline.o \
|
|
Layout/LayoutDocument.o \
|
|
Layout/ComputedStyle.o \
|
|
Layout/LineBox.o \
|
|
Layout/LineBoxFragment.o \
|
|
HtmlView.o \
|
|
Dump.o
|
|
|
|
GENERATED_SOURCES = \
|
|
CSS/DefaultStyleSheetSource.cpp
|
|
|
|
OBJS = $(EXTRA_OBJS) $(LIBHTML_OBJS)
|
|
|
|
LIBRARY = libhtml.a
|
|
DEFINES += -DUSERLAND
|
|
|
|
CSS/DefaultStyleSheetSource.cpp: CSS/Default.css Scripts/GenerateStyleSheetSource.sh
|
|
@echo "GENERATE $@"; Scripts/GenerateStyleSheetSource.sh default_stylesheet_source $< > $@
|
|
|
|
.cpp.o:
|
|
@echo "CXX $<"; $(CXX) $(CXXFLAGS) -o $@ -c $<
|
|
|
|
-include $(OBJS:%.o=%.d)
|
|
|
|
clean:
|
|
@echo "CLEAN"; rm -f $(LIBRARY) $(OBJS) *.d $(GENERATED_SOURCES)
|
|
|