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

Unified Diff: services/ui/ws/frame_generator.cc

Issue 2429173005: Mus+Ash: Replace (Server)WindowSurface with (Server)WindowCompositorFrameSink (Closed)
Patch Set: Rebased Created 4 years, 2 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
« no previous file with comments | « services/ui/ws/frame_generator.h ('k') | services/ui/ws/frame_generator_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: services/ui/ws/frame_generator.cc
diff --git a/services/ui/ws/frame_generator.cc b/services/ui/ws/frame_generator.cc
index 922def0c625b0e4f74234588a7c0547d19e862fa..d42f96d1143200fcc394bd94eccf228ecbb672ba 100644
--- a/services/ui/ws/frame_generator.cc
+++ b/services/ui/ws/frame_generator.cc
@@ -15,8 +15,8 @@
#include "services/ui/surfaces/display_compositor_frame_sink.h"
#include "services/ui/ws/frame_generator_delegate.h"
#include "services/ui/ws/server_window.h"
-#include "services/ui/ws/server_window_surface.h"
-#include "services/ui/ws/server_window_surface_manager.h"
+#include "services/ui/ws/server_window_compositor_frame_sink.h"
+#include "services/ui/ws/server_window_compositor_frame_sink_manager.h"
namespace ui {
@@ -158,9 +158,11 @@ void FrameGenerator::DrawWindowTree(
if (!window->visible())
return;
- ServerWindowSurface* default_surface =
- window->surface_manager() ? window->surface_manager()->GetDefaultSurface()
- : nullptr;
+ ServerWindowCompositorFrameSink* default_compositor_frame_sink =
+ window->compositor_frame_sink_manager()
+ ? window->compositor_frame_sink_manager()
+ ->GetDefaultCompositorFrameSink()
+ : nullptr;
const gfx::Rect absolute_bounds =
window->bounds() + parent_to_root_origin_offset;
@@ -171,15 +173,16 @@ void FrameGenerator::DrawWindowTree(
combined_opacity, may_contain_video);
}
- if (!window->surface_manager() || !window->surface_manager()->ShouldDraw())
+ if (!window->compositor_frame_sink_manager() ||
+ !window->compositor_frame_sink_manager()->ShouldDraw())
return;
- ServerWindowSurface* underlay_surface =
- window->surface_manager()->GetUnderlaySurface();
- if (!default_surface && !underlay_surface)
+ ServerWindowCompositorFrameSink* underlay_compositor_frame_sink =
+ window->compositor_frame_sink_manager()->GetUnderlayCompositorFrameSink();
+ if (!default_compositor_frame_sink && !underlay_compositor_frame_sink)
return;
- if (default_surface) {
+ if (default_compositor_frame_sink) {
gfx::Transform quad_to_target_transform;
quad_to_target_transform.Translate(absolute_bounds.x(),
absolute_bounds.y());
@@ -196,15 +199,15 @@ void FrameGenerator::DrawWindowTree(
combined_opacity, SkXfermode::kSrcOver_Mode,
0 /* sorting-context_id */);
auto* quad = pass->CreateAndAppendDrawQuad<cc::SurfaceDrawQuad>();
- AddOrUpdateSurfaceReference(default_surface);
+ AddOrUpdateSurfaceReference(default_compositor_frame_sink);
quad->SetAll(sqs, bounds_at_origin /* rect */,
gfx::Rect() /* opaque_rect */,
bounds_at_origin /* visible_rect */, true /* needs_blending*/,
- default_surface->GetSurfaceId());
- if (default_surface->may_contain_video())
+ default_compositor_frame_sink->GetSurfaceId());
+ if (default_compositor_frame_sink->may_contain_video())
*may_contain_video = true;
}
- if (underlay_surface) {
+ if (underlay_compositor_frame_sink) {
const gfx::Rect underlay_absolute_bounds =
absolute_bounds - window->underlay_offset();
gfx::Transform quad_to_target_transform;
@@ -212,7 +215,7 @@ void FrameGenerator::DrawWindowTree(
underlay_absolute_bounds.y());
cc::SharedQuadState* sqs = pass->CreateAndAppendSharedQuadState();
const gfx::Rect bounds_at_origin(
- underlay_surface->last_submitted_frame_size());
+ underlay_compositor_frame_sink->last_submitted_frame_size());
sqs->SetAll(quad_to_target_transform,
bounds_at_origin.size() /* layer_bounds */,
bounds_at_origin /* visible_layer_bounds */,
@@ -221,17 +224,17 @@ void FrameGenerator::DrawWindowTree(
0 /* sorting-context_id */);
auto* quad = pass->CreateAndAppendDrawQuad<cc::SurfaceDrawQuad>();
- AddOrUpdateSurfaceReference(underlay_surface);
+ AddOrUpdateSurfaceReference(underlay_compositor_frame_sink);
quad->SetAll(sqs, bounds_at_origin /* rect */,
gfx::Rect() /* opaque_rect */,
bounds_at_origin /* visible_rect */, true /* needs_blending*/,
- underlay_surface->GetSurfaceId());
- DCHECK(!underlay_surface->may_contain_video());
+ underlay_compositor_frame_sink->GetSurfaceId());
+ DCHECK(!underlay_compositor_frame_sink->may_contain_video());
}
}
void FrameGenerator::AddOrUpdateSurfaceReference(
- ServerWindowSurface* window_surface) {
+ ServerWindowCompositorFrameSink* window_surface) {
if (!window_surface->has_frame())
return;
cc::SurfaceId surface_id = window_surface->GetSurfaceId();
@@ -298,16 +301,20 @@ void FrameGenerator::ReleaseAllSurfaceReferences() {
void FrameGenerator::OnWindowDestroying(ServerWindow* window) {
window->RemoveObserver(this);
- ServerWindowSurfaceManager* surface_manager = window->surface_manager();
+ ServerWindowCompositorFrameSinkManager* surface_manager =
+ window->compositor_frame_sink_manager();
// If FrameGenerator was observing |window|, then that means it had a surface
- // at some point in time and should have a ServerWindowSurfaceManager.
+ // at some point in time and should have a
+ // ServerWindowCompositorFrameSinkManager.
DCHECK(surface_manager);
- ServerWindowSurface* default_surface = surface_manager->GetDefaultSurface();
- if (default_surface)
- ReleaseFrameSinkReference(default_surface->frame_sink_id());
- ServerWindowSurface* underlay_surface = surface_manager->GetUnderlaySurface();
- if (underlay_surface)
- ReleaseFrameSinkReference(underlay_surface->frame_sink_id());
+ ServerWindowCompositorFrameSink* default_compositor_frame_sink =
+ surface_manager->GetDefaultCompositorFrameSink();
+ if (default_compositor_frame_sink)
+ ReleaseFrameSinkReference(default_compositor_frame_sink->frame_sink_id());
+ ServerWindowCompositorFrameSink* underlay_compositor_frame_sink =
+ surface_manager->GetUnderlayCompositorFrameSink();
+ if (underlay_compositor_frame_sink)
+ ReleaseFrameSinkReference(underlay_compositor_frame_sink->frame_sink_id());
}
} // namespace ws
« no previous file with comments | « services/ui/ws/frame_generator.h ('k') | services/ui/ws/frame_generator_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698