OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/settings/about_handler.h" | 5 #include "chrome/browser/ui/webui/settings/about_handler.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 574 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
585 event->Set("connectionTypes", base::Value::CreateNullValue()); | 585 event->Set("connectionTypes", base::Value::CreateNullValue()); |
586 } | 586 } |
587 #endif // defined(OS_CHROMEOS) | 587 #endif // defined(OS_CHROMEOS) |
588 | 588 |
589 CallJavascriptFunction("cr.webUIListenerCallback", | 589 CallJavascriptFunction("cr.webUIListenerCallback", |
590 base::StringValue("update-status-changed"), *event); | 590 base::StringValue("update-status-changed"), *event); |
591 } | 591 } |
592 | 592 |
593 #if defined(OS_MACOSX) | 593 #if defined(OS_MACOSX) |
594 void AboutHandler::SetPromotionState(VersionUpdater::PromotionState state) { | 594 void AboutHandler::SetPromotionState(VersionUpdater::PromotionState state) { |
595 std::string state_str; | 595 // Worth noting: PROMOTE_DISABLED indicates that promotion is possible, |
596 switch (state) { | 596 // there's just something else going on right now (e.g. checking for update). |
597 case VersionUpdater::PROMOTE_HIDDEN: | 597 bool hidden = state == VersionUpdater::PROMOTE_HIDDEN; |
598 state_str = "hidden"; | 598 bool disabled = state == VersionUpdater::PROMOTE_HIDDEN || |
599 break; | 599 state == VersionUpdater::PROMOTE_DISABLED || |
600 case VersionUpdater::PROMOTE_ENABLED: | 600 state == VersionUpdater::PROMOTED; |
601 state_str = "enabled"; | 601 bool actionable = state == VersionUpdater::PROMOTE_DISABLED || |
602 break; | 602 state == VersionUpdater::PROMOTE_ENABLED; |
603 case VersionUpdater::PROMOTE_DISABLED: | 603 |
604 state_str = "disabled"; | 604 base::string16 text = base::string16(); |
605 break; | 605 if (actionable) |
606 } | 606 text = l10n_util::GetStringUTF16(IDS_ABOUT_CHROME_AUTOUPDATE_ALL); |
| 607 else if (state == VersionUpdater::PROMOTED) |
| 608 text = l10n_util::GetStringUTF16(IDS_ABOUT_CHROME_AUTOUPDATE_ALL_IS_ON); |
| 609 |
| 610 base::DictionaryValue promo_state; |
| 611 promo_state.SetBoolean("hidden", hidden); |
| 612 promo_state.SetBoolean("disabled", disabled); |
| 613 promo_state.SetBoolean("actionable", actionable); |
| 614 if (!text.empty()) |
| 615 promo_state.SetString("text", text); |
607 | 616 |
608 CallJavascriptFunction("cr.webUIListenerCallback", | 617 CallJavascriptFunction("cr.webUIListenerCallback", |
609 base::StringValue("promotion-state-changed"), | 618 base::StringValue("promotion-state-changed"), |
610 base::StringValue(state_str)); | 619 promo_state); |
611 } | 620 } |
612 #endif // defined(OS_MACOSX) | 621 #endif // defined(OS_MACOSX) |
613 | 622 |
614 #if defined(OS_CHROMEOS) | 623 #if defined(OS_CHROMEOS) |
615 void AboutHandler::OnRegulatoryLabelDirFound( | 624 void AboutHandler::OnRegulatoryLabelDirFound( |
616 std::string callback_id, | 625 std::string callback_id, |
617 const base::FilePath& label_dir_path) { | 626 const base::FilePath& label_dir_path) { |
618 if (label_dir_path.empty()) { | 627 if (label_dir_path.empty()) { |
619 ResolveJavascriptCallback(base::StringValue(callback_id), | 628 ResolveJavascriptCallback(base::StringValue(callback_id), |
620 *base::Value::CreateNullValue()); | 629 *base::Value::CreateNullValue()); |
(...skipping 17 matching lines...) Expand all Loading... |
638 regulatory_info->SetString("text", base::CollapseWhitespaceASCII(text, true)); | 647 regulatory_info->SetString("text", base::CollapseWhitespaceASCII(text, true)); |
639 | 648 |
640 std::string image_path = | 649 std::string image_path = |
641 label_dir_path.AppendASCII(kRegulatoryLabelImageFilename).MaybeAsASCII(); | 650 label_dir_path.AppendASCII(kRegulatoryLabelImageFilename).MaybeAsASCII(); |
642 std::string url = | 651 std::string url = |
643 std::string("chrome://") + chrome::kChromeOSAssetHost + "/" + image_path; | 652 std::string("chrome://") + chrome::kChromeOSAssetHost + "/" + image_path; |
644 regulatory_info->SetString("url", url); | 653 regulatory_info->SetString("url", url); |
645 | 654 |
646 ResolveJavascriptCallback(base::StringValue(callback_id), *regulatory_info); | 655 ResolveJavascriptCallback(base::StringValue(callback_id), *regulatory_info); |
647 } | 656 } |
648 | |
649 #endif // defined(OS_CHROMEOS) | 657 #endif // defined(OS_CHROMEOS) |
650 | 658 |
651 } // namespace settings | 659 } // namespace settings |
OLD | NEW |