| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "android_webview/browser/aw_content_browser_client.h" | 5 #include "android_webview/browser/aw_content_browser_client.h" |
| 6 | 6 |
| 7 #include "android_webview/browser/aw_browser_context.h" | 7 #include "android_webview/browser/aw_browser_context.h" |
| 8 #include "android_webview/browser/aw_browser_main_parts.h" | 8 #include "android_webview/browser/aw_browser_main_parts.h" |
| 9 #include "android_webview/browser/aw_contents_client_bridge_base.h" | 9 #include "android_webview/browser/aw_contents_client_bridge_base.h" |
| 10 #include "android_webview/browser/aw_contents_io_thread_client.h" | 10 #include "android_webview/browser/aw_contents_io_thread_client.h" |
| 11 #include "android_webview/browser/aw_cookie_access_policy.h" | 11 #include "android_webview/browser/aw_cookie_access_policy.h" |
| 12 #include "android_webview/browser/aw_locale_manager.h" |
| 12 #include "android_webview/browser/aw_printing_message_filter.h" | 13 #include "android_webview/browser/aw_printing_message_filter.h" |
| 13 #include "android_webview/browser/aw_quota_permission_context.h" | 14 #include "android_webview/browser/aw_quota_permission_context.h" |
| 14 #include "android_webview/browser/aw_web_preferences_populater.h" | 15 #include "android_webview/browser/aw_web_preferences_populater.h" |
| 15 #include "android_webview/browser/jni_dependency_factory.h" | 16 #include "android_webview/browser/jni_dependency_factory.h" |
| 16 #include "android_webview/browser/net/aw_url_request_context_getter.h" | 17 #include "android_webview/browser/net/aw_url_request_context_getter.h" |
| 17 #include "android_webview/browser/net_disk_cache_remover.h" | 18 #include "android_webview/browser/net_disk_cache_remover.h" |
| 18 #include "android_webview/browser/renderer_host/aw_resource_dispatcher_host_dele
gate.h" | 19 #include "android_webview/browser/renderer_host/aw_resource_dispatcher_host_dele
gate.h" |
| 19 #include "android_webview/common/render_view_messages.h" | 20 #include "android_webview/common/render_view_messages.h" |
| 20 #include "android_webview/common/url_constants.h" | 21 #include "android_webview/common/url_constants.h" |
| 21 #include "base/android/locale_utils.h" | 22 #include "base/android/locale_utils.h" |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 } | 100 } |
| 100 void SaveAccessToken(const GURL& server_url, | 101 void SaveAccessToken(const GURL& server_url, |
| 101 const base::string16& access_token) override {} | 102 const base::string16& access_token) override {} |
| 102 | 103 |
| 103 private: | 104 private: |
| 104 ~AwAccessTokenStore() override {} | 105 ~AwAccessTokenStore() override {} |
| 105 | 106 |
| 106 DISALLOW_COPY_AND_ASSIGN(AwAccessTokenStore); | 107 DISALLOW_COPY_AND_ASSIGN(AwAccessTokenStore); |
| 107 }; | 108 }; |
| 108 | 109 |
| 110 AwLocaleManager* g_locale_manager = NULL; |
| 111 |
| 109 } // anonymous namespace | 112 } // anonymous namespace |
| 110 | 113 |
| 114 // static |
| 111 std::string AwContentBrowserClient::GetAcceptLangsImpl() { | 115 std::string AwContentBrowserClient::GetAcceptLangsImpl() { |
| 112 // Start with the currnet locale. | 116 // Start with the current locale. |
| 113 std::string langs = base::android::GetDefaultLocale(); | 117 std::string langs = g_locale_manager->GetLocale(); |
| 114 | 118 |
| 115 // If we're not en-US, add in en-US which will be | 119 // If we're not en-US, add in en-US which will be |
| 116 // used with a lower q-value. | 120 // used with a lower q-value. |
| 117 if (base::StringToLowerASCII(langs) != "en-us") { | 121 if (base::StringToLowerASCII(langs) != "en-us") { |
| 118 langs += ",en-US"; | 122 langs += ",en-US"; |
| 119 } | 123 } |
| 120 return langs; | 124 return langs; |
| 121 } | 125 } |
| 122 | 126 |
| 127 // static |
| 123 AwBrowserContext* AwContentBrowserClient::GetAwBrowserContext() { | 128 AwBrowserContext* AwContentBrowserClient::GetAwBrowserContext() { |
| 124 return AwBrowserContext::GetDefault(); | 129 return AwBrowserContext::GetDefault(); |
| 125 } | 130 } |
| 126 | 131 |
| 127 AwContentBrowserClient::AwContentBrowserClient( | 132 AwContentBrowserClient::AwContentBrowserClient( |
| 128 JniDependencyFactory* native_factory) | 133 JniDependencyFactory* native_factory) |
| 129 : native_factory_(native_factory) { | 134 : native_factory_(native_factory) { |
| 130 base::FilePath user_data_dir; | 135 base::FilePath user_data_dir; |
| 131 if (!PathService::Get(base::DIR_ANDROID_APP_DATA, &user_data_dir)) { | 136 if (!PathService::Get(base::DIR_ANDROID_APP_DATA, &user_data_dir)) { |
| 132 NOTREACHED() << "Failed to get app data directory for Android WebView"; | 137 NOTREACHED() << "Failed to get app data directory for Android WebView"; |
| 133 } | 138 } |
| 134 browser_context_.reset( | 139 browser_context_.reset( |
| 135 new AwBrowserContext(user_data_dir, native_factory_)); | 140 new AwBrowserContext(user_data_dir, native_factory_)); |
| 141 g_locale_manager = native_factory->CreateAwLocaleManager(); |
| 136 } | 142 } |
| 137 | 143 |
| 138 AwContentBrowserClient::~AwContentBrowserClient() { | 144 AwContentBrowserClient::~AwContentBrowserClient() { |
| 145 delete g_locale_manager; |
| 146 g_locale_manager = NULL; |
| 139 } | 147 } |
| 140 | 148 |
| 141 void AwContentBrowserClient::AddCertificate(net::CertificateMimeType cert_type, | 149 void AwContentBrowserClient::AddCertificate(net::CertificateMimeType cert_type, |
| 142 const void* cert_data, | 150 const void* cert_data, |
| 143 size_t cert_size, | 151 size_t cert_size, |
| 144 int render_process_id, | 152 int render_process_id, |
| 145 int render_frame_id) { | 153 int render_frame_id) { |
| 146 if (cert_size > 0) | 154 if (cert_size > 0) |
| 147 net::android::StoreCertificate(cert_type, cert_data, cert_size); | 155 net::android::StoreCertificate(cert_type, cert_data, cert_size); |
| 148 } | 156 } |
| (...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 435 | 443 |
| 436 #if defined(VIDEO_HOLE) | 444 #if defined(VIDEO_HOLE) |
| 437 content::ExternalVideoSurfaceContainer* | 445 content::ExternalVideoSurfaceContainer* |
| 438 AwContentBrowserClient::OverrideCreateExternalVideoSurfaceContainer( | 446 AwContentBrowserClient::OverrideCreateExternalVideoSurfaceContainer( |
| 439 content::WebContents* web_contents) { | 447 content::WebContents* web_contents) { |
| 440 return native_factory_->CreateExternalVideoSurfaceContainer(web_contents); | 448 return native_factory_->CreateExternalVideoSurfaceContainer(web_contents); |
| 441 } | 449 } |
| 442 #endif | 450 #endif |
| 443 | 451 |
| 444 } // namespace android_webview | 452 } // namespace android_webview |
| OLD | NEW |