| Index: cc/trees/layer_tree_host_impl.cc
|
| diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
|
| index 6f267cc51b0417ac65f35299e15a4be158db4da9..9485c72ee1369bae2ceffb45c9b02876400d6a35 100644
|
| --- a/cc/trees/layer_tree_host_impl.cc
|
| +++ b/cc/trees/layer_tree_host_impl.cc
|
| @@ -56,6 +56,7 @@
|
| #include "cc/trees/quad_culler.h"
|
| #include "cc/trees/single_thread_proxy.h"
|
| #include "cc/trees/tree_synchronizer.h"
|
| +#include "gpu/GLES2/gl2extchromium.h"
|
| #include "ui/gfx/frame_time.h"
|
| #include "ui/gfx/size_conversions.h"
|
| #include "ui/gfx/vector2d_conversions.h"
|
| @@ -103,6 +104,22 @@ size_t GetMaxRasterTasksUsageBytes(cc::ContextProvider* context_provider) {
|
| return GetMaxTransferBufferUsageBytes(context_provider);
|
| }
|
|
|
| +GLenum GetMapImageTextureTarget(cc::ContextProvider* context_provider) {
|
| + if (!context_provider)
|
| + return GL_TEXTURE_2D;
|
| +
|
| + // TODO(reveman): Determine if GL_TEXTURE_EXTERNAL_OES works well on
|
| + // Android before we enable this. crbug.com/322780
|
| +#if !defined(OS_ANDROID)
|
| + if (context_provider->ContextCapabilities().egl_image_external)
|
| + return GL_TEXTURE_EXTERNAL_OES;
|
| + if (context_provider->ContextCapabilities().texture_rectangle)
|
| + return GL_TEXTURE_RECTANGLE_ARB;
|
| +#endif
|
| +
|
| + return GL_TEXTURE_2D;
|
| +}
|
| +
|
| } // namespace
|
|
|
| namespace cc {
|
| @@ -1660,7 +1677,8 @@ void LayerTreeHostImpl::CreateAndSetTileManager(
|
| rendering_stats_instrumentation_,
|
| using_map_image,
|
| GetMaxTransferBufferUsageBytes(context_provider),
|
| - GetMaxRasterTasksUsageBytes(context_provider));
|
| + GetMaxRasterTasksUsageBytes(context_provider),
|
| + GetMapImageTextureTarget(context_provider));
|
|
|
| UpdateTileManagerMemoryPolicy(ActualManagedMemoryPolicy());
|
| need_to_update_visible_tiles_before_draw_ = false;
|
|
|