| Index: content/shell/shell_content_browser_client.cc
|
| diff --git a/content/shell/shell_content_browser_client.cc b/content/shell/shell_content_browser_client.cc
|
| index 55011c3c4e8fb83bcab48093b3a2356888388f20..5ccf617896de32f92a2f8ca59430db932b8f495c 100644
|
| --- a/content/shell/shell_content_browser_client.cc
|
| +++ b/content/shell/shell_content_browser_client.cc
|
| @@ -13,6 +13,7 @@
|
| #include "content/public/browser/resource_dispatcher_host.h"
|
| #include "content/public/browser/storage_partition.h"
|
| #include "content/public/common/content_switches.h"
|
| +#include "content/public/common/url_constants.h"
|
| #include "content/shell/geolocation/shell_access_token_store.h"
|
| #include "content/shell/shell.h"
|
| #include "content/shell/shell_browser_context.h"
|
| @@ -144,6 +145,27 @@ ShellContentBrowserClient::CreateRequestContextForStoragePartition(
|
| partition_path, in_memory, protocol_handlers);
|
| }
|
|
|
| +bool ShellContentBrowserClient::IsHandledURL(const GURL& url) {
|
| + if (!url.is_valid())
|
| + return false;
|
| + DCHECK_EQ(url.scheme(), StringToLowerASCII(url.scheme()));
|
| + // Keep in sync with ProtocolHandlers added by
|
| + // ShellURLRequestContextGetter::GetURLRequestContext().
|
| + static const char* const kProtocolList[] = {
|
| + chrome::kBlobScheme,
|
| + chrome::kFileSystemScheme,
|
| + chrome::kChromeUIScheme,
|
| + chrome::kChromeDevToolsScheme,
|
| + chrome::kDataScheme,
|
| + chrome::kFileScheme,
|
| + };
|
| + for (size_t i = 0; i < arraysize(kProtocolList); ++i) {
|
| + if (url.scheme() == kProtocolList[i])
|
| + return true;
|
| + }
|
| + return false;
|
| +}
|
| +
|
| void ShellContentBrowserClient::AppendExtraCommandLineSwitches(
|
| CommandLine* command_line, int child_process_id) {
|
| if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree))
|
|
|