Fix issues related to request and context object lifespan (issue #1037, issue #1044).

- Simplify and document the relationship between the various context object types. See browser_context.h for a description of the new relationships.
- cefclient: Add `request-context-per-browser` command-line flag for testing multiple CefRequestContext instances.
- cefclient: Add a CefURLRequest example.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@2032 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2015-02-13 23:17:08 +00:00
parent 559ca19bbe
commit 7a2ce64096
66 changed files with 1233 additions and 773 deletions

View File

@ -7,23 +7,23 @@
#pragma once
#include "include/cef_request_context.h"
class CefBrowserContext;
#include "libcef/browser/browser_context.h"
class CefRequestContextImpl : public CefRequestContext {
public:
explicit CefRequestContextImpl(CefBrowserContext* browser_context);
explicit CefRequestContextImpl(
scoped_refptr<CefBrowserContext> browser_context);
explicit CefRequestContextImpl(CefRefPtr<CefRequestContextHandler> handler);
~CefRequestContextImpl() override;
CefBrowserContext* GetOrCreateBrowserContext();
scoped_refptr<CefBrowserContext> GetOrCreateBrowserContext();
bool IsSame(CefRefPtr<CefRequestContext> other) override;
bool IsGlobal() override;
CefRefPtr<CefRequestContextHandler> GetHandler() override;
protected:
CefBrowserContext* browser_context_;
scoped_refptr<CefBrowserContext> browser_context_;
CefRefPtr<CefRequestContextHandler> handler_;
// Used to uniquely identify CefRequestContext objects before an associated