| OLD | NEW |
| 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_RENDERER_HOST_DELEGATED_FRAME_HOST_H_ | 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_DELEGATED_FRAME_HOST_H_ |
| 6 #define CONTENT_BROWSER_RENDERER_HOST_DELEGATED_FRAME_HOST_H_ | 6 #define CONTENT_BROWSER_RENDERER_HOST_DELEGATED_FRAME_HOST_H_ |
| 7 | 7 |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 #include "ui/compositor/layer.h" | 27 #include "ui/compositor/layer.h" |
| 28 #include "ui/events/event.h" | 28 #include "ui/events/event.h" |
| 29 #include "ui/gfx/geometry/rect_conversions.h" | 29 #include "ui/gfx/geometry/rect_conversions.h" |
| 30 | 30 |
| 31 namespace base { | 31 namespace base { |
| 32 class TickClock; | 32 class TickClock; |
| 33 } | 33 } |
| 34 | 34 |
| 35 namespace cc { | 35 namespace cc { |
| 36 class CompositorFrameSinkSupport; | 36 class CompositorFrameSinkSupport; |
| 37 class LocalSurfaceIdAllocator; | |
| 38 } | 37 } |
| 39 | 38 |
| 40 namespace media { | 39 namespace media { |
| 41 class VideoFrame; | 40 class VideoFrame; |
| 42 } | 41 } |
| 43 | 42 |
| 44 namespace display_compositor { | 43 namespace display_compositor { |
| 45 class ReadbackYUVInterface; | 44 class ReadbackYUVInterface; |
| 46 } | 45 } |
| 47 | 46 |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 118 // cc::CompositorFrameSinkSupportClient implementation. | 117 // cc::CompositorFrameSinkSupportClient implementation. |
| 119 void DidReceiveCompositorFrameAck() override; | 118 void DidReceiveCompositorFrameAck() override; |
| 120 void OnBeginFrame(const cc::BeginFrameArgs& args) override; | 119 void OnBeginFrame(const cc::BeginFrameArgs& args) override; |
| 121 void ReclaimResources(const cc::ReturnedResourceArray& resources) override; | 120 void ReclaimResources(const cc::ReturnedResourceArray& resources) override; |
| 122 void WillDrawSurface(const cc::LocalSurfaceId& id, | 121 void WillDrawSurface(const cc::LocalSurfaceId& id, |
| 123 const gfx::Rect& damage_rect) override; | 122 const gfx::Rect& damage_rect) override; |
| 124 | 123 |
| 125 // Public interface exposed to RenderWidgetHostView. | 124 // Public interface exposed to RenderWidgetHostView. |
| 126 | 125 |
| 127 void SwapDelegatedFrame(uint32_t compositor_frame_sink_id, | 126 void SwapDelegatedFrame(uint32_t compositor_frame_sink_id, |
| 127 const cc::LocalSurfaceId& local_surface_id, |
| 128 cc::CompositorFrame frame); | 128 cc::CompositorFrame frame); |
| 129 void ClearDelegatedFrame(); | 129 void ClearDelegatedFrame(); |
| 130 void WasHidden(); | 130 void WasHidden(); |
| 131 void WasShown(const ui::LatencyInfo& latency_info); | 131 void WasShown(const ui::LatencyInfo& latency_info); |
| 132 void WasResized(); | 132 void WasResized(); |
| 133 bool HasSavedFrame(); | 133 bool HasSavedFrame(); |
| 134 gfx::Size GetRequestedRendererSize() const; | 134 gfx::Size GetRequestedRendererSize() const; |
| 135 void SetCompositor(ui::Compositor* compositor); | 135 void SetCompositor(ui::Compositor* compositor); |
| 136 void ResetCompositor(); | 136 void ResetCompositor(); |
| 137 // Note: |src_subrect| is specified in DIP dimensions while |output_size| | 137 // Note: |src_subrect| is specified in DIP dimensions while |output_size| |
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 281 bool skipped_frames_; | 281 bool skipped_frames_; |
| 282 std::vector<ui::LatencyInfo> skipped_latency_info_list_; | 282 std::vector<ui::LatencyInfo> skipped_latency_info_list_; |
| 283 | 283 |
| 284 std::unique_ptr<ui::Layer> right_gutter_; | 284 std::unique_ptr<ui::Layer> right_gutter_; |
| 285 std::unique_ptr<ui::Layer> bottom_gutter_; | 285 std::unique_ptr<ui::Layer> bottom_gutter_; |
| 286 | 286 |
| 287 // This is the last root background color from a swapped frame. | 287 // This is the last root background color from a swapped frame. |
| 288 SkColor background_color_; | 288 SkColor background_color_; |
| 289 | 289 |
| 290 // State for rendering into a Surface. | 290 // State for rendering into a Surface. |
| 291 std::unique_ptr<cc::LocalSurfaceIdAllocator> id_allocator_; | |
| 292 std::unique_ptr<cc::CompositorFrameSinkSupport> support_; | 291 std::unique_ptr<cc::CompositorFrameSinkSupport> support_; |
| 293 gfx::Size current_surface_size_; | 292 gfx::Size current_surface_size_; |
| 294 float current_scale_factor_; | 293 float current_scale_factor_; |
| 295 cc::ReturnedResourceArray surface_returned_resources_; | 294 cc::ReturnedResourceArray surface_returned_resources_; |
| 296 | 295 |
| 297 // This lock is the one waiting for a frame of the right size to come back | 296 // This lock is the one waiting for a frame of the right size to come back |
| 298 // from the renderer/GPU process. It is set from the moment the aura window | 297 // from the renderer/GPU process. It is set from the moment the aura window |
| 299 // got resized, to the moment we committed the renderer frame of the same | 298 // got resized, to the moment we committed the renderer frame of the same |
| 300 // size. It keeps track of the size we expect from the renderer, and locks the | 299 // size. It keeps track of the size we expect from the renderer, and locks the |
| 301 // compositor, as well as the UI for a short time to give a chance to the | 300 // compositor, as well as the UI for a short time to give a chance to the |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 341 cc::BeginFrameArgs::kInvalidFrameNumber; | 340 cc::BeginFrameArgs::kInvalidFrameNumber; |
| 342 | 341 |
| 343 bool has_frame_ = false; | 342 bool has_frame_ = false; |
| 344 | 343 |
| 345 std::unique_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; | 344 std::unique_ptr<DelegatedFrameEvictor> delegated_frame_evictor_; |
| 346 }; | 345 }; |
| 347 | 346 |
| 348 } // namespace content | 347 } // namespace content |
| 349 | 348 |
| 350 #endif // CONTENT_BROWSER_RENDERER_HOST_DELEGATED_FRAME_HOST_H_ | 349 #endif // CONTENT_BROWSER_RENDERER_HOST_DELEGATED_FRAME_HOST_H_ |
| OLD | NEW |