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

Side by Side Diff: chrome/browser/google/google_url_tracker_infobar_delegate.h

Issue 190063006: Infobar Componentization Proof of Concept (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: minor fixes Created 6 years, 9 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 unified diff | Download patch
OLDNEW
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 #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_INFOBAR_DELEGATE_H_ 5 #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_INFOBAR_DELEGATE_H_
6 #define CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_INFOBAR_DELEGATE_H_ 6 #define CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_INFOBAR_DELEGATE_H_
7 7
8 #include "chrome/browser/infobars/confirm_infobar_delegate.h" 8 #include "chrome/browser/infobars/content_confirm_infobar_delegate.h"
9 #include "url/gurl.h" 9 #include "url/gurl.h"
10 10
11 class GoogleURLTracker; 11 class GoogleURLTracker;
12 class InfoBarService;
12 13
13 // This infobar is shown by the GoogleURLTracker when the Google base URL has 14 // This infobar is shown by the GoogleURLTracker when the Google base URL has
14 // changed. 15 // changed.
15 class GoogleURLTrackerInfoBarDelegate : public ConfirmInfoBarDelegate { 16 class GoogleURLTrackerInfoBarDelegate : public ContentConfirmInfoBarDelegate {
16 public: 17 public:
17 // Creates a Google URL tracker infobar and delegate and adds the infobar to 18 // Creates a Google URL tracker infobar and delegate and adds the infobar to
18 // |infobar_service|. Returns the infobar if it was successfully added. 19 // |infobar_service|. Returns the infobar if it was successfully added.
19 static InfoBar* Create(InfoBarService* infobar_service, 20 static InfoBar* Create(InfoBarService* infobar_service,
20 GoogleURLTracker* google_url_tracker, 21 GoogleURLTracker* google_url_tracker,
21 const GURL& search_url); 22 const GURL& search_url);
22 23
23 // ConfirmInfoBarDelegate: 24 // ConfirmInfoBarDelegate:
24 virtual bool Accept() OVERRIDE; 25 virtual bool Accept() OVERRIDE;
25 virtual bool Cancel() OVERRIDE; 26 virtual bool Cancel() OVERRIDE;
26 27
27 // Other than set_pending_id(), these accessors are only used by test code. 28 // Other than set_pending_id(), these accessors are only used by test code.
28 const GURL& search_url() const { return search_url_; } 29 const GURL& search_url() const { return search_url_; }
29 void set_search_url(const GURL& search_url) { search_url_ = search_url; } 30 void set_search_url(const GURL& search_url) { search_url_ = search_url; }
30 int pending_id() const { return pending_id_; } 31 int pending_id() const { return pending_id_; }
31 void set_pending_id(int pending_id) { pending_id_ = pending_id; } 32 void set_pending_id(int pending_id) { pending_id_ = pending_id; }
32 33
33 // These are virtual so test code can override them in a subclass. 34 // These are virtual so test code can override them in a subclass.
34 virtual void Update(const GURL& search_url); 35 virtual void Update(const GURL& search_url);
35 virtual void Close(bool redo_search); 36 virtual void Close(bool redo_search);
36 37
37 protected: 38 protected:
38 GoogleURLTrackerInfoBarDelegate(GoogleURLTracker* google_url_tracker, 39 GoogleURLTrackerInfoBarDelegate(content::WebContents* web_contents,
40 GoogleURLTracker* google_url_tracker,
39 const GURL& search_url); 41 const GURL& search_url);
40 virtual ~GoogleURLTrackerInfoBarDelegate(); 42 virtual ~GoogleURLTrackerInfoBarDelegate();
41 43
42 private: 44 private:
43 // ConfirmInfoBarDelegate: 45 // ConfirmInfoBarDelegate:
44 virtual base::string16 GetMessageText() const OVERRIDE; 46 virtual base::string16 GetMessageText() const OVERRIDE;
45 virtual base::string16 GetButtonLabel(InfoBarButton button) const OVERRIDE; 47 virtual base::string16 GetButtonLabel(InfoBarButton button) const OVERRIDE;
46 virtual base::string16 GetLinkText() const OVERRIDE; 48 virtual base::string16 GetLinkText() const OVERRIDE;
47 virtual bool LinkClicked(WindowOpenDisposition disposition) OVERRIDE; 49 virtual bool LinkClicked(WindowOpenDisposition disposition) OVERRIDE;
48 virtual bool ShouldExpireInternal( 50 virtual bool ShouldExpireInternal(const NavigationDetails& details) const
49 const content::LoadCommittedDetails& details) const OVERRIDE; 51 OVERRIDE;
50 52
51 GoogleURLTracker* google_url_tracker_; 53 GoogleURLTracker* google_url_tracker_;
52 GURL search_url_; 54 GURL search_url_;
53 int pending_id_; 55 int pending_id_;
54 56
55 DISALLOW_COPY_AND_ASSIGN(GoogleURLTrackerInfoBarDelegate); 57 DISALLOW_COPY_AND_ASSIGN(GoogleURLTrackerInfoBarDelegate);
56 }; 58 };
57 59
58 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_INFOBAR_DELEGATE_H_ 60 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_INFOBAR_DELEGATE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698