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

Side by Side Diff: Source/core/rendering/RenderBlockFlow.h

Issue 39783004: Fake Bidi run does not need to be always created (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Trying again Created 7 years, 1 month 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
« no previous file with comments | « Source/core/rendering/InlineIterator.h ('k') | Source/core/rendering/RenderBlockLineLayout.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003-2013 Apple Inc. All rights reserved. 5 * Copyright (C) 2003-2013 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
7 * Copyright (C) 2013 Google Inc. All rights reserved. 7 * Copyright (C) 2013 Google Inc. All rights reserved.
8 * 8 *
9 * Redistribution and use in source and binary forms, with or without 9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions are 10 * modification, are permitted provided that the following conditions are
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 335
336 friend class BreakingContext; // FIXME: It uses insertFloatingObject and pos itionNewFloatOnLine, if we move those out from the private scope/add a helper to LineBreaker, we can remove this friend 336 friend class BreakingContext; // FIXME: It uses insertFloatingObject and pos itionNewFloatOnLine, if we move those out from the private scope/add a helper to LineBreaker, we can remove this friend
337 friend class MarginInfo; 337 friend class MarginInfo;
338 friend class LineBreaker; 338 friend class LineBreaker;
339 friend class LineWidth; // needs to know FloatingObject 339 friend class LineWidth; // needs to know FloatingObject
340 340
341 // FIXME-BLOCKFLOW: These methods have implementations in 341 // FIXME-BLOCKFLOW: These methods have implementations in
342 // RenderBlockLineLayout. They should be moved to the proper header once the 342 // RenderBlockLineLayout. They should be moved to the proper header once the
343 // line layout code is separated from RenderBlock and RenderBlockFlow. 343 // line layout code is separated from RenderBlock and RenderBlockFlow.
344 // START METHODS DEFINED IN RenderBlockLineLayout 344 // START METHODS DEFINED IN RenderBlockLineLayout
345 public:
346 static void appendRunsForObject(BidiRunList<BidiRun>&, int start, int end, R enderObject*, InlineBidiResolver&);
347
348 private: 345 private:
349 InlineFlowBox* createLineBoxes(RenderObject*, const LineInfo&, InlineBox* ch ildBox, bool startsNewSegment); 346 InlineFlowBox* createLineBoxes(RenderObject*, const LineInfo&, InlineBox* ch ildBox, bool startsNewSegment);
350 RootInlineBox* constructLine(BidiRunList<BidiRun>&, const LineInfo&); 347 RootInlineBox* constructLine(BidiRunList<BidiRun>&, const LineInfo&);
351 void setMarginsForRubyRun(BidiRun*, RenderRubyRun*, RenderObject*, const Lin eInfo&); 348 void setMarginsForRubyRun(BidiRun*, RenderRubyRun*, RenderObject*, const Lin eInfo&);
352 void computeInlineDirectionPositionsForLine(RootInlineBox*, const LineInfo&, BidiRun* firstRun, BidiRun* trailingSpaceRun, bool reachedEnd, GlyphOverflowAnd FallbackFontsMap&, VerticalPositionCache&, WordMeasurements&); 349 void computeInlineDirectionPositionsForLine(RootInlineBox*, const LineInfo&, BidiRun* firstRun, BidiRun* trailingSpaceRun, bool reachedEnd, GlyphOverflowAnd FallbackFontsMap&, VerticalPositionCache&, WordMeasurements&);
353 BidiRun* computeInlineDirectionPositionsForSegment(RootInlineBox*, const Lin eInfo&, ETextAlign, float& logicalLeft, 350 BidiRun* computeInlineDirectionPositionsForSegment(RootInlineBox*, const Lin eInfo&, ETextAlign, float& logicalLeft,
354 float& availableLogicalWidth, BidiRun* firstRun, BidiRun* trailingSpaceR un, GlyphOverflowAndFallbackFontsMap& textBoxDataMap, VerticalPositionCache&, Wo rdMeasurements&); 351 float& availableLogicalWidth, BidiRun* firstRun, BidiRun* trailingSpaceR un, GlyphOverflowAndFallbackFontsMap& textBoxDataMap, VerticalPositionCache&, Wo rdMeasurements&);
355 void computeBlockDirectionPositionsForLine(RootInlineBox*, BidiRun*, GlyphOv erflowAndFallbackFontsMap&, VerticalPositionCache&); 352 void computeBlockDirectionPositionsForLine(RootInlineBox*, BidiRun*, GlyphOv erflowAndFallbackFontsMap&, VerticalPositionCache&);
356 BidiRun* handleTrailingSpaces(BidiRunList<BidiRun>&, BidiContext*); 353 BidiRun* handleTrailingSpaces(BidiRunList<BidiRun>&, BidiContext*);
357 void appendFloatingObjectToLastLine(FloatingObject*); 354 void appendFloatingObjectToLastLine(FloatingObject*);
(...skipping 21 matching lines...) Expand all
379 376
380 // END METHODS DEFINED IN RenderBlockLineLayout 377 // END METHODS DEFINED IN RenderBlockLineLayout
381 378
382 }; 379 };
383 380
384 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlockFlow, isRenderBlockFlow()); 381 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlockFlow, isRenderBlockFlow());
385 382
386 } // namespace WebCore 383 } // namespace WebCore
387 384
388 #endif // RenderBlockFlow_h 385 #endif // RenderBlockFlow_h
OLDNEW
« no previous file with comments | « Source/core/rendering/InlineIterator.h ('k') | Source/core/rendering/RenderBlockLineLayout.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698