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

Side by Side Diff: content/browser/compositor/delegated_frame_host.h

Issue 986823002: De-dupe copy requests for tab capture in DelegatedFrameHost. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove redundant portion of new test. Created 5 years, 9 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ 5 #ifndef CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_
6 #define CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ 6 #define CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_
7 7
8 #include "cc/layers/delegated_frame_provider.h" 8 #include "cc/layers/delegated_frame_provider.h"
9 #include "cc/layers/delegated_frame_resource_collection.h" 9 #include "cc/layers/delegated_frame_resource_collection.h"
10 #include "cc/output/copy_output_result.h" 10 #include "cc/output/copy_output_result.h"
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after
301 NO_PENDING_COMMIT, 301 NO_PENDING_COMMIT,
302 }; 302 };
303 CanLockCompositorState can_lock_compositor_; 303 CanLockCompositorState can_lock_compositor_;
304 304
305 base::TimeTicks last_draw_ended_; 305 base::TimeTicks last_draw_ended_;
306 306
307 // Subscriber that listens to frame presentation events. 307 // Subscriber that listens to frame presentation events.
308 scoped_ptr<RenderWidgetHostViewFrameSubscriber> frame_subscriber_; 308 scoped_ptr<RenderWidgetHostViewFrameSubscriber> frame_subscriber_;
309 std::vector<scoped_refptr<OwnedMailbox> > idle_frame_subscriber_textures_; 309 std::vector<scoped_refptr<OwnedMailbox> > idle_frame_subscriber_textures_;
310 310
311 // Set to true if a frame was received from the renderer and a copy request
312 // was made for the frame subscriber, but drawing has not yet started. This
313 // is used to prevent more than one copy request being executed per draw.
314 bool frame_subscriber_copy_request_pending_;
315
311 // Callback used to pass the output request to the layer or to a function 316 // Callback used to pass the output request to the layer or to a function
312 // specified by a test. 317 // specified by a test.
313 base::Callback<void(scoped_ptr<cc::CopyOutputRequest>)> 318 base::Callback<void(scoped_ptr<cc::CopyOutputRequest>)>
314 request_copy_of_output_callback_for_testing_; 319 request_copy_of_output_callback_for_testing_;
315 320
316 // YUV readback pipeline. 321 // YUV readback pipeline.
317 scoped_ptr<content::ReadbackYUVInterface> 322 scoped_ptr<content::ReadbackYUVInterface>
318 yuv_readback_pipeline_; 323 yuv_readback_pipeline_;
319 324
320 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; 325 scoped_ptr<DelegatedFrameEvictor> delegated_frame_evictor_;
321 }; 326 };
322 327
323 } // namespace content 328 } // namespace content
324 329
325 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_ 330 #endif // CONTENT_BROWSER_COMPOSITOR_DELEGATED_FRAME_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698