1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-18 21:25:07 +00:00
serenity/Libraries/LibHTML/Layout
Andreas Kling f3f0b08d43 LibHTML: Build some foundation for text selection
Add LayoutPosition and LayoutRange classes. The layout tree root node
now has a selection() LayoutRange. It's essentially a start and end
LayoutPosition.

A LayoutPosition is a LayoutNode, and an optional index into that node.
The index is only relevant for text nodes, where it's the character
index into the rendered text.

HtmlView now updates the selection start/end of the LayoutDocument when
clicking and dragging with the left mouse button.

We don't paint the selection yet, and there's no way to copy what's
selected. It only exists as a LayoutRange.
2019-11-05 22:13:26 +01:00
..
BoxModelMetrics.cpp LibHTML: Rename ComputedStyle to BoxModelMetrics 2019-10-04 15:50:50 +02:00
BoxModelMetrics.h LibHTML: Rename ComputedStyle to BoxModelMetrics 2019-10-04 15:50:50 +02:00
LayoutBlock.cpp LibHTML: Build some foundation for text selection 2019-11-05 22:13:26 +01:00
LayoutBlock.h LibHTML+Browser: Support scrolling to anchor with <a href="#foo"> 2019-10-20 10:07:26 +02:00
LayoutBox.cpp LibHTML: Implement basic tiled background image support 2019-10-19 11:49:46 +02:00
LayoutBox.h LibHTML: Implement basic tiled background image support 2019-10-19 11:49:46 +02:00
LayoutBreak.cpp LibHTML: Introduce LayoutBox and LayoutNodeWithStyleAndBoxModelMetrics 2019-10-15 16:48:38 +02:00
LayoutBreak.h LibHTML: Introduce LayoutBox and LayoutNodeWithStyleAndBoxModelMetrics 2019-10-15 16:48:38 +02:00
LayoutDocument.cpp LibHTML: Introduce LayoutBox and LayoutNodeWithStyleAndBoxModelMetrics 2019-10-15 16:48:38 +02:00
LayoutDocument.h LibHTML: Build some foundation for text selection 2019-11-05 22:13:26 +01:00
LayoutImage.cpp LibHTML: Rename HTMLImageElement::m_image_loader => m_image_decoder 2019-10-20 12:55:55 +02:00
LayoutImage.h LibHTML: Implement basic layout for inline <img alt> 2019-10-05 23:29:01 +02:00
LayoutInline.cpp LibHTML: Introduce LayoutBox and LayoutNodeWithStyleAndBoxModelMetrics 2019-10-15 16:48:38 +02:00
LayoutInline.h LibHTML: Introduce LayoutBox and LayoutNodeWithStyleAndBoxModelMetrics 2019-10-15 16:48:38 +02:00
LayoutListItem.cpp LibHTML: Add some convenient geometry getters on LayoutNode 2019-10-13 18:47:16 +02:00
LayoutListItem.h LibHTML: Add LayoutNode classes for "display: list-item" and its marker 2019-10-11 23:16:53 +02:00
LayoutListItemMarker.cpp LibHTML: Use the correct inherited color for LayoutListItemMarker 2019-10-19 11:54:28 +02:00
LayoutListItemMarker.h LibHTML: Introduce LayoutBox and LayoutNodeWithStyleAndBoxModelMetrics 2019-10-15 16:48:38 +02:00
LayoutNode.cpp LibHTML: Add a convenient way to get from any layout node to the root 2019-11-04 20:45:47 +01:00
LayoutNode.h LibHTML: Build some foundation for text selection 2019-11-05 22:13:26 +01:00
LayoutPosition.h LibHTML: Build some foundation for text selection 2019-11-05 22:13:26 +01:00
LayoutReplaced.cpp LibHTML: Replaced elements should not break lines at start of line 2019-10-19 09:44:40 +02:00
LayoutReplaced.h LibHTML: Introduce LayoutBox and LayoutNodeWithStyleAndBoxModelMetrics 2019-10-15 16:48:38 +02:00
LayoutTable.cpp LibHTML: Add typed child/sibling traversal helpers for LayoutNode 2019-10-18 09:38:12 +02:00
LayoutTable.h LibHTML: Add typed child/sibling traversal helpers for LayoutNode 2019-10-18 09:38:12 +02:00
LayoutTableCell.cpp LibHTML: Add stub classes for basic table layout 2019-10-17 23:39:31 +02:00
LayoutTableCell.h LibHTML: Add typed child/sibling traversal helpers for LayoutNode 2019-10-18 09:38:12 +02:00
LayoutTableRow.cpp LibHTML: Add typed child/sibling traversal helpers for LayoutNode 2019-10-18 09:38:12 +02:00
LayoutTableRow.h LibHTML: Add typed child/sibling traversal helpers for LayoutNode 2019-10-18 09:38:12 +02:00
LayoutText.cpp LibHTML: Implement "text-align: justify" 2019-10-20 12:55:55 +02:00
LayoutText.h LibHTML: Add is<T> and to<T> helpers for LayoutNode class family 2019-10-15 14:24:26 +02:00
LayoutTreeBuilder.cpp LibHTML: Hard-code LayoutTable to never have inline children 2019-10-17 23:39:31 +02:00
LayoutTreeBuilder.h LibHTML: Move layout tree building to a LayoutTreeBuilder class 2019-10-15 14:24:26 +02:00
LineBox.cpp LibHTML: Remove trailing whitespace in line boxes 2019-10-20 17:20:20 +02:00
LineBox.h LibHTML: Remove trailing whitespace in line boxes 2019-10-20 17:20:20 +02:00
LineBoxFragment.cpp LibHTML: Build some foundation for text selection 2019-11-05 22:13:26 +01:00
LineBoxFragment.h LibHTML: Build some foundation for text selection 2019-11-05 22:13:26 +01:00