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

Unified Diff: headless/lib/browser/headless_browser_impl.cc

Issue 2626823003: [headless] Add default browser context to HeadlessBrowser. (Closed)
Patch Set: More explicit error message. Created 3 years, 11 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: headless/lib/browser/headless_browser_impl.cc
diff --git a/headless/lib/browser/headless_browser_impl.cc b/headless/lib/browser/headless_browser_impl.cc
index 876be95cdc802db462bc1876df03d2d11e8597b5..93d6918a76c8d022a1f46f57296f2c8f5da45f1a 100644
--- a/headless/lib/browser/headless_browser_impl.cc
+++ b/headless/lib/browser/headless_browser_impl.cc
@@ -54,6 +54,7 @@ HeadlessBrowserImpl::HeadlessBrowserImpl(
: on_start_callback_(on_start_callback),
options_(std::move(options)),
browser_main_parts_(nullptr),
+ default_browser_context_(nullptr),
weak_ptr_factory_(this) {}
HeadlessBrowserImpl::~HeadlessBrowserImpl() {}
@@ -158,6 +159,19 @@ void HeadlessBrowserImpl::DestroyBrowserContext(
auto it = browser_contexts_.find(browser_context->Id());
DCHECK(it != browser_contexts_.end());
browser_contexts_.erase(it);
+ if (default_browser_context_ == browser_context)
+ SetDefaultBrowserContext(nullptr);
+}
+
+void HeadlessBrowserImpl::SetDefaultBrowserContext(
+ HeadlessBrowserContext* browser_context) {
+ DCHECK(!browser_context ||
+ this == HeadlessBrowserContextImpl::From(browser_context)->browser());
+ default_browser_context_ = browser_context;
+}
+
+HeadlessBrowserContext* HeadlessBrowserImpl::GetDefaultBrowserContext() {
+ return default_browser_context_;
}
base::WeakPtr<HeadlessBrowserImpl> HeadlessBrowserImpl::GetWeakPtr() {
« no previous file with comments | « headless/lib/browser/headless_browser_impl.h ('k') | headless/lib/browser/headless_devtools_manager_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698