| 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 |