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 "chrome/browser/extensions/api/tabs/tabs_api.h" | 5 #include "chrome/browser/extensions/api/tabs/tabs_api.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <limits> | 8 #include <limits> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
54 #include "chrome/common/extensions/api/windows.h" | 54 #include "chrome/common/extensions/api/windows.h" |
55 #include "chrome/common/extensions/extension.h" | 55 #include "chrome/common/extensions/extension.h" |
56 #include "chrome/common/extensions/extension_constants.h" | 56 #include "chrome/common/extensions/extension_constants.h" |
57 #include "chrome/common/extensions/extension_file_util.h" | 57 #include "chrome/common/extensions/extension_file_util.h" |
58 #include "chrome/common/extensions/extension_l10n_util.h" | 58 #include "chrome/common/extensions/extension_l10n_util.h" |
59 #include "chrome/common/extensions/extension_manifest_constants.h" | 59 #include "chrome/common/extensions/extension_manifest_constants.h" |
60 #include "chrome/common/extensions/extension_messages.h" | 60 #include "chrome/common/extensions/extension_messages.h" |
61 #include "chrome/common/extensions/incognito_handler.h" | 61 #include "chrome/common/extensions/incognito_handler.h" |
62 #include "chrome/common/extensions/message_bundle.h" | 62 #include "chrome/common/extensions/message_bundle.h" |
63 #include "chrome/common/extensions/user_script.h" | 63 #include "chrome/common/extensions/user_script.h" |
| 64 #include "chrome/common/language_detection_details.h" |
64 #include "chrome/common/pref_names.h" | 65 #include "chrome/common/pref_names.h" |
65 #include "chrome/common/url_constants.h" | 66 #include "chrome/common/url_constants.h" |
66 #include "components/user_prefs/pref_registry_syncable.h" | 67 #include "components/user_prefs/pref_registry_syncable.h" |
67 #include "content/public/browser/navigation_controller.h" | 68 #include "content/public/browser/navigation_controller.h" |
68 #include "content/public/browser/navigation_entry.h" | 69 #include "content/public/browser/navigation_entry.h" |
69 #include "content/public/browser/notification_details.h" | 70 #include "content/public/browser/notification_details.h" |
70 #include "content/public/browser/notification_source.h" | 71 #include "content/public/browser/notification_source.h" |
71 #include "content/public/browser/render_view_host.h" | 72 #include "content/public/browser/render_view_host.h" |
72 #include "content/public/browser/render_widget_host_view.h" | 73 #include "content/public/browser/render_widget_host_view.h" |
73 #include "content/public/browser/web_contents.h" | 74 #include "content/public/browser/web_contents.h" |
(...skipping 1844 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1918 this, content::NOTIFICATION_NAV_ENTRY_COMMITTED, | 1919 this, content::NOTIFICATION_NAV_ENTRY_COMMITTED, |
1919 content::Source<NavigationController>(&(contents->GetController()))); | 1920 content::Source<NavigationController>(&(contents->GetController()))); |
1920 return true; | 1921 return true; |
1921 } | 1922 } |
1922 | 1923 |
1923 void TabsDetectLanguageFunction::Observe( | 1924 void TabsDetectLanguageFunction::Observe( |
1924 int type, | 1925 int type, |
1925 const content::NotificationSource& source, | 1926 const content::NotificationSource& source, |
1926 const content::NotificationDetails& details) { | 1927 const content::NotificationDetails& details) { |
1927 std::string language; | 1928 std::string language; |
1928 if (type == chrome::NOTIFICATION_TAB_LANGUAGE_DETERMINED) | 1929 if (type == chrome::NOTIFICATION_TAB_LANGUAGE_DETERMINED) { |
1929 language = *content::Details<std::string>(details).ptr(); | 1930 const LanguageDetectionDetails* lang_det_details = |
| 1931 content::Details<const LanguageDetectionDetails>(details).ptr(); |
| 1932 language = lang_det_details->adopted_language; |
| 1933 } |
1930 | 1934 |
1931 registrar_.RemoveAll(); | 1935 registrar_.RemoveAll(); |
1932 | 1936 |
1933 // Call GotLanguage in all cases as we want to guarantee the callback is | 1937 // Call GotLanguage in all cases as we want to guarantee the callback is |
1934 // called for every API call the extension made. | 1938 // called for every API call the extension made. |
1935 GotLanguage(language); | 1939 GotLanguage(language); |
1936 } | 1940 } |
1937 | 1941 |
1938 void TabsDetectLanguageFunction::GotLanguage(const std::string& language) { | 1942 void TabsDetectLanguageFunction::GotLanguage(const std::string& language) { |
1939 SetResult(Value::CreateStringValue(language.c_str())); | 1943 SetResult(Value::CreateStringValue(language.c_str())); |
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2171 extension->id(), | 2175 extension->id(), |
2172 script_type, | 2176 script_type, |
2173 code_string, | 2177 code_string, |
2174 frame_scope, | 2178 frame_scope, |
2175 run_at, | 2179 run_at, |
2176 ScriptExecutor::ISOLATED_WORLD, | 2180 ScriptExecutor::ISOLATED_WORLD, |
2177 false /* is_web_view */, | 2181 false /* is_web_view */, |
2178 base::Bind(&ExecuteCodeInTabFunction::OnExecuteCodeFinished, this)); | 2182 base::Bind(&ExecuteCodeInTabFunction::OnExecuteCodeFinished, this)); |
2179 return true; | 2183 return true; |
2180 } | 2184 } |
OLD | NEW |