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

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

Issue 298563002: Simplify Writing-Mode Related Calculation of Margins (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 6 years, 6 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/core/rendering/RenderBox.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 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved. 4 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 18 matching lines...) Expand all
29 #include "core/rendering/shapes/ShapeOutsideInfo.h" 29 #include "core/rendering/shapes/ShapeOutsideInfo.h"
30 #include "platform/scroll/ScrollTypes.h" 30 #include "platform/scroll/ScrollTypes.h"
31 31
32 namespace WebCore { 32 namespace WebCore {
33 33
34 struct PaintInfo; 34 struct PaintInfo;
35 35
36 enum SizeType { MainOrPreferredSize, MinSize, MaxSize }; 36 enum SizeType { MainOrPreferredSize, MinSize, MaxSize };
37 enum AvailableLogicalHeightType { ExcludeMarginBorderPadding, IncludeMarginBorde rPadding }; 37 enum AvailableLogicalHeightType { ExcludeMarginBorderPadding, IncludeMarginBorde rPadding };
38 enum OverlayScrollbarSizeRelevancy { IgnoreOverlayScrollbarSize, IncludeOverlayS crollbarSize }; 38 enum OverlayScrollbarSizeRelevancy { IgnoreOverlayScrollbarSize, IncludeOverlayS crollbarSize };
39 enum MarginDirection { BlockDirection, InlineDirection };
39 40
40 enum ShouldComputePreferred { ComputeActual, ComputePreferred }; 41 enum ShouldComputePreferred { ComputeActual, ComputePreferred };
41 42
42 enum ContentsClipBehavior { ForceContentsClip, SkipContentsClipIfPossible }; 43 enum ContentsClipBehavior { ForceContentsClip, SkipContentsClipIfPossible };
43 44
44 enum ScrollOffsetClamping { 45 enum ScrollOffsetClamping {
45 ScrollOffsetUnclamped, 46 ScrollOffsetUnclamped,
46 ScrollOffsetClamped 47 ScrollOffsetClamped
47 }; 48 };
48 49
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 LayoutUnit m_start; 379 LayoutUnit m_start;
379 LayoutUnit m_end; 380 LayoutUnit m_end;
380 }; 381 };
381 struct LogicalExtentComputedValues { 382 struct LogicalExtentComputedValues {
382 LogicalExtentComputedValues() { } 383 LogicalExtentComputedValues() { }
383 384
384 LayoutUnit m_extent; 385 LayoutUnit m_extent;
385 LayoutUnit m_position; 386 LayoutUnit m_position;
386 ComputedMarginValues m_margins; 387 ComputedMarginValues m_margins;
387 }; 388 };
388 // Resolve auto margins in the inline direction of the containing block so t hat objects can be pushed to the start, middle or end 389 // Resolve auto margins in the chosen direction of the containing block so t hat objects can be pushed to the start, middle or end
389 // of the containing block. 390 // of the containing block.
390 void computeInlineDirectionMargins(RenderBlock* containingBlock, LayoutUnit containerWidth, LayoutUnit childWidth, LayoutUnit& marginStart, LayoutUnit& marg inEnd) const; 391 void computeMarginsForDirection(MarginDirection forDirection, const RenderBl ock* containingBlock, LayoutUnit containerWidth, LayoutUnit childWidth, LayoutUn it& marginStart, LayoutUnit& marginEnd, Length marginStartLength, Length marginS tartEnd) const;
391 392
392 // Used to resolve margins in the containing block's block-flow direction. 393 // Used to resolve margins in the containing block's block-flow direction.
393 void computeBlockDirectionMargins(const RenderBlock* containingBlock, Layout Unit& marginBefore, LayoutUnit& marginAfter) const;
394 void computeAndSetBlockDirectionMargins(const RenderBlock* containingBlock); 394 void computeAndSetBlockDirectionMargins(const RenderBlock* containingBlock);
395 395
396 virtual LayoutUnit offsetFromLogicalTopOfFirstPage() const; 396 virtual LayoutUnit offsetFromLogicalTopOfFirstPage() const;
397 397
398 void positionLineBox(InlineBox*); 398 void positionLineBox(InlineBox*);
399 399
400 virtual InlineBox* createInlineBox(); 400 virtual InlineBox* createInlineBox();
401 void dirtyLineBoxes(bool fullLayout); 401 void dirtyLineBoxes(bool fullLayout);
402 402
403 // For inline replaced elements, this function returns the inline box that o wns us. Enables 403 // For inline replaced elements, this function returns the inline box that o wns us. Enables
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after
774 if (UNLIKELY(inlineBoxWrapper() != 0)) 774 if (UNLIKELY(inlineBoxWrapper() != 0))
775 deleteLineBoxWrapper(); 775 deleteLineBoxWrapper();
776 } 776 }
777 777
778 ensureRareData().m_inlineBoxWrapper = boxWrapper; 778 ensureRareData().m_inlineBoxWrapper = boxWrapper;
779 } 779 }
780 780
781 } // namespace WebCore 781 } // namespace WebCore
782 782
783 #endif // RenderBox_h 783 #endif // RenderBox_h
OLDNEW
« no previous file with comments | « no previous file | Source/core/rendering/RenderBox.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698