Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(53)

Side by Side Diff: Source/core/layout/line/BreakingContextInlineHeaders.h

Issue 763173003: Convert RenderBlockFlow code to use FloatingObject references (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: addressed review comments Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ight reserved. 3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ight reserved.
4 * Copyright (C) 2010 Google Inc. All rights reserved. 4 * Copyright (C) 2010 Google Inc. All rights reserved.
5 * Copyright (C) 2013 Adobe Systems Incorporated. 5 * Copyright (C) 2013 Adobe Systems Incorporated.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after
364 } 364 }
365 365
366 inline void BreakingContext::handleFloat() 366 inline void BreakingContext::handleFloat()
367 { 367 {
368 LayoutBox* floatBox = toLayoutBox(m_current.object()); 368 LayoutBox* floatBox = toLayoutBox(m_current.object());
369 FloatingObject* floatingObject = m_block->insertFloatingObject(*floatBox); 369 FloatingObject* floatingObject = m_block->insertFloatingObject(*floatBox);
370 // check if it fits in the current line. 370 // check if it fits in the current line.
371 // If it does, position it now, otherwise, position 371 // If it does, position it now, otherwise, position
372 // it after moving to next line (in newLine() func) 372 // it after moving to next line (in newLine() func)
373 // FIXME: Bug 110372: Properly position multiple stacked floats with non-rec tangular shape outside. 373 // FIXME: Bug 110372: Properly position multiple stacked floats with non-rec tangular shape outside.
374 if (m_floatsFitOnLine && m_width.fitsOnLine(m_block->logicalWidthForFloat(fl oatingObject).toFloat(), ExcludeWhitespace)) { 374 if (m_floatsFitOnLine && m_width.fitsOnLine(m_block->logicalWidthForFloat(*f loatingObject).toFloat(), ExcludeWhitespace)) {
375 m_block->positionNewFloatOnLine(floatingObject, m_lastFloatFromPreviousL ine, m_lineInfo, m_width); 375 m_block->positionNewFloatOnLine(*floatingObject, m_lastFloatFromPrevious Line, m_lineInfo, m_width);
376 if (m_lineBreak.object() == m_current.object()) { 376 if (m_lineBreak.object() == m_current.object()) {
377 ASSERT(!m_lineBreak.offset()); 377 ASSERT(!m_lineBreak.offset());
378 m_lineBreak.increment(); 378 m_lineBreak.increment();
379 } 379 }
380 } else { 380 } else {
381 m_floatsFitOnLine = false; 381 m_floatsFitOnLine = false;
382 } 382 }
383 // Update prior line break context characters, using U+FFFD (OBJECT REPLACEM ENT CHARACTER) for floating element. 383 // Update prior line break context characters, using U+FFFD (OBJECT REPLACEM ENT CHARACTER) for floating element.
384 m_renderTextInfo.m_lineBreakIterator.updatePriorContext(replacementCharacter ); 384 m_renderTextInfo.m_lineBreakIterator.updatePriorContext(replacementCharacter );
385 } 385 }
(...skipping 505 matching lines...) Expand 10 before | Expand all | Expand 10 after
891 891
892 if (style.textIndentType() == TextIndentHanging) 892 if (style.textIndentType() == TextIndentHanging)
893 shouldIndentText = shouldIndentText == IndentText ? DoNotIndentText : In dentText; 893 shouldIndentText = shouldIndentText == IndentText ? DoNotIndentText : In dentText;
894 894
895 return shouldIndentText; 895 return shouldIndentText;
896 } 896 }
897 897
898 } 898 }
899 899
900 #endif // BreakingContextInlineHeaders_h 900 #endif // BreakingContextInlineHeaders_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698