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

Unified Diff: ui/aura/mus/window_port_mus.h

Issue 2875753002: Implement aura::WindowPortMus::CreateCompositorFrameSink() (Closed)
Patch Set: Rebase Created 3 years, 6 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
Index: ui/aura/mus/window_port_mus.h
diff --git a/ui/aura/mus/window_port_mus.h b/ui/aura/mus/window_port_mus.h
index c72fb583bbbfcf55022721399d6c0daec7b6d481..35388395e3e9ed5eef0c7726990dc8bbee483011 100644
--- a/ui/aura/mus/window_port_mus.h
+++ b/ui/aura/mus/window_port_mus.h
@@ -24,6 +24,10 @@
#include "ui/gfx/geometry/rect.h"
#include "ui/platform_window/mojo/text_input_state.mojom.h"
+namespace viz {
+class ClientCompositorFrameSink;
+}
+
namespace aura {
class ClientSurfaceEmbedder;
@@ -223,7 +227,6 @@ class AURA_EXPORT WindowPortMus : public WindowPort, public WindowMus {
void SetFrameSinkIdFromServer(const cc::FrameSinkId& frame_sink_id) override;
const cc::LocalSurfaceId& GetOrAllocateLocalSurfaceId(
const gfx::Size& surface_size_in_pixels) override;
- void SetPrimarySurfaceInfo(const cc::SurfaceInfo& surface_info) override;
void SetFallbackSurfaceInfo(const cc::SurfaceInfo& surface_info) override;
void DestroyFromServer() override;
void AddTransientChildFromServer(WindowMus* child) override;
@@ -239,6 +242,7 @@ class AURA_EXPORT WindowPortMus : public WindowPort, public WindowMus {
void PrepareForTransientRestack(WindowMus* window) override;
void OnTransientRestackDone(WindowMus* window) override;
void NotifyEmbeddedAppDisconnected() override;
+ bool HasLocalCompositorFrameSink() override;
// WindowPort:
void OnPreInit(Window* window) override;
@@ -285,6 +289,11 @@ class AURA_EXPORT WindowPortMus : public WindowPort, public WindowMus {
ui::CursorData cursor_;
+ // When a frame sink is created
+ // for a local aura::Window, we need keep a weak ptr of it, so we can update
+ // the local surface id when necessary.
+ base::WeakPtr<viz::ClientCompositorFrameSink> local_compositor_frame_sink_;
+
DISALLOW_COPY_AND_ASSIGN(WindowPortMus);
};

Powered by Google App Engine
This is Rietveld 408576698