| 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/tab_helper.h" | 5 #include "chrome/browser/extensions/tab_helper.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
| 10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 233 } | 233 } |
| 234 } | 234 } |
| 235 | 235 |
| 236 void TabHelper::RenderViewCreated(RenderViewHost* render_view_host) { | 236 void TabHelper::RenderViewCreated(RenderViewHost* render_view_host) { |
| 237 SetTabId(render_view_host); | 237 SetTabId(render_view_host); |
| 238 } | 238 } |
| 239 | 239 |
| 240 void TabHelper::DidNavigateMainFrame( | 240 void TabHelper::DidNavigateMainFrame( |
| 241 const content::LoadCommittedDetails& details, | 241 const content::LoadCommittedDetails& details, |
| 242 const content::FrameNavigateParams& params) { | 242 const content::FrameNavigateParams& params) { |
| 243 typedef std::map<std::string, ContentRulesRegistry*> ContentRulesRegistryMap; |
| 243 if (ExtensionSystem::Get(profile_)->extension_service() && | 244 if (ExtensionSystem::Get(profile_)->extension_service() && |
| 244 RulesRegistryService::Get(profile_)) { | 245 RulesRegistryService::Get(profile_)) { |
| 245 RulesRegistryService::Get(profile_)->content_rules_registry()-> | 246 ContentRulesRegistryMap& content_rules_registry_map = |
| 246 DidNavigateMainFrame(web_contents(), details, params); | 247 RulesRegistryService::Get(profile_)->content_rules_registry_map(); |
| 248 for (ContentRulesRegistryMap::iterator it = |
| 249 content_rules_registry_map.begin(); |
| 250 it != content_rules_registry_map.end(); ++it) { |
| 251 it->second->DidNavigateMainFrame(web_contents(), |
| 252 details, |
| 253 params); |
| 254 } |
| 247 } | 255 } |
| 248 | 256 |
| 249 content::BrowserContext* context = web_contents()->GetBrowserContext(); | 257 content::BrowserContext* context = web_contents()->GetBrowserContext(); |
| 250 ExtensionRegistry* registry = ExtensionRegistry::Get(context); | 258 ExtensionRegistry* registry = ExtensionRegistry::Get(context); |
| 251 const ExtensionSet& enabled_extensions = registry->enabled_extensions(); | 259 const ExtensionSet& enabled_extensions = registry->enabled_extensions(); |
| 252 | 260 |
| 253 if (CommandLine::ForCurrentProcess()->HasSwitch( | 261 if (CommandLine::ForCurrentProcess()->HasSwitch( |
| 254 switches::kEnableStreamlinedHostedApps)) { | 262 switches::kEnableStreamlinedHostedApps)) { |
| 255 Browser* browser = chrome::FindBrowserWithWebContents(web_contents()); | 263 Browser* browser = chrome::FindBrowserWithWebContents(web_contents()); |
| 256 if (browser && browser->is_app()) { | 264 if (browser && browser->is_app()) { |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 437 int32 on_page_id, | 445 int32 on_page_id, |
| 438 const GURL& on_url) { | 446 const GURL& on_url) { |
| 439 FOR_EACH_OBSERVER(ScriptExecutionObserver, script_execution_observers_, | 447 FOR_EACH_OBSERVER(ScriptExecutionObserver, script_execution_observers_, |
| 440 OnScriptsExecuted(web_contents(), | 448 OnScriptsExecuted(web_contents(), |
| 441 executing_scripts_map, | 449 executing_scripts_map, |
| 442 on_page_id, | 450 on_page_id, |
| 443 on_url)); | 451 on_url)); |
| 444 } | 452 } |
| 445 | 453 |
| 446 void TabHelper::OnWatchedPageChange( | 454 void TabHelper::OnWatchedPageChange( |
| 455 const std::string& event_name, |
| 447 const std::vector<std::string>& css_selectors) { | 456 const std::vector<std::string>& css_selectors) { |
| 448 if (ExtensionSystem::Get(profile_)->extension_service() && | 457 if (ExtensionSystem::Get(profile_)->extension_service() && |
| 449 RulesRegistryService::Get(profile_)) { | 458 RulesRegistryService::Get(profile_)) { |
| 450 RulesRegistryService::Get(profile_)->content_rules_registry()->Apply( | 459 ContentRulesRegistry* content_rules_registry = |
| 451 web_contents(), css_selectors); | 460 RulesRegistryService::Get(profile_)-> |
| 461 GetContentRulesRegistry(event_name); |
| 462 if (!content_rules_registry) |
| 463 return; |
| 464 |
| 465 content_rules_registry->Apply(web_contents(), css_selectors); |
| 452 } | 466 } |
| 453 } | 467 } |
| 454 | 468 |
| 455 void TabHelper::OnDetailedConsoleMessageAdded( | 469 void TabHelper::OnDetailedConsoleMessageAdded( |
| 456 const base::string16& message, | 470 const base::string16& message, |
| 457 const base::string16& source, | 471 const base::string16& source, |
| 458 const StackTrace& stack_trace, | 472 const StackTrace& stack_trace, |
| 459 int32 severity_level) { | 473 int32 severity_level) { |
| 460 if (IsSourceFromAnExtension(source)) { | 474 if (IsSourceFromAnExtension(source)) { |
| 461 content::RenderViewHost* rvh = web_contents()->GetRenderViewHost(); | 475 content::RenderViewHost* rvh = web_contents()->GetRenderViewHost(); |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 567 } | 581 } |
| 568 } | 582 } |
| 569 | 583 |
| 570 void TabHelper::SetTabId(RenderViewHost* render_view_host) { | 584 void TabHelper::SetTabId(RenderViewHost* render_view_host) { |
| 571 render_view_host->Send( | 585 render_view_host->Send( |
| 572 new ExtensionMsg_SetTabId(render_view_host->GetRoutingID(), | 586 new ExtensionMsg_SetTabId(render_view_host->GetRoutingID(), |
| 573 SessionID::IdForTab(web_contents()))); | 587 SessionID::IdForTab(web_contents()))); |
| 574 } | 588 } |
| 575 | 589 |
| 576 } // namespace extensions | 590 } // namespace extensions |
| OLD | NEW |