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 605 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
616 // If we expect to update compositing after an incipient layout, don't do so
here. | 616 // If we expect to update compositing after an incipient layout, don't do so
here. |
617 if (m_doingPreLayoutStyleUpdate || layoutPending() || renderView->needsLayou
t()) | 617 if (m_doingPreLayoutStyleUpdate || layoutPending() || renderView->needsLayou
t()) |
618 return; | 618 return; |
619 | 619 |
620 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues | 620 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues |
621 // https://code.google.com/p/chromium/issues/detail?id=343756 | 621 // https://code.google.com/p/chromium/issues/detail?id=343756 |
622 DisableCompositingQueryAsserts disabler; | 622 DisableCompositingQueryAsserts disabler; |
623 | 623 |
624 // This call will make sure the cached hasAcceleratedCompositing is updated
from the pref | 624 // This call will make sure the cached hasAcceleratedCompositing is updated
from the pref |
625 renderView->compositor()->cacheAcceleratedCompositingFlags(); | 625 renderView->compositor()->cacheAcceleratedCompositingFlags(); |
626 | |
627 // 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 | |
629 // need to do this if a layout is not already scheduled. | |
630 if (!needsLayout()) | |
631 renderView->compositor()->updateCompositingRequirementsState(); | |
632 | |
633 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterSt
yleChange); | 626 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterSt
yleChange); |
634 } | 627 } |
635 | 628 |
636 void FrameView::updateCompositingLayersAfterLayout() | 629 void FrameView::updateCompositingLayersAfterLayout() |
637 { | 630 { |
638 TRACE_EVENT0("webkit", "FrameView::updateCompositingLayersAfterLayout"); | 631 TRACE_EVENT0("webkit", "FrameView::updateCompositingLayersAfterLayout"); |
639 RenderView* renderView = this->renderView(); | 632 RenderView* renderView = this->renderView(); |
640 if (!renderView) | 633 if (!renderView) |
641 return; | 634 return; |
642 | 635 |
643 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues | 636 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues |
644 // https://code.google.com/p/chromium/issues/detail?id=343756 | 637 // https://code.google.com/p/chromium/issues/detail?id=343756 |
645 DisableCompositingQueryAsserts disabler; | 638 DisableCompositingQueryAsserts disabler; |
646 | 639 |
647 // This call will make sure the cached hasAcceleratedCompositing is updated
from the pref | 640 // This call will make sure the cached hasAcceleratedCompositing is updated
from the pref |
648 renderView->compositor()->cacheAcceleratedCompositingFlags(); | 641 renderView->compositor()->cacheAcceleratedCompositingFlags(); |
649 renderView->compositor()->updateCompositingRequirementsState(); | |
650 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterLa
yout); | 642 renderView->compositor()->setNeedsCompositingUpdate(CompositingUpdateAfterLa
yout); |
651 } | 643 } |
652 | 644 |
653 bool FrameView::usesCompositedScrolling() const | 645 bool FrameView::usesCompositedScrolling() const |
654 { | 646 { |
655 RenderView* renderView = this->renderView(); | 647 RenderView* renderView = this->renderView(); |
656 if (!renderView) | 648 if (!renderView) |
657 return false; | 649 return false; |
658 if (m_frame->settings() && m_frame->settings()->compositedScrollingForFrames
Enabled()) | 650 if (m_frame->settings() && m_frame->settings()->compositedScrollingForFrames
Enabled()) |
659 return renderView->compositor()->inForcedCompositingMode(); | 651 return renderView->compositor()->inForcedCompositingMode(); |
(...skipping 2567 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3227 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) | 3219 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) |
3228 { | 3220 { |
3229 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); | 3221 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); |
3230 if (AXObjectCache* cache = axObjectCache()) { | 3222 if (AXObjectCache* cache = axObjectCache()) { |
3231 cache->remove(scrollbar); | 3223 cache->remove(scrollbar); |
3232 cache->handleScrollbarUpdate(this); | 3224 cache->handleScrollbarUpdate(this); |
3233 } | 3225 } |
3234 } | 3226 } |
3235 | 3227 |
3236 } // namespace WebCore | 3228 } // namespace WebCore |
OLD | NEW |