OLD | NEW |
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 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
152 const char kTagCellularAvailable[] = "cellularAvailable"; | 152 const char kTagCellularAvailable[] = "cellularAvailable"; |
153 const char kTagCellularBusy[] = "cellularBusy"; | 153 const char kTagCellularBusy[] = "cellularBusy"; |
154 const char kTagCellularEnabled[] = "cellularEnabled"; | 154 const char kTagCellularEnabled[] = "cellularEnabled"; |
155 const char kTagCellularSupportsScan[] = "cellularSupportsScan"; | 155 const char kTagCellularSupportsScan[] = "cellularSupportsScan"; |
156 const char kTagConnect[] = "connect"; | 156 const char kTagConnect[] = "connect"; |
157 const char kTagConnected[] = "connected"; | 157 const char kTagConnected[] = "connected"; |
158 const char kTagConnecting[] = "connecting"; | 158 const char kTagConnecting[] = "connecting"; |
159 const char kTagConnectionState[] = "connectionState"; | 159 const char kTagConnectionState[] = "connectionState"; |
160 const char kTagControlledBy[] = "controlledBy"; | 160 const char kTagControlledBy[] = "controlledBy"; |
161 const char kTagDataRemaining[] = "dataRemaining"; | 161 const char kTagDataRemaining[] = "dataRemaining"; |
162 const char kTagDefault[] = "default"; | |
163 const char kTagDeviceConnected[] = "deviceConnected"; | 162 const char kTagDeviceConnected[] = "deviceConnected"; |
164 const char kTagDisconnect[] = "disconnect"; | 163 const char kTagDisconnect[] = "disconnect"; |
165 const char kTagEncryption[] = "encryption"; | 164 const char kTagEncryption[] = "encryption"; |
166 const char kTagErrorState[] = "errorState"; | 165 const char kTagErrorState[] = "errorState"; |
167 const char kTagEsn[] = "esn"; | 166 const char kTagEsn[] = "esn"; |
168 const char kTagFirmwareRevision[] = "firmwareRevision"; | 167 const char kTagFirmwareRevision[] = "firmwareRevision"; |
169 const char kTagForget[] = "forget"; | 168 const char kTagForget[] = "forget"; |
170 const char kTagFrequency[] = "frequency"; | 169 const char kTagFrequency[] = "frequency"; |
171 const char kTagGsm[] = "gsm"; | 170 const char kTagGsm[] = "gsm"; |
172 const char kTagHardwareAddress[] = "hardwareAddress"; | 171 const char kTagHardwareAddress[] = "hardwareAddress"; |
(...skipping 23 matching lines...) Expand all Loading... |
196 const char kTagPlanExpires[] = "planExpires"; | 195 const char kTagPlanExpires[] = "planExpires"; |
197 const char kTagPlans[] = "plans"; | 196 const char kTagPlans[] = "plans"; |
198 const char kTagPlanSummary[] = "planSummary"; | 197 const char kTagPlanSummary[] = "planSummary"; |
199 const char kTagPlanType[] = "planType"; | 198 const char kTagPlanType[] = "planType"; |
200 const char kTagPolicy[] = "policy"; | 199 const char kTagPolicy[] = "policy"; |
201 const char kTagPreferred[] = "preferred"; | 200 const char kTagPreferred[] = "preferred"; |
202 const char kTagPrlVersion[] = "prlVersion"; | 201 const char kTagPrlVersion[] = "prlVersion"; |
203 const char kTagProvider_type[] = "provider_type"; | 202 const char kTagProvider_type[] = "provider_type"; |
204 const char kTagProviderApnList[] = "providerApnList"; | 203 const char kTagProviderApnList[] = "providerApnList"; |
205 const char kTagRecommended[] = "recommended"; | 204 const char kTagRecommended[] = "recommended"; |
| 205 const char kTagRecommendedValue[] = "recommendedValue"; |
206 const char kTagRemembered[] = "remembered"; | 206 const char kTagRemembered[] = "remembered"; |
207 const char kTagRememberedList[] = "rememberedList"; | 207 const char kTagRememberedList[] = "rememberedList"; |
208 const char kTagRestrictedPool[] = "restrictedPool"; | 208 const char kTagRestrictedPool[] = "restrictedPool"; |
209 const char kTagRoamingState[] = "roamingState"; | 209 const char kTagRoamingState[] = "roamingState"; |
210 const char kTagServerHostname[] = "serverHostname"; | 210 const char kTagServerHostname[] = "serverHostname"; |
211 const char kTagService_name[] = "service_name"; | 211 const char kTagService_name[] = "service_name"; |
212 const char kTagCarriers[] = "carriers"; | 212 const char kTagCarriers[] = "carriers"; |
213 const char kTagCurrentCarrierIndex[] = "currentCarrierIndex"; | 213 const char kTagCurrentCarrierIndex[] = "currentCarrierIndex"; |
214 const char kTagServiceName[] = "serviceName"; | 214 const char kTagServiceName[] = "serviceName"; |
215 const char kTagServicePath[] = "servicePath"; | 215 const char kTagServicePath[] = "servicePath"; |
(...skipping 270 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
486 type == chromeos::TYPE_WIMAX || | 486 type == chromeos::TYPE_WIMAX || |
487 type == chromeos::TYPE_VPN; | 487 type == chromeos::TYPE_VPN; |
488 } | 488 } |
489 | 489 |
490 static bool CanAddNetworkType(int type) { | 490 static bool CanAddNetworkType(int type) { |
491 return type == chromeos::TYPE_WIFI || | 491 return type == chromeos::TYPE_WIFI || |
492 type == chromeos::TYPE_VPN || | 492 type == chromeos::TYPE_VPN || |
493 type == chromeos::TYPE_CELLULAR; | 493 type == chromeos::TYPE_CELLULAR; |
494 } | 494 } |
495 | 495 |
496 // Stores a dictionary under |key| in |settings| that is suitable to be sent | 496 // Decorate pref value as CoreOptionsHandler::CreateValueForPref() does and |
497 // to the webui that contains the actual value of a setting and whether it's | 497 // store it under |key| in |settings|. Takes ownership of |value|. |
498 // controlled by policy. Takes ownership of |value|. | |
499 void SetValueDictionary( | 498 void SetValueDictionary( |
500 DictionaryValue* settings, | 499 DictionaryValue* settings, |
501 const char* key, | 500 const char* key, |
502 base::Value* value, | 501 base::Value* value, |
503 const chromeos::NetworkPropertyUIData& ui_data) { | 502 const chromeos::NetworkPropertyUIData& ui_data) { |
504 DictionaryValue* value_dict = new DictionaryValue(); | 503 DictionaryValue* dict = new DictionaryValue(); |
505 // DictionaryValue::Set() takes ownership of |value|. | 504 // DictionaryValue::Set() takes ownership of |value|. |
506 if (value) | 505 dict->Set(kTagValue, value); |
507 value_dict->Set(kTagValue, value); | 506 const base::Value* recommended_value = ui_data.default_value(); |
508 const base::Value* default_value = ui_data.default_value(); | |
509 if (default_value) | |
510 value_dict->Set(kTagDefault, default_value->DeepCopy()); | |
511 if (ui_data.managed()) | 507 if (ui_data.managed()) |
512 value_dict->SetString(kTagControlledBy, kTagPolicy); | 508 dict->SetString(kTagControlledBy, kTagPolicy); |
513 else if (ui_data.recommended()) | 509 else if (recommended_value && recommended_value->Equals(value)) |
514 value_dict->SetString(kTagControlledBy, kTagRecommended); | 510 dict->SetString(kTagControlledBy, kTagRecommended); |
515 settings->Set(key, value_dict); | 511 |
| 512 if (recommended_value) |
| 513 dict->Set(kTagRecommendedValue, recommended_value->DeepCopy()); |
| 514 settings->Set(key, dict); |
516 } | 515 } |
517 | 516 |
518 // Fills |dictionary| with the configuration details of |vpn|. |onc| is required | 517 // Fills |dictionary| with the configuration details of |vpn|. |onc| is required |
519 // for augmenting the policy-managed information. | 518 // for augmenting the policy-managed information. |
520 void PopulateVPNDetails( | 519 void PopulateVPNDetails( |
521 const chromeos::VirtualNetwork* vpn, | 520 const chromeos::VirtualNetwork* vpn, |
522 const base::DictionaryValue& onc, | 521 const base::DictionaryValue& onc, |
523 DictionaryValue* dictionary) { | 522 DictionaryValue* dictionary) { |
524 dictionary->SetString(kTagService_name, vpn->name()); | 523 dictionary->SetString(kTagService_name, vpn->name()); |
525 bool remembered = (vpn->profile_type() != chromeos::PROFILE_NONE); | 524 bool remembered = (vpn->profile_type() != chromeos::PROFILE_NONE); |
(...skipping 1275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1801 | 1800 |
1802 dictionary->SetBoolean(kTagWimaxEnabled, cros_->wimax_enabled()); | 1801 dictionary->SetBoolean(kTagWimaxEnabled, cros_->wimax_enabled()); |
1803 dictionary->SetBoolean(kTagWimaxAvailable, cros_->wimax_available()); | 1802 dictionary->SetBoolean(kTagWimaxAvailable, cros_->wimax_available()); |
1804 dictionary->SetBoolean(kTagWimaxBusy, cros_->wimax_busy()); | 1803 dictionary->SetBoolean(kTagWimaxBusy, cros_->wimax_busy()); |
1805 // TODO(kevers): The use of 'offline_mode' is not quite correct. Update once | 1804 // TODO(kevers): The use of 'offline_mode' is not quite correct. Update once |
1806 // we have proper back-end support. | 1805 // we have proper back-end support. |
1807 dictionary->SetBoolean(kTagAirplaneMode, cros_->offline_mode()); | 1806 dictionary->SetBoolean(kTagAirplaneMode, cros_->offline_mode()); |
1808 } | 1807 } |
1809 | 1808 |
1810 } // namespace options | 1809 } // namespace options |
OLD | NEW |