summaryrefslogtreecommitdiffstats
path: root/chromium/content/shell/renderer/shell_content_renderer_client.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/content/shell/renderer/shell_content_renderer_client.cc')
-rw-r--r--chromium/content/shell/renderer/shell_content_renderer_client.cc193
1 files changed, 0 insertions, 193 deletions
diff --git a/chromium/content/shell/renderer/shell_content_renderer_client.cc b/chromium/content/shell/renderer/shell_content_renderer_client.cc
deleted file mode 100644
index d04cbfc2f24..00000000000
--- a/chromium/content/shell/renderer/shell_content_renderer_client.cc
+++ /dev/null
@@ -1,193 +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/renderer/shell_content_renderer_client.h"
-
-#include "base/callback.h"
-#include "base/command_line.h"
-#include "base/debug/debugger.h"
-#include "content/public/common/content_constants.h"
-#include "content/public/common/content_switches.h"
-#include "content/public/renderer/render_view.h"
-#include "content/public/test/layouttest_support.h"
-#include "content/shell/common/shell_switches.h"
-#include "content/shell/renderer/shell_render_process_observer.h"
-#include "content/shell/renderer/shell_render_view_observer.h"
-#include "content/shell/renderer/webkit_test_runner.h"
-#include "content/test/mock_webclipboard_impl.h"
-#include "third_party/WebKit/public/platform/WebMediaStreamCenter.h"
-#include "third_party/WebKit/public/testing/WebTestInterfaces.h"
-#include "third_party/WebKit/public/testing/WebTestProxy.h"
-#include "third_party/WebKit/public/testing/WebTestRunner.h"
-#include "third_party/WebKit/public/web/WebPluginParams.h"
-#include "third_party/WebKit/public/web/WebView.h"
-#include "v8/include/v8.h"
-
-using blink::WebAudioDevice;
-using blink::WebClipboard;
-using blink::WebFrame;
-using blink::WebMIDIAccessor;
-using blink::WebMIDIAccessorClient;
-using blink::WebMediaStreamCenter;
-using blink::WebMediaStreamCenterClient;
-using blink::WebPlugin;
-using blink::WebPluginParams;
-using blink::WebRTCPeerConnectionHandler;
-using blink::WebRTCPeerConnectionHandlerClient;
-using blink::WebThemeEngine;
-using WebTestRunner::WebTestDelegate;
-using WebTestRunner::WebTestInterfaces;
-using WebTestRunner::WebTestProxyBase;
-
-namespace content {
-
-namespace {
-ShellContentRendererClient* g_renderer_client;
-}
-
-ShellContentRendererClient* ShellContentRendererClient::Get() {
- return g_renderer_client;
-}
-
-ShellContentRendererClient::ShellContentRendererClient() {
- DCHECK(!g_renderer_client);
- g_renderer_client = this;
- if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree)) {
- EnableWebTestProxyCreation(
- base::Bind(&ShellContentRendererClient::WebTestProxyCreated,
- base::Unretained(this)));
- }
-}
-
-ShellContentRendererClient::~ShellContentRendererClient() {
- g_renderer_client = NULL;
-}
-
-void ShellContentRendererClient::RenderThreadStarted() {
- shell_observer_.reset(new ShellRenderProcessObserver());
-#if defined(OS_MACOSX)
- // We need to call this once before the sandbox was initialized to cache the
- // value.
- base::debug::BeingDebugged();
-#endif
-}
-
-void ShellContentRendererClient::RenderViewCreated(RenderView* render_view) {
- new ShellRenderViewObserver(render_view);
-
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree))
- return;
- WebKitTestRunner* test_runner = WebKitTestRunner::Get(render_view);
- test_runner->Reset();
- render_view->GetWebView()->setSpellCheckClient(
- test_runner->proxy()->spellCheckClient());
- render_view->GetWebView()->setValidationMessageClient(
- test_runner->proxy()->validationMessageClient());
- render_view->GetWebView()->setPermissionClient(
- ShellRenderProcessObserver::GetInstance()->test_interfaces()->testRunner()
- ->webPermissions());
- WebTestDelegate* delegate =
- ShellRenderProcessObserver::GetInstance()->test_delegate();
- if (delegate == static_cast<WebTestDelegate*>(test_runner))
- ShellRenderProcessObserver::GetInstance()->SetMainWindow(render_view);
-}
-
-bool ShellContentRendererClient::OverrideCreatePlugin(
- RenderFrame* render_frame,
- WebFrame* frame,
- const WebPluginParams& params,
- WebPlugin** plugin) {
- std::string mime_type = params.mimeType.utf8();
- if (mime_type == content::kBrowserPluginMimeType) {
- // Allow browser plugin in content_shell only if it is forced by flag.
- // Returning true here disables the plugin.
- return !CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kEnableBrowserPluginForAllViewTypes);
- }
- return false;
-}
-
-WebMediaStreamCenter*
-ShellContentRendererClient::OverrideCreateWebMediaStreamCenter(
- WebMediaStreamCenterClient* client) {
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree))
- return NULL;
-#if defined(ENABLE_WEBRTC)
- WebTestInterfaces* interfaces =
- ShellRenderProcessObserver::GetInstance()->test_interfaces();
- return interfaces->createMediaStreamCenter(client);
-#else
- return NULL;
-#endif
-}
-
-WebRTCPeerConnectionHandler*
-ShellContentRendererClient::OverrideCreateWebRTCPeerConnectionHandler(
- WebRTCPeerConnectionHandlerClient* client) {
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree))
- return NULL;
-#if defined(ENABLE_WEBRTC)
- WebTestInterfaces* interfaces =
- ShellRenderProcessObserver::GetInstance()->test_interfaces();
- return interfaces->createWebRTCPeerConnectionHandler(client);
-#else
- return NULL;
-#endif
-}
-
-WebMIDIAccessor*
-ShellContentRendererClient::OverrideCreateMIDIAccessor(
- WebMIDIAccessorClient* client) {
- WebTestInterfaces* interfaces =
- ShellRenderProcessObserver::GetInstance()->test_interfaces();
- return interfaces->createMIDIAccessor(client);
-}
-
-WebAudioDevice*
-ShellContentRendererClient::OverrideCreateAudioDevice(
- double sample_rate) {
- WebTestInterfaces* interfaces =
- ShellRenderProcessObserver::GetInstance()->test_interfaces();
- return interfaces->createAudioDevice(sample_rate);
-}
-
-WebClipboard* ShellContentRendererClient::OverrideWebClipboard() {
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree))
- return NULL;
- if (!clipboard_)
- clipboard_.reset(new MockWebClipboardImpl);
- return clipboard_.get();
-}
-
-WebThemeEngine* ShellContentRendererClient::OverrideThemeEngine() {
- if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree))
- return NULL;
- return ShellRenderProcessObserver::GetInstance()->test_interfaces()
- ->themeEngine();
-}
-
-void ShellContentRendererClient::WebTestProxyCreated(RenderView* render_view,
- WebTestProxyBase* proxy) {
- WebKitTestRunner* test_runner = new WebKitTestRunner(render_view);
- test_runner->set_proxy(proxy);
- if (!ShellRenderProcessObserver::GetInstance()->test_delegate())
- ShellRenderProcessObserver::GetInstance()->SetTestDelegate(test_runner);
- proxy->setInterfaces(
- ShellRenderProcessObserver::GetInstance()->test_interfaces());
- test_runner->proxy()->setDelegate(
- ShellRenderProcessObserver::GetInstance()->test_delegate());
-}
-
-bool ShellContentRendererClient::AllowBrowserPlugin(
- blink::WebPluginContainer* container) {
- if (CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kEnableBrowserPluginForAllViewTypes)) {
- // Allow BrowserPlugin if forced by command line flag. This is generally
- // true for tests.
- return true;
- }
- return ContentRendererClient::AllowBrowserPlugin(container);
-}
-
-} // namespace content