| Index: components/exo/surface.h
|
| diff --git a/components/exo/surface.h b/components/exo/surface.h
|
| index 6c3acd7a530b2220475626c784aad220af40a063..111b4d80ecc106f352d6c1b975c8670f01dda1e7 100644
|
| --- a/components/exo/surface.h
|
| +++ b/components/exo/surface.h
|
| @@ -21,6 +21,7 @@
|
| #include "ui/aura/window.h"
|
| #include "ui/aura/window_observer.h"
|
| #include "ui/compositor/compositor_observer.h"
|
| +#include "ui/compositor/layer_owner_delegate.h"
|
| #include "ui/gfx/geometry/rect.h"
|
|
|
| namespace base {
|
| @@ -81,6 +82,7 @@ class SurfaceFactoryOwner : public base::RefCounted<SurfaceFactoryOwner>,
|
| // It has a location, size and pixel contents.
|
| class Surface : public aura::Window,
|
| public aura::WindowObserver,
|
| + public ui::LayerOwnerDelegate,
|
| public ui::CompositorObserver {
|
| public:
|
| Surface();
|
| @@ -202,6 +204,9 @@ class Surface : public aura::Window,
|
| void OnWindowRemovingFromRootWindow(aura::Window* window,
|
| aura::Window* new_root) override;
|
|
|
| + // Overridden from ui::LayerOwnerDelegate:
|
| + void OnLayerRecreated(ui::Layer* old_layer, ui::Layer* new_layer) override;
|
| +
|
| // Overridden from ui::CompositorObserver:
|
| void OnCompositingDidCommit(ui::Compositor* compositor) override;
|
| void OnCompositingStarted(ui::Compositor* compositor,
|
| @@ -219,11 +224,17 @@ class Surface : public aura::Window,
|
| }
|
|
|
| // Commit the current attached buffer to a TextureLayer.
|
| - void CommitLayerContents();
|
| + void CommitTextureContents();
|
|
|
| // Commit the current attached buffer to a SurfaceLayer.
|
| void CommitSurfaceContents();
|
|
|
| + // Set TextureLayer contents to the current buffer.
|
| + void SetTextureLayerContents(ui::Layer* layer);
|
| +
|
| + // Set SurfaceLayer contents to the current buffer.
|
| + void SetSurfaceLayerContents(ui::Layer* layer);
|
| +
|
| // This returns true when the surface has some contents assigned to it.
|
| bool has_contents() const { return !!current_buffer_; }
|
|
|
| @@ -283,15 +294,24 @@ class Surface : public aura::Window,
|
| // The crop rectangle to take effect when Commit() is called.
|
| gfx::RectF pending_crop_;
|
|
|
| + // The active crop rectangle.
|
| + gfx::RectF crop_;
|
| +
|
| // The secure output visibility state to take effect when Commit() is called.
|
| bool pending_only_visible_on_secure_output_;
|
|
|
| + // The active secure output visibility state.
|
| + bool only_visible_on_secure_output_;
|
| +
|
| // The blend mode state to take effect when Commit() is called.
|
| SkXfermode::Mode pending_blend_mode_;
|
|
|
| // The alpha state to take effect when Commit() is called.
|
| float pending_alpha_;
|
|
|
| + // The active alpha state.
|
| + float alpha_;
|
| +
|
| // The buffer that is currently set as content of surface.
|
| base::WeakPtr<Buffer> current_buffer_;
|
|
|
|
|