Index: chrome/browser/win/jumplist.h |
diff --git a/chrome/browser/win/jumplist.h b/chrome/browser/win/jumplist.h |
index d5af79786010255a86d9d282b564b8a2e25638ff..95479cc8d5a2daddbefd7bfb2a02ad1a3c909549 100644 |
--- a/chrome/browser/win/jumplist.h |
+++ b/chrome/browser/win/jumplist.h |
@@ -15,6 +15,7 @@ |
#include "base/files/file_path.h" |
#include "base/macros.h" |
#include "base/memory/weak_ptr.h" |
+#include "base/strings/string16.h" |
#include "base/synchronization/lock.h" |
#include "base/task/cancelable_task_tracker.h" |
#include "base/timer/timer.h" |
@@ -177,6 +178,40 @@ class JumpList : public sessions::TabRestoreServiceObserver, |
// after requests storms have subsided. |
void DeferredTabRestoreServiceChanged(); |
+ // Creates at most |max_items| icon files in |icon_dir| for the |
+ // asynchrounously loaded icons stored in |item_list|. |
+ void CreateIconFiles(const base::FilePath& icon_dir, |
+ const ShellLinkItemList& item_list, |
+ size_t max_items); |
+ |
+ // Updates icon files in |icon_dir|, which includes deleting old icons and |
+ // creating at most |slot_limit| new icons for |page_list|. |
+ void UpdateIconFiles(const base::FilePath& icon_dir, |
+ const ShellLinkItemList& page_list, |
+ size_t slot_limit); |
+ |
+ // Updates the jumplist, once all the data has been fetched. This method calls |
+ // UpdateJumpList() to do most of the work. |
+ void RunUpdateJumpList( |
+ IncognitoModePrefs::Availability incognito_availability, |
+ const base::string16& app_id, |
+ const base::FilePath& profile_dir, |
+ base::RefCountedData<JumpListData>* ref_counted_data); |
+ |
+ // Updates the application JumpList, which consists of 1) delete old icon |
+ // files; 2) create new icon files; 3) notify the OS. This method is called |
+ // from RunUpdateJumpList(). |
+ // Note that any timeout error along the way results in the old jumplist being |
+ // left as-is, while any non-timeout error results in the old jumplist being |
+ // left as-is, but without icon files. |
+ bool UpdateJumpList(const base::string16& app_id, |
+ const base::FilePath& profile_dir, |
+ const ShellLinkItemList& most_visited_pages, |
+ const ShellLinkItemList& recently_closed_pages, |
+ bool most_visited_pages_have_updates, |
+ bool recently_closed_pages_have_updates, |
+ IncognitoModePrefs::Availability incognito_availability); |
+ |
// Tracks FaviconService tasks. |
base::CancelableTaskTracker cancelable_task_tracker_; |
@@ -187,7 +222,7 @@ class JumpList : public sessions::TabRestoreServiceObserver, |
std::unique_ptr<PrefChangeRegistrar> pref_change_registrar_; |
// App id to associate with the jump list. |
- std::wstring app_id_; |
+ base::string16 app_id_; |
// Timer for requesting delayed updates of the "Most Visited" category of |
// jumplist. |