OLD | NEW |
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/profiles/profile_shortcut_manager_win.h" | 5 #include "chrome/browser/profiles/profile_shortcut_manager_win.h" |
6 | 6 |
7 #include <shlobj.h> // For SHChangeNotify(). | 7 #include <shlobj.h> // For SHChangeNotify(). |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 | 48 |
49 using content::BrowserThread; | 49 using content::BrowserThread; |
50 | 50 |
51 namespace { | 51 namespace { |
52 | 52 |
53 // Name of the badged icon file generated for a given profile. | 53 // Name of the badged icon file generated for a given profile. |
54 const char kProfileIconFileName[] = "Google Profile.ico"; | 54 const char kProfileIconFileName[] = "Google Profile.ico"; |
55 | 55 |
56 // Characters that are not allowed in Windows filenames. Taken from | 56 // Characters that are not allowed in Windows filenames. Taken from |
57 // http://msdn.microsoft.com/en-us/library/aa365247.aspx | 57 // http://msdn.microsoft.com/en-us/library/aa365247.aspx |
58 const char16 kReservedCharacters[] = L"<>:\"/\\|?*\x01\x02\x03\x04\x05\x06\x07" | 58 const base::char16 kReservedCharacters[] = L"<>:\"/\\|?*\x01\x02\x03\x04\x05" |
59 L"\x08\x09\x0A\x0B\x0C\x0D\x0E\x0F\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19" | 59 L"\x06\x07\x08\x09\x0A\x0B\x0C\x0D\x0E\x0F\x10\x11\x12\x13\x14\x15\x16\x17" |
60 L"\x1A\x1B\x1C\x1D\x1E\x1F"; | 60 L"\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F"; |
61 | 61 |
62 // The maximum number of characters allowed in profile shortcuts' file names. | 62 // The maximum number of characters allowed in profile shortcuts' file names. |
63 // Warning: migration code will be needed if this is changed later, since | 63 // Warning: migration code will be needed if this is changed later, since |
64 // existing shortcuts might no longer be found if the name is generated | 64 // existing shortcuts might no longer be found if the name is generated |
65 // differently than it was when a shortcut was originally created. | 65 // differently than it was when a shortcut was originally created. |
66 const int kMaxProfileShortcutFileNameLength = 64; | 66 const int kMaxProfileShortcutFileNameLength = 64; |
67 | 67 |
68 // The avatar badge size needs to be half of the shortcut icon size because | 68 // The avatar badge size needs to be half of the shortcut icon size because |
69 // the Windows taskbar icon is 32x32 and the avatar icon overlay is 16x16. So to | 69 // the Windows taskbar icon is 32x32 and the avatar icon overlay is 16x16. So to |
70 // get the shortcut avatar badge and the avatar icon overlay to match up, we | 70 // get the shortcut avatar badge and the avatar icon overlay to match up, we |
(...skipping 784 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
855 // Ensure the profile's icon file has been created. | 855 // Ensure the profile's icon file has been created. |
856 CreateOrUpdateProfileIcon(profile->GetPath()); | 856 CreateOrUpdateProfileIcon(profile->GetPath()); |
857 } | 857 } |
858 break; | 858 break; |
859 } | 859 } |
860 default: | 860 default: |
861 NOTREACHED(); | 861 NOTREACHED(); |
862 break; | 862 break; |
863 } | 863 } |
864 } | 864 } |
OLD | NEW |