| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef NGInlineItemsBuilder_h | 5 #ifndef NGInlineItemsBuilder_h |
| 6 #define NGInlineItemsBuilder_h | 6 #define NGInlineItemsBuilder_h |
| 7 | 7 |
| 8 #include "core/CoreExport.h" | 8 #include "core/CoreExport.h" |
| 9 #include "core/layout/ng/inline/ng_inline_node.h" | 9 #include "core/layout/ng/inline/ng_inline_node.h" |
| 10 #include "platform/wtf/Allocator.h" | 10 #include "platform/wtf/Allocator.h" |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 UChar character; | 85 UChar character; |
| 86 } OnExitNode; | 86 } OnExitNode; |
| 87 Vector<OnExitNode> exits_; | 87 Vector<OnExitNode> exits_; |
| 88 | 88 |
| 89 enum class CollapsibleSpace { kNone, kSpace, kNewline }; | 89 enum class CollapsibleSpace { kNone, kSpace, kNewline }; |
| 90 | 90 |
| 91 CollapsibleSpace last_collapsible_space_ = CollapsibleSpace::kSpace; | 91 CollapsibleSpace last_collapsible_space_ = CollapsibleSpace::kSpace; |
| 92 bool is_svgtext_ = false; | 92 bool is_svgtext_ = false; |
| 93 bool has_bidi_controls_ = false; | 93 bool has_bidi_controls_ = false; |
| 94 | 94 |
| 95 void AppendWithWhiteSpaceCollapsing(const String&, |
| 96 unsigned start, |
| 97 unsigned end, |
| 98 const ComputedStyle*, |
| 99 LayoutObject*); |
| 100 void AppendWithoutWhiteSpaceCollapsing(const String&, |
| 101 const ComputedStyle*, |
| 102 LayoutObject*); |
| 103 void AppendWithPreservingNewlines(const String&, |
| 104 const ComputedStyle*, |
| 105 LayoutObject*); |
| 106 |
| 107 void AppendForcedBreak(const ComputedStyle*, LayoutObject*); |
| 108 |
| 95 // Because newlines may be removed depends on following characters, newlines | 109 // Because newlines may be removed depends on following characters, newlines |
| 96 // at the end of input string is not added to |text_| but instead | 110 // at the end of input string is not added to |text_| but instead |
| 97 // |has_pending_newline_| flag is set. | 111 // |has_pending_newline_| flag is set. |
| 98 // This function determines whether to add the newline or ignore. | 112 // This function determines whether to add the newline or ignore. |
| 99 void ProcessPendingNewline(const String&, const ComputedStyle*); | 113 void ProcessPendingNewline(const String&, const ComputedStyle*); |
| 100 | 114 |
| 101 // Removes the collapsible space at the end of |text_| if exists. | 115 // Removes the collapsible space at the end of |text_| if exists. |
| 102 void RemoveTrailingCollapsibleSpaceIfExists(unsigned*); | 116 void RemoveTrailingCollapsibleSpaceIfExists(unsigned*); |
| 103 void RemoveTrailingCollapsibleSpace(unsigned*); | 117 void RemoveTrailingCollapsibleSpace(unsigned*); |
| 104 | 118 |
| 105 void RemoveTrailingCollapsibleNewlineIfNeeded(unsigned*, | 119 void RemoveTrailingCollapsibleNewlineIfNeeded(unsigned*, |
| 106 const String&, | 120 const String&, |
| 107 unsigned, | 121 unsigned, |
| 108 const ComputedStyle*); | 122 const ComputedStyle*); |
| 109 | 123 |
| 110 void Enter(LayoutObject*, UChar); | 124 void Enter(LayoutObject*, UChar); |
| 111 void Exit(LayoutObject*); | 125 void Exit(LayoutObject*); |
| 112 }; | 126 }; |
| 113 | 127 |
| 114 } // namespace blink | 128 } // namespace blink |
| 115 | 129 |
| 116 #endif // NGInlineItemsBuilder_h | 130 #endif // NGInlineItemsBuilder_h |
| OLD | NEW |