| Index: chrome/browser/extensions/extension_action.cc
|
| diff --git a/chrome/browser/extensions/extension_action.cc b/chrome/browser/extensions/extension_action.cc
|
| index f4f70471ac1cf073b5146f575f41e477a81a2946..d2e618ee960c1b1ed5ff8481a988bcb057aabc5b 100644
|
| --- a/chrome/browser/extensions/extension_action.cc
|
| +++ b/chrome/browser/extensions/extension_action.cc
|
| @@ -51,17 +51,19 @@ class GetAttentionImageSource : public gfx::ImageSkiaSource {
|
| const gfx::ImageSkia icon_;
|
| };
|
|
|
| +template <class T>
|
| +bool HasDefaultValue(const std::map<int, T>& map) {
|
| + return map.find(ExtensionAction::kDefaultTabId) != map.end();
|
| +}
|
| +
|
| } // namespace
|
|
|
| const int ExtensionAction::kDefaultTabId = -1;
|
|
|
| -ExtensionAction::ExtensionAction(
|
| - const std::string& extension_id,
|
| - extensions::ActionInfo::Type action_type,
|
| - const extensions::ActionInfo& manifest_data)
|
| - : extension_id_(extension_id),
|
| - action_type_(action_type),
|
| - has_changed_(false) {
|
| +ExtensionAction::ExtensionAction(const std::string& extension_id,
|
| + extensions::ActionInfo::Type action_type,
|
| + const extensions::ActionInfo& manifest_data)
|
| + : extension_id_(extension_id), action_type_(action_type) {
|
| // Page/script actions are hidden/disabled by default, and browser actions are
|
| // visible/enabled by default.
|
| SetIsVisible(kDefaultTabId,
|
| @@ -206,6 +208,32 @@ gfx::ImageSkia ExtensionAction::GetIconWithBadge(
|
| icon.size());
|
| }
|
|
|
| +bool ExtensionAction::HasDefaultPopupUrl() const {
|
| + return HasDefaultValue(popup_url_);
|
| +}
|
| +
|
| +bool ExtensionAction::HasDefaultTitle() const {
|
| + return HasDefaultValue(title_);
|
| +}
|
| +
|
| +bool ExtensionAction::HasDefaultBadgeText() const {
|
| + return HasDefaultValue(badge_text_);
|
| +}
|
| +
|
| +bool ExtensionAction::HasDefaultBadgeBackgroundColor() const {
|
| + return HasDefaultValue(badge_background_color_);
|
| +}
|
| +
|
| +bool ExtensionAction::HasDefaultBadgeTextColor() const {
|
| + return HasDefaultValue(badge_text_color_);
|
| +}
|
| +
|
| +bool ExtensionAction::HasDefaultIsVisible() const {
|
| + return HasDefaultValue(is_visible_);
|
| +}
|
| +
|
| +bool ExtensionAction::HasDefaultIcon() const { return HasDefaultValue(icon_); }
|
| +
|
| // Determines which icon would be returned by |GetIcon|, and returns its width.
|
| int ExtensionAction::GetIconWidth(int tab_id) const {
|
| // If icon has been set, return its width.
|
|
|