diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-12-10 16:19:40 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-12-10 16:01:50 +0000 |
commit | 51f6c2793adab2d864b3d2b360000ef8db1d3e92 (patch) | |
tree | 835b3b4446b012c75e80177cef9fbe6972cc7dbe /chromium/third_party/blink/renderer/core/layout/ng/inline/ng_inline_items_builder.h | |
parent | 6036726eb981b6c4b42047513b9d3f4ac865daac (diff) | |
download | qtwebengine-chromium-51f6c2793adab2d864b3d2b360000ef8db1d3e92.tar.gz |
BASELINE: Update Chromium to 71.0.3578.93
Change-Id: I6a32086c33670e1b033f8b10e6bf1fd4da1d105d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/third_party/blink/renderer/core/layout/ng/inline/ng_inline_items_builder.h')
-rw-r--r-- | chromium/third_party/blink/renderer/core/layout/ng/inline/ng_inline_items_builder.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/chromium/third_party/blink/renderer/core/layout/ng/inline/ng_inline_items_builder.h b/chromium/third_party/blink/renderer/core/layout/ng/inline/ng_inline_items_builder.h index 0d5b52ad314..b72fb3970ff 100644 --- a/chromium/third_party/blink/renderer/core/layout/ng/inline/ng_inline_items_builder.h +++ b/chromium/third_party/blink/renderer/core/layout/ng/inline/ng_inline_items_builder.h @@ -8,6 +8,7 @@ #include "third_party/blink/renderer/core/core_export.h" #include "third_party/blink/renderer/core/layout/ng/inline/empty_offset_mapping_builder.h" #include "third_party/blink/renderer/core/layout/ng/inline/ng_inline_item.h" +#include "third_party/blink/renderer/core/layout/ng/inline/ng_line_height_metrics.h" #include "third_party/blink/renderer/core/layout/ng/inline/ng_offset_mapping_builder.h" #include "third_party/blink/renderer/platform/wtf/allocator.h" #include "third_party/blink/renderer/platform/wtf/text/string_builder.h" @@ -119,6 +120,19 @@ class NGInlineItemsBuilderTemplate { // white space is collapsed. OffsetMappingBuilder mapping_builder_; + // Keep track of inline boxes to compute ShouldCreateBoxFragment. + struct BoxInfo { + unsigned item_index; + bool should_create_box_fragment; + const ComputedStyle& style; + NGLineHeightMetrics text_metrics; + + BoxInfo(unsigned item_index, const NGInlineItem& item); + bool ShouldCreateBoxFragmentForChild(const BoxInfo& child) const; + void SetShouldCreateBoxFragment(Vector<NGInlineItem>* items); + }; + Vector<BoxInfo> boxes_; + struct BidiContext { LayoutObject* node; UChar enter; @@ -157,6 +171,14 @@ class NGInlineItemsBuilderTemplate { void RestoreTrailingCollapsibleSpaceIfRemoved(); void RestoreTrailingCollapsibleSpace(NGInlineItem*); + void AppendTextItem(const String&, + unsigned start, + unsigned end, + const ComputedStyle* style, + LayoutText* layout_object); + + void AppendGeneratedBreakOpportunity(const ComputedStyle*, LayoutObject*); + void Exit(LayoutObject*); }; |