| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> | 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> |
| 3 * 1999 Lars Knoll <knoll@kde.org> | 3 * 1999 Lars Knoll <knoll@kde.org> |
| 4 * 1999 Antti Koivisto <koivisto@kde.org> | 4 * 1999 Antti Koivisto <koivisto@kde.org> |
| 5 * 2000 Dirk Mueller <mueller@kde.org> | 5 * 2000 Dirk Mueller <mueller@kde.org> |
| 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
| 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
| 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 9 * Copyright (C) 2009 Google Inc. All rights reserved. | 9 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 10 * | 10 * |
| (...skipping 1251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1262 | 1262 |
| 1263 if (!m_viewportConstrainedObjects || m_viewportConstrainedObjects->isEmpty()
) { | 1263 if (!m_viewportConstrainedObjects || m_viewportConstrainedObjects->isEmpty()
) { |
| 1264 hostWindow()->scroll(); | 1264 hostWindow()->scroll(); |
| 1265 return true; | 1265 return true; |
| 1266 } | 1266 } |
| 1267 | 1267 |
| 1268 Region regionToUpdate; | 1268 Region regionToUpdate; |
| 1269 ViewportConstrainedObjectSet::const_iterator end = m_viewportConstrainedObje
cts->end(); | 1269 ViewportConstrainedObjectSet::const_iterator end = m_viewportConstrainedObje
cts->end(); |
| 1270 for (ViewportConstrainedObjectSet::const_iterator it = m_viewportConstrained
Objects->begin(); it != end; ++it) { | 1270 for (ViewportConstrainedObjectSet::const_iterator it = m_viewportConstrained
Objects->begin(); it != end; ++it) { |
| 1271 RenderObject* renderer = *it; | 1271 RenderObject* renderer = *it; |
| 1272 // m_viewportConstrainedObjects should not contain non-viewport constrai
ned objects. | |
| 1273 ASSERT(renderer->style()->hasViewportConstrainedPosition()); | 1272 ASSERT(renderer->style()->hasViewportConstrainedPosition()); |
| 1274 | |
| 1275 // Fixed items should always have layers. | |
| 1276 ASSERT(renderer->hasLayer()); | 1273 ASSERT(renderer->hasLayer()); |
| 1277 RenderLayer* layer = toRenderBoxModelObject(renderer)->layer(); | 1274 RenderLayer* layer = toRenderBoxModelObject(renderer)->layer(); |
| 1278 | 1275 |
| 1279 // Layers that paint into their ancestor or into a grouped backing will
still need | 1276 CompositingState state = layer->compositingState(); |
| 1280 // to apply a paint invalidation. If the layer paints into its own backi
ng, then | 1277 if (state == PaintsIntoOwnBacking || state == PaintsIntoGroupedBacking) |
| 1281 // it does not need paint invalidation just to scroll. | |
| 1282 if (layer->compositingState() == PaintsIntoOwnBacking) | |
| 1283 continue; | 1278 continue; |
| 1284 | 1279 |
| 1285 if (layer->hasAncestorWithFilterOutsets()) { | 1280 if (layer->hasAncestorWithFilterOutsets()) { |
| 1286 // If the fixed layer has a blur/drop-shadow filter applied on at le
ast one of its parents, we cannot | 1281 // If the fixed layer has a blur/drop-shadow filter applied on at le
ast one of its parents, we cannot |
| 1287 // scroll using the fast path, otherwise the outsets of the filter w
ill be moved around the page. | 1282 // scroll using the fast path, otherwise the outsets of the filter w
ill be moved around the page. |
| 1288 return false; | 1283 return false; |
| 1289 } | 1284 } |
| 1290 | 1285 |
| 1291 IntRect updateRect = pixelSnappedIntRect(layer->paintInvalidator().paint
InvalidationRectIncludingNonCompositingDescendants()); | 1286 IntRect updateRect = pixelSnappedIntRect(layer->paintInvalidator().paint
InvalidationRectIncludingNonCompositingDescendants()); |
| 1292 | 1287 |
| (...skipping 1841 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3134 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) | 3129 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) |
| 3135 { | 3130 { |
| 3136 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); | 3131 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); |
| 3137 if (AXObjectCache* cache = axObjectCache()) { | 3132 if (AXObjectCache* cache = axObjectCache()) { |
| 3138 cache->remove(scrollbar); | 3133 cache->remove(scrollbar); |
| 3139 cache->handleScrollbarUpdate(this); | 3134 cache->handleScrollbarUpdate(this); |
| 3140 } | 3135 } |
| 3141 } | 3136 } |
| 3142 | 3137 |
| 3143 } // namespace blink | 3138 } // namespace blink |
| OLD | NEW |