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

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

Issue 2875753002: Implement aura::WindowPortMus::CreateCompositorFrameSink() (Closed)
Patch Set: Address review issues Created 3 years, 7 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.cc
diff --git a/ui/aura/mus/window_port_mus.cc b/ui/aura/mus/window_port_mus.cc
index b946380ee01b382faa7ee45716b51182c7f698b6..2edcf0ee7f0d2b888f8956aae179ebb1ac884497 100644
--- a/ui/aura/mus/window_port_mus.cc
+++ b/ui/aura/mus/window_port_mus.cc
@@ -93,21 +93,6 @@ void WindowPortMus::Embed(
window_tree_client_->Embed(window_, std::move(client), flags, callback);
}
-std::unique_ptr<cc::CompositorFrameSink>
-WindowPortMus::RequestCompositorFrameSink(
- scoped_refptr<cc::ContextProvider> context_provider,
- gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager) {
- std::unique_ptr<ui::ClientCompositorFrameSinkBinding>
- compositor_frame_sink_binding;
- std::unique_ptr<ui::ClientCompositorFrameSink> compositor_frame_sink =
- ui::ClientCompositorFrameSink::Create(
- std::move(context_provider), gpu_memory_buffer_manager,
- &compositor_frame_sink_binding,
- window_tree_client_->enable_surface_synchronization_);
- AttachCompositorFrameSink(std::move(compositor_frame_sink_binding));
- return std::move(compositor_frame_sink);
-}
-
void WindowPortMus::AttachCompositorFrameSink(
std::unique_ptr<ui::ClientCompositorFrameSinkBinding>
compositor_frame_sink_binding) {
@@ -495,13 +480,24 @@ void WindowPortMus::OnPropertyChanged(const void* key,
}
std::unique_ptr<cc::CompositorFrameSink>
-WindowPortMus::CreateCompositorFrameSink() {
- // TODO(penghuang): Implement it for Mus.
- return nullptr;
+WindowPortMus::CreateCompositorFrameSink(
+ scoped_refptr<cc::ContextProvider> context_provider,
+ gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager) {
+ DCHECK_NE(window_mus_type(), WindowMusType::EMBED_IN_OWNER);
+ DCHECK_NE(window_mus_type(), WindowMusType::TOP_LEVEL_IN_WM);
+ std::unique_ptr<ui::ClientCompositorFrameSinkBinding> frame_sink_binding;
+ std::unique_ptr<ui::ClientCompositorFrameSink> frame_sink =
+ ui::ClientCompositorFrameSink::Create(
+ std::move(context_provider), gpu_memory_buffer_manager,
+ &frame_sink_binding,
+ window_tree_client_->enable_surface_synchronization_);
+ AttachCompositorFrameSink(std::move(frame_sink_binding));
+ return std::move(frame_sink);
}
cc::SurfaceId WindowPortMus::GetSurfaceId() const {
- // TODO(penghuang): Implement it for Mus.
+ // This method is only used by exo unittests which are not running against
+ // mus, so don't implement it now.
return cc::SurfaceId();
}
@@ -520,11 +516,6 @@ void WindowPortMus::UpdatePrimarySurfaceInfo() {
}
void WindowPortMus::UpdateClientSurfaceEmbedder() {
- bool embeds_surface = window_mus_type() == WindowMusType::TOP_LEVEL_IN_WM ||
- window_mus_type() == WindowMusType::EMBED_IN_OWNER;
- if (!embeds_surface)
- return;
-
if (!client_surface_embedder_) {
client_surface_embedder_ = base::MakeUnique<ClientSurfaceEmbedder>(
window_, window_tree_client_->normal_client_area_insets_);

Powered by Google App Engine
This is Rietveld 408576698