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

Side by Side Diff: chrome/browser/jumplist_win.cc

Issue 11742007: Add support for adding 256x256 pngs to Windows .ico files. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 11 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/profiles/profile_shortcut_manager_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #include "chrome/browser/jumplist_win.h" 5 #include "chrome/browser/jumplist_win.h"
6 6
7 #include <windows.h> 7 #include <windows.h>
8 #include <shobjidl.h> 8 #include <shobjidl.h>
9 #include <propkey.h> 9 #include <propkey.h>
10 #include <propvarutil.h> 10 #include <propvarutil.h>
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
256 FilePath* icon_path) { 256 FilePath* icon_path) {
257 // Retrieve the path to a temporary file. 257 // Retrieve the path to a temporary file.
258 // We don't have to care about the extension of this temporary file because 258 // We don't have to care about the extension of this temporary file because
259 // JumpList does not care about it. 259 // JumpList does not care about it.
260 FilePath path; 260 FilePath path;
261 if (!file_util::CreateTemporaryFileInDir(icon_dir, &path)) 261 if (!file_util::CreateTemporaryFileInDir(icon_dir, &path))
262 return false; 262 return false;
263 263
264 // Create an icon file from the favicon attached to the given |page|, and 264 // Create an icon file from the favicon attached to the given |page|, and
265 // save it as the temporary file. 265 // save it as the temporary file.
266 if (!IconUtil::CreateIconFileFromSkBitmap(bitmap, path)) 266 if (!IconUtil::CreateIconFileFromSkBitmap(bitmap, SkBitmap(), path))
267 return false; 267 return false;
268 268
269 // Add this icon file to the list and return its absolute path. 269 // Add this icon file to the list and return its absolute path.
270 // The IShellLink::SetIcon() function needs the absolute path to an icon. 270 // The IShellLink::SetIcon() function needs the absolute path to an icon.
271 *icon_path = path; 271 *icon_path = path;
272 return true; 272 return true;
273 } 273 }
274 274
275 // Updates a specified category of an application JumpList. 275 // Updates a specified category of an application JumpList.
276 // This function cannot update registered categories (such as "Tasks") because 276 // This function cannot update registered categories (such as "Tasks") because
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after
778 } 778 }
779 779
780 void JumpList::CreateIconFiles(const ShellLinkItemList& item_list) { 780 void JumpList::CreateIconFiles(const ShellLinkItemList& item_list) {
781 for (ShellLinkItemList::const_iterator item = item_list.begin(); 781 for (ShellLinkItemList::const_iterator item = item_list.begin();
782 item != item_list.end(); ++item) { 782 item != item_list.end(); ++item) {
783 FilePath icon_path; 783 FilePath icon_path;
784 if (CreateIconFile((*item)->data(), icon_dir_, &icon_path)) 784 if (CreateIconFile((*item)->data(), icon_dir_, &icon_path))
785 (*item)->SetIcon(icon_path.value(), 0, true); 785 (*item)->SetIcon(icon_path.value(), 0, true);
786 } 786 }
787 } 787 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/profiles/profile_shortcut_manager_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698