| Index: chrome/browser/chromeos/status/network_menu.cc
|
| diff --git a/chrome/browser/chromeos/status/network_menu.cc b/chrome/browser/chromeos/status/network_menu.cc
|
| index 6005152fad67bc63d538659eba6185357927a932..9dbd28cdbdbf26c2da95722d4383f09994c29bdd 100644
|
| --- a/chrome/browser/chromeos/status/network_menu.cc
|
| +++ b/chrome/browser/chromeos/status/network_menu.cc
|
| @@ -64,8 +64,6 @@ std::string EscapeAmpersands(const std::string& input) {
|
| // Activate a cellular network.
|
| void ActivateCellular(const chromeos::CellularNetwork* cellular) {
|
| DCHECK(cellular);
|
| - if (!chromeos::UserManager::Get()->IsSessionStarted())
|
| - return;
|
|
|
| ash::Shell::GetInstance()->delegate()->OpenMobileSetup(
|
| cellular->service_path());
|
| @@ -590,11 +588,6 @@ void MainMenuModel::InitMenuItems(bool should_open_button_options) {
|
| chromeos::ActivationState activation_state =
|
| cell_networks[i]->activation_state();
|
|
|
| - // This is currently only used in the OOBE/login screen, do not show
|
| - // activating 3G option.
|
| - if (activation_state != ACTIVATION_STATE_ACTIVATED)
|
| - continue;
|
| -
|
| // Ampersand is a valid character in a network name, but menu2 uses it
|
| // to mark "mnemonics" for keyboard shortcuts. http://crosbug.com/14697
|
| std::string network_name = EscapeAmpersands(cell_networks[i]->name());
|
| @@ -983,6 +976,13 @@ void NetworkMenu::DoConnect(Network* network) {
|
| // Connection failures are responsible for updating the UI, including
|
| // reopening dialogs.
|
| }
|
| + } else if (network->type() == TYPE_CELLULAR) {
|
| + CellularNetwork* cellular = static_cast<CellularNetwork*>(network);
|
| + if (cellular->activation_state() != ACTIVATION_STATE_ACTIVATED) {
|
| + ActivateCellular(cellular);
|
| + } else {
|
| + cros->ConnectToCellularNetwork(cellular);
|
| + }
|
| }
|
| }
|
|
|
|
|