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

Side by Side Diff: Source/core/rendering/style/StyleRareNonInheritedData.h

Issue 17450016: Implementation of CSS3 nav-up/down/left/right properties from CSS3 UI. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Review fixes, rebase, added more tests, made Style Navigation Data refcounted. 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 * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
6 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com) 6 * Copyright (C) 2006 Graham Dennis (graham.dennis@gmail.com)
7 * Copyright (C) 2014 Opera Software ASA. All rights reserved.
7 * 8 *
8 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 11 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version. 12 * version 2 of the License, or (at your option) any later version.
12 * 13 *
13 * This library is distributed in the hope that it will be useful, 14 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Library General Public License for more details. 17 * Library General Public License for more details.
(...skipping 12 matching lines...) Expand all
29 #include "core/rendering/ClipPathOperation.h" 30 #include "core/rendering/ClipPathOperation.h"
30 #include "core/rendering/style/BasicShapes.h" 31 #include "core/rendering/style/BasicShapes.h"
31 #include "core/rendering/style/CounterDirectives.h" 32 #include "core/rendering/style/CounterDirectives.h"
32 #include "core/rendering/style/CursorData.h" 33 #include "core/rendering/style/CursorData.h"
33 #include "core/rendering/style/DataRef.h" 34 #include "core/rendering/style/DataRef.h"
34 #include "core/rendering/style/FillLayer.h" 35 #include "core/rendering/style/FillLayer.h"
35 #include "core/rendering/style/LineClampValue.h" 36 #include "core/rendering/style/LineClampValue.h"
36 #include "core/rendering/style/NinePieceImage.h" 37 #include "core/rendering/style/NinePieceImage.h"
37 #include "core/rendering/style/RenderStyleConstants.h" 38 #include "core/rendering/style/RenderStyleConstants.h"
38 #include "core/rendering/style/ShapeValue.h" 39 #include "core/rendering/style/ShapeValue.h"
40 #include "core/rendering/style/StyleNavigationData.h"
39 #include "platform/LengthPoint.h" 41 #include "platform/LengthPoint.h"
40 #include "wtf/OwnPtr.h" 42 #include "wtf/OwnPtr.h"
41 #include "wtf/PassRefPtr.h" 43 #include "wtf/PassRefPtr.h"
42 #include "wtf/Vector.h" 44 #include "wtf/Vector.h"
43 45
44 namespace blink { 46 namespace blink {
45 47
46 class ContentData; 48 class ContentData;
47 class CSSAnimationData; 49 class CSSAnimationData;
48 class CSSTransitionData; 50 class CSSTransitionData;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 85
84 bool contentDataEquivalent(const StyleRareNonInheritedData&) const; 86 bool contentDataEquivalent(const StyleRareNonInheritedData&) const;
85 bool counterDataEquivalent(const StyleRareNonInheritedData&) const; 87 bool counterDataEquivalent(const StyleRareNonInheritedData&) const;
86 bool shadowDataEquivalent(const StyleRareNonInheritedData&) const; 88 bool shadowDataEquivalent(const StyleRareNonInheritedData&) const;
87 bool reflectionDataEquivalent(const StyleRareNonInheritedData&) const; 89 bool reflectionDataEquivalent(const StyleRareNonInheritedData&) const;
88 bool animationDataEquivalent(const StyleRareNonInheritedData&) const; 90 bool animationDataEquivalent(const StyleRareNonInheritedData&) const;
89 bool transitionDataEquivalent(const StyleRareNonInheritedData&) const; 91 bool transitionDataEquivalent(const StyleRareNonInheritedData&) const;
90 bool hasFilters() const; 92 bool hasFilters() const;
91 bool hasOpacity() const { return opacity < 1; } 93 bool hasOpacity() const { return opacity < 1; }
92 94
95 StyleNavigationValue navDown() const;
96 StyleNavigationValue navLeft() const;
97 StyleNavigationValue navRight() const;
98 StyleNavigationValue navUp() const;
99
100 void setNavDown(const StyleNavigationValue&);
101 void setNavLeft(const StyleNavigationValue&);
102 void setNavRight(const StyleNavigationValue&);
103 void setNavUp(const StyleNavigationValue&);
104
93 float opacity; // Whether or not we're transparent. 105 float opacity; // Whether or not we're transparent.
94 106
95 float m_aspectRatioDenominator; 107 float m_aspectRatioDenominator;
96 float m_aspectRatioNumerator; 108 float m_aspectRatioNumerator;
97 109
98 float m_perspective; 110 float m_perspective;
99 Length m_perspectiveOriginX; 111 Length m_perspectiveOriginX;
100 Length m_perspectiveOriginY; 112 Length m_perspectiveOriginY;
101 113
102 LineClampValue lineClamp; // An Apple extension. 114 LineClampValue lineClamp; // An Apple extension.
(...skipping 17 matching lines...) Expand all
120 RefPtr<ShadowList> m_boxShadow; 132 RefPtr<ShadowList> m_boxShadow;
121 133
122 RefPtr<StyleReflection> m_boxReflect; 134 RefPtr<StyleReflection> m_boxReflect;
123 135
124 OwnPtrWillBePersistent<CSSAnimationData> m_animations; 136 OwnPtrWillBePersistent<CSSAnimationData> m_animations;
125 OwnPtrWillBePersistent<CSSTransitionData> m_transitions; 137 OwnPtrWillBePersistent<CSSTransitionData> m_transitions;
126 138
127 FillLayer m_mask; 139 FillLayer m_mask;
128 NinePieceImage m_maskBoxImage; 140 NinePieceImage m_maskBoxImage;
129 141
142 DataRef<StyleNavigationData> m_navigation;
143
130 LengthSize m_pageSize; 144 LengthSize m_pageSize;
131 145
132 RefPtr<ShapeValue> m_shapeOutside; 146 RefPtr<ShapeValue> m_shapeOutside;
133 Length m_shapeMargin; 147 Length m_shapeMargin;
134 float m_shapeImageThreshold; 148 float m_shapeImageThreshold;
135 149
136 RefPtr<ClipPathOperation> m_clipPath; 150 RefPtr<ClipPathOperation> m_clipPath;
137 151
138 StyleColor m_textDecorationColor; 152 StyleColor m_textDecorationColor;
139 StyleColor m_visitedLinkTextDecorationColor; 153 StyleColor m_visitedLinkTextDecorationColor;
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 // so store this bit so that the style actually changes when the plugin 220 // so store this bit so that the style actually changes when the plugin
207 // becomes composited. 221 // becomes composited.
208 unsigned m_requiresAcceleratedCompositingForExternalReasons: 1; 222 unsigned m_requiresAcceleratedCompositingForExternalReasons: 1;
209 223
210 // Whether the transform (if it exists) is stored in the element's inline st yle. 224 // Whether the transform (if it exists) is stored in the element's inline st yle.
211 unsigned m_hasInlineTransform : 1; 225 unsigned m_hasInlineTransform : 1;
212 226
213 private: 227 private:
214 StyleRareNonInheritedData(); 228 StyleRareNonInheritedData();
215 StyleRareNonInheritedData(const StyleRareNonInheritedData&); 229 StyleRareNonInheritedData(const StyleRareNonInheritedData&);
230
231 void setNavigation(StyleNavigationData::NavigationDirection, const StyleNavi gationValue&);
216 }; 232 };
217 233
218 } // namespace blink 234 } // namespace blink
219 235
220 #endif // StyleRareNonInheritedData_h 236 #endif // StyleRareNonInheritedData_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698