Index: components/history/core/browser/top_sites.h |
diff --git a/chrome/browser/history/top_sites.h b/components/history/core/browser/top_sites.h |
similarity index 81% |
rename from chrome/browser/history/top_sites.h |
rename to components/history/core/browser/top_sites.h |
index 32a01da7c0cd15ac973fdcef66b2281f959e9e90..132a45cbd73cfc62a6f76443c8ee7811f0d43603 100644 |
--- a/chrome/browser/history/top_sites.h |
+++ b/components/history/core/browser/top_sites.h |
@@ -2,8 +2,10 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef CHROME_BROWSER_HISTORY_TOP_SITES_H_ |
-#define CHROME_BROWSER_HISTORY_TOP_SITES_H_ |
+#ifndef COMPONENTS_HISTORY_CORE_BROWSER_TOP_SITES_H_ |
+#define COMPONENTS_HISTORY_CORE_BROWSER_TOP_SITES_H_ |
+ |
+#include <vector> |
#include "base/basictypes.h" |
#include "base/callback.h" |
@@ -13,13 +15,10 @@ |
#include "components/history/core/browser/history_types.h" |
#include "components/history/core/common/thumbnail_score.h" |
#include "components/keyed_service/core/refcounted_keyed_service.h" |
-#include "content/public/browser/notification_observer.h" |
-#include "content/public/browser/notification_registrar.h" |
#include "third_party/skia/include/core/SkColor.h" |
#include "ui/gfx/image/image.h" |
class GURL; |
-class Profile; |
namespace base { |
class FilePath; |
@@ -32,14 +31,32 @@ namespace history { |
class TopSitesCache; |
class TopSitesObserver; |
+// PrepopulatedPage stores information for prepopulated page for the |
+// initial run. |
+struct PrepopulatedPage { |
+ PrepopulatedPage(); |
+ PrepopulatedPage(const GURL& url, |
+ const base::string16& title, |
+ int favicon_id, |
+ int thumbnail_id, |
+ SkColor color); |
+ |
+ MostVisitedURL most_visited; // The prepopulated page URL and title. |
+ int favicon_id; // The raw data resource for the favicon. |
+ int thumbnail_id; // The raw data resource for the thumbnail. |
+ SkColor color; // The best color to highlight the page, should |
+ // roughly match the favicon. |
+}; |
+ |
+typedef std::vector<PrepopulatedPage> PrepopulatedPageList; |
+ |
// Interface for TopSites, which stores the data for the top "most visited" |
// sites. This includes a cache of the most visited data from history, as well |
// as the corresponding thumbnails of those sites. |
// |
// Some methods should only be called from the UI thread (see method |
// descriptions below). All others are assumed to be threadsafe. |
-class TopSites : public RefcountedKeyedService, |
- public content::NotificationObserver { |
+class TopSites : public RefcountedKeyedService { |
public: |
TopSites(); |
@@ -53,10 +70,9 @@ class TopSites : public RefcountedKeyedService, |
// While testing the history system, we want to set the thumbnail to a piece |
// of static memory. |
- virtual bool SetPageThumbnailToJPEGBytes( |
- const GURL& url, |
- const base::RefCountedMemory* memory, |
- const ThumbnailScore& score) = 0; |
+ virtual bool SetPageThumbnailToJPEGBytes(const GURL& url, |
+ const base::RefCountedMemory* memory, |
+ const ThumbnailScore& score) = 0; |
typedef base::Callback<void(const MostVisitedURLList&)> |
GetMostVisitedURLsCallback; |
@@ -66,9 +82,8 @@ class TopSites : public RefcountedKeyedService, |
// invoked on any thread. NOTE: the callback is called immediately if we have |
// the data cached. If data is not available yet, callback will later be |
// posted to the thread called this function. |
- virtual void GetMostVisitedURLs( |
- const GetMostVisitedURLsCallback& callback, |
- bool include_forced_urls) = 0; |
+ virtual void GetMostVisitedURLs(const GetMostVisitedURLsCallback& callback, |
+ bool include_forced_urls) = 0; |
// Gets a thumbnail for a given page. Returns true iff we have the thumbnail. |
// This may be invoked on any thread. |
@@ -143,7 +158,7 @@ class TopSites : public RefcountedKeyedService, |
virtual bool loaded() const = 0; |
// Returns the set of prepopulate pages. |
- virtual MostVisitedURLList GetPrepopulatePages() = 0; |
+ virtual PrepopulatedPageList GetPrepopulatedPages() = 0; |
// Adds or updates a |url| for which we should force the capture of a |
// thumbnail next time it's visited. If there is already a non-forced URL |
@@ -152,19 +167,6 @@ class TopSites : public RefcountedKeyedService, |
// called from the UI thread. |
virtual bool AddForcedURL(const GURL& url, const base::Time& time) = 0; |
- struct PrepopulatedPage { |
- // The string resource for the url. |
- int url_id; |
- // The string resource for the page title. |
- int title_id; |
- // The raw data resource for the favicon. |
- int favicon_id; |
- // The raw data resource for the thumbnail. |
- int thumbnail_id; |
- // The best color to highlight the page (should roughly match favicon). |
- SkColor color; |
- }; |
- |
// Add Observer to the list. |
void AddObserver(TopSitesObserver* observer); |
@@ -181,14 +183,6 @@ class TopSites : public RefcountedKeyedService, |
friend class base::RefCountedThreadSafe<TopSites>; |
}; |
-#if defined(OS_ANDROID) |
-const int kPrepopulatedPagesCount = 0; |
-#else |
-const int kPrepopulatedPagesCount = 2; |
-#endif |
-extern const TopSites::PrepopulatedPage |
- kPrepopulatedPages[kPrepopulatedPagesCount]; |
- |
} // namespace history |
-#endif // CHROME_BROWSER_HISTORY_TOP_SITES_H_ |
+#endif // COMPONENTS_HISTORY_CORE_BROWSER_TOP_SITES_H_ |