Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(283)

Side by Side Diff: trunk/src/chrome/browser/extensions/settings_api_helpers.cc

Issue 312403003: Revert 275229 "Add an extension override bubble and warning box ..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2014 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/settings_api_helpers.h" 5 #include "chrome/browser/extensions/settings_api_helpers.h"
6 6
7 #include "chrome/browser/extensions/api/preference/preference_api.h" 7 #include "chrome/browser/extensions/api/preference/preference_api.h"
8 #include "chrome/common/pref_names.h" 8 #include "chrome/common/pref_names.h"
9 #include "extensions/browser/extension_pref_value_map.h"
10 #include "extensions/browser/extension_pref_value_map_factory.h"
11 #include "extensions/browser/extension_registry.h" 9 #include "extensions/browser/extension_registry.h"
12 #include "extensions/common/extension_set.h" 10 #include "extensions/common/extension_set.h"
13 11
14 namespace extensions { 12 namespace extensions {
15 13
16 const SettingsOverrides* FindOverridingExtension( 14 const extensions::SettingsOverrides* FindOverridingExtension(
17 content::BrowserContext* browser_context, 15 content::BrowserContext* browser_context,
18 SettingsApiOverrideType type, 16 SettingsApiOverrideType type,
19 const Extension** extension) { 17 const Extension** extension) {
20 const ExtensionSet& extensions = 18 const extensions::ExtensionSet& extensions =
21 ExtensionRegistry::Get(browser_context)->enabled_extensions(); 19 extensions::ExtensionRegistry::Get(browser_context)->enabled_extensions();
22 20
23 for (ExtensionSet::const_iterator it = extensions.begin(); 21 for (extensions::ExtensionSet::const_iterator it = extensions.begin();
24 it != extensions.end(); 22 it != extensions.end();
25 ++it) { 23 ++it) {
26 const SettingsOverrides* settings = SettingsOverrides::Get(*it); 24 const extensions::SettingsOverrides* settings =
25 extensions::SettingsOverrides::Get(*it);
27 if (settings) { 26 if (settings) {
28 if (type == BUBBLE_TYPE_HOME_PAGE && !settings->homepage) 27 if (type == BUBBLE_TYPE_HOME_PAGE && !settings->homepage)
29 continue; 28 continue;
30 if (type == BUBBLE_TYPE_STARTUP_PAGES && settings->startup_pages.empty()) 29 if (type == BUBBLE_TYPE_STARTUP_PAGES && settings->startup_pages.empty())
31 continue; 30 continue;
32 if (type == BUBBLE_TYPE_SEARCH_ENGINE && !settings->search_engine) 31 if (type == BUBBLE_TYPE_SEARCH_ENGINE && !settings->search_engine)
33 continue; 32 continue;
34 33
35 std::string key; 34 std::string key;
36 switch (type) { 35 switch (type) {
(...skipping 16 matching lines...) Expand all
53 52
54 // Found the primary extension, return its setting. 53 // Found the primary extension, return its setting.
55 *extension = *it; 54 *extension = *it;
56 return settings; 55 return settings;
57 } 56 }
58 } 57 }
59 58
60 return NULL; 59 return NULL;
61 } 60 }
62 61
63 const Extension* GetExtensionOverridingHomepage( 62 const Extension* OverridesHomepage(content::BrowserContext* browser_context,
64 content::BrowserContext* browser_context, GURL* home_page_url) { 63 GURL* home_page_url) {
65 const Extension* extension = NULL; 64 const extensions::Extension* extension = NULL;
66 const SettingsOverrides* settings = 65 const extensions::SettingsOverrides* settings =
67 FindOverridingExtension( 66 FindOverridingExtension(
68 browser_context, BUBBLE_TYPE_HOME_PAGE, &extension); 67 browser_context, BUBBLE_TYPE_HOME_PAGE, &extension);
69 68
70 if (settings && home_page_url) 69 if (settings && home_page_url)
71 *home_page_url = *settings->homepage; 70 *home_page_url = *settings->homepage;
72 return extension; 71 return extension;
73 } 72 }
74 73
75 const Extension* GetExtensionOverridingStartupPages( 74 const Extension* OverridesStartupPages(content::BrowserContext* browser_context,
76 content::BrowserContext* browser_context, 75 std::vector<GURL>* startup_pages) {
77 std::vector<GURL>* startup_pages) { 76 const extensions::Extension* extension = NULL;
78 const Extension* extension = NULL; 77 const extensions::SettingsOverrides* settings =
79 const SettingsOverrides* settings =
80 FindOverridingExtension( 78 FindOverridingExtension(
81 browser_context, BUBBLE_TYPE_STARTUP_PAGES, &extension); 79 browser_context, BUBBLE_TYPE_STARTUP_PAGES, &extension);
82 if (settings && startup_pages) { 80 if (settings && startup_pages) {
83 startup_pages->clear(); 81 startup_pages->clear();
84 for (std::vector<GURL>::const_iterator it = settings->startup_pages.begin(); 82 for (std::vector<GURL>::const_iterator it = settings->startup_pages.begin();
85 it != settings->startup_pages.end(); 83 it != settings->startup_pages.end();
86 ++it) 84 ++it)
87 startup_pages->push_back(GURL(*it)); 85 startup_pages->push_back(GURL(*it));
88 } 86 }
89 return extension; 87 return extension;
90 } 88 }
91 89
92 const Extension* GetExtensionOverridingSearchEngine( 90 const Extension* OverridesSearchEngine(
93 content::BrowserContext* browser_context, 91 content::BrowserContext* browser_context,
94 api::manifest_types::ChromeSettingsOverrides::Search_provider* 92 api::manifest_types::ChromeSettingsOverrides::Search_provider*
95 search_provider) { 93 search_provider) {
96 const Extension* extension = NULL; 94 const extensions::Extension* extension = NULL;
97 const SettingsOverrides* settings = 95 const extensions::SettingsOverrides* settings =
98 FindOverridingExtension( 96 FindOverridingExtension(
99 browser_context, BUBBLE_TYPE_SEARCH_ENGINE, &extension); 97 browser_context, BUBBLE_TYPE_SEARCH_ENGINE, &extension);
100 if (settings && search_provider) 98 if (settings && search_provider)
101 search_provider = settings->search_engine.get(); 99 search_provider = settings->search_engine.get();
102 return extension; 100 return extension;
103 } 101 }
104 102
105 const Extension* GetExtensionOverridingProxy(
106 content::BrowserContext* browser_context) {
107 ExtensionPrefValueMap* extension_prefs_value_map =
108 ExtensionPrefValueMapFactory::GetForBrowserContext(browser_context);
109 std::string extension_id =
110 extension_prefs_value_map->GetExtensionControllingPref(prefs::kProxy);
111 if (extension_id.empty())
112 return NULL;
113 return ExtensionRegistry::Get(browser_context)->GetExtensionById(
114 extension_id, ExtensionRegistry::ENABLED);
115 }
116
117 } // namespace extensions 103 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698