mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2024-12-14 18:44:56 +01:00
370cc028cb
Known behavior changes: - Unsupported chrome hosts no longer redirect to chrome://version. To test: All tests pass with NetworkService disabled. WebUITest.* and V8Test.* tests pass with NetworkService enabled.
59 lines
1.6 KiB
C++
59 lines
1.6 KiB
C++
// Copyright (c) 2012 The Chromium Embedded Framework Authors. All rights
|
|
// reserved. Use of this source code is governed by a BSD-style license that can
|
|
// be found in the LICENSE file.
|
|
|
|
#ifndef CEF_LIBCEF_BROWSER_NET_CHROME_SCHEME_HANDLER_H_
|
|
#define CEF_LIBCEF_BROWSER_NET_CHROME_SCHEME_HANDLER_H_
|
|
#pragma once
|
|
|
|
#include <string>
|
|
|
|
#include "include/cef_browser.h"
|
|
#include "include/cef_frame.h"
|
|
#include "include/cef_process_message.h"
|
|
|
|
#include "net/url_request/url_request_job_factory.h"
|
|
#include "url/gurl.h"
|
|
|
|
namespace base {
|
|
class ListValue;
|
|
}
|
|
|
|
namespace content {
|
|
class BrowserURLHandler;
|
|
}
|
|
|
|
namespace url {
|
|
class Origin;
|
|
}
|
|
|
|
class CefURLRequestManager;
|
|
|
|
namespace scheme {
|
|
|
|
extern const char kChromeURL[];
|
|
|
|
// Register the WebUI controller factory.
|
|
void RegisterWebUIControllerFactory();
|
|
|
|
// Register the WebUI handler.
|
|
void BrowserURLHandlerCreated(content::BrowserURLHandler* handler);
|
|
|
|
// Used to fire any asynchronous content updates.
|
|
void DidFinishChromeLoad(CefRefPtr<CefFrame> frame, const GURL& validated_url);
|
|
|
|
// Returns true if WebUI is allowed to make network requests.
|
|
bool IsWebUIAllowedToMakeNetworkRequests(const url::Origin& origin);
|
|
|
|
// Create a new ProtocolHandler that will filter the URLs passed to the default
|
|
// "chrome" protocol handler and forward the rest to CEF's handler.
|
|
std::unique_ptr<net::URLRequestJobFactory::ProtocolHandler>
|
|
WrapChromeProtocolHandler(
|
|
CefURLRequestManager* request_manager,
|
|
std::unique_ptr<net::URLRequestJobFactory::ProtocolHandler>
|
|
chrome_protocol_handler);
|
|
|
|
} // namespace scheme
|
|
|
|
#endif // CEF_LIBCEF_BROWSER_CHROME_SCHEME_HANDLER_H_
|