 Chromium Code Reviews
 Chromium Code Reviews Issue 2538043006:
  Settings: About: Fix cros channel info.  (Closed)
    
  
    Issue 2538043006:
  Settings: About: Fix cros channel info.  (Closed) 
  | Index: chrome/browser/ui/webui/settings/about_handler.cc | 
| diff --git a/chrome/browser/ui/webui/settings/about_handler.cc b/chrome/browser/ui/webui/settings/about_handler.cc | 
| index 833edb252fca5f597f8b25db450850c38d544f10..c5d6bd7b3a60259dad7f70f9496c02728e23a7eb 100644 | 
| --- a/chrome/browser/ui/webui/settings/about_handler.cc | 
| +++ b/chrome/browser/ui/webui/settings/about_handler.cc | 
| @@ -298,8 +298,6 @@ AboutHandler* AboutHandler::Create(content::WebUIDataSource* html_source, | 
| IDS_ABOUT_CROS_VERSION_LICENSE, | 
| base::ASCIIToUTF16(chrome::kChromeUIOSCreditsURL)); | 
| html_source->AddString("aboutProductOsLicense", os_license); | 
| - | 
| - html_source->AddBoolean("aboutCanChangeChannel", CanChangeChannel(profile)); | 
| 
stevenjb
2016/12/02 23:04:59
The primary problem is that the result of CanChang
 
dpapad
2016/12/02 23:27:12
I guess in the old C++ handler, we call CanChangeC
 | 
| html_source->AddBoolean("aboutEnterpriseManaged", IsEnterpriseManaged()); | 
| base::Time build_time = base::SysInfo::GetLsbReleaseTime(); | 
| @@ -352,6 +350,10 @@ void AboutHandler::RegisterMessages() { | 
| web_ui()->RegisterMessageCallback( | 
| "getTargetChannel", base::Bind(&AboutHandler::HandleGetTargetChannel, | 
| base::Unretained(this))); | 
| + web_ui()->RegisterMessageCallback( | 
| + "getCanChangeChannel", | 
| 
dpapad
2016/12/02 23:27:12
Nit: Maybe rename to just |canChangeChannel|? |get
 
stevenjb
2016/12/06 20:38:03
I decided this would all be a bit cleaner with a s
 | 
| + base::Bind(&AboutHandler::HandleGetCanChangeChannel, | 
| + base::Unretained(this))); | 
| #endif | 
| #if defined(OS_MACOSX) | 
| web_ui()->RegisterMessageCallback( | 
| @@ -556,6 +558,17 @@ void AboutHandler::HandleRequestUpdate(const base::ListValue* args) { | 
| RequestUpdate(); | 
| } | 
| +void AboutHandler::HandleGetCanChangeChannel(const base::ListValue* args) { | 
| + CHECK_EQ(1U, args->GetSize()); | 
| + std::string callback_id; | 
| + CHECK(args->GetString(0, &callback_id)); | 
| + | 
| + bool can_change_channel = CanChangeChannel(Profile::FromWebUI(web_ui())); | 
| + | 
| + ResolveJavascriptCallback(base::StringValue(callback_id), | 
| + base::FundamentalValue(can_change_channel)); | 
| 
dpapad
2016/12/02 23:27:12
Nit (optional)
ResolveJavascriptCallback(
    bas
 
stevenjb
2016/12/06 20:38:02
Done.
 | 
| +} | 
| + | 
| #endif // defined(OS_CHROMEOS) | 
| void AboutHandler::RequestUpdate() { |