cast_content_renderer_client.cc revision 1320f92c476a1ad9d19dba2a48c72b75566198e9
1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "chromecast/shell/renderer/cast_content_renderer_client.h" 6 7#include <sys/sysinfo.h> 8 9#include "base/command_line.h" 10#include "base/memory/memory_pressure_listener.h" 11#include "chromecast/shell/renderer/key_systems_cast.h" 12#include "content/public/common/content_switches.h" 13#include "content/public/renderer/render_view.h" 14#include "crypto/nss_util.h" 15#include "third_party/WebKit/public/platform/WebColor.h" 16#include "third_party/WebKit/public/web/WebSettings.h" 17#include "third_party/WebKit/public/web/WebView.h" 18 19namespace chromecast { 20namespace shell { 21 22namespace { 23 24// Default background color to set for WebViews 25const blink::WebColor kColorBlack = 0x000000FF; 26 27} // namespace 28 29void CastContentRendererClient::RenderThreadStarted() { 30#if defined(USE_NSS) 31 // Note: Copied from chrome_render_process_observer.cc to fix b/8676652. 32 // 33 // On platforms where the system NSS shared libraries are used, 34 // initialize NSS now because it won't be able to load the .so's 35 // after entering the sandbox. 36 if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kSingleProcess)) 37 crypto::InitNSSSafely(); 38#endif 39} 40 41void CastContentRendererClient::RenderViewCreated( 42 content::RenderView* render_view) { 43 blink::WebView* webview = render_view->GetWebView(); 44 if (webview) { 45 webview->setBaseBackgroundColor(kColorBlack); 46 webview->settings()->setShrinksViewportContentToFit(false); 47 } 48} 49 50void CastContentRendererClient::AddKeySystems( 51 std::vector<content::KeySystemInfo>* key_systems) { 52 AddChromecastKeySystems(key_systems); 53 AddChromecastPlatformKeySystems(key_systems); 54} 55 56} // namespace shell 57} // namespace chromecast 58