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

Unified Diff: chrome/browser/protector/settings_change_global_error.h

Issue 8612002: Protector bubble cancels itself if user changes default search engine manually. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review fixes. Created 9 years, 1 month 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
« no previous file with comments | « chrome/browser/protector/protector.cc ('k') | chrome/browser/protector/settings_change_global_error.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/protector/settings_change_global_error.h
diff --git a/chrome/browser/protector/settings_change_global_error.h b/chrome/browser/protector/settings_change_global_error.h
index ff0064f245ace9bff279e5dadbf1811cbe9cdba5..86194146dbdcfc1c8aa762fa02e0c6f4b8d52f09 100644
--- a/chrome/browser/protector/settings_change_global_error.h
+++ b/chrome/browser/protector/settings_change_global_error.h
@@ -18,13 +18,15 @@ class Profile;
namespace protector {
+class BaseSettingChange;
class SettingsChangeGlobalErrorDelegate;
// Global error about unwanted settings changes.
class SettingsChangeGlobalError : public GlobalError {
public:
- // Creates new global error about setting changes |change| and takes
- // ownership over it. Uses |delegate| to notify about user decision.
+ // Creates new global error about setting changes |change| which must not be
+ // deleted until |delegate->OnRemovedFromProfile| is called. Uses |delegate|
+ // to notify about user decision.
SettingsChangeGlobalError(BaseSettingChange* change,
SettingsChangeGlobalErrorDelegate* delegate);
virtual ~SettingsChangeGlobalError();
@@ -33,11 +35,12 @@ class SettingsChangeGlobalError : public GlobalError {
// Can be called from any thread.
void ShowForProfile(Profile* profile);
+ // Removes global error from its profile.
+ void RemoveFromProfile();
+
// Browser that the bubble has been last time shown for.
Browser* browser() const { return browser_; }
- BaseSettingChange* mutable_change() { return change_.get(); }
-
// GlobalError implementation.
virtual bool HasBadge() OVERRIDE;
virtual bool HasMenuItem() OVERRIDE;
@@ -61,11 +64,12 @@ class SettingsChangeGlobalError : public GlobalError {
// Displays global error bubble. Must be called on the UI thread.
void Show();
- // Removes global error from its profile and deletes |this| later.
- void RemoveFromProfile();
+ // Called when the wrench menu item has been displayed for enough time
+ // without user interaction.
+ void OnInactiveTimeout();
// Change to show.
- scoped_ptr<BaseSettingChange> change_;
+ BaseSettingChange* change_;
// Delegate to notify about user actions.
SettingsChangeGlobalErrorDelegate* delegate_;
« no previous file with comments | « chrome/browser/protector/protector.cc ('k') | chrome/browser/protector/settings_change_global_error.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698