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

Side by Side Diff: chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc

Issue 364883002: Replace additional network properties with ONC values (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 5 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/options/chromeos/internet_options_handler.h" 5 #include "chrome/browser/ui/webui/options/chromeos/internet_options_handler.h"
6 6
7 #include <ctype.h> 7 #include <ctype.h>
8 8
9 #include <map> 9 #include <map>
10 #include <string> 10 #include <string>
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 const char kTagCarrierUrl[] = "carrierUrl"; 139 const char kTagCarrierUrl[] = "carrierUrl";
140 const char kTagCellularAvailable[] = "cellularAvailable"; 140 const char kTagCellularAvailable[] = "cellularAvailable";
141 const char kTagCellularEnabled[] = "cellularEnabled"; 141 const char kTagCellularEnabled[] = "cellularEnabled";
142 const char kTagCellularSupportsScan[] = "cellularSupportsScan"; 142 const char kTagCellularSupportsScan[] = "cellularSupportsScan";
143 const char kTagConfigure[] = "configure"; 143 const char kTagConfigure[] = "configure";
144 const char kTagConnect[] = "connect"; 144 const char kTagConnect[] = "connect";
145 const char kTagControlledBy[] = "controlledBy"; 145 const char kTagControlledBy[] = "controlledBy";
146 const char kTagDeviceConnected[] = "deviceConnected"; 146 const char kTagDeviceConnected[] = "deviceConnected";
147 const char kTagDisconnect[] = "disconnect"; 147 const char kTagDisconnect[] = "disconnect";
148 const char kTagErrorState[] = "errorState"; 148 const char kTagErrorState[] = "errorState";
149 const char kTagEsn[] = "esn";
150 const char kTagFirmwareRevision[] = "firmwareRevision";
151 const char kTagForget[] = "forget"; 149 const char kTagForget[] = "forget";
152 const char kTagGsm[] = "gsm";
153 const char kTagHardwareRevision[] = "hardwareRevision";
154 const char kTagIdentity[] = "identity"; 150 const char kTagIdentity[] = "identity";
155 const char kTagIccid[] = "iccid";
156 const char kTagImei[] = "imei";
157 const char kTagImsi[] = "imsi";
158 const char kTagLanguage[] = "language"; 151 const char kTagLanguage[] = "language";
159 const char kTagLastGoodApn[] = "lastGoodApn"; 152 const char kTagLastGoodApn[] = "lastGoodApn";
160 const char kTagLocalizedName[] = "localizedName"; 153 const char kTagLocalizedName[] = "localizedName";
161 const char kTagCellularManufacturer[] = "cellularManufacturer";
162 const char kTagMdn[] = "mdn";
163 const char kTagMeid[] = "meid";
164 const char kTagMin[] = "min";
165 const char kTagModelId[] = "modelId";
166 const char kTagName[] = "name"; 154 const char kTagName[] = "name";
167 const char kTagNameServersGoogle[] = "nameServersGoogle"; 155 const char kTagNameServersGoogle[] = "nameServersGoogle";
168 const char kTagNameServerType[] = "nameServerType"; 156 const char kTagNameServerType[] = "nameServerType";
169 const char kTagNetworkId[] = "networkId"; 157 const char kTagNetworkId[] = "networkId";
170 const char kTagNetworkTechnology[] = "networkTechnology";
171 const char kTagOperatorCode[] = "operatorCode";
172 const char kTagOperatorName[] = "operatorName";
173 const char kTagOptions[] = "options"; 158 const char kTagOptions[] = "options";
174 const char kTagPassword[] = "password"; 159 const char kTagPassword[] = "password";
175 const char kTagPolicy[] = "policy"; 160 const char kTagPolicy[] = "policy";
176 const char kTagPreferred[] = "preferred"; 161 const char kTagPreferred[] = "preferred";
177 const char kTagPrlVersion[] = "prlVersion";
178 const char kTagProviderType[] = "providerType"; 162 const char kTagProviderType[] = "providerType";
179 const char kTagProviderApnList[] = "providerApnList"; 163 const char kTagProviderApnList[] = "providerApnList";
180 const char kTagRecommended[] = "recommended"; 164 const char kTagRecommended[] = "recommended";
181 const char kTagRecommendedValue[] = "recommendedValue"; 165 const char kTagRecommendedValue[] = "recommendedValue";
182 const char kTagRemembered[] = "remembered"; 166 const char kTagRemembered[] = "remembered";
183 const char kTagRememberedList[] = "rememberedList"; 167 const char kTagRememberedList[] = "rememberedList";
184 const char kTagRestrictedPool[] = "restrictedPool"; 168 const char kTagRestrictedPool[] = "restrictedPool";
185 const char kTagRoamingState[] = "roamingState"; 169 const char kTagRoamingState[] = "roamingState";
186 const char kTagServerHostname[] = "serverHostname"; 170 const char kTagServerHostname[] = "serverHostname";
187 const char kTagCarriers[] = "carriers"; 171 const char kTagCarriers[] = "carriers";
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
344 std::string name_servers; 328 std::string name_servers;
345 if (shill_properties.GetStringWithoutPathExpansion( 329 if (shill_properties.GetStringWithoutPathExpansion(
346 name_servers_key, &name_servers)) { 330 name_servers_key, &name_servers)) {
347 ip_info_dict->SetString(kIpConfigNameServers, name_servers); 331 ip_info_dict->SetString(kIpConfigNameServers, name_servers);
348 VLOG(2) << "Found " << name_servers_key << ": " << name_servers; 332 VLOG(2) << "Found " << name_servers_key << ": " << name_servers;
349 } 333 }
350 334
351 return ip_info_dict.release(); 335 return ip_info_dict.release();
352 } 336 }
353 337
354 bool CanForgetNetworkType(const std::string& type) {
355 return type == shill::kTypeWifi ||
356 type == shill::kTypeWimax ||
357 type == shill::kTypeVPN;
358 }
359
360 bool CanAddNetworkType(const std::string& type) {
361 return type == shill::kTypeWifi ||
362 type == shill::kTypeVPN ||
363 type == shill::kTypeCellular;
364 }
365
366 // Decorate dictionary |value_dict| with policy information from |ui_data|. 338 // Decorate dictionary |value_dict| with policy information from |ui_data|.
367 void DecorateValueDictionary(const NetworkPropertyUIData& ui_data, 339 void DecorateValueDictionary(const NetworkPropertyUIData& ui_data,
368 const base::Value& value, 340 const base::Value& value,
369 base::DictionaryValue* value_dict) { 341 base::DictionaryValue* value_dict) {
370 const base::Value* recommended_value = ui_data.default_value(); 342 const base::Value* recommended_value = ui_data.default_value();
371 if (ui_data.IsManaged()) 343 if (ui_data.IsManaged())
372 value_dict->SetString(kTagControlledBy, kTagPolicy); 344 value_dict->SetString(kTagControlledBy, kTagPolicy);
373 else if (recommended_value && recommended_value->Equals(&value)) 345 else if (recommended_value && recommended_value->Equals(&value))
374 value_dict->SetString(kTagControlledBy, kTagRecommended); 346 value_dict->SetString(kTagControlledBy, kTagRecommended);
375 347
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
536 *apn, shill::kApnLanguageProperty, kTagLanguage, dictionary); 508 *apn, shill::kApnLanguageProperty, kTagLanguage, dictionary);
537 } 509 }
538 510
539 void PopulateCellularDetails(const NetworkState* cellular, 511 void PopulateCellularDetails(const NetworkState* cellular,
540 const base::DictionaryValue& shill_properties, 512 const base::DictionaryValue& shill_properties,
541 base::DictionaryValue* dictionary) { 513 base::DictionaryValue* dictionary) {
542 dictionary->SetBoolean(kTagCarrierSelectFlag, 514 dictionary->SetBoolean(kTagCarrierSelectFlag,
543 CommandLine::ForCurrentProcess()->HasSwitch( 515 CommandLine::ForCurrentProcess()->HasSwitch(
544 chromeos::switches::kEnableCarrierSwitching)); 516 chromeos::switches::kEnableCarrierSwitching));
545 // Cellular network / connection settings. 517 // Cellular network / connection settings.
546 dictionary->SetString(kTagNetworkTechnology, cellular->network_technology());
547 dictionary->SetString(kTagActivationState, 518 dictionary->SetString(kTagActivationState,
548 internet_options_strings::ActivationStateString( 519 internet_options_strings::ActivationStateString(
549 cellular->activation_state())); 520 cellular->activation_state()));
550 dictionary->SetString(kTagRoamingState, 521 dictionary->SetString(kTagRoamingState,
551 internet_options_strings::RoamingStateString( 522 internet_options_strings::RoamingStateString(
552 cellular->roaming())); 523 cellular->roaming()));
553 dictionary->SetString( 524 dictionary->SetString(kTagRestrictedPool,
554 kTagRestrictedPool, 525 internet_options_strings::RestrictedStateString(
555 internet_options_strings::RestrictedStateString( 526 cellular->connection_state()));
556 cellular->connection_state()));
557
558 const base::DictionaryValue* serving_operator = NULL;
559 if (shill_properties.GetDictionaryWithoutPathExpansion(
560 shill::kServingOperatorProperty, &serving_operator)) {
561 CopyStringFromDictionary(*serving_operator,
562 shill::kOperatorNameKey,
563 kTagOperatorName,
564 dictionary);
565 CopyStringFromDictionary(*serving_operator,
566 shill::kOperatorCodeKey,
567 kTagOperatorCode,
568 dictionary);
569 }
570 527
571 const base::DictionaryValue* olp = NULL; 528 const base::DictionaryValue* olp = NULL;
572 if (shill_properties.GetDictionaryWithoutPathExpansion( 529 if (shill_properties.GetDictionaryWithoutPathExpansion(
573 shill::kPaymentPortalProperty, &olp)) { 530 shill::kPaymentPortalProperty, &olp)) {
574 std::string url; 531 std::string url;
575 olp->GetStringWithoutPathExpansion(shill::kPaymentPortalURL, &url); 532 olp->GetStringWithoutPathExpansion(shill::kPaymentPortalURL, &url);
576 dictionary->SetString(kTagSupportUrl, url); 533 dictionary->SetString(kTagSupportUrl, url);
577 } 534 }
578 535
579 base::DictionaryValue* apn = new base::DictionaryValue; 536 base::DictionaryValue* apn = new base::DictionaryValue;
(...skipping 13 matching lines...) Expand all
593 550
594 // These default to empty and are only set if device != NULL. 551 // These default to empty and are only set if device != NULL.
595 std::string carrier_id; 552 std::string carrier_id;
596 std::string mdn; 553 std::string mdn;
597 554
598 // Device settings. 555 // Device settings.
599 const DeviceState* device = 556 const DeviceState* device =
600 NetworkHandler::Get()->network_state_handler()->GetDeviceState( 557 NetworkHandler::Get()->network_state_handler()->GetDeviceState(
601 cellular->device_path()); 558 cellular->device_path());
602 if (device) { 559 if (device) {
603 // TODO(stevenjb): Add NetworkDeviceHandler::GetProperties() and use that
604 // to retrieve the complete dictionary of device properties, instead of
605 // caching them (will be done for the new UI).
606 const base::DictionaryValue& device_properties = device->properties(); 560 const base::DictionaryValue& device_properties = device->properties();
607 const NetworkPropertyUIData cellular_property_ui_data( 561 const NetworkPropertyUIData cellular_property_ui_data(
608 cellular->ui_data().onc_source()); 562 cellular->ui_data().onc_source());
609 CopyStringFromDictionary(device_properties,
610 shill::kManufacturerProperty,
611 kTagCellularManufacturer,
612 dictionary);
613 CopyStringFromDictionary(
614 device_properties, shill::kModelIDProperty, kTagModelId, dictionary);
615 CopyStringFromDictionary(device_properties,
616 shill::kFirmwareRevisionProperty,
617 kTagFirmwareRevision,
618 dictionary);
619 CopyStringFromDictionary(device_properties,
620 shill::kHardwareRevisionProperty,
621 kTagHardwareRevision,
622 dictionary);
623 CopyIntegerFromDictionary(device_properties,
624 shill::kPRLVersionProperty,
625 kTagPrlVersion,
626 true,
627 dictionary);
628 CopyStringFromDictionary(
629 device_properties, shill::kMeidProperty, kTagMeid, dictionary);
630 CopyStringFromDictionary(
631 device_properties, shill::kIccidProperty, kTagIccid, dictionary);
632 CopyStringFromDictionary(
633 device_properties, shill::kImeiProperty, kTagImei, dictionary);
634 mdn = CopyStringFromDictionary(
635 device_properties, shill::kMdnProperty, kTagMdn, dictionary);
636 CopyStringFromDictionary(
637 device_properties, shill::kImsiProperty, kTagImsi, dictionary);
638 CopyStringFromDictionary(
639 device_properties, shill::kEsnProperty, kTagEsn, dictionary);
640 CopyStringFromDictionary(
641 device_properties, shill::kMinProperty, kTagMin, dictionary);
642 std::string family;
643 device_properties.GetStringWithoutPathExpansion(
644 shill::kTechnologyFamilyProperty, &family);
645 dictionary->SetBoolean(kTagGsm, family == shill::kNetworkTechnologyGsm);
646
647 SetValueDictionary(dictionary, 563 SetValueDictionary(dictionary,
648 kTagSimCardLockEnabled, 564 kTagSimCardLockEnabled,
649 new base::FundamentalValue(device->sim_lock_enabled()), 565 new base::FundamentalValue(device->sim_lock_enabled()),
650 cellular_property_ui_data); 566 cellular_property_ui_data);
651 567
652 carrier_id = device->home_provider_id(); 568 carrier_id = device->home_provider_id();
569 device_properties.GetStringWithoutPathExpansion(shill::kMdnProperty, &mdn);
653 570
654 MobileConfig* config = MobileConfig::GetInstance(); 571 MobileConfig* config = MobileConfig::GetInstance();
655 if (config->IsReady()) { 572 if (config->IsReady()) {
656 const MobileConfig::Carrier* carrier = config->GetCarrier(carrier_id); 573 const MobileConfig::Carrier* carrier = config->GetCarrier(carrier_id);
657 if (carrier && !carrier->top_up_url().empty()) 574 if (carrier && !carrier->top_up_url().empty())
658 dictionary->SetString(kTagCarrierUrl, carrier->top_up_url()); 575 dictionary->SetString(kTagCarrierUrl, carrier->top_up_url());
659 } 576 }
660 577
661 base::ListValue* apn_list_value = new base::ListValue(); 578 base::ListValue* apn_list_value = new base::ListValue();
662 const base::ListValue* apn_list; 579 const base::ListValue* apn_list;
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
742 // carrier specific portal. 659 // carrier specific portal.
743 if (cellular->IsConnectedState() || force_show_view_account_button) 660 if (cellular->IsConnectedState() || force_show_view_account_button)
744 dictionary->SetBoolean(kTagShowViewAccountButton, true); 661 dictionary->SetBoolean(kTagShowViewAccountButton, true);
745 } 662 }
746 } 663 }
747 } 664 }
748 665
749 scoped_ptr<base::DictionaryValue> PopulateConnectionDetails( 666 scoped_ptr<base::DictionaryValue> PopulateConnectionDetails(
750 const NetworkState* network, 667 const NetworkState* network,
751 const base::DictionaryValue& shill_properties) { 668 const base::DictionaryValue& shill_properties) {
669 // TODO(stevenjb): Once we eliminate all references to Shill properties,
670 // we can switch to using managed_network_configuration_handler which
671 // includes Device properties for Cellular (and skip the call to
672 // onc::TranslateShillServiceToONCPart). For now we copy them over here.
673 scoped_ptr<base::DictionaryValue> shill_properties_with_device(
674 shill_properties.DeepCopy());
675 const DeviceState* device =
676 NetworkHandler::Get()->network_state_handler()->GetDeviceState(
677 network->device_path());
678 if (device) {
679 shill_properties_with_device->Set(shill::kDeviceProperty,
680 device->properties().DeepCopy());
681 }
752 scoped_ptr<base::DictionaryValue> dictionary = 682 scoped_ptr<base::DictionaryValue> dictionary =
753 onc::TranslateShillServiceToONCPart( 683 onc::TranslateShillServiceToONCPart(
754 shill_properties, &onc::kNetworkWithStateSignature); 684 *shill_properties_with_device, &onc::kNetworkWithStateSignature);
755 685
756 dictionary->SetString(kNetworkInfoKeyServicePath, network->path()); 686 dictionary->SetString(kNetworkInfoKeyServicePath, network->path());
757 dictionary->SetString( 687 dictionary->SetString(
758 kTagErrorState, 688 kTagErrorState,
759 ash::network_connect::ErrorString(network->error(), network->path())); 689 ash::network_connect::ErrorString(network->error(), network->path()));
760 690
761 dictionary->SetBoolean(kTagRemembered, !network->profile_path().empty()); 691 dictionary->SetBoolean(kTagRemembered, !network->profile_path().empty());
762 bool shared = !network->IsPrivate(); 692 bool shared = !network->IsPrivate();
763 dictionary->SetBoolean(kTagShared, shared); 693 dictionary->SetBoolean(kTagShared, shared);
764 694
(...skipping 382 matching lines...) Expand 10 before | Expand all | Expand 10 after
1147 gfx::ImageSkia* icon = 1077 gfx::ImageSkia* icon =
1148 ResourceBundle::GetSharedInstance().GetImageSkiaNamed(resource_id); 1078 ResourceBundle::GetSharedInstance().GetImageSkiaNamed(resource_id);
1149 gfx::ImageSkiaRep image_rep = icon->GetRepresentation( 1079 gfx::ImageSkiaRep image_rep = icon->GetRepresentation(
1150 web_ui()->GetDeviceScaleFactor()); 1080 web_ui()->GetDeviceScaleFactor());
1151 return webui::GetBitmapDataUrl(image_rep.sk_bitmap()); 1081 return webui::GetBitmapDataUrl(image_rep.sk_bitmap());
1152 } 1082 }
1153 1083
1154 void InternetOptionsHandler::RefreshNetworkData() { 1084 void InternetOptionsHandler::RefreshNetworkData() {
1155 base::DictionaryValue dictionary; 1085 base::DictionaryValue dictionary;
1156 FillNetworkInfo(&dictionary); 1086 FillNetworkInfo(&dictionary);
1157 web_ui()->CallJavascriptFunction( 1087 web_ui()->CallJavascriptFunction(kRefreshNetworkDataFunction, dictionary);
1158 kRefreshNetworkDataFunction, dictionary);
1159 } 1088 }
1160 1089
1161 void InternetOptionsHandler::UpdateConnectionData( 1090 void InternetOptionsHandler::UpdateConnectionData(
1162 const std::string& service_path) { 1091 const std::string& service_path) {
1163 NetworkHandler::Get()->network_configuration_handler()->GetProperties( 1092 NetworkHandler::Get()->network_configuration_handler()->GetProperties(
1164 service_path, 1093 service_path,
1165 base::Bind(&InternetOptionsHandler::UpdateConnectionDataCallback, 1094 base::Bind(&InternetOptionsHandler::UpdateConnectionDataCallback,
1166 weak_factory_.GetWeakPtr()), 1095 weak_factory_.GetWeakPtr()),
1167 base::Bind(&ShillError, "UpdateConnectionData")); 1096 base::Bind(&ShillError, "UpdateConnectionData"));
1168 } 1097 }
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
1537 return; 1466 return;
1538 } 1467 }
1539 std::string type; // Shill type 1468 std::string type; // Shill type
1540 if (!onc_type.empty()) { 1469 if (!onc_type.empty()) {
1541 type = network_util::TranslateONCTypeToShill(onc_type); 1470 type = network_util::TranslateONCTypeToShill(onc_type);
1542 if (type.empty()) 1471 if (type.empty())
1543 LOG(ERROR) << "Unable to translate ONC type: " << onc_type; 1472 LOG(ERROR) << "Unable to translate ONC type: " << onc_type;
1544 } 1473 }
1545 // Process commands that do not require an existing network. 1474 // Process commands that do not require an existing network.
1546 if (command == kTagAddConnection) { 1475 if (command == kTagAddConnection) {
1547 if (CanAddNetworkType(type)) 1476 AddConnection(type);
1548 AddConnection(type);
1549 } else if (command == kTagForget) { 1477 } else if (command == kTagForget) {
1550 if (CanForgetNetworkType(type)) { 1478 NetworkHandler::Get()->network_configuration_handler()->
1551 NetworkHandler::Get()->network_configuration_handler()-> 1479 RemoveConfiguration(
1552 RemoveConfiguration( 1480 service_path,
1553 service_path, 1481 base::Bind(&base::DoNothing),
1554 base::Bind(&base::DoNothing), 1482 base::Bind(&ShillError, "NetworkCommand: " + command));
1555 base::Bind(&ShillError, "NetworkCommand: " + command));
1556 }
1557 } else if (command == kTagOptions) { 1483 } else if (command == kTagOptions) {
1558 NetworkHandler::Get()->network_configuration_handler()->GetProperties( 1484 NetworkHandler::Get()->network_configuration_handler()->GetProperties(
1559 service_path, 1485 service_path,
1560 base::Bind(&InternetOptionsHandler::PopulateDictionaryDetailsCallback, 1486 base::Bind(&InternetOptionsHandler::PopulateDictionaryDetailsCallback,
1561 weak_factory_.GetWeakPtr()), 1487 weak_factory_.GetWeakPtr()),
1562 base::Bind(&ShillError, "NetworkCommand: " + command)); 1488 base::Bind(&ShillError, "NetworkCommand: " + command));
1563 } else if (command == kTagConnect) { 1489 } else if (command == kTagConnect) {
1564 const NetworkState* network = GetNetworkState(service_path); 1490 const NetworkState* network = GetNetworkState(service_path);
1565 if (network && network->type() == shill::kTypeWifi) 1491 if (network && network->type() == shill::kTypeWifi)
1566 content::RecordAction( 1492 content::RecordAction(
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
1599 content::RecordAction( 1525 content::RecordAction(
1600 base::UserMetricsAction("Options_NetworkJoinOtherWifi")); 1526 base::UserMetricsAction("Options_NetworkJoinOtherWifi"));
1601 NetworkConfigView::ShowForType(shill::kTypeWifi, GetNativeWindow()); 1527 NetworkConfigView::ShowForType(shill::kTypeWifi, GetNativeWindow());
1602 } else if (type == shill::kTypeVPN) { 1528 } else if (type == shill::kTypeVPN) {
1603 content::RecordAction( 1529 content::RecordAction(
1604 base::UserMetricsAction("Options_NetworkJoinOtherVPN")); 1530 base::UserMetricsAction("Options_NetworkJoinOtherVPN"));
1605 NetworkConfigView::ShowForType(shill::kTypeVPN, GetNativeWindow()); 1531 NetworkConfigView::ShowForType(shill::kTypeVPN, GetNativeWindow());
1606 } else if (type == shill::kTypeCellular) { 1532 } else if (type == shill::kTypeCellular) {
1607 ChooseMobileNetworkDialog::ShowDialog(GetNativeWindow()); 1533 ChooseMobileNetworkDialog::ShowDialog(GetNativeWindow());
1608 } else { 1534 } else {
1609 NOTREACHED(); 1535 LOG(ERROR) << "Unsupported type for AddConnection";
1610 } 1536 }
1611 } 1537 }
1612 1538
1613 base::ListValue* InternetOptionsHandler::GetWiredList() { 1539 base::ListValue* InternetOptionsHandler::GetWiredList() {
1614 base::ListValue* list = new base::ListValue(); 1540 base::ListValue* list = new base::ListValue();
1615 const NetworkState* network = NetworkHandler::Get()->network_state_handler()-> 1541 const NetworkState* network = NetworkHandler::Get()->network_state_handler()->
1616 FirstNetworkByType(NetworkTypePattern::Ethernet()); 1542 FirstNetworkByType(NetworkTypePattern::Ethernet());
1617 if (!network) 1543 if (!network)
1618 return list; 1544 return list;
1619 list->Append(BuildNetworkDictionary(network, GetScaleFactor(), GetPrefs())); 1545 list->Append(BuildNetworkDictionary(network, GetScaleFactor(), GetPrefs()));
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
1703 dictionary->SetBoolean( 1629 dictionary->SetBoolean(
1704 kTagWimaxAvailable, 1630 kTagWimaxAvailable,
1705 handler->IsTechnologyAvailable(NetworkTypePattern::Wimax())); 1631 handler->IsTechnologyAvailable(NetworkTypePattern::Wimax()));
1706 dictionary->SetBoolean( 1632 dictionary->SetBoolean(
1707 kTagWimaxEnabled, 1633 kTagWimaxEnabled,
1708 handler->IsTechnologyEnabled(NetworkTypePattern::Wimax())); 1634 handler->IsTechnologyEnabled(NetworkTypePattern::Wimax()));
1709 } 1635 }
1710 1636
1711 } // namespace options 1637 } // namespace options
1712 } // namespace chromeos 1638 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698