Temporarily re-enabling SizeAfterPrefChange test with traces (this time for Linux...
[chromium-blink-merge.git] / chrome / browser / google / google_url_tracker_navigation_helper.h
blob98b8b3a7bfe9d9b799e0f36bd3d796991e007da9
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
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_NAVIGATION_HELPER_H_
6 #define CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_NAVIGATION_HELPER_H_
8 #include "base/macros.h"
9 #include "ui/base/window_open_disposition.h"
11 class GoogleURLTracker;
12 class GURL;
14 // Interface via which GoogleURLTracker communicates with its driver.
15 // TODO(blundell): Rename this class to GoogleURLTrackerDriver.
16 // crbug.com/373221
17 class GoogleURLTrackerNavigationHelper {
18 public:
19 explicit GoogleURLTrackerNavigationHelper(
20 GoogleURLTracker* google_url_tracker);
21 virtual ~GoogleURLTrackerNavigationHelper();
23 // Enables or disables listening for navigation commits.
24 // OnNavigationCommitted will be called for each navigation commit if
25 // listening is enabled.
26 virtual void SetListeningForNavigationCommit(bool listen) = 0;
28 // Returns whether or not this object is currently listening for navigation
29 // commits.
30 virtual bool IsListeningForNavigationCommit() = 0;
32 // Enables or disables listening for tab destruction. OnTabClosed will be
33 // called on tab destruction if listening is enabled.
34 virtual void SetListeningForTabDestruction(bool listen) = 0;
36 // Returns whether or not this object is currently listening for tab
37 // destruction.
38 virtual bool IsListeningForTabDestruction() = 0;
40 // Opens |url| with the given window disposition.
41 virtual void OpenURL(GURL url,
42 WindowOpenDisposition disposition,
43 bool user_clicked_on_link) = 0;
45 protected:
46 GoogleURLTracker* google_url_tracker() { return google_url_tracker_; }
48 private:
49 GoogleURLTracker* google_url_tracker_;
51 DISALLOW_COPY_AND_ASSIGN(GoogleURLTrackerNavigationHelper);
54 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_URL_TRACKER_NAVIGATION_HELPER_H_