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

Unified Diff: cc/output/output_surface.cc

Issue 2443003004: cc: Make OutputSurface::BindToClient pure virtual and not return bool (Closed)
Patch Set: bindtoclient-pure-virtual: rebase 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 | « cc/output/output_surface.h ('k') | cc/output/output_surface_client.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/output/output_surface.cc
diff --git a/cc/output/output_surface.cc b/cc/output/output_surface.cc
index 52bb83167dcf0f07b61db6c56b4fa37b4c42a009..9c86c08a80bdd5de6740ff065c72b70aac8ecb47 100644
--- a/cc/output/output_surface.cc
+++ b/cc/output/output_surface.cc
@@ -22,54 +22,20 @@ namespace cc {
OutputSurface::OutputSurface(scoped_refptr<ContextProvider> context_provider)
: context_provider_(std::move(context_provider)) {
DCHECK(context_provider_);
- thread_checker_.DetachFromThread();
}
OutputSurface::OutputSurface(
std::unique_ptr<SoftwareOutputDevice> software_device)
: software_device_(std::move(software_device)) {
DCHECK(software_device_);
- thread_checker_.DetachFromThread();
}
OutputSurface::OutputSurface(
scoped_refptr<VulkanContextProvider> vulkan_context_provider)
: vulkan_context_provider_(std::move(vulkan_context_provider)) {
DCHECK(vulkan_context_provider_);
- thread_checker_.DetachFromThread();
}
-OutputSurface::~OutputSurface() {
- // Is destroyed on the thread it is bound to.
- DCHECK(thread_checker_.CalledOnValidThread());
-
- if (!client_)
- return;
-
- if (context_provider_) {
- context_provider_->SetLostContextCallback(
- ContextProvider::LostContextCallback());
- }
-}
-
-bool OutputSurface::BindToClient(OutputSurfaceClient* client) {
- DCHECK(thread_checker_.CalledOnValidThread());
- DCHECK(client);
- DCHECK(!client_);
- client_ = client;
-
- if (context_provider_) {
- if (!context_provider_->BindToCurrentThread())
- return false;
- context_provider_->SetLostContextCallback(base::Bind(
- &OutputSurface::DidLoseOutputSurface, base::Unretained(this)));
- }
- return true;
-}
-
-void OutputSurface::DidLoseOutputSurface() {
- TRACE_EVENT0("cc", "OutputSurface::DidLoseOutputSurface");
- client_->DidLoseOutputSurface();
-}
+OutputSurface::~OutputSurface() = default;
} // namespace cc
« no previous file with comments | « cc/output/output_surface.h ('k') | cc/output/output_surface_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698