| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/callback.h" | 7 #include "base/bind.h" |
| 8 #include "base/bind_helpers.h" |
| 8 #include "base/logging.h" | 9 #include "base/logging.h" |
| 9 #include "base/values.h" | 10 #include "base/values.h" |
| 10 #include "chrome/browser/chromeos/login/default_user_images.h" | 11 #include "chrome/browser/chromeos/login/default_user_images.h" |
| 11 #include "chrome/browser/chromeos/login/user_manager.h" | 12 #include "chrome/browser/chromeos/login/user_manager.h" |
| 12 #include "chrome/browser/chromeos/login/webui_login_display.h" | 13 #include "chrome/browser/chromeos/login/webui_login_display.h" |
| 13 #include "chrome/browser/chromeos/options/take_photo_dialog.h" | 14 #include "chrome/browser/chromeos/options/take_photo_dialog.h" |
| 14 #include "chrome/browser/ui/views/window.h" | 15 #include "chrome/browser/ui/views/window.h" |
| 15 #include "chrome/browser/ui/webui/web_ui_util.h" | 16 #include "chrome/browser/ui/webui/web_ui_util.h" |
| 16 #include "grit/generated_resources.h" | 17 #include "grit/generated_resources.h" |
| 17 #include "ui/base/l10n/l10n_util.h" | 18 #include "ui/base/l10n/l10n_util.h" |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 if (page_is_ready()) { | 111 if (page_is_ready()) { |
| 111 profile_picture_ = image; | 112 profile_picture_ = image; |
| 112 profile_picture_data_url_ = web_ui_util::GetImageDataUrl(image); | 113 profile_picture_data_url_ = web_ui_util::GetImageDataUrl(image); |
| 113 base::StringValue data_url(profile_picture_data_url_); | 114 base::StringValue data_url(profile_picture_data_url_); |
| 114 web_ui_->CallJavascriptFunction("oobe.UserImageScreen.setProfileImage", | 115 web_ui_->CallJavascriptFunction("oobe.UserImageScreen.setProfileImage", |
| 115 data_url); | 116 data_url); |
| 116 } | 117 } |
| 117 } | 118 } |
| 118 | 119 |
| 119 void UserImageScreenHandler::RegisterMessages() { | 120 void UserImageScreenHandler::RegisterMessages() { |
| 120 web_ui_->RegisterMessageCallback( | 121 web_ui_->RegisterMessageCallback("takePhoto", |
| 121 "takePhoto", | 122 base::Bind(&UserImageScreenHandler::HandleTakePhoto, |
| 122 NewCallback(this, &UserImageScreenHandler::HandleTakePhoto)); | 123 base::Unretained(this))); |
| 123 web_ui_->RegisterMessageCallback( | 124 web_ui_->RegisterMessageCallback("selectImage", |
| 124 "selectImage", | 125 base::Bind(&UserImageScreenHandler::HandleSelectImage, |
| 125 NewCallback(this, &UserImageScreenHandler::HandleSelectImage)); | 126 base::Unretained(this))); |
| 126 web_ui_->RegisterMessageCallback( | 127 web_ui_->RegisterMessageCallback("onUserImageAccepted", |
| 127 "onUserImageAccepted", | 128 base::Bind(&UserImageScreenHandler::HandleImageAccepted, |
| 128 NewCallback(this, &UserImageScreenHandler::HandleImageAccepted)); | 129 base::Unretained(this))); |
| 129 } | 130 } |
| 130 | 131 |
| 131 void UserImageScreenHandler::OnPhotoAccepted(const SkBitmap& photo) { | 132 void UserImageScreenHandler::OnPhotoAccepted(const SkBitmap& photo) { |
| 132 user_photo_ = photo; | 133 user_photo_ = photo; |
| 133 selected_image_ = UserManager::User::kExternalImageIndex; | 134 selected_image_ = UserManager::User::kExternalImageIndex; |
| 134 base::StringValue data_url(web_ui_util::GetImageDataUrl(user_photo_)); | 135 base::StringValue data_url(web_ui_util::GetImageDataUrl(user_photo_)); |
| 135 web_ui_->CallJavascriptFunction("oobe.UserImageScreen.setUserPhoto", | 136 web_ui_->CallJavascriptFunction("oobe.UserImageScreen.setUserPhoto", |
| 136 data_url); | 137 data_url); |
| 137 } | 138 } |
| 138 | 139 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 172 screen_->OnPhotoTaken(user_photo_); | 173 screen_->OnPhotoTaken(user_photo_); |
| 173 } else if (selected_image_ == UserManager::User::kProfileImageIndex) { | 174 } else if (selected_image_ == UserManager::User::kProfileImageIndex) { |
| 174 screen_->OnProfileImageSelected(profile_picture_); | 175 screen_->OnProfileImageSelected(profile_picture_); |
| 175 } else { | 176 } else { |
| 176 DCHECK(selected_image_ >= 0); | 177 DCHECK(selected_image_ >= 0); |
| 177 screen_->OnDefaultImageSelected(selected_image_); | 178 screen_->OnDefaultImageSelected(selected_image_); |
| 178 } | 179 } |
| 179 } | 180 } |
| 180 | 181 |
| 181 } // namespace chromeos | 182 } // namespace chromeos |
| OLD | NEW |