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

Side by Side Diff: third_party/WebKit/Source/core/style/ComputedStyle.h

Issue 1870663002: Reland main thread position sticky implementation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Only descend into children which have an ancestor overflow layer. Created 4 years, 8 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 * Copyright (C) 2003, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ights reserved. 5 * Copyright (C) 2003, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ights reserved.
6 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com) 6 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com)
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 483 matching lines...) Expand 10 before | Expand all | Expand 10 after
494 // Whether or not a positioned element requires normal flow x/y to be comput ed 494 // Whether or not a positioned element requires normal flow x/y to be comput ed
495 // to determine its position. 495 // to determine its position.
496 bool hasAutoLeftAndRight() const { return left().isAuto() && right().isAuto( ); } 496 bool hasAutoLeftAndRight() const { return left().isAuto() && right().isAuto( ); }
497 bool hasAutoTopAndBottom() const { return top().isAuto() && bottom().isAuto( ); } 497 bool hasAutoTopAndBottom() const { return top().isAuto() && bottom().isAuto( ); }
498 bool hasStaticInlinePosition(bool horizontal) const { return horizontal ? ha sAutoLeftAndRight() : hasAutoTopAndBottom(); } 498 bool hasStaticInlinePosition(bool horizontal) const { return horizontal ? ha sAutoLeftAndRight() : hasAutoTopAndBottom(); }
499 bool hasStaticBlockPosition(bool horizontal) const { return horizontal ? has AutoTopAndBottom() : hasAutoLeftAndRight(); } 499 bool hasStaticBlockPosition(bool horizontal) const { return horizontal ? has AutoTopAndBottom() : hasAutoLeftAndRight(); }
500 500
501 EPosition position() const { return static_cast<EPosition>(noninherited_flag s.position); } 501 EPosition position() const { return static_cast<EPosition>(noninherited_flag s.position); }
502 bool hasOutOfFlowPosition() const { return position() == AbsolutePosition || position() == FixedPosition; } 502 bool hasOutOfFlowPosition() const { return position() == AbsolutePosition || position() == FixedPosition; }
503 bool hasInFlowPosition() const { return position() == RelativePosition || po sition() == StickyPosition; } 503 bool hasInFlowPosition() const { return position() == RelativePosition || po sition() == StickyPosition; }
504 bool hasViewportConstrainedPosition() const { return position() == FixedPosi tion; } 504 bool hasViewportConstrainedPosition() const { return position() == FixedPosi tion || position() == StickyPosition; }
505 EFloat floating() const { return static_cast<EFloat>(noninherited_flags.floa ting); } 505 EFloat floating() const { return static_cast<EFloat>(noninherited_flags.floa ting); }
506 506
507 const Length& width() const { return m_box->width(); } 507 const Length& width() const { return m_box->width(); }
508 const Length& height() const { return m_box->height(); } 508 const Length& height() const { return m_box->height(); }
509 const Length& minWidth() const { return m_box->minWidth(); } 509 const Length& minWidth() const { return m_box->minWidth(); }
510 const Length& maxWidth() const { return m_box->maxWidth(); } 510 const Length& maxWidth() const { return m_box->maxWidth(); }
511 const Length& minHeight() const { return m_box->minHeight(); } 511 const Length& minHeight() const { return m_box->minHeight(); }
512 const Length& maxHeight() const { return m_box->maxHeight(); } 512 const Length& maxHeight() const { return m_box->maxHeight(); }
513 513
514 const Length& logicalWidth() const { return isHorizontalWritingMode() ? widt h() : height(); } 514 const Length& logicalWidth() const { return isHorizontalWritingMode() ? widt h() : height(); }
(...skipping 1531 matching lines...) Expand 10 before | Expand all | Expand 10 after
2046 } 2046 }
2047 2047
2048 inline bool ComputedStyle::hasPseudoElementStyle() const 2048 inline bool ComputedStyle::hasPseudoElementStyle() const
2049 { 2049 {
2050 return noninherited_flags.pseudoBits & ElementPseudoIdMask; 2050 return noninherited_flags.pseudoBits & ElementPseudoIdMask;
2051 } 2051 }
2052 2052
2053 } // namespace blink 2053 } // namespace blink
2054 2054
2055 #endif // ComputedStyle_h 2055 #endif // ComputedStyle_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698