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

Unified Diff: components/viz/client/client_compositor_frame_sink.cc

Issue 2875753002: Implement aura::WindowPortMus::CreateCompositorFrameSink() (Closed)
Patch Set: Fix build problem 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
« no previous file with comments | « components/viz/client/client_compositor_frame_sink.h ('k') | services/ui/ws/window_server.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/viz/client/client_compositor_frame_sink.cc
diff --git a/components/viz/client/client_compositor_frame_sink.cc b/components/viz/client/client_compositor_frame_sink.cc
index 3fe17a6c0fdf3a40fcfa2d0be2b67dddef1da713..13e1fafd569f9c529b14c97d93d7d9c9dd0bef86 100644
--- a/components/viz/client/client_compositor_frame_sink.cc
+++ b/components/viz/client/client_compositor_frame_sink.cc
@@ -32,7 +32,8 @@ ClientCompositorFrameSink::ClientCompositorFrameSink(
compositor_frame_sink_info_(std::move(compositor_frame_sink_info)),
client_request_(std::move(client_request)),
client_binding_(this),
- enable_surface_synchronization_(enable_surface_synchronization) {
+ enable_surface_synchronization_(enable_surface_synchronization),
+ weak_factory_(this) {
DETACH_FROM_THREAD(thread_checker_);
}
@@ -49,12 +50,19 @@ ClientCompositorFrameSink::ClientCompositorFrameSink(
compositor_frame_sink_info_(std::move(compositor_frame_sink_info)),
client_request_(std::move(client_request)),
client_binding_(this),
- enable_surface_synchronization_(enable_surface_synchronization) {
+ enable_surface_synchronization_(enable_surface_synchronization),
+ weak_factory_(this) {
DETACH_FROM_THREAD(thread_checker_);
}
ClientCompositorFrameSink::~ClientCompositorFrameSink() {}
+base::WeakPtr<ClientCompositorFrameSink>
+ClientCompositorFrameSink::GetWeakPtr() {
+ DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
+ return weak_factory_.GetWeakPtr();
+}
+
bool ClientCompositorFrameSink::BindToClient(
cc::CompositorFrameSinkClient* client) {
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
@@ -87,6 +95,7 @@ void ClientCompositorFrameSink::DetachFromClient() {
void ClientCompositorFrameSink::SetLocalSurfaceId(
const cc::LocalSurfaceId& local_surface_id) {
+ DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
DCHECK(local_surface_id.is_valid());
DCHECK(enable_surface_synchronization_);
local_surface_id_ = local_surface_id;
« no previous file with comments | « components/viz/client/client_compositor_frame_sink.h ('k') | services/ui/ws/window_server.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698