| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 COMPONENTS_EXO_SURFACE_H_ | 5 #ifndef COMPONENTS_EXO_SURFACE_H_ |
| 6 #define COMPONENTS_EXO_SURFACE_H_ | 6 #define COMPONENTS_EXO_SURFACE_H_ |
| 7 | 7 |
| 8 #include <list> | 8 #include <list> |
| 9 #include <memory> | 9 #include <memory> |
| 10 #include <set> | 10 #include <set> |
| 11 #include <utility> | 11 #include <utility> |
| 12 | 12 |
| 13 #include "base/callback.h" | 13 #include "base/callback.h" |
| 14 #include "base/macros.h" | 14 #include "base/macros.h" |
| 15 #include "base/memory/ref_counted.h" | 15 #include "base/memory/ref_counted.h" |
| 16 #include "base/memory/weak_ptr.h" | 16 #include "base/memory/weak_ptr.h" |
| 17 #include "base/observer_list.h" | 17 #include "base/observer_list.h" |
| 18 #include "cc/resources/transferable_resource.h" | 18 #include "cc/resources/transferable_resource.h" |
| 19 #include "cc/scheduler/begin_frame_source.h" | 19 #include "cc/scheduler/begin_frame_source.h" |
| 20 #include "cc/surfaces/surface_id_allocator.h" | 20 #include "cc/surfaces/local_surface_id_allocator.h" |
| 21 #include "components/exo/compositor_frame_sink.h" | 21 #include "components/exo/compositor_frame_sink.h" |
| 22 #include "components/exo/compositor_frame_sink_holder.h" | 22 #include "components/exo/compositor_frame_sink_holder.h" |
| 23 #include "third_party/skia/include/core/SkBlendMode.h" | 23 #include "third_party/skia/include/core/SkBlendMode.h" |
| 24 #include "third_party/skia/include/core/SkRegion.h" | 24 #include "third_party/skia/include/core/SkRegion.h" |
| 25 #include "ui/aura/window.h" | 25 #include "ui/aura/window.h" |
| 26 #include "ui/aura/window_observer.h" | 26 #include "ui/aura/window_observer.h" |
| 27 #include "ui/compositor/compositor_vsync_manager.h" | 27 #include "ui/compositor/compositor_vsync_manager.h" |
| 28 #include "ui/gfx/geometry/rect.h" | 28 #include "ui/gfx/geometry/rect.h" |
| 29 #include "ui/gfx/native_widget_types.h" | 29 #include "ui/gfx/native_widget_types.h" |
| 30 | 30 |
| 31 namespace base { | 31 namespace base { |
| 32 namespace trace_event { | 32 namespace trace_event { |
| 33 class TracedValue; | 33 class TracedValue; |
| 34 } | 34 } |
| 35 } | 35 } |
| 36 | 36 |
| 37 namespace cc { | 37 namespace cc { |
| 38 class SurfaceIdAllocator; | 38 class LocalSurfaceIdAllocator; |
| 39 } | 39 } |
| 40 | 40 |
| 41 namespace gfx { | 41 namespace gfx { |
| 42 class Path; | 42 class Path; |
| 43 } | 43 } |
| 44 | 44 |
| 45 namespace exo { | 45 namespace exo { |
| 46 class Buffer; | 46 class Buffer; |
| 47 class Pointer; | 47 class Pointer; |
| 48 class SurfaceDelegate; | 48 class SurfaceDelegate; |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 306 bool has_pending_contents_ = false; | 306 bool has_pending_contents_ = false; |
| 307 | 307 |
| 308 // The buffer that will become the content of surface when Commit() is called. | 308 // The buffer that will become the content of surface when Commit() is called. |
| 309 BufferAttachment pending_buffer_; | 309 BufferAttachment pending_buffer_; |
| 310 | 310 |
| 311 const cc::FrameSinkId frame_sink_id_; | 311 const cc::FrameSinkId frame_sink_id_; |
| 312 cc::LocalSurfaceId local_surface_id_; | 312 cc::LocalSurfaceId local_surface_id_; |
| 313 | 313 |
| 314 scoped_refptr<CompositorFrameSinkHolder> compositor_frame_sink_holder_; | 314 scoped_refptr<CompositorFrameSinkHolder> compositor_frame_sink_holder_; |
| 315 | 315 |
| 316 cc::SurfaceIdAllocator id_allocator_; | 316 cc::LocalSurfaceIdAllocator id_allocator_; |
| 317 | 317 |
| 318 // The next resource id the buffer will be attached to. | 318 // The next resource id the buffer will be attached to. |
| 319 int next_resource_id_ = 1; | 319 int next_resource_id_ = 1; |
| 320 | 320 |
| 321 // The damage region to schedule paint for when Commit() is called. | 321 // The damage region to schedule paint for when Commit() is called. |
| 322 SkRegion pending_damage_; | 322 SkRegion pending_damage_; |
| 323 | 323 |
| 324 // These lists contains the callbacks to notify the client when it is a good | 324 // These lists contains the callbacks to notify the client when it is a good |
| 325 // time to start producing a new frame. These callbacks move to | 325 // time to start producing a new frame. These callbacks move to |
| 326 // |frame_callbacks_| when Commit() is called. Later they are moved to | 326 // |frame_callbacks_| when Commit() is called. Later they are moved to |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 388 // ui::Layer::SetShowSurface because the layer needs to know how to add | 388 // ui::Layer::SetShowSurface because the layer needs to know how to add |
| 389 // references to surfaces. | 389 // references to surfaces. |
| 390 scoped_refptr<cc::SurfaceReferenceFactory> surface_reference_factory_; | 390 scoped_refptr<cc::SurfaceReferenceFactory> surface_reference_factory_; |
| 391 | 391 |
| 392 DISALLOW_COPY_AND_ASSIGN(Surface); | 392 DISALLOW_COPY_AND_ASSIGN(Surface); |
| 393 }; | 393 }; |
| 394 | 394 |
| 395 } // namespace exo | 395 } // namespace exo |
| 396 | 396 |
| 397 #endif // COMPONENTS_EXO_SURFACE_H_ | 397 #endif // COMPONENTS_EXO_SURFACE_H_ |
| OLD | NEW |