| 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/page_action_controller.h" | 5 #include "chrome/browser/extensions/page_action_controller.h" |
| 6 | 6 |
| 7 #include "chrome/browser/extensions/browser_event_router.h" | 7 #include "chrome/browser/extensions/browser_event_router.h" |
| 8 #include "chrome/browser/extensions/extension_service.h" | 8 #include "chrome/browser/extensions/extension_service.h" |
| 9 #include "chrome/browser/extensions/extension_system.h" | 9 #include "chrome/browser/extensions/extension_system.h" |
| 10 #include "chrome/browser/extensions/tab_helper.h" | 10 #include "chrome/browser/extensions/tab_helper.h" |
| (...skipping 17 matching lines...) Expand all Loading... |
| 28 | 28 |
| 29 std::vector<ExtensionAction*> PageActionController::GetCurrentActions() const { | 29 std::vector<ExtensionAction*> PageActionController::GetCurrentActions() const { |
| 30 ExtensionService* service = GetExtensionService(); | 30 ExtensionService* service = GetExtensionService(); |
| 31 if (!service) | 31 if (!service) |
| 32 return std::vector<ExtensionAction*>(); | 32 return std::vector<ExtensionAction*>(); |
| 33 | 33 |
| 34 std::vector<ExtensionAction*> current_actions; | 34 std::vector<ExtensionAction*> current_actions; |
| 35 | 35 |
| 36 for (ExtensionSet::const_iterator i = service->extensions()->begin(); | 36 for (ExtensionSet::const_iterator i = service->extensions()->begin(); |
| 37 i != service->extensions()->end(); ++i) { | 37 i != service->extensions()->end(); ++i) { |
| 38 ExtensionAction* action = (*i)->page_action(); | 38 ExtensionAction* action = service->GetPageAction(**i); |
| 39 if (action) | 39 if (action) |
| 40 current_actions.push_back(action); | 40 current_actions.push_back(action); |
| 41 } | 41 } |
| 42 return current_actions; | 42 return current_actions; |
| 43 } | 43 } |
| 44 | 44 |
| 45 LocationBarController::Action PageActionController::OnClicked( | 45 LocationBarController::Action PageActionController::OnClicked( |
| 46 const std::string& extension_id, int mouse_button) { | 46 const std::string& extension_id, int mouse_button) { |
| 47 ExtensionService* service = GetExtensionService(); | 47 ExtensionService* service = GetExtensionService(); |
| 48 if (!service) | 48 if (!service) |
| 49 return ACTION_NONE; | 49 return ACTION_NONE; |
| 50 | 50 |
| 51 const Extension* extension = service->extensions()->GetByID(extension_id); | 51 const Extension* extension = service->extensions()->GetByID(extension_id); |
| 52 CHECK(extension); | 52 CHECK(extension); |
| 53 ExtensionAction* page_action = extension->page_action(); | 53 ExtensionAction* page_action = service->GetPageAction(*extension); |
| 54 CHECK(page_action); | 54 CHECK(page_action); |
| 55 int tab_id = ExtensionTabUtil::GetTabId(web_contents()); | 55 int tab_id = ExtensionTabUtil::GetTabId(web_contents()); |
| 56 | 56 |
| 57 TabContents* tab_contents = TabContents::FromWebContents(web_contents()); | 57 TabContents* tab_contents = TabContents::FromWebContents(web_contents()); |
| 58 tab_contents->extension_tab_helper()->active_tab_permission_manager()-> | 58 tab_contents->extension_tab_helper()->active_tab_permission_manager()-> |
| 59 GrantIfRequested(extension); | 59 GrantIfRequested(extension); |
| 60 | 60 |
| 61 switch (mouse_button) { | 61 switch (mouse_button) { |
| 62 case 1: // left | 62 case 1: // left |
| 63 case 2: // middle | 63 case 2: // middle |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 | 105 |
| 106 NotifyChange(); | 106 NotifyChange(); |
| 107 } | 107 } |
| 108 | 108 |
| 109 ExtensionService* PageActionController::GetExtensionService() const { | 109 ExtensionService* PageActionController::GetExtensionService() const { |
| 110 TabContents* tab_contents = TabContents::FromWebContents(web_contents()); | 110 TabContents* tab_contents = TabContents::FromWebContents(web_contents()); |
| 111 return ExtensionSystem::Get(tab_contents->profile())->extension_service(); | 111 return ExtensionSystem::Get(tab_contents->profile())->extension_service(); |
| 112 } | 112 } |
| 113 | 113 |
| 114 } // namespace extensions | 114 } // namespace extensions |
| OLD | NEW |