| Index: chrome/browser/profiles/profile_shortcut_manager_win.h
|
| ===================================================================
|
| --- chrome/browser/profiles/profile_shortcut_manager_win.h (revision 112717)
|
| +++ chrome/browser/profiles/profile_shortcut_manager_win.h (working copy)
|
| @@ -13,6 +13,8 @@
|
| #include "base/string16.h"
|
| #include "chrome/browser/profiles/profile_info_cache_observer.h"
|
|
|
| +class FilePath;
|
| +
|
| // This class observes the ProfileInfoCache, and makes corresponding changes
|
| // to shortcuts on the user's desktop in Windows systems.
|
| class ProfileShortcutManagerWin : public ProfileInfoCacheObserver {
|
| @@ -23,12 +25,19 @@
|
| // ProfileInfoCacheObserver:
|
| virtual void OnProfileAdded(
|
| const string16& profile_name,
|
| - const string16& profile_base_dir) OVERRIDE;
|
| + const string16& profile_base_dir,
|
| + const string16& profile_path,
|
| + const gfx::Image* avatar_image) OVERRIDE;
|
| virtual void OnProfileRemoved(
|
| const string16& profile_name) OVERRIDE;
|
| virtual void OnProfileNameChanged(
|
| const string16& old_profile_name,
|
| const string16& new_profile_name) OVERRIDE;
|
| + virtual void OnProfileAvatarChanged(
|
| + const string16& profile_name,
|
| + const string16& profile_base_dir,
|
| + const string16& profile_path,
|
| + const gfx::Image* avatar_image) OVERRIDE;
|
|
|
| // Takes a vector of profile names (for example: "Sparky") and generates a
|
| // vector of shortcut link names (for example: "Chromium (Sparky).lnk").
|
| @@ -37,11 +46,13 @@
|
|
|
| private:
|
| // Creates a desktop shortcut to open Chrome with the given profile name and
|
| - // directory. Iff |create|, create shortcut if it doesn't already exist. Must
|
| - // be called on the FILE thread.
|
| + // base directory. Iff |create|, create shortcut if it doesn't already exist.
|
| + // Must be called on the FILE thread.
|
| static void CreateChromeDesktopShortcutForProfile(
|
| const string16& profile_name,
|
| - const string16& directory,
|
| + const string16& profile_base_dir,
|
| + const string16& profile_path,
|
| + const gfx::Image* avatar_image,
|
| bool create);
|
|
|
| // Renames an existing Chrome desktop profile shortcut. Must be called on the
|
| @@ -54,8 +65,19 @@
|
| // called on the FILE thread.
|
| static void UpdateChromeDesktopShortcutForProfile(
|
| const string16& shortcut,
|
| - const string16& arguments);
|
| + const string16& arguments,
|
| + const string16& profile_path,
|
| + const gfx::Image* avatar_image);
|
|
|
| + // Creates a desktop shortcut icon file (.ico) on the disk for a given
|
| + // profile, badging the browser distribution icon with the profile avatar.
|
| + // |profile_base_dir| is the base directory (and key) of the profile. Returns
|
| + // a path to the shortcut icon file on disk, which is empty if this fails.
|
| + // Use index 0 when assigning the resulting file as the icon.
|
| + static FilePath CreateChromeDesktopShortcutIconForProfile(
|
| + const string16& profile_path,
|
| + const gfx::Image* avatar_image);
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ProfileShortcutManagerWin);
|
| };
|
|
|
|
|