diff options
author | Chris Craik <ccraik@google.com> | 2011-10-13 17:04:21 -0700 |
---|---|---|
committer | Chris Craik <ccraik@google.com> | 2011-10-13 17:04:21 -0700 |
commit | a3d9db1dd6edce980541e17fa719ca61907484d5 (patch) | |
tree | c5118beccb1fedc45a494a36b7e22eef4acfb8cc | |
parent | 530c83c6351e05a6939ad0b5bc291da073e77b5b (diff) | |
download | external_webkit-a3d9db1dd6edce980541e17fa719ca61907484d5.zip external_webkit-a3d9db1dd6edce980541e17fa719ca61907484d5.tar.gz external_webkit-a3d9db1dd6edce980541e17fa719ca61907484d5.tar.bz2 |
Double number of tile textures allocated - do not merge
bug:5452814
Change-Id: Ib13a0f4e5189af0e4928bc376b29610e20eeb4dc
-rw-r--r-- | Source/WebCore/platform/graphics/android/GLWebViewState.cpp | 4 | ||||
-rw-r--r-- | Source/WebCore/platform/graphics/android/TilesManager.cpp | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/Source/WebCore/platform/graphics/android/GLWebViewState.cpp b/Source/WebCore/platform/graphics/android/GLWebViewState.cpp index efcf877..66c0370 100644 --- a/Source/WebCore/platform/graphics/android/GLWebViewState.cpp +++ b/Source/WebCore/platform/graphics/android/GLWebViewState.cpp @@ -295,8 +295,10 @@ void GLWebViewState::setViewport(SkRect& viewport, float scale) // allocate max possible number of tiles visible with this viewport int viewMaxTileX = static_cast<int>(ceilf((viewport.width()-1) * invTileContentWidth)) + 1; int viewMaxTileY = static_cast<int>(ceilf((viewport.height()-1) * invTileContentHeight)) + 1; + + // NOTE: fetching 4 viewports worth, may need to be adjusted per-device int maxTextureCount = (viewMaxTileX + TILE_PREFETCH_DISTANCE * 2) * - (viewMaxTileY + TILE_PREFETCH_DISTANCE * 2) * 2; + (viewMaxTileY + TILE_PREFETCH_DISTANCE * 2) * 4; TilesManager::instance()->setMaxTextureCount(maxTextureCount); m_tiledPageA->updateBaseTileSize(); m_tiledPageB->updateBaseTileSize(); diff --git a/Source/WebCore/platform/graphics/android/TilesManager.cpp b/Source/WebCore/platform/graphics/android/TilesManager.cpp index 74cc764..7edc4b8 100644 --- a/Source/WebCore/platform/graphics/android/TilesManager.cpp +++ b/Source/WebCore/platform/graphics/android/TilesManager.cpp @@ -69,7 +69,7 @@ // number to cap the layer tile texturs, it worked on both phones and tablets. // TODO: after merge the pool of base tiles and layer tiles, we should revisit // the logic of allocation management. -#define MAX_TEXTURE_ALLOCATION ((6+TILE_PREFETCH_DISTANCE*2)*(5+TILE_PREFETCH_DISTANCE*2)*2) +#define MAX_TEXTURE_ALLOCATION ((6+TILE_PREFETCH_DISTANCE*2)*(5+TILE_PREFETCH_DISTANCE*2)*4) #define TILE_WIDTH 256 #define TILE_HEIGHT 256 #define LAYER_TILE_WIDTH 256 |