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

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

Issue 669803002: Optimize for horizontal writing mode (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: w compile fix Created 6 years, 2 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 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved. 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after
523 bool isOutOfFlowPositioned() const { return m_bitfields.isOutOfFlowPositione d(); } // absolute or fixed positioning 523 bool isOutOfFlowPositioned() const { return m_bitfields.isOutOfFlowPositione d(); } // absolute or fixed positioning
524 bool isRelPositioned() const { return m_bitfields.isRelPositioned(); } // re lative positioning 524 bool isRelPositioned() const { return m_bitfields.isRelPositioned(); } // re lative positioning
525 bool isPositioned() const { return m_bitfields.isPositioned(); } 525 bool isPositioned() const { return m_bitfields.isPositioned(); }
526 526
527 bool isText() const { return m_bitfields.isText(); } 527 bool isText() const { return m_bitfields.isText(); }
528 bool isBox() const { return m_bitfields.isBox(); } 528 bool isBox() const { return m_bitfields.isBox(); }
529 bool isInline() const { return m_bitfields.isInline(); } // inline object 529 bool isInline() const { return m_bitfields.isInline(); } // inline object
530 bool isDragging() const { return m_bitfields.isDragging(); } 530 bool isDragging() const { return m_bitfields.isDragging(); }
531 bool isReplaced() const { return m_bitfields.isReplaced(); } // a "replaced" element (see CSS) 531 bool isReplaced() const { return m_bitfields.isReplaced(); } // a "replaced" element (see CSS)
532 bool isHorizontalWritingMode() const { return m_bitfields.horizontalWritingM ode(); } 532 bool isHorizontalWritingMode() const { return m_bitfields.horizontalWritingM ode(); }
533 bool hasFlippedBlocksWritingMode() const
534 {
535 return document().containsAnyRareWritingMode()
536 && style()->slowIsFlippedBlocksWritingMode();
537 }
533 538
534 bool hasLayer() const { return m_bitfields.hasLayer(); } 539 bool hasLayer() const { return m_bitfields.hasLayer(); }
535 540
536 // "Box decoration background" includes all box decorations and backgrounds 541 // "Box decoration background" includes all box decorations and backgrounds
537 // that are painted as the background of the object. It includes borders, 542 // that are painted as the background of the object. It includes borders,
538 // box-shadows, background-color and background-image, etc. 543 // box-shadows, background-color and background-image, etc.
539 enum BoxDecorationBackgroundState { 544 enum BoxDecorationBackgroundState {
540 NoBoxDecorationBackground, 545 NoBoxDecorationBackground,
541 HasBoxDecorationBackgroundObscurationStatusInvalid, 546 HasBoxDecorationBackgroundObscurationStatusInvalid,
542 HasBoxDecorationBackgroundKnownToBeObscured, 547 HasBoxDecorationBackgroundKnownToBeObscured,
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after
1037 bool shouldCheckForPaintInvalidation(const PaintInvalidationState& paintInva lidationState) const 1042 bool shouldCheckForPaintInvalidation(const PaintInvalidationState& paintInva lidationState) const
1038 { 1043 {
1039 return paintInvalidationState.forceCheckForPaintInvalidation() || should CheckForPaintInvalidationRegardlessOfPaintInvalidationState(); 1044 return paintInvalidationState.forceCheckForPaintInvalidation() || should CheckForPaintInvalidationRegardlessOfPaintInvalidationState();
1040 } 1045 }
1041 1046
1042 bool shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState() con st 1047 bool shouldCheckForPaintInvalidationRegardlessOfPaintInvalidationState() con st
1043 { 1048 {
1044 return layoutDidGetCalledSinceLastFrame() || mayNeedPaintInvalidation() || shouldDoFullPaintInvalidation() || shouldInvalidateSelection(); 1049 return layoutDidGetCalledSinceLastFrame() || mayNeedPaintInvalidation() || shouldDoFullPaintInvalidation() || shouldInvalidateSelection();
1045 } 1050 }
1046 1051
1047 bool supportsPaintInvalidationStateCachedOffsets() const { return !hasColumn s() && !hasTransformRelatedProperty() && !hasReflection() && !style()->isFlipped BlocksWritingMode(); } 1052 bool supportsPaintInvalidationStateCachedOffsets() const { return !hasColumn s() && !hasTransformRelatedProperty() && !hasReflection() && !style()->slowIsFli ppedBlocksWritingMode(); }
1048 1053
1049 void setNeedsOverflowRecalcAfterStyleChange(); 1054 void setNeedsOverflowRecalcAfterStyleChange();
1050 void markContainingBlocksForOverflowRecalc(); 1055 void markContainingBlocksForOverflowRecalc();
1051 1056
1052 virtual LayoutRect viewRect() const; 1057 virtual LayoutRect viewRect() const;
1053 1058
1054 protected: 1059 protected:
1055 enum RenderObjectType { 1060 enum RenderObjectType {
1056 RenderObjectBr, 1061 RenderObjectBr,
1057 RenderObjectCanvas, 1062 RenderObjectCanvas,
(...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after
1610 void showTree(const blink::RenderObject*); 1615 void showTree(const blink::RenderObject*);
1611 void showLineTree(const blink::RenderObject*); 1616 void showLineTree(const blink::RenderObject*);
1612 void showRenderTree(const blink::RenderObject* object1); 1617 void showRenderTree(const blink::RenderObject* object1);
1613 // We don't make object2 an optional parameter so that showRenderTree 1618 // We don't make object2 an optional parameter so that showRenderTree
1614 // can be called from gdb easily. 1619 // can be called from gdb easily.
1615 void showRenderTree(const blink::RenderObject* object1, const blink::RenderObjec t* object2); 1620 void showRenderTree(const blink::RenderObject* object1, const blink::RenderObjec t* object2);
1616 1621
1617 #endif 1622 #endif
1618 1623
1619 #endif // RenderObject_h 1624 #endif // RenderObject_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698