summaryrefslogtreecommitdiff
path: root/chromium/cc/trees
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/cc/trees')
-rw-r--r--chromium/cc/trees/layer_tree_host.cc18
-rw-r--r--chromium/cc/trees/layer_tree_host.h12
-rw-r--r--chromium/cc/trees/layer_tree_host_impl.cc3
-rw-r--r--chromium/cc/trees/layer_tree_host_impl.h4
-rw-r--r--chromium/cc/trees/layer_tree_impl.cc2
-rw-r--r--chromium/cc/trees/layer_tree_impl.h3
-rw-r--r--chromium/cc/trees/single_thread_proxy.cc3
-rw-r--r--chromium/cc/trees/thread_proxy.cc3
8 files changed, 30 insertions, 18 deletions
diff --git a/chromium/cc/trees/layer_tree_host.cc b/chromium/cc/trees/layer_tree_host.cc
index 74321976ff3..bc0029da9eb 100644
--- a/chromium/cc/trees/layer_tree_host.cc
+++ b/chromium/cc/trees/layer_tree_host.cc
@@ -47,17 +47,23 @@ static base::StaticAtomicSequenceNumber s_layer_tree_host_sequence_number;
namespace cc {
+RendererCapabilities::RendererCapabilities(ResourceFormat best_texture_format,
+ bool allow_partial_texture_updates,
+ bool using_offscreen_context3d,
+ int max_texture_size,
+ bool using_shared_memory_resources)
+ : best_texture_format(best_texture_format),
+ allow_partial_texture_updates(allow_partial_texture_updates),
+ using_offscreen_context3d(using_offscreen_context3d),
+ max_texture_size(max_texture_size),
+ using_shared_memory_resources(using_shared_memory_resources) {}
+
RendererCapabilities::RendererCapabilities()
: best_texture_format(RGBA_8888),
- using_partial_swap(false),
- using_egl_image(false),
allow_partial_texture_updates(false),
using_offscreen_context3d(false),
max_texture_size(0),
- avoid_pow2_textures(false),
- using_map_image(false),
- using_shared_memory_resources(false),
- using_discard_framebuffer(false) {}
+ using_shared_memory_resources(false) {}
RendererCapabilities::~RendererCapabilities() {}
diff --git a/chromium/cc/trees/layer_tree_host.h b/chromium/cc/trees/layer_tree_host.h
index 8b9c1cf3226..3f9e3455956 100644
--- a/chromium/cc/trees/layer_tree_host.h
+++ b/chromium/cc/trees/layer_tree_host.h
@@ -64,19 +64,21 @@ struct ScrollAndScaleSet;
// Provides information on an Impl's rendering capabilities back to the
// LayerTreeHost.
struct CC_EXPORT RendererCapabilities {
+ RendererCapabilities(ResourceFormat best_texture_format,
+ bool allow_partial_texture_updates,
+ bool using_offscreen_context3d,
+ int max_texture_size,
+ bool using_shared_memory_resources);
+
RendererCapabilities();
~RendererCapabilities();
+ // Duplicate any modification to this list to RendererCapabilitiesImpl.
ResourceFormat best_texture_format;
- bool using_partial_swap;
- bool using_egl_image;
bool allow_partial_texture_updates;
bool using_offscreen_context3d;
int max_texture_size;
- bool avoid_pow2_textures;
- bool using_map_image;
bool using_shared_memory_resources;
- bool using_discard_framebuffer;
};
class CC_EXPORT LayerTreeHost {
diff --git a/chromium/cc/trees/layer_tree_host_impl.cc b/chromium/cc/trees/layer_tree_host_impl.cc
index e4d1b735765..7fbb247c5d4 100644
--- a/chromium/cc/trees/layer_tree_host_impl.cc
+++ b/chromium/cc/trees/layer_tree_host_impl.cc
@@ -1448,7 +1448,8 @@ bool LayerTreeHostImpl::IsContextLost() {
return renderer_ && renderer_->IsContextLost();
}
-const RendererCapabilities& LayerTreeHostImpl::GetRendererCapabilities() const {
+const RendererCapabilitiesImpl&
+LayerTreeHostImpl::GetRendererCapabilities() const {
return renderer_->Capabilities();
}
diff --git a/chromium/cc/trees/layer_tree_host_impl.h b/chromium/cc/trees/layer_tree_host_impl.h
index 531384f6fdb..f705a66a166 100644
--- a/chromium/cc/trees/layer_tree_host_impl.h
+++ b/chromium/cc/trees/layer_tree_host_impl.h
@@ -53,7 +53,7 @@ class TextureMailboxDeleter;
class TopControlsManager;
class UIResourceBitmap;
class UIResourceRequest;
-struct RendererCapabilities;
+struct RendererCapabilitiesImpl;
// LayerTreeHost->Proxy callback interface.
class LayerTreeHostImplClient {
@@ -257,7 +257,7 @@ class CC_EXPORT LayerTreeHostImpl
bool IsContextLost();
TileManager* tile_manager() { return tile_manager_.get(); }
Renderer* renderer() { return renderer_.get(); }
- const RendererCapabilities& GetRendererCapabilities() const;
+ const RendererCapabilitiesImpl& GetRendererCapabilities() const;
virtual bool SwapBuffers(const FrameData& frame);
void SetNeedsBeginImplFrame(bool enable);
diff --git a/chromium/cc/trees/layer_tree_impl.cc b/chromium/cc/trees/layer_tree_impl.cc
index 9f181cda458..3f7b4c62476 100644
--- a/chromium/cc/trees/layer_tree_impl.cc
+++ b/chromium/cc/trees/layer_tree_impl.cc
@@ -517,7 +517,7 @@ const LayerTreeSettings& LayerTreeImpl::settings() const {
return layer_tree_host_impl_->settings();
}
-const RendererCapabilities& LayerTreeImpl::GetRendererCapabilities() const {
+const RendererCapabilitiesImpl& LayerTreeImpl::GetRendererCapabilities() const {
return layer_tree_host_impl_->GetRendererCapabilities();
}
diff --git a/chromium/cc/trees/layer_tree_impl.h b/chromium/cc/trees/layer_tree_impl.h
index 85a71f5cd72..19c53cd0729 100644
--- a/chromium/cc/trees/layer_tree_impl.h
+++ b/chromium/cc/trees/layer_tree_impl.h
@@ -14,6 +14,7 @@
#include "cc/base/scoped_ptr_vector.h"
#include "cc/base/swap_promise.h"
#include "cc/layers/layer_impl.h"
+#include "cc/output/renderer.h"
#include "cc/trees/layer_tree_host.h"
#include "cc/resources/ui_resource_client.h"
@@ -60,7 +61,7 @@ class CC_EXPORT LayerTreeImpl {
// Methods called by the layer tree that pass-through or access LTHI.
// ---------------------------------------------------------------------------
const LayerTreeSettings& settings() const;
- const RendererCapabilities& GetRendererCapabilities() const;
+ const RendererCapabilitiesImpl& GetRendererCapabilities() const;
ContextProvider* context_provider() const;
OutputSurface* output_surface() const;
ResourceProvider* resource_provider() const;
diff --git a/chromium/cc/trees/single_thread_proxy.cc b/chromium/cc/trees/single_thread_proxy.cc
index f1f8a4f5824..a313588029a 100644
--- a/chromium/cc/trees/single_thread_proxy.cc
+++ b/chromium/cc/trees/single_thread_proxy.cc
@@ -148,7 +148,8 @@ void SingleThreadProxy::CreateAndInitializeOutputSurface() {
output_surface.Pass());
if (initialized) {
renderer_capabilities_for_main_thread_ =
- layer_tree_host_impl_->GetRendererCapabilities();
+ layer_tree_host_impl_->GetRendererCapabilities()
+ .MainThreadCapabilities();
} else if (offscreen_context_provider.get()) {
offscreen_context_provider->VerifyContexts();
offscreen_context_provider = NULL;
diff --git a/chromium/cc/trees/thread_proxy.cc b/chromium/cc/trees/thread_proxy.cc
index 2823182d590..62e0ca22608 100644
--- a/chromium/cc/trees/thread_proxy.cc
+++ b/chromium/cc/trees/thread_proxy.cc
@@ -1427,7 +1427,8 @@ void ThreadProxy::InitializeOutputSurfaceOnImplThread(
*success = layer_tree_host_impl_->InitializeRenderer(output_surface.Pass());
if (*success) {
- *capabilities = layer_tree_host_impl_->GetRendererCapabilities();
+ *capabilities = layer_tree_host_impl_->GetRendererCapabilities()
+ .MainThreadCapabilities();
scheduler_on_impl_thread_->DidCreateAndInitializeOutputSurface();
} else if (offscreen_context_provider.get()) {
if (offscreen_context_provider->BindToCurrentThread())