| 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 588 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 599 hMode = ScrollbarAlwaysOff; | 599 hMode = ScrollbarAlwaysOff; |
| 600 } else if (Element* viewportElement = document->viewportDefiningElement(
)) { | 600 } else if (Element* viewportElement = document->viewportDefiningElement(
)) { |
| 601 if (RenderObject* viewportRenderer = viewportElement->renderer()) { | 601 if (RenderObject* viewportRenderer = viewportElement->renderer()) { |
| 602 if (viewportRenderer->style()) | 602 if (viewportRenderer->style()) |
| 603 applyOverflowToViewportAndSetRenderer(viewportRenderer, hMod
e, vMode); | 603 applyOverflowToViewportAndSetRenderer(viewportRenderer, hMod
e, vMode); |
| 604 } | 604 } |
| 605 } | 605 } |
| 606 } | 606 } |
| 607 } | 607 } |
| 608 | 608 |
| 609 void FrameView::updateAcceleratedCompositingSettings() |
| 610 { |
| 611 if (RenderView* renderView = this->renderView()) |
| 612 renderView->compositor()->updateAcceleratedCompositingSettings(); |
| 613 } |
| 614 |
| 609 void FrameView::updateCompositingLayersAfterStyleChange() | 615 void FrameView::updateCompositingLayersAfterStyleChange() |
| 610 { | 616 { |
| 611 TRACE_EVENT0("webkit", "FrameView::updateCompositingLayersAfterStyleChange")
; | 617 TRACE_EVENT0("webkit", "FrameView::updateCompositingLayersAfterStyleChange")
; |
| 612 RenderView* renderView = this->renderView(); | 618 RenderView* renderView = this->renderView(); |
| 613 if (!renderView) | 619 if (!renderView) |
| 614 return; | 620 return; |
| 615 | 621 |
| 616 // If we expect to update compositing after an incipient layout, don't do so
here. | 622 // If we expect to update compositing after an incipient layout, don't do so
here. |
| 617 if (m_doingPreLayoutStyleUpdate || layoutPending() || renderView->needsLayou
t()) | 623 if (m_doingPreLayoutStyleUpdate || layoutPending() || renderView->needsLayou
t()) |
| 618 return; | 624 return; |
| 619 | 625 |
| 620 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues | 626 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues |
| 621 // https://code.google.com/p/chromium/issues/detail?id=343756 | 627 // https://code.google.com/p/chromium/issues/detail?id=343756 |
| 622 DisableCompositingQueryAsserts disabler; | 628 DisableCompositingQueryAsserts disabler; |
| 623 | 629 |
| 624 // This call will make sure the cached hasAcceleratedCompositing is updated
from the pref | |
| 625 renderView->compositor()->cacheAcceleratedCompositingFlags(); | |
| 626 | |
| 627 // Sometimes we will change a property (for example, z-index) that will not | 630 // Sometimes we will change a property (for example, z-index) that will not |
| 628 // cause a layout, but will require us to update compositing state. We only | 631 // cause a layout, but will require us to update compositing state. We only |
| 629 // need to do this if a layout is not already scheduled. | 632 // need to do this if a layout is not already scheduled. |
| 630 if (!needsLayout()) | 633 if (!needsLayout()) |
| 631 renderView->compositor()->updateCompositingRequirementsState(); | 634 renderView->compositor()->updateCompositingRequirementsState(); |
| 632 | 635 |
| 633 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterSt
yleChange); | 636 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterSt
yleChange); |
| 634 } | 637 } |
| 635 | 638 |
| 636 void FrameView::updateCompositingLayersAfterLayout() | 639 void FrameView::updateCompositingLayersAfterLayout() |
| 637 { | 640 { |
| 638 TRACE_EVENT0("webkit", "FrameView::updateCompositingLayersAfterLayout"); | 641 TRACE_EVENT0("webkit", "FrameView::updateCompositingLayersAfterLayout"); |
| 639 RenderView* renderView = this->renderView(); | 642 RenderView* renderView = this->renderView(); |
| 640 if (!renderView) | 643 if (!renderView) |
| 641 return; | 644 return; |
| 642 | 645 |
| 643 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues | 646 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues |
| 644 // https://code.google.com/p/chromium/issues/detail?id=343756 | 647 // https://code.google.com/p/chromium/issues/detail?id=343756 |
| 645 DisableCompositingQueryAsserts disabler; | 648 DisableCompositingQueryAsserts disabler; |
| 646 | 649 |
| 647 // This call will make sure the cached hasAcceleratedCompositing is updated
from the pref | 650 renderView->compositor()->updateForceCompositingMode(); |
| 648 renderView->compositor()->cacheAcceleratedCompositingFlags(); | |
| 649 renderView->compositor()->updateCompositingRequirementsState(); | 651 renderView->compositor()->updateCompositingRequirementsState(); |
| 650 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterLa
yout); | 652 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterLa
yout); |
| 651 } | 653 } |
| 652 | 654 |
| 653 bool FrameView::usesCompositedScrolling() const | 655 bool FrameView::usesCompositedScrolling() const |
| 654 { | 656 { |
| 655 RenderView* renderView = this->renderView(); | 657 RenderView* renderView = this->renderView(); |
| 656 if (!renderView) | 658 if (!renderView) |
| 657 return false; | 659 return false; |
| 658 if (m_frame->settings() && m_frame->settings()->compositedScrollingForFrames
Enabled()) | 660 if (m_frame->settings() && m_frame->settings()->compositedScrollingForFrames
Enabled()) |
| (...skipping 2568 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3227 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) | 3229 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) |
| 3228 { | 3230 { |
| 3229 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); | 3231 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); |
| 3230 if (AXObjectCache* cache = axObjectCache()) { | 3232 if (AXObjectCache* cache = axObjectCache()) { |
| 3231 cache->remove(scrollbar); | 3233 cache->remove(scrollbar); |
| 3232 cache->handleScrollbarUpdate(this); | 3234 cache->handleScrollbarUpdate(this); |
| 3233 } | 3235 } |
| 3234 } | 3236 } |
| 3235 | 3237 |
| 3236 } // namespace WebCore | 3238 } // namespace WebCore |
| OLD | NEW |