OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
5 * | 5 * |
6 * Other contributors: | 6 * Other contributors: |
7 * Robert O'Callahan <roc+@cs.cmu.edu> | 7 * Robert O'Callahan <roc+@cs.cmu.edu> |
8 * David Baron <dbaron@fas.harvard.edu> | 8 * David Baron <dbaron@fas.harvard.edu> |
9 * Christian Biesinger <cbiesinger@web.de> | 9 * Christian Biesinger <cbiesinger@web.de> |
10 * Randall Jesup <rjesup@wgate.com> | 10 * Randall Jesup <rjesup@wgate.com> |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
122 void scrollToYOffset(double y, ScrollOffsetClamping clamp = ScrollOffsetUncl
amped) { scrollToOffset(DoubleSize(scrollXOffset(), y), clamp); } | 122 void scrollToYOffset(double y, ScrollOffsetClamping clamp = ScrollOffsetUncl
amped) { scrollToOffset(DoubleSize(scrollXOffset(), y), clamp); } |
123 | 123 |
124 void updateAfterLayout(); | 124 void updateAfterLayout(); |
125 void updateAfterStyleChange(const RenderStyle*); | 125 void updateAfterStyleChange(const RenderStyle*); |
126 void updateAfterOverflowRecalc(); | 126 void updateAfterOverflowRecalc(); |
127 | 127 |
128 virtual bool updateAfterCompositingChange() override; | 128 virtual bool updateAfterCompositingChange() override; |
129 | 129 |
130 bool hasScrollbar() const { return m_hBar || m_vBar; } | 130 bool hasScrollbar() const { return m_hBar || m_vBar; } |
131 | 131 |
| 132 bool didCustomScrollbarRectChanged(); |
| 133 |
132 // FIXME: This should be removed. | 134 // FIXME: This should be removed. |
133 bool hasScrollCorner() const { return m_scrollCorner; } | 135 bool hasScrollCorner() const { return m_scrollCorner; } |
134 | 136 |
135 void resize(const PlatformEvent&, const LayoutSize&); | 137 void resize(const PlatformEvent&, const LayoutSize&); |
136 IntSize offsetFromResizeCorner(const IntPoint& absolutePoint) const; | 138 IntSize offsetFromResizeCorner(const IntPoint& absolutePoint) const; |
137 | 139 |
138 bool inResizeMode() const { return m_inResizeMode; } | 140 bool inResizeMode() const { return m_inResizeMode; } |
139 void setInResizeMode(bool inResizeMode) { m_inResizeMode = inResizeMode; } | 141 void setInResizeMode(bool inResizeMode) { m_inResizeMode = inResizeMode; } |
140 | 142 |
141 IntRect touchResizerCornerRect(const IntRect& bounds) const | 143 IntRect touchResizerCornerRect(const IntRect& bounds) const |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
231 unsigned m_scrollDimensionsDirty : 1; | 233 unsigned m_scrollDimensionsDirty : 1; |
232 unsigned m_inOverflowRelayout : 1; | 234 unsigned m_inOverflowRelayout : 1; |
233 | 235 |
234 RenderLayer* m_nextTopmostScrollChild; | 236 RenderLayer* m_nextTopmostScrollChild; |
235 RenderLayer* m_topmostScrollChild; | 237 RenderLayer* m_topmostScrollChild; |
236 | 238 |
237 // FIXME: once cc can handle composited scrolling with clip paths, we will | 239 // FIXME: once cc can handle composited scrolling with clip paths, we will |
238 // no longer need this bit. | 240 // no longer need this bit. |
239 unsigned m_needsCompositedScrolling : 1; | 241 unsigned m_needsCompositedScrolling : 1; |
240 | 242 |
| 243 unsigned m_horizontalScrollbarChanged : 1; |
| 244 unsigned m_verticalScrollbarChanged : 1; |
| 245 |
241 // The width/height of our scrolled area. | 246 // The width/height of our scrolled area. |
242 LayoutRect m_overflowRect; | 247 LayoutRect m_overflowRect; |
243 | 248 |
244 // This is the (scroll) offset from scrollOrigin(). | 249 // This is the (scroll) offset from scrollOrigin(). |
245 DoubleSize m_scrollOffset; | 250 DoubleSize m_scrollOffset; |
246 | 251 |
247 IntPoint m_cachedOverlayScrollbarOffset; | 252 IntPoint m_cachedOverlayScrollbarOffset; |
248 | 253 |
249 // For areas with overflow, we have a pair of scrollbars. | 254 // For areas with overflow, we have a pair of scrollbars. |
250 RefPtrWillBePersistent<Scrollbar> m_hBar; | 255 RefPtrWillBePersistent<Scrollbar> m_hBar; |
251 RefPtrWillBePersistent<Scrollbar> m_vBar; | 256 RefPtrWillBePersistent<Scrollbar> m_vBar; |
252 | 257 |
253 // Renderers to hold our custom scroll corner. | 258 // Renderers to hold our custom scroll corner. |
254 RawPtrWillBePersistent<RenderScrollbarPart> m_scrollCorner; | 259 RawPtrWillBePersistent<RenderScrollbarPart> m_scrollCorner; |
255 | 260 |
256 // Renderers to hold our custom resizer. | 261 // Renderers to hold our custom resizer. |
257 RawPtrWillBePersistent<RenderScrollbarPart> m_resizer; | 262 RawPtrWillBePersistent<RenderScrollbarPart> m_resizer; |
258 }; | 263 }; |
259 | 264 |
260 } // namespace blink | 265 } // namespace blink |
261 | 266 |
262 #endif // RenderLayerScrollableArea_h | 267 #endif // RenderLayerScrollableArea_h |
OLD | NEW |