| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. | 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. |
| 3 * All rights reserved. | 3 * All rights reserved. |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 1120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1131 LayoutRect& logical_layout_overflow, | 1131 LayoutRect& logical_layout_overflow, |
| 1132 LayoutRect& logical_visual_overflow) { | 1132 LayoutRect& logical_visual_overflow) { |
| 1133 LineLayoutBox box = LineLayoutBox(inline_box->GetLineLayoutItem()); | 1133 LineLayoutBox box = LineLayoutBox(inline_box->GetLineLayoutItem()); |
| 1134 | 1134 |
| 1135 // Visual overflow only propagates if the box doesn't have a self-painting | 1135 // Visual overflow only propagates if the box doesn't have a self-painting |
| 1136 // layer. This rectangle does not include transforms or relative positioning | 1136 // layer. This rectangle does not include transforms or relative positioning |
| 1137 // (since those objects always have self-painting layers), but it does need to | 1137 // (since those objects always have self-painting layers), but it does need to |
| 1138 // be adjusted for writing-mode differences. | 1138 // be adjusted for writing-mode differences. |
| 1139 if (!box.HasSelfPaintingLayer()) { | 1139 if (!box.HasSelfPaintingLayer()) { |
| 1140 LayoutRect child_logical_visual_overflow = | 1140 LayoutRect child_logical_visual_overflow = |
| 1141 box.LogicalVisualOverflowRectForPropagation( | 1141 box.LogicalVisualOverflowRectForPropagation(); |
| 1142 GetLineLayoutItem().StyleRef()); | |
| 1143 child_logical_visual_overflow.Move(inline_box->LogicalLeft(), | 1142 child_logical_visual_overflow.Move(inline_box->LogicalLeft(), |
| 1144 inline_box->LogicalTop()); | 1143 inline_box->LogicalTop()); |
| 1145 logical_visual_overflow.Unite(child_logical_visual_overflow); | 1144 logical_visual_overflow.Unite(child_logical_visual_overflow); |
| 1146 } | 1145 } |
| 1147 | 1146 |
| 1148 // Layout overflow internal to the child box only propagates if the child box | 1147 // Layout overflow internal to the child box only propagates if the child box |
| 1149 // doesn't have overflow clip set. Otherwise the child border box propagates | 1148 // doesn't have overflow clip set. Otherwise the child border box propagates |
| 1150 // as layout overflow. This rectangle must include transforms and relative | 1149 // as layout overflow. This rectangle must include transforms and relative |
| 1151 // positioning and be adjusted for writing-mode differences. | 1150 // positioning and be adjusted for writing-mode differences. |
| 1152 LayoutRect child_logical_layout_overflow = | 1151 LayoutRect child_logical_layout_overflow = |
| 1153 box.LogicalLayoutOverflowRectForPropagation( | 1152 box.LogicalLayoutOverflowRectForPropagation(); |
| 1154 GetLineLayoutItem().StyleRef()); | |
| 1155 child_logical_layout_overflow.Move(inline_box->LogicalLeft(), | 1153 child_logical_layout_overflow.Move(inline_box->LogicalLeft(), |
| 1156 inline_box->LogicalTop()); | 1154 inline_box->LogicalTop()); |
| 1157 logical_layout_overflow.Unite(child_logical_layout_overflow); | 1155 logical_layout_overflow.Unite(child_logical_layout_overflow); |
| 1158 } | 1156 } |
| 1159 | 1157 |
| 1160 static void ComputeGlyphOverflow( | 1158 static void ComputeGlyphOverflow( |
| 1161 InlineTextBox* text, | 1159 InlineTextBox* text, |
| 1162 const LineLayoutText& layout_text, | 1160 const LineLayoutText& layout_text, |
| 1163 GlyphOverflowAndFallbackFontsMap& text_box_data_map) { | 1161 GlyphOverflowAndFallbackFontsMap& text_box_data_map) { |
| 1164 HashSet<const SimpleFontData*> fallback_fonts; | 1162 HashSet<const SimpleFontData*> fallback_fonts; |
| (...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1733 DCHECK_EQ(child->prevOnLine(), prev); | 1731 DCHECK_EQ(child->prevOnLine(), prev); |
| 1734 prev = child; | 1732 prev = child; |
| 1735 } | 1733 } |
| 1736 DCHECK_EQ(prev, m_lastChild); | 1734 DCHECK_EQ(prev, m_lastChild); |
| 1737 #endif | 1735 #endif |
| 1738 } | 1736 } |
| 1739 | 1737 |
| 1740 #endif | 1738 #endif |
| 1741 | 1739 |
| 1742 } // namespace blink | 1740 } // namespace blink |
| OLD | NEW |