diff options
author | Nicolas Roard <nicolas@android.com> | 2011-01-10 13:11:35 -0800 |
---|---|---|
committer | Nicolas Roard <nicolas@android.com> | 2011-01-10 14:48:00 -0800 |
commit | e3cffebf38964ca4527600cde733500749328dce (patch) | |
tree | ce1d08baacdf7d0e3ee7fc29f60a0fd3c8260df1 | |
parent | 477f2da81667d4c0ba02df53a357efede4d8dd1a (diff) | |
download | external_webkit-e3cffebf38964ca4527600cde733500749328dce.zip external_webkit-e3cffebf38964ca4527600cde733500749328dce.tar.gz external_webkit-e3cffebf38964ca4527600cde733500749328dce.tar.bz2 |
Enable fixed layers for all websites
bug:2797422
Change-Id: Ide0867a06d61a7ee92af751ae824fe6c3b23c41f
-rw-r--r-- | WebCore/rendering/RenderLayerCompositor.cpp | 20 | ||||
-rw-r--r-- | WebCore/rendering/RenderLayerCompositor.h | 4 |
2 files changed, 6 insertions, 18 deletions
diff --git a/WebCore/rendering/RenderLayerCompositor.cpp b/WebCore/rendering/RenderLayerCompositor.cpp index 638c628..654f6e6 100644 --- a/WebCore/rendering/RenderLayerCompositor.cpp +++ b/WebCore/rendering/RenderLayerCompositor.cpp @@ -1180,7 +1180,7 @@ bool RenderLayerCompositor::needsToBeComposited(const RenderLayer* layer) const } #if PLATFORM(ANDROID) -bool RenderLayerCompositor::requiresCompositingForMobileSites(const RenderLayer* layer) const +bool RenderLayerCompositor::requiresCompositingForAndroidLayers(const RenderLayer* layer) const { #if ENABLE(ANDROID_OVERFLOW_SCROLL) if (layer->hasOverflowScroll()) @@ -1193,20 +1193,8 @@ bool RenderLayerCompositor::requiresCompositingForMobileSites(const RenderLayer* if (m_renderView->document()->frame()->tree()->parent()) return false; - // For the moment, we want to only enable fixed composited layers on mobile websites. - // We can consider a website as being a 'mobile' site if all the - // following checks are true: - // 1) - the viewport width is either undefined (-1) or equal to device-width (0), and - // 2) - no scaling is allowed - if (!layer->isFixed()) - return false; - - Settings* settings = m_renderView->document()->settings(); - if (!settings) - return false; - - if ((settings->viewportWidth() == -1 || settings->viewportWidth() == 0) && - !settings->viewportUserScalable()) + // Enable composited layers (for fixed elements) + if (layer->isFixed()) return true; #endif return false; @@ -1226,7 +1214,7 @@ bool RenderLayerCompositor::requiresCompositingLayer(const RenderLayer* layer) c } return requiresCompositingForTransform(renderer) #if PLATFORM(ANDROID) - || requiresCompositingForMobileSites(layer) + || requiresCompositingForAndroidLayers(layer) #endif || requiresCompositingForVideo(renderer) || requiresCompositingForCanvas(renderer) diff --git a/WebCore/rendering/RenderLayerCompositor.h b/WebCore/rendering/RenderLayerCompositor.h index e741dec..a2f51c0 100644 --- a/WebCore/rendering/RenderLayerCompositor.h +++ b/WebCore/rendering/RenderLayerCompositor.h @@ -228,8 +228,8 @@ private: bool requiresCompositingWhenDescendantsAreCompositing(RenderObject*) const; #if PLATFORM(ANDROID) - // Whether we are on a mobile site - bool requiresCompositingForMobileSites(const RenderLayer* layer) const; + // Whether we are using layers for new android features (overflow support, fixed elements) + bool requiresCompositingForAndroidLayers(const RenderLayer* layer) const; #endif bool requiresScrollLayer(RootLayerAttachment) const; |