- Add download handling support via new CefDownloadHandler and CefDownloadItem interfaces (issue #516).

- Fix setting of CefKeyEvent.focus_on_editable_field when the underlying RenderViewHost changes.
- Fix potential crash if URLRequest objects are still in-progress upon shutdown.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@715 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2012-06-28 17:21:18 +00:00
parent 14bbc90ddb
commit 421001ba9d
51 changed files with 2685 additions and 171 deletions

View File

@ -6,6 +6,7 @@
#define CEF_LIBCEF_BROWSER_URL_REQUEST_CONTEXT_GETTER_H_
#pragma once
#include <set>
#include <string>
#include <vector>
@ -16,6 +17,7 @@
#include "net/url_request/url_request_context_getter.h"
class CefRequestInterceptor;
class CefURLRequestContextProxy;
class MessageLoop;
namespace net {
@ -44,6 +46,12 @@ class CefURLRequestContextGetter : public net::URLRequestContextGetter {
void SetCookieStoragePath(const FilePath& path);
void SetCookieSupportedSchemes(const std::vector<std::string>& schemes);
// Manage URLRequestContext proxy objects. It's important that proxy objects
// not be destroyed while any in-flight URLRequests exist. These methods
// manage that requirement.
CefURLRequestContextProxy* CreateURLRequestContextProxy();
void ReleaseURLRequestContextProxy(CefURLRequestContextProxy* proxy);
private:
void CreateProxyConfigService();
@ -57,6 +65,9 @@ class CefURLRequestContextGetter : public net::URLRequestContextGetter {
scoped_ptr<net::URLRequestContext> url_request_context_;
scoped_ptr<net::URLSecurityManager> url_security_manager_;
typedef std::set<CefURLRequestContextProxy*> RequestContextProxySet;
RequestContextProxySet url_request_context_proxies_;
FilePath cookie_store_path_;
std::vector<std::string> cookie_supported_schemes_;