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

Unified Diff: chrome/browser/ui/webui/options/manage_profile_handler.cc

Issue 209393009: In the "create user" overlay, associate avatars with their default names (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More review comments. Created 6 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/options/manage_profile_handler.cc
diff --git a/chrome/browser/ui/webui/options/manage_profile_handler.cc b/chrome/browser/ui/webui/options/manage_profile_handler.cc
index 35bd5480aec37a210f30094283e3e791e4ae3793..cd6539dfa2e4d46ea48e569dad800ed339e5bfa2 100644
--- a/chrome/browser/ui/webui/options/manage_profile_handler.cc
+++ b/chrome/browser/ui/webui/options/manage_profile_handler.cc
@@ -50,8 +50,8 @@ namespace options {
namespace {
-const char kCreateProfileIconGridName[] = "create-profile-icon-grid";
-const char kManageProfileIconGridName[] = "manage-profile-icon-grid";
+const char kCreateProfileIdentifier[] = "create";
+const char kManageProfileIdentifier[] = "manage";
// Given |args| from the WebUI, parses value 0 as a FilePath |profile_file_path|
// and returns true on success.
@@ -158,7 +158,7 @@ void ManageProfileHandler::InitializeHandler() {
}
void ManageProfileHandler::InitializePage() {
- SendProfileNames();
+ SendExistingProfileNames();
OnCreateManagedUserPrefChange();
}
@@ -203,9 +203,9 @@ void ManageProfileHandler::Observe(
const content::NotificationSource& source,
const content::NotificationDetails& details) {
if (type == chrome::NOTIFICATION_PROFILE_CACHED_INFO_CHANGED) {
- SendProfileNames();
- base::StringValue value(kManageProfileIconGridName);
- SendProfileIcons(value);
+ SendExistingProfileNames();
+ base::StringValue value(kManageProfileIdentifier);
+ SendProfileIconsAndNames(value);
}
}
@@ -215,10 +215,14 @@ void ManageProfileHandler::OnStateChanged() {
void ManageProfileHandler::RequestDefaultProfileIcons(
const base::ListValue* args) {
- base::StringValue create_value(kCreateProfileIconGridName);
- base::StringValue manage_value(kManageProfileIconGridName);
- SendProfileIcons(manage_value);
- SendProfileIcons(create_value);
+ std::string mode;
+ bool ok = args->GetString(0, &mode);
+ DCHECK(ok);
+ DCHECK(mode == kCreateProfileIdentifier || mode == kManageProfileIdentifier);
+ if (ok) {
+ base::StringValue value(mode);
+ SendProfileIconsAndNames(value);
+ }
}
void ManageProfileHandler::RequestNewProfileDefaults(
@@ -235,9 +239,10 @@ void ManageProfileHandler::RequestNewProfileDefaults(
"ManageProfileOverlay.receiveNewProfileDefaults", profile_info);
}
-void ManageProfileHandler::SendProfileIcons(
- const base::StringValue& icon_grid) {
+void ManageProfileHandler::SendProfileIconsAndNames(
+ const base::StringValue& mode) {
base::ListValue image_url_list;
+ base::ListValue default_name_list;
// First add the GAIA picture if it's available.
const ProfileInfoCache& cache =
@@ -250,22 +255,24 @@ void ManageProfileHandler::SendProfileIcons(
if (icon) {
gfx::Image icon2 = profiles::GetAvatarIconForWebUI(*icon, true);
gaia_picture_url_ = webui::GetBitmapDataUrl(icon2.AsBitmap());
- image_url_list.Append(new base::StringValue(gaia_picture_url_));
+ image_url_list.AppendString(gaia_picture_url_);
+ default_name_list.AppendString(std::string());
}
}
- // Next add the default avatar icons.
+ // Next add the default avatar icons and names.
for (size_t i = 0; i < ProfileInfoCache::GetDefaultAvatarIconCount(); i++) {
std::string url = ProfileInfoCache::GetDefaultAvatarIconUrl(i);
- image_url_list.Append(new base::StringValue(url));
+ image_url_list.AppendString(url);
+ default_name_list.AppendString(cache.ChooseNameForNewProfile(i));
}
web_ui()->CallJavascriptFunction(
- "ManageProfileOverlay.receiveDefaultProfileIcons", icon_grid,
- image_url_list);
+ "ManageProfileOverlay.receiveDefaultProfileIconsAndNames", mode,
+ image_url_list, default_name_list);
}
-void ManageProfileHandler::SendProfileNames() {
+void ManageProfileHandler::SendExistingProfileNames() {
const ProfileInfoCache& cache =
g_browser_process->profile_manager()->GetProfileInfoCache();
base::DictionaryValue profile_name_dict;
@@ -274,8 +281,8 @@ void ManageProfileHandler::SendProfileNames() {
base::UTF16ToUTF8(cache.GetNameOfProfileAtIndex(i)), true);
}
- web_ui()->CallJavascriptFunction("ManageProfileOverlay.receiveProfileNames",
- profile_name_dict);
+ web_ui()->CallJavascriptFunction(
+ "ManageProfileOverlay.receiveExistingProfileNames", profile_name_dict);
}
void ManageProfileHandler::SetProfileIconAndName(const base::ListValue* args) {
@@ -386,8 +393,9 @@ void ManageProfileHandler::ProfileIconSelectionChanged(
return;
base::StringValue gaia_name_value(gaia_name);
+ base::StringValue mode_value(kManageProfileIdentifier);
web_ui()->CallJavascriptFunction("ManageProfileOverlay.setProfileName",
- gaia_name_value);
+ gaia_name_value, mode_value);
}
void ManageProfileHandler::RequestHasProfileShortcuts(

Powered by Google App Engine
This is Rietveld 408576698