1 // Copyright 2012 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.
5 #include "chrome/common/chrome_content_client.h"
7 #include "base/logging.h"
8 #include "base/string_piece.h"
9 #include "chrome/common/chrome_version_info.h"
10 #include "chrome/common/url_constants.h"
11 #include "googleurl/src/gurl.h"
12 #include "ui/base/l10n/l10n_util.h"
13 #include "ui/base/resource/resource_bundle.h"
14 #include "webkit/user_agent/user_agent_util.h"
16 // TODO(ios): Investigate merging with chrome_content_client.cc; this would
17 // requiring either a lot of ifdefing, or spliting the file into parts.
21 void ChromeContentClient::SetActiveURL(const GURL& url) {
25 void ChromeContentClient::SetGpuInfo(const content::GPUInfo& gpu_info) {
29 void ChromeContentClient::AddPepperPlugins(
30 std::vector<content::PepperPluginInfo>* plugins) {
34 void ChromeContentClient::AddNPAPIPlugins(
35 webkit::npapi::PluginList* plugin_list) {
39 void ChromeContentClient::AddAdditionalSchemes(
40 std::vector<std::string>* standard_schemes,
41 std::vector<std::string>* saveable_shemes) {
42 // No additional schemes for iOS.
45 bool ChromeContentClient::HasWebUIScheme(const GURL& url) const {
46 return url.SchemeIs(chrome::kChromeUIScheme);
49 bool ChromeContentClient::CanHandleWhileSwappedOut(
50 const IPC::Message& msg) {
55 std::string ChromeContentClient::GetProduct() const {
56 chrome::VersionInfo version_info;
57 std::string product("CriOS/");
58 product += version_info.is_valid() ? version_info.Version() : "0.0.0.0";
62 std::string ChromeContentClient::GetUserAgent() const {
63 std::string product = GetProduct();
64 return webkit_glue::BuildUserAgentFromProduct(product);
67 string16 ChromeContentClient::GetLocalizedString(int message_id) const {
68 return l10n_util::GetStringUTF16(message_id);
71 base::StringPiece ChromeContentClient::GetDataResource(
73 ui::ScaleFactor scale_factor) const {
74 return ResourceBundle::GetSharedInstance().GetRawDataResourceForScale(
75 resource_id, scale_factor);
78 gfx::Image& ChromeContentClient::GetNativeImageNamed(int resource_id) const {
79 return ResourceBundle::GetSharedInstance().GetNativeImageNamed(resource_id);