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 |
deleted file mode 100644 |
index ac3795481de557b99add984d69dd2fbe4068b860..0000000000000000000000000000000000000000 |
--- a/content/shell/shell_content_browser_client.cc |
+++ /dev/null |
@@ -1,275 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "content/shell/shell_content_browser_client.h" |
- |
-#include "base/command_line.h" |
-#include "base/file_util.h" |
-#include "base/path_service.h" |
-#include "content/public/browser/notification_service.h" |
-#include "content/public/browser/notification_types.h" |
-#include "content/public/browser/render_process_host.h" |
-#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/common/shell_messages.h" |
-#include "content/shell/common/shell_switches.h" |
-#include "content/shell/common/webkit_test_helpers.h" |
-#include "content/shell/geolocation/shell_access_token_store.h" |
-#include "content/shell/shell.h" |
-#include "content/shell/shell_browser_context.h" |
-#include "content/shell/shell_browser_main_parts.h" |
-#include "content/shell/shell_devtools_delegate.h" |
-#include "content/shell/shell_message_filter.h" |
-#include "content/shell/shell_net_log.h" |
-#include "content/shell/shell_quota_permission_context.h" |
-#include "content/shell/shell_resource_dispatcher_host_delegate.h" |
-#include "content/shell/shell_web_contents_view_delegate_creator.h" |
-#include "content/shell/webkit_test_controller.h" |
-#include "net/url_request/url_request_context_getter.h" |
-#include "url/gurl.h" |
-#include "webkit/common/webpreferences.h" |
- |
-#if defined(OS_ANDROID) |
-#include "base/android/path_utils.h" |
-#include "base/path_service.h" |
-#include "base/platform_file.h" |
-#include "content/shell/android/shell_descriptors.h" |
-#endif |
- |
-namespace content { |
- |
-namespace { |
- |
-ShellContentBrowserClient* g_browser_client; |
-bool g_swap_processes_for_redirect = false; |
- |
-} // namespace |
- |
-ShellContentBrowserClient* ShellContentBrowserClient::Get() { |
- return g_browser_client; |
-} |
- |
-void ShellContentBrowserClient::SetSwapProcessesForRedirect(bool swap) { |
- g_swap_processes_for_redirect = swap; |
-} |
- |
-ShellContentBrowserClient::ShellContentBrowserClient() |
- : shell_browser_main_parts_(NULL) { |
- DCHECK(!g_browser_client); |
- g_browser_client = this; |
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree)) |
- return; |
- webkit_source_dir_ = GetWebKitRootDirFilePath(); |
-} |
- |
-ShellContentBrowserClient::~ShellContentBrowserClient() { |
- g_browser_client = NULL; |
-} |
- |
-BrowserMainParts* ShellContentBrowserClient::CreateBrowserMainParts( |
- const MainFunctionParams& parameters) { |
- shell_browser_main_parts_ = new ShellBrowserMainParts(parameters); |
- return shell_browser_main_parts_; |
-} |
- |
-void ShellContentBrowserClient::RenderProcessHostCreated( |
- RenderProcessHost* host) { |
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree)) |
- return; |
- host->GetChannel()->AddFilter(new ShellMessageFilter( |
- host->GetID(), |
- BrowserContext::GetDefaultStoragePartition(browser_context()) |
- ->GetDatabaseTracker(), |
- BrowserContext::GetDefaultStoragePartition(browser_context()) |
- ->GetQuotaManager(), |
- BrowserContext::GetDefaultStoragePartition(browser_context()) |
- ->GetURLRequestContext())); |
- host->Send(new ShellViewMsg_SetWebKitSourceDir(webkit_source_dir_)); |
- registrar_.Add(this, |
- NOTIFICATION_RENDERER_PROCESS_CREATED, |
- Source<RenderProcessHost>(host)); |
- registrar_.Add(this, |
- NOTIFICATION_RENDERER_PROCESS_TERMINATED, |
- Source<RenderProcessHost>(host)); |
-} |
- |
-net::URLRequestContextGetter* ShellContentBrowserClient::CreateRequestContext( |
- BrowserContext* content_browser_context, |
- ProtocolHandlerMap* protocol_handlers) { |
- ShellBrowserContext* shell_browser_context = |
- ShellBrowserContextForBrowserContext(content_browser_context); |
- return shell_browser_context->CreateRequestContext(protocol_handlers); |
-} |
- |
-net::URLRequestContextGetter* |
-ShellContentBrowserClient::CreateRequestContextForStoragePartition( |
- BrowserContext* content_browser_context, |
- const base::FilePath& partition_path, |
- bool in_memory, |
- ProtocolHandlerMap* protocol_handlers) { |
- ShellBrowserContext* shell_browser_context = |
- ShellBrowserContextForBrowserContext(content_browser_context); |
- return shell_browser_context->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)) |
- command_line->AppendSwitch(switches::kDumpRenderTree); |
- if (CommandLine::ForCurrentProcess()->HasSwitch( |
- switches::kExposeInternalsForTesting)) |
- command_line->AppendSwitch(switches::kExposeInternalsForTesting); |
-} |
- |
-void ShellContentBrowserClient::OverrideWebkitPrefs( |
- RenderViewHost* render_view_host, |
- const GURL& url, |
- WebPreferences* prefs) { |
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree)) |
- return; |
- WebKitTestController::Get()->OverrideWebkitPrefs(prefs); |
-} |
- |
-void ShellContentBrowserClient::ResourceDispatcherHostCreated() { |
- resource_dispatcher_host_delegate_.reset( |
- new ShellResourceDispatcherHostDelegate()); |
- ResourceDispatcherHost::Get()->SetDelegate( |
- resource_dispatcher_host_delegate_.get()); |
-} |
- |
-std::string ShellContentBrowserClient::GetDefaultDownloadName() { |
- return "download"; |
-} |
- |
-bool ShellContentBrowserClient::SupportsBrowserPlugin( |
- content::BrowserContext* browser_context, const GURL& url) { |
- return CommandLine::ForCurrentProcess()->HasSwitch( |
- switches::kEnableBrowserPluginForAllViewTypes); |
-} |
- |
-WebContentsViewDelegate* ShellContentBrowserClient::GetWebContentsViewDelegate( |
- WebContents* web_contents) { |
-#if !defined(USE_AURA) |
- return CreateShellWebContentsViewDelegate(web_contents); |
-#else |
- return NULL; |
-#endif |
-} |
- |
-QuotaPermissionContext* |
-ShellContentBrowserClient::CreateQuotaPermissionContext() { |
- return new ShellQuotaPermissionContext(); |
-} |
- |
-net::NetLog* ShellContentBrowserClient::GetNetLog() { |
- return shell_browser_main_parts_->net_log(); |
-} |
- |
-bool ShellContentBrowserClient::ShouldSwapProcessesForRedirect( |
- ResourceContext* resource_context, |
- const GURL& current_url, |
- const GURL& new_url) { |
- return g_swap_processes_for_redirect; |
-} |
- |
-#if defined(OS_ANDROID) |
-void ShellContentBrowserClient::GetAdditionalMappedFilesForChildProcess( |
- const CommandLine& command_line, |
- int child_process_id, |
- std::vector<content::FileDescriptorInfo>* mappings) { |
- int flags = base::PLATFORM_FILE_OPEN | base::PLATFORM_FILE_READ; |
- base::FilePath pak_file; |
- bool r = PathService::Get(base::DIR_ANDROID_APP_DATA, &pak_file); |
- CHECK(r); |
- pak_file = pak_file.Append(FILE_PATH_LITERAL("paks")); |
- pak_file = pak_file.Append(FILE_PATH_LITERAL("content_shell.pak")); |
- |
- base::PlatformFile f = |
- base::CreatePlatformFile(pak_file, flags, NULL, NULL); |
- if (f == base::kInvalidPlatformFileValue) { |
- NOTREACHED() << "Failed to open file when creating renderer process: " |
- << "content_shell.pak"; |
- } |
- mappings->push_back( |
- content::FileDescriptorInfo(kShellPakDescriptor, |
- base::FileDescriptor(f, true))); |
-} |
-#endif |
- |
-void ShellContentBrowserClient::Observe(int type, |
- const NotificationSource& source, |
- const NotificationDetails& details) { |
- switch (type) { |
- case NOTIFICATION_RENDERER_PROCESS_CREATED: { |
- registrar_.Remove(this, |
- NOTIFICATION_RENDERER_PROCESS_CREATED, |
- source); |
- registrar_.Remove(this, |
- NOTIFICATION_RENDERER_PROCESS_TERMINATED, |
- source); |
- break; |
- } |
- |
- case NOTIFICATION_RENDERER_PROCESS_TERMINATED: { |
- registrar_.Remove(this, |
- NOTIFICATION_RENDERER_PROCESS_CREATED, |
- source); |
- registrar_.Remove(this, |
- NOTIFICATION_RENDERER_PROCESS_TERMINATED, |
- source); |
- break; |
- } |
- |
- default: |
- NOTREACHED(); |
- } |
-} |
- |
-ShellBrowserContext* ShellContentBrowserClient::browser_context() { |
- return shell_browser_main_parts_->browser_context(); |
-} |
- |
-ShellBrowserContext* |
- ShellContentBrowserClient::off_the_record_browser_context() { |
- return shell_browser_main_parts_->off_the_record_browser_context(); |
-} |
- |
-AccessTokenStore* ShellContentBrowserClient::CreateAccessTokenStore() { |
- return new ShellAccessTokenStore(browser_context()); |
-} |
- |
-ShellBrowserContext* |
-ShellContentBrowserClient::ShellBrowserContextForBrowserContext( |
- BrowserContext* content_browser_context) { |
- if (content_browser_context == browser_context()) |
- return browser_context(); |
- DCHECK_EQ(content_browser_context, off_the_record_browser_context()); |
- return off_the_record_browser_context(); |
-} |
- |
-} // namespace content |