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

Side by Side Diff: chrome/browser/ui/webui/chromeos/login/user_image_screen_handler.cc

Issue 14063018: Implemented argument wrapping for CallJS. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Get rid of macro. Created 7 years, 8 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
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/chromeos/login/user_image_screen_handler.h" 5 #include "chrome/browser/ui/webui/chromeos/login/user_image_screen_handler.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/metrics/histogram.h" 9 #include "base/metrics/histogram.h"
10 #include "base/values.h" 10 #include "base/values.h"
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 } 92 }
93 93
94 void UserImageScreenHandler::Hide() { 94 void UserImageScreenHandler::Hide() {
95 } 95 }
96 96
97 void UserImageScreenHandler::PrepareToShow() { 97 void UserImageScreenHandler::PrepareToShow() {
98 } 98 }
99 99
100 void UserImageScreenHandler::SelectImage(int index) { 100 void UserImageScreenHandler::SelectImage(int index) {
101 selected_image_ = index; 101 selected_image_ = index;
102 if (page_is_ready()) { 102 if (page_is_ready())
103 base::StringValue image_url(GetDefaultImageUrl(index)); 103 CallJS("oobe.UserImageScreen.setSelectedImage", GetDefaultImageUrl(index));
104 CallJS("oobe.UserImageScreen.setSelectedImage",
105 image_url);
106 }
107 } 104 }
108 105
109 void UserImageScreenHandler::CheckCameraPresence() { 106 void UserImageScreenHandler::CheckCameraPresence() {
110 CameraDetector::StartPresenceCheck( 107 CameraDetector::StartPresenceCheck(
111 base::Bind(&UserImageScreenHandler::OnCameraPresenceCheckDone, 108 base::Bind(&UserImageScreenHandler::OnCameraPresenceCheckDone,
112 weak_factory_.GetWeakPtr())); 109 weak_factory_.GetWeakPtr()));
113 } 110 }
114 111
115 void UserImageScreenHandler::RegisterMessages() { 112 void UserImageScreenHandler::RegisterMessages() {
116 AddCallback("getImages", &UserImageScreenHandler::HandleGetImages); 113 AddCallback("getImages", &UserImageScreenHandler::HandleGetImages);
117 AddCallback("photoTaken", &UserImageScreenHandler::HandlePhotoTaken); 114 AddCallback("photoTaken", &UserImageScreenHandler::HandlePhotoTaken);
118 AddCallback("selectImage", &UserImageScreenHandler::HandleSelectImage); 115 AddCallback("selectImage", &UserImageScreenHandler::HandleSelectImage);
119 AddCallback("checkCameraPresence", 116 AddCallback("checkCameraPresence",
120 &UserImageScreenHandler::HandleCheckCameraPresence); 117 &UserImageScreenHandler::HandleCheckCameraPresence);
121 AddCallback("onUserImageAccepted", 118 AddCallback("onUserImageAccepted",
122 &UserImageScreenHandler::HandleImageAccepted); 119 &UserImageScreenHandler::HandleImageAccepted);
123 AddCallback("onUserImageScreenShown", 120 AddCallback("onUserImageScreenShown",
124 &UserImageScreenHandler::HandleScreenShown); 121 &UserImageScreenHandler::HandleScreenShown);
125 } 122 }
126 123
127 void UserImageScreenHandler::AddProfileImage(const gfx::ImageSkia& image) { 124 void UserImageScreenHandler::AddProfileImage(const gfx::ImageSkia& image) {
128 profile_picture_data_url_ = webui::GetBitmapDataUrl(*image.bitmap()); 125 profile_picture_data_url_ = webui::GetBitmapDataUrl(*image.bitmap());
129 SendProfileImage(profile_picture_data_url_); 126 SendProfileImage(profile_picture_data_url_);
130 } 127 }
131 128
132 void UserImageScreenHandler::SendProfileImage(const std::string& data_url) { 129 void UserImageScreenHandler::SendProfileImage(const std::string& data_url) {
133 if (page_is_ready()) { 130 if (page_is_ready())
134 base::StringValue data_url_value(data_url); 131 CallJS("oobe.UserImageScreen.setProfileImage", data_url);
135 CallJS("oobe.UserImageScreen.setProfileImage", data_url_value);
136 }
137 } 132 }
138 133
139 void UserImageScreenHandler::OnProfileImageAbsent() { 134 void UserImageScreenHandler::OnProfileImageAbsent() {
140 profile_picture_absent_ = true; 135 profile_picture_absent_ = true;
141 if (page_is_ready()) { 136 if (page_is_ready()) {
142 scoped_ptr<base::Value> null_value(base::Value::CreateNullValue()); 137 scoped_ptr<base::Value> null_value(base::Value::CreateNullValue());
143 CallJS("oobe.UserImageScreen.setProfileImage", *null_value); 138 CallJS("oobe.UserImageScreen.setProfileImage", *null_value);
144 } 139 }
145 } 140 }
146 141
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
232 227
233 void UserImageScreenHandler::HandleScreenShown() { 228 void UserImageScreenHandler::HandleScreenShown() {
234 DCHECK(!screen_show_time_.is_null()); 229 DCHECK(!screen_show_time_.is_null());
235 230
236 base::TimeDelta delta = base::Time::Now() - screen_show_time_; 231 base::TimeDelta delta = base::Time::Now() - screen_show_time_;
237 VLOG(1) << "Screen load time: " << delta.InSecondsF(); 232 VLOG(1) << "Screen load time: " << delta.InSecondsF();
238 UMA_HISTOGRAM_TIMES("UserImage.ScreenIsShownTime", delta); 233 UMA_HISTOGRAM_TIMES("UserImage.ScreenIsShownTime", delta);
239 } 234 }
240 235
241 void UserImageScreenHandler::OnCameraPresenceCheckDone() { 236 void UserImageScreenHandler::OnCameraPresenceCheckDone() {
242 base::FundamentalValue present_value( 237 bool present =
243 CameraDetector::camera_presence() == CameraDetector::kCameraPresent); 238 (CameraDetector::camera_presence() == CameraDetector::kCameraPresent);
244 CallJS("oobe.UserImageScreen.setCameraPresent", present_value); 239 CallJS("oobe.UserImageScreen.setCameraPresent", present);
bartfab (slow) 2013/04/18 07:39:31 Nit: You can inline the comparison here: CallJS("
Denis Kuznetsov (DE-MUC) 2013/04/18 07:46:52 That would actually be gone when https://coderevie
ygorshenin1 2013/04/18 07:58:23 Done.
245 } 240 }
246 241
247 void UserImageScreenHandler::OnImageDecoded(const ImageDecoder* decoder, 242 void UserImageScreenHandler::OnImageDecoded(const ImageDecoder* decoder,
248 const SkBitmap& decoded_image) { 243 const SkBitmap& decoded_image) {
249 DCHECK_EQ(image_decoder_.get(), decoder); 244 DCHECK_EQ(image_decoder_.get(), decoder);
250 user_photo_ = gfx::ImageSkia::CreateFrom1xBitmap(decoded_image); 245 user_photo_ = gfx::ImageSkia::CreateFrom1xBitmap(decoded_image);
251 if (screen_ && accept_photo_after_decoding_) 246 if (screen_ && accept_photo_after_decoding_)
252 screen_->OnPhotoTaken(user_photo_); 247 screen_->OnPhotoTaken(user_photo_);
253 } 248 }
254 249
255 void UserImageScreenHandler::OnDecodeImageFailed(const ImageDecoder* decoder) { 250 void UserImageScreenHandler::OnDecodeImageFailed(const ImageDecoder* decoder) {
256 NOTREACHED() << "Failed to decode PNG image from WebUI"; 251 NOTREACHED() << "Failed to decode PNG image from WebUI";
257 } 252 }
258 253
259 void UserImageScreenHandler::SetProfilePictureEnabled(bool enabled) { 254 void UserImageScreenHandler::SetProfilePictureEnabled(bool enabled) {
260 base::FundamentalValue present_value(enabled); 255 CallJS("oobe.UserImageScreen.setProfilePictureEnabled", enabled);
261 CallJS("oobe.UserImageScreen.setProfilePictureEnabled", present_value);
262 } 256 }
263 257
264 } // namespace chromeos 258 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698