OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
229 // Place the LayoutRubyText such that its bottom is flush with the lineTop o
f the first line of the LayoutRubyBase. | 229 // Place the LayoutRubyText such that its bottom is flush with the lineTop o
f the first line of the LayoutRubyBase. |
230 LayoutUnit lastLineRubyTextBottom = rt->logicalHeight(); | 230 LayoutUnit lastLineRubyTextBottom = rt->logicalHeight(); |
231 LayoutUnit firstLineRubyTextTop; | 231 LayoutUnit firstLineRubyTextTop; |
232 RootInlineBox* rootBox = rt->lastRootBox(); | 232 RootInlineBox* rootBox = rt->lastRootBox(); |
233 if (rootBox) { | 233 if (rootBox) { |
234 // In order to align, we have to ignore negative leading. | 234 // In order to align, we have to ignore negative leading. |
235 firstLineRubyTextTop = rt->firstRootBox()->logicalTopLayoutOverflow(); | 235 firstLineRubyTextTop = rt->firstRootBox()->logicalTopLayoutOverflow(); |
236 lastLineRubyTextBottom = rootBox->logicalBottomLayoutOverflow(); | 236 lastLineRubyTextBottom = rootBox->logicalBottomLayoutOverflow(); |
237 } | 237 } |
238 | 238 |
239 if (style()->isFlippedLinesWritingMode() == (style()->rubyPosition() == Ruby
PositionAfter)) { | 239 if (style()->isFlippedLinesWritingMode() == (style()->getRubyPosition() == R
ubyPositionAfter)) { |
240 LayoutUnit firstLineTop; | 240 LayoutUnit firstLineTop; |
241 if (LayoutRubyBase* rb = rubyBase()) { | 241 if (LayoutRubyBase* rb = rubyBase()) { |
242 RootInlineBox* rootBox = rb->firstRootBox(); | 242 RootInlineBox* rootBox = rb->firstRootBox(); |
243 if (rootBox) | 243 if (rootBox) |
244 firstLineTop = rootBox->logicalTopLayoutOverflow(); | 244 firstLineTop = rootBox->logicalTopLayoutOverflow(); |
245 firstLineTop += rb->logicalTop(); | 245 firstLineTop += rb->logicalTop(); |
246 } | 246 } |
247 | 247 |
248 rt->setLogicalTop(-lastLineRubyTextBottom + firstLineTop); | 248 rt->setLogicalTop(-lastLineRubyTextBottom + firstLineTop); |
249 } else { | 249 } else { |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
324 case U_LB_GLUE: | 324 case U_LB_GLUE: |
325 case U_LB_OPEN_PUNCTUATION: | 325 case U_LB_OPEN_PUNCTUATION: |
326 return false; | 326 return false; |
327 default: | 327 default: |
328 break; | 328 break; |
329 } | 329 } |
330 return true; | 330 return true; |
331 } | 331 } |
332 | 332 |
333 } // namespace blink | 333 } // namespace blink |
OLD | NEW |