Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5206)

Unified Diff: chrome/browser/extensions/extension_action.cc

Issue 186013003: Persist browseraction properties across restarts (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove reliance on ID Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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.

Powered by Google App Engine
This is Rietveld 408576698