Home | History | Annotate | Download | only in extensions

Lines Matching refs:extension

16 #include "chrome/common/extensions/extension.h"
30 // on whether a given extension uses "split" or "spanning" incognito behavior.
35 virtual ExtensionHost* CreateView(const Extension* extension,
39 virtual void CreateBackgroundHost(const Extension* extension,
50 // Returns the extension for an URL, which can either be a chrome-extension
52 const Extension* GetExtensionOrAppByURL(const GURL& url);
54 // Returns true if the extension is allowed to run in incognito mode.
55 bool IsIncognitoEnabled(const Extension* extension);
61 ExtensionProcessManager* manager, const Extension* extension) {
63 if (extension->background_url().is_valid())
64 manager->CreateBackgroundHost(extension, extension->background_url());
69 for (ExtensionList::const_iterator extension = extensions->begin();
70 extension != extensions->end(); ++extension) {
71 CreateBackgroundHost(manager, *extension);
115 ExtensionHost* ExtensionProcessManager::CreateView(const Extension* extension,
119 DCHECK(extension);
124 new ExtensionHostMac(extension, GetSiteInstanceForURL(url), url,
127 new ExtensionHost(extension, GetSiteInstanceForURL(url), url, view_type);
142 const Extension* extension = service->GetExtensionByURL(url);
143 if (extension)
144 return CreateView(extension, url, browser, view_type);
149 ExtensionHost* ExtensionProcessManager::CreatePopup(const Extension* extension,
152 return CreateView(extension, url, browser, ViewType::EXTENSION_POPUP);
161 const Extension* extension, const GURL& url, Browser* browser) {
162 return CreateView(extension, url, browser, ViewType::EXTENSION_INFOBAR);
171 const Extension* extension, const GURL& url) {
174 if (extension->is_hosted_app())
177 // Don't create multiple background hosts for an extension.
178 if (GetBackgroundHostForExtension(extension))
183 new ExtensionHostMac(extension, GetSiteInstanceForURL(url), url,
186 new ExtensionHost(extension, GetSiteInstanceForURL(url), url,
194 void ExtensionProcessManager::OpenOptionsPage(const Extension* extension,
196 DCHECK(!extension->options_url().is_empty());
205 browser->OpenURL(extension->options_url(), GURL(), SINGLETON_TAB,
212 const Extension* extension) {
216 if (host->extension() == extension)
230 // Extension ids should get removed from the map before the process ids get
239 const Extension* extension =
241 if (extension->page_action())
242 page_action_ids.push_back(extension->page_action()->id());
272 Extension::GetBaseURLFromExtensionId(extension_id));
297 const Extension* extension = Details<const Extension>(details).ptr();
298 ::CreateBackgroundHost(this, extension);
304 const Extension* extension =
305 Details<UnloadedExtensionInfo>(details)->extension;
309 if (host->extension_id() == extension->id()) {
384 const Extension* extension,
388 if (extension->incognito_split_mode()) {
389 if (IsIncognitoEnabled(extension)) {
390 return ExtensionProcessManager::CreateView(extension, url,
394 "We shouldn't be trying to create an incognito extension view unless "
399 return original_manager_->CreateView(extension, url, browser, view_type);
404 const Extension* extension, const GURL& url) {
405 if (extension->incognito_split_mode()) {
406 if (IsIncognitoEnabled(extension))
407 ExtensionProcessManager::CreateBackgroundHost(extension, url);
409 // Do nothing. If an extension is spanning, then its original-profile
416 const Extension* extension = GetExtensionOrAppByURL(url);
417 if (!extension || extension->incognito_split_mode()) {
426 const Extension* extension = GetExtensionOrAppByURL(url);
427 if (!extension || extension->incognito_split_mode()) {
434 const Extension* IncognitoExtensionProcessManager::GetExtensionOrAppByURL(
445 const Extension* extension) {
448 return service && service->IsIncognitoEnabled(extension->id());
463 // This browser has no extension service. In this case,