Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(134)

Unified Diff: cc/surfaces/direct_compositor_frame_sink.cc

Issue 2349743004: cc: Remove things from OutputSurface and CompositorFrameSink. (Closed)
Patch Set: delete-stuff-cfs: comment-and-rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/surfaces/direct_compositor_frame_sink.h ('k') | cc/surfaces/display.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/surfaces/direct_compositor_frame_sink.cc
diff --git a/cc/surfaces/direct_compositor_frame_sink.cc b/cc/surfaces/direct_compositor_frame_sink.cc
index 7d79f442a67e5ebb2d9eec74dc49a3fbc302824d..b96cbbc93a327958a5e5940e418868020db009aa 100644
--- a/cc/surfaces/direct_compositor_frame_sink.cc
+++ b/cc/surfaces/direct_compositor_frame_sink.cc
@@ -21,17 +21,13 @@ DirectCompositorFrameSink::DirectCompositorFrameSink(
scoped_refptr<ContextProvider> context_provider,
scoped_refptr<ContextProvider> worker_context_provider)
: CompositorFrameSink(std::move(context_provider),
- std::move(worker_context_provider),
- nullptr),
+ std::move(worker_context_provider)),
surface_manager_(surface_manager),
surface_id_allocator_(surface_id_allocator),
display_(display),
factory_(surface_manager, this) {
DCHECK(thread_checker_.CalledOnValidThread());
- capabilities_.delegated_rendering = true;
- capabilities_.adjust_deadline_for_parent = true;
capabilities_.can_force_reclaim_resources = true;
-
// Display and DirectCompositorFrameSink share a GL context, so sync
// points aren't needed when passing resources between them.
capabilities_.delegated_sync_points_required = false;
@@ -49,8 +45,6 @@ DirectCompositorFrameSink::DirectCompositorFrameSink(
display_(display),
factory_(surface_manager, this) {
DCHECK(thread_checker_.CalledOnValidThread());
- capabilities_.delegated_rendering = true;
- capabilities_.adjust_deadline_for_parent = true;
capabilities_.can_force_reclaim_resources = true;
}
@@ -60,26 +54,6 @@ DirectCompositorFrameSink::~DirectCompositorFrameSink() {
DetachFromClient();
}
-void DirectCompositorFrameSink::SwapBuffers(CompositorFrame frame) {
- gfx::Size frame_size =
- frame.delegated_frame_data->render_pass_list.back()->output_rect.size();
- if (frame_size.IsEmpty() || frame_size != last_swap_frame_size_) {
- if (!delegated_surface_id_.is_null()) {
- factory_.Destroy(delegated_surface_id_);
- }
- delegated_surface_id_ = surface_id_allocator_->GenerateId();
- factory_.Create(delegated_surface_id_);
- last_swap_frame_size_ = frame_size;
- }
- display_->SetSurfaceId(delegated_surface_id_,
- frame.metadata.device_scale_factor);
-
- factory_.SubmitCompositorFrame(
- delegated_surface_id_, std::move(frame),
- base::Bind(&DirectCompositorFrameSink::DidDrawCallback,
- base::Unretained(this)));
-}
-
bool DirectCompositorFrameSink::BindToClient(
CompositorFrameSinkClient* client) {
DCHECK(thread_checker_.CalledOnValidThread());
@@ -103,13 +77,6 @@ bool DirectCompositorFrameSink::BindToClient(
return true;
}
-void DirectCompositorFrameSink::ForceReclaimResources() {
- if (!delegated_surface_id_.is_null()) {
- factory_.SubmitCompositorFrame(delegated_surface_id_, CompositorFrame(),
- SurfaceFactory::DrawCallback());
- }
-}
-
void DirectCompositorFrameSink::DetachFromClient() {
DCHECK(HasClient());
// Unregister the SurfaceFactoryClient here instead of the dtor so that only
@@ -122,15 +89,31 @@ void DirectCompositorFrameSink::DetachFromClient() {
CompositorFrameSink::DetachFromClient();
}
-void DirectCompositorFrameSink::BindFramebuffer() {
- // This is a CompositorFrameSink, no framebuffer/direct drawing support.
- NOTREACHED();
+void DirectCompositorFrameSink::SwapBuffers(CompositorFrame frame) {
+ gfx::Size frame_size =
+ frame.delegated_frame_data->render_pass_list.back()->output_rect.size();
+ if (frame_size.IsEmpty() || frame_size != last_swap_frame_size_) {
+ if (!delegated_surface_id_.is_null()) {
+ factory_.Destroy(delegated_surface_id_);
+ }
+ delegated_surface_id_ = surface_id_allocator_->GenerateId();
+ factory_.Create(delegated_surface_id_);
+ last_swap_frame_size_ = frame_size;
+ }
+ display_->SetSurfaceId(delegated_surface_id_,
+ frame.metadata.device_scale_factor);
+
+ factory_.SubmitCompositorFrame(
+ delegated_surface_id_, std::move(frame),
+ base::Bind(&DirectCompositorFrameSink::DidDrawCallback,
+ base::Unretained(this)));
}
-uint32_t DirectCompositorFrameSink::GetFramebufferCopyTextureFormat() {
- // This is a CompositorFrameSink, no framebuffer/direct drawing support.
- NOTREACHED();
- return 0;
+void DirectCompositorFrameSink::ForceReclaimResources() {
+ if (!delegated_surface_id_.is_null()) {
+ factory_.SubmitCompositorFrame(delegated_surface_id_, CompositorFrame(),
+ SurfaceFactory::DrawCallback());
+ }
}
void DirectCompositorFrameSink::ReturnResources(
« no previous file with comments | « cc/surfaces/direct_compositor_frame_sink.h ('k') | cc/surfaces/display.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698