OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/extension_page_actions_module.h" | 5 #include "chrome/browser/extensions/extension_page_actions_module.h" |
6 | 6 |
7 #include "base/string_util.h" | 7 #include "base/string_number_conversions.h" |
8 #include "chrome/browser/browser.h" | 8 #include "chrome/browser/browser.h" |
9 #include "chrome/browser/browser_list.h" | 9 #include "chrome/browser/browser_list.h" |
10 #include "chrome/browser/profile.h" | 10 #include "chrome/browser/profile.h" |
11 #include "chrome/browser/extensions/extension_page_actions_module_constants.h" | 11 #include "chrome/browser/extensions/extension_page_actions_module_constants.h" |
12 #include "chrome/browser/extensions/extension_tabs_module.h" | 12 #include "chrome/browser/extensions/extension_tabs_module.h" |
13 #include "chrome/browser/extensions/extensions_service.h" | 13 #include "chrome/browser/extensions/extensions_service.h" |
14 #include "chrome/browser/tab_contents/navigation_entry.h" | 14 #include "chrome/browser/tab_contents/navigation_entry.h" |
15 #include "chrome/browser/tab_contents/tab_contents.h" | 15 #include "chrome/browser/tab_contents/tab_contents.h" |
16 #include "chrome/common/extensions/extension.h" | 16 #include "chrome/common/extensions/extension.h" |
17 #include "chrome/common/extensions/extension_action.h" | 17 #include "chrome/common/extensions/extension_action.h" |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
64 static_cast<size_t>(icon_id) >= page_action->icon_paths()->size()) { | 64 static_cast<size_t>(icon_id) >= page_action->icon_paths()->size()) { |
65 error_ = (icon_id == 0) ? kNoIconSpecified : kIconIndexOutOfBounds; | 65 error_ = (icon_id == 0) ? kNoIconSpecified : kIconIndexOutOfBounds; |
66 return false; | 66 return false; |
67 } | 67 } |
68 | 68 |
69 // Find the TabContents that contains this tab id. | 69 // Find the TabContents that contains this tab id. |
70 TabContents* contents = NULL; | 70 TabContents* contents = NULL; |
71 bool result = ExtensionTabUtil::GetTabById( | 71 bool result = ExtensionTabUtil::GetTabById( |
72 tab_id, profile(), include_incognito(), NULL, NULL, &contents, NULL); | 72 tab_id, profile(), include_incognito(), NULL, NULL, &contents, NULL); |
73 if (!result || !contents) { | 73 if (!result || !contents) { |
74 error_ = ExtensionErrorUtils::FormatErrorMessage(kNoTabError, | 74 error_ = ExtensionErrorUtils::FormatErrorMessage( |
75 IntToString(tab_id)); | 75 kNoTabError, base::IntToString(tab_id)); |
76 return false; | 76 return false; |
77 } | 77 } |
78 | 78 |
79 // Make sure the URL hasn't changed. | 79 // Make sure the URL hasn't changed. |
80 NavigationEntry* entry = contents->controller().GetActiveEntry(); | 80 NavigationEntry* entry = contents->controller().GetActiveEntry(); |
81 if (!entry || url != entry->url().spec()) { | 81 if (!entry || url != entry->url().spec()) { |
82 error_ = ExtensionErrorUtils::FormatErrorMessage(kUrlNotActiveError, url); | 82 error_ = ExtensionErrorUtils::FormatErrorMessage(kUrlNotActiveError, url); |
83 return false; | 83 return false; |
84 } | 84 } |
85 | 85 |
(...skipping 11 matching lines...) Expand all Loading... |
97 if (!page_action_) { | 97 if (!page_action_) { |
98 error_ = kNoPageActionError; | 98 error_ = kNoPageActionError; |
99 return false; | 99 return false; |
100 } | 100 } |
101 | 101 |
102 // Find the TabContents that contains this tab id. | 102 // Find the TabContents that contains this tab id. |
103 contents_ = NULL; | 103 contents_ = NULL; |
104 bool result = ExtensionTabUtil::GetTabById( | 104 bool result = ExtensionTabUtil::GetTabById( |
105 tab_id, profile(), include_incognito(), NULL, NULL, &contents_, NULL); | 105 tab_id, profile(), include_incognito(), NULL, NULL, &contents_, NULL); |
106 if (!result || !contents_) { | 106 if (!result || !contents_) { |
107 error_ = ExtensionErrorUtils::FormatErrorMessage(kNoTabError, | 107 error_ = ExtensionErrorUtils::FormatErrorMessage( |
108 IntToString(tab_id)); | 108 kNoTabError, base::IntToString(tab_id)); |
109 return false; | 109 return false; |
110 } | 110 } |
111 | 111 |
112 return true; | 112 return true; |
113 } | 113 } |
114 | 114 |
115 bool PageActionFunction::SetVisible(bool visible) { | 115 bool PageActionFunction::SetVisible(bool visible) { |
116 int tab_id; | 116 int tab_id; |
117 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &tab_id)); | 117 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &tab_id)); |
118 if (!InitCommon(tab_id)) | 118 if (!InitCommon(tab_id)) |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 if (!InitCommon(tab_id)) | 278 if (!InitCommon(tab_id)) |
279 return false; | 279 return false; |
280 | 280 |
281 std::string text; | 281 std::string text; |
282 EXTENSION_FUNCTION_VALIDATE(args->GetString(L"text", &text)); | 282 EXTENSION_FUNCTION_VALIDATE(args->GetString(L"text", &text)); |
283 | 283 |
284 page_action_->SetBadgeText(tab_id, text); | 284 page_action_->SetBadgeText(tab_id, text); |
285 contents_->PageActionStateChanged(); | 285 contents_->PageActionStateChanged(); |
286 return true; | 286 return true; |
287 } | 287 } |
OLD | NEW |