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/ui/webui/options/chromeos/user_image_source.h" | 5 #include "chrome/browser/ui/webui/options/chromeos/user_image_source.h" |
6 | 6 |
7 #include "base/memory/ref_counted_memory.h" | 7 #include "base/memory/ref_counted_memory.h" |
8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "base/strings/string_split.h" | 9 #include "base/strings/string_split.h" |
| 10 #include "chrome/browser/chromeos/login/users/avatar/default_user_images.h" |
10 #include "chrome/browser/chromeos/login/users/user_manager.h" | 11 #include "chrome/browser/chromeos/login/users/user_manager.h" |
11 #include "chrome/common/url_constants.h" | 12 #include "chrome/common/url_constants.h" |
12 #include "components/user_manager/user_image/default_user_images.h" | |
13 #include "grit/theme_resources.h" | 13 #include "grit/theme_resources.h" |
14 #include "grit/ui_chromeos_resources.h" | |
15 #include "net/base/escape.h" | 14 #include "net/base/escape.h" |
16 #include "ui/base/resource/resource_bundle.h" | 15 #include "ui/base/resource/resource_bundle.h" |
17 #include "ui/gfx/codec/png_codec.h" | 16 #include "ui/gfx/codec/png_codec.h" |
18 #include "url/url_parse.h" | 17 #include "url/url_parse.h" |
19 | 18 |
20 namespace { | 19 namespace { |
21 | 20 |
22 // Animated key is used in user image URL requests to specify that | 21 // Animated key is used in user image URL requests to specify that |
23 // animated version of user image is required. Without that key | 22 // animated version of user image is required. Without that key |
24 // non-animated version of user image should be returned. | 23 // non-animated version of user image should be returned. |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 if (user) { | 58 if (user) { |
60 if (user->has_animated_image() && is_image_animated) { | 59 if (user->has_animated_image() && is_image_animated) { |
61 return new base::RefCountedBytes(user->animated_image()); | 60 return new base::RefCountedBytes(user->animated_image()); |
62 } else if (user->has_raw_image()) { | 61 } else if (user->has_raw_image()) { |
63 return new base::RefCountedBytes(user->raw_image()); | 62 return new base::RefCountedBytes(user->raw_image()); |
64 } else if (user->image_is_stub()) { | 63 } else if (user->image_is_stub()) { |
65 return ResourceBundle::GetSharedInstance(). | 64 return ResourceBundle::GetSharedInstance(). |
66 LoadDataResourceBytesForScale(IDR_PROFILE_PICTURE_LOADING, | 65 LoadDataResourceBytesForScale(IDR_PROFILE_PICTURE_LOADING, |
67 scale_factor); | 66 scale_factor); |
68 } else if (user->HasDefaultImage()) { | 67 } else if (user->HasDefaultImage()) { |
69 return ResourceBundle::GetSharedInstance().LoadDataResourceBytesForScale( | 68 return ResourceBundle::GetSharedInstance(). |
70 user_manager::kDefaultImageResourceIDs[user->image_index()], | 69 LoadDataResourceBytesForScale( |
71 scale_factor); | 70 kDefaultImageResourceIDs[user->image_index()], |
| 71 scale_factor); |
72 } else { | 72 } else { |
73 NOTREACHED() << "User with custom image missing raw data"; | 73 NOTREACHED() << "User with custom image missing raw data"; |
74 } | 74 } |
75 } | 75 } |
76 return ResourceBundle::GetSharedInstance(). | 76 return ResourceBundle::GetSharedInstance(). |
77 LoadDataResourceBytesForScale(IDR_LOGIN_DEFAULT_USER, scale_factor); | 77 LoadDataResourceBytesForScale(IDR_LOGIN_DEFAULT_USER, scale_factor); |
78 } | 78 } |
79 | 79 |
80 UserImageSource::UserImageSource() { | 80 UserImageSource::UserImageSource() { |
81 } | 81 } |
(...skipping 28 matching lines...) Expand all Loading... |
110 if (is_image_animated) { | 110 if (is_image_animated) { |
111 const chromeos::User* user = chromeos::UserManager::Get()->FindUser(email); | 111 const chromeos::User* user = chromeos::UserManager::Get()->FindUser(email); |
112 if (user && user->has_animated_image()) | 112 if (user && user->has_animated_image()) |
113 return "image/gif"; | 113 return "image/gif"; |
114 } | 114 } |
115 return "image/png"; | 115 return "image/png"; |
116 } | 116 } |
117 | 117 |
118 } // namespace options | 118 } // namespace options |
119 } // namespace chromeos | 119 } // namespace chromeos |
OLD | NEW |