Chromium Code Reviews| 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/options2/chromeos/internet_options_handler.h" | 5 #include "chrome/browser/ui/webui/options2/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> |
| 11 #include <vector> | 11 #include <vector> |
| 12 | 12 |
| 13 #include "ash/shell.h" | 13 #include "ash/shell.h" |
| 14 #include "ash/shell_delegate.h" | 14 #include "ash/shell_delegate.h" |
| 15 #include "base/base64.h" | 15 #include "base/base64.h" |
| 16 #include "base/basictypes.h" | 16 #include "base/basictypes.h" |
| 17 #include "base/bind.h" | 17 #include "base/bind.h" |
| 18 #include "base/bind_helpers.h" | 18 #include "base/bind_helpers.h" |
| 19 #include "base/command_line.h" | 19 #include "base/command_line.h" |
| 20 #include "base/i18n/time_formatting.h" | 20 #include "base/i18n/time_formatting.h" |
| 21 #include "base/json/json_writer.h" | |
| 21 #include "base/string16.h" | 22 #include "base/string16.h" |
| 22 #include "base/string_number_conversions.h" | 23 #include "base/string_number_conversions.h" |
| 23 #include "base/stringprintf.h" | 24 #include "base/stringprintf.h" |
| 24 #include "base/time.h" | 25 #include "base/time.h" |
| 25 #include "base/utf_string_conversions.h" | 26 #include "base/utf_string_conversions.h" |
| 26 #include "base/values.h" | 27 #include "base/values.h" |
| 27 #include "chrome/browser/browser_process.h" | 28 #include "chrome/browser/browser_process.h" |
| 28 #include "chrome/browser/chromeos/choose_mobile_network_dialog.h" | 29 #include "chrome/browser/chromeos/choose_mobile_network_dialog.h" |
| 29 #include "chrome/browser/chromeos/cros/cros_library.h" | 30 #include "chrome/browser/chromeos/cros/cros_library.h" |
| 31 #include "chrome/browser/chromeos/cros/cros_network_functions.h" | |
| 30 #include "chrome/browser/chromeos/cros/network_library.h" | 32 #include "chrome/browser/chromeos/cros/network_library.h" |
| 31 #include "chrome/browser/chromeos/cros/onc_constants.h" | 33 #include "chrome/browser/chromeos/cros/onc_constants.h" |
| 32 #include "chrome/browser/chromeos/enrollment_dialog_view.h" | 34 #include "chrome/browser/chromeos/enrollment_dialog_view.h" |
| 33 #include "chrome/browser/chromeos/mobile_config.h" | 35 #include "chrome/browser/chromeos/mobile_config.h" |
| 34 #include "chrome/browser/chromeos/options/network_config_view.h" | 36 #include "chrome/browser/chromeos/options/network_config_view.h" |
| 35 #include "chrome/browser/chromeos/proxy_config_service_impl.h" | 37 #include "chrome/browser/chromeos/proxy_config_service_impl.h" |
| 36 #include "chrome/browser/chromeos/settings/cros_settings.h" | 38 #include "chrome/browser/chromeos/settings/cros_settings.h" |
| 37 #include "chrome/browser/chromeos/sim_dialog_delegate.h" | 39 #include "chrome/browser/chromeos/sim_dialog_delegate.h" |
| 38 #include "chrome/browser/chromeos/status/network_menu_icon.h" | 40 #include "chrome/browser/chromeos/status/network_menu_icon.h" |
| 39 #include "chrome/browser/net/pref_proxy_config_tracker.h" | 41 #include "chrome/browser/net/pref_proxy_config_tracker.h" |
| 40 #include "chrome/browser/profiles/profile.h" | 42 #include "chrome/browser/profiles/profile.h" |
| 41 #include "chrome/browser/profiles/profile_manager.h" | 43 #include "chrome/browser/profiles/profile_manager.h" |
| 42 #include "chrome/browser/ui/browser.h" | 44 #include "chrome/browser/ui/browser.h" |
| 43 #include "chrome/browser/ui/browser_finder.h" | 45 #include "chrome/browser/ui/browser_finder.h" |
| 44 #include "chrome/browser/ui/browser_window.h" | 46 #include "chrome/browser/ui/browser_window.h" |
| 45 #include "chrome/browser/ui/singleton_tabs.h" | 47 #include "chrome/browser/ui/singleton_tabs.h" |
| 46 #include "chrome/browser/ui/webui/web_ui_util.h" | 48 #include "chrome/browser/ui/webui/web_ui_util.h" |
| 47 #include "chrome/common/chrome_notification_types.h" | 49 #include "chrome/common/chrome_notification_types.h" |
| 48 #include "chrome/common/chrome_switches.h" | 50 #include "chrome/common/chrome_switches.h" |
| 49 #include "chrome/common/time_format.h" | 51 #include "chrome/common/time_format.h" |
| 50 #include "content/public/browser/notification_service.h" | 52 #include "content/public/browser/notification_service.h" |
| 51 #include "content/public/browser/web_contents.h" | 53 #include "content/public/browser/web_contents.h" |
| 52 #include "content/public/browser/web_ui.h" | 54 #include "content/public/browser/web_ui.h" |
| 53 #include "grit/chromium_strings.h" | 55 #include "grit/chromium_strings.h" |
| 54 #include "grit/generated_resources.h" | 56 #include "grit/generated_resources.h" |
| 55 #include "grit/locale_settings.h" | 57 #include "grit/locale_settings.h" |
| 56 #include "grit/theme_resources.h" | 58 #include "grit/theme_resources.h" |
| 59 #include "third_party/cros_system_api/dbus/service_constants.h" | |
| 57 #include "ui/base/l10n/l10n_util.h" | 60 #include "ui/base/l10n/l10n_util.h" |
| 58 #include "ui/base/layout.h" | 61 #include "ui/base/layout.h" |
| 59 #include "ui/base/resource/resource_bundle.h" | 62 #include "ui/base/resource/resource_bundle.h" |
| 60 #include "ui/gfx/display.h" | 63 #include "ui/gfx/display.h" |
| 61 #include "ui/gfx/image/image_skia.h" | 64 #include "ui/gfx/image/image_skia.h" |
| 62 #include "ui/gfx/screen.h" | 65 #include "ui/gfx/screen.h" |
| 63 #include "ui/views/widget/widget.h" | 66 #include "ui/views/widget/widget.h" |
| 64 | 67 |
| 65 namespace { | 68 namespace { |
| 66 | 69 |
| 67 static const char kOtherNetworksFakePath[] = "?"; | 70 static const char kOtherNetworksFakePath[] = "?"; |
| 68 | 71 |
| 69 // Keys for the network description dictionary passed to the web ui. Make sure | 72 // Keys for the network description dictionary passed to the web ui. Make sure |
| 70 // to keep the strings in sync with what the Javascript side uses. | 73 // to keep the strings in sync with what the JavaScript side uses. |
| 71 const char kNetworkInfoKeyActivationState[] = "activation_state"; | 74 const char kNetworkInfoKeyActivationState[] = "activation_state"; |
| 72 const char kNetworkInfoKeyConnectable[] = "connectable"; | 75 const char kNetworkInfoKeyConnectable[] = "connectable"; |
| 73 const char kNetworkInfoKeyConnected[] = "connected"; | 76 const char kNetworkInfoKeyConnected[] = "connected"; |
| 74 const char kNetworkInfoKeyConnecting[] = "connecting"; | 77 const char kNetworkInfoKeyConnecting[] = "connecting"; |
| 75 const char kNetworkInfoKeyIconURL[] = "iconURL"; | 78 const char kNetworkInfoKeyIconURL[] = "iconURL"; |
| 76 const char kNetworkInfoKeyNeedsNewPlan[] = "needs_new_plan"; | 79 const char kNetworkInfoKeyNeedsNewPlan[] = "needs_new_plan"; |
| 77 const char kNetworkInfoKeyNetworkName[] = "networkName"; | 80 const char kNetworkInfoKeyNetworkName[] = "networkName"; |
| 78 const char kNetworkInfoKeyNetworkStatus[] = "networkStatus"; | 81 const char kNetworkInfoKeyNetworkStatus[] = "networkStatus"; |
| 79 const char kNetworkInfoKeyNetworkType[] = "networkType"; | 82 const char kNetworkInfoKeyNetworkType[] = "networkType"; |
| 80 const char kNetworkInfoKeyRemembered[] = "remembered"; | 83 const char kNetworkInfoKeyRemembered[] = "remembered"; |
| 81 const char kNetworkInfoKeyServicePath[] = "servicePath"; | 84 const char kNetworkInfoKeyServicePath[] = "servicePath"; |
| 82 const char kNetworkInfoKeyPolicyManaged[] = "policyManaged"; | 85 const char kNetworkInfoKeyPolicyManaged[] = "policyManaged"; |
| 83 | 86 |
| 87 // These are keys for getting IP information from the web ui. | |
| 88 const char kIpConfigAddress[] = "address"; | |
| 89 const char kIpConfigPrefixLength[] = "prefixLength"; | |
| 90 const char kIpConfigNetmask[] = "netmask"; | |
| 91 const char kIpConfigGateway[] = "gateway"; | |
| 92 const char kIpConfigNameServers[] = "nameServers"; | |
| 93 const char kIpConfigAutoConfig[] = "ipAutoConfig"; | |
| 94 | |
| 95 // These are types of name server selections from the web ui. | |
| 96 const char kNameServerTypeAutomatic[] = "automatic"; | |
| 97 const char kNameServerTypeGoogle[] = "google"; | |
| 98 const char kNameServerTypeUser[] = "user"; | |
| 99 | |
| 100 // These are dictionary names used to send data to the web ui. | |
| 101 const char kDictionaryIpConfig[] = "ipconfig"; | |
| 102 const char kDictionaryStaticIp[] = "staticIP"; | |
| 103 const char kDictionarySavedIp[] = "savedIP"; | |
| 104 | |
| 105 // Google public name servers (DNS). | |
| 106 const char kGoogleNameServers[] = "8.8.4.4,8.8.8.8"; | |
| 107 | |
| 108 // Functions we call in JavaScript. | |
| 109 const char kRefreshNetworkDataFunction[] = | |
| 110 "options.network.NetworkList.refreshNetworkData"; | |
| 111 const char kShowDetailedInfoFunction[] = | |
| 112 "options.internet.DetailsInternetPage.showDetailedInfo"; | |
| 113 const char kUpdateCellularPlansFunction[] = | |
| 114 "options.internet.DetailsInternetPage.updateCellularPlans"; | |
| 115 const char kUpdateSecurityTabFunction[] = | |
| 116 "options.internet.DetailsInternetPage.updateSecurityTab"; | |
| 117 | |
| 118 // Internationalization tags used to lookup strings from JavaScript. | |
| 119 const char kStrAccessLockedMsg[] = "accessLockedMsg"; | |
| 120 const char kStrAccessSecurityTabLink[] = "accessSecurityTabLink"; | |
| 121 const char kStrActivateButton[] = "activateButton"; | |
| 122 const char kStrActivateNetwork[] = "activateNetwork"; | |
| 123 const char kStrActivationState[] = "activationState"; | |
| 124 const char kStrAddConnectionTitle[] = "addConnectionTitle"; | |
| 125 const char kStrAddConnectionVPN[] = "addConnectionVPN"; | |
| 126 const char kStrAddConnectionWifi[] = "addConnectionWifi"; | |
| 127 const char kStrAirplaneModeLabel[] = "airplaneModeLabel"; | |
| 128 const char kStrAirplaneModeTitle[] = "airplaneModeTitle"; | |
| 129 const char kStrAutoconnectCellular[] = "autoconnectCellular"; | |
| 130 const char kStrAutomaticNameServers[] = "automaticNameServers"; | |
| 131 const char kStrBuyplanButton[] = "buyplanButton"; | |
| 132 const char kStrCellularApnCancel[] = "cellularApnCancel"; | |
| 133 const char kStrCellularApnLabel[] = "cellularApnLabel"; | |
| 134 const char kStrCellularApnOther[] = "cellularApnOther"; | |
| 135 const char kStrCellularApnPassword[] = "cellularApnPassword"; | |
| 136 const char kStrCellularApnSet[] = "cellularApnSet"; | |
| 137 const char kStrCellularApnUseDefault[] = "cellularApnUseDefault"; | |
| 138 const char kStrCellularApnUsername[] = "cellularApnUsername"; | |
| 139 const char kStrCellularConnTabLabel[] = "cellularConnTabLabel"; | |
| 140 const char kStrCellularDeviceTabLabel[] = "cellularDeviceTabLabel"; | |
| 141 const char kStrCellularPlanTabLabel[] = "cellularPlanTabLabel"; | |
| 142 const char kStrCellularTitle[] = "cellularTitle"; | |
| 143 const char kStrChangePinButton[] = "changePinButton"; | |
| 144 const char kStrChangeProxyButton[] = "changeProxyButton"; | |
| 145 const char kStrConnectButton[] = "connectButton"; | |
| 146 const char kStrConnectionState[] = "connectionState"; | |
| 147 const char kStrDataRemaining[] = "dataRemaining"; | |
| 148 const char kStrDataRoamingDisableToggleTooltip[] = | |
| 149 "dataRoamingDisableToggleTooltip"; | |
| 150 const char kStrDetailsInternetDismiss[] = "detailsInternetDismiss"; | |
| 151 const char kStrDisableDataRoaming[] = "disableDataRoaming"; | |
| 152 const char kStrDisconnectButton[] = "disconnectButton"; | |
| 153 const char kStrDisconnectNetwork[] = "disconnectNetwork"; | |
| 154 const char kStrEnableDataRoaming[] = "enableDataRoaming"; | |
| 155 const char kStrErrorState[] = "errorState"; | |
| 156 const char kStrEthernetTitle[] = "ethernetTitle"; | |
| 157 const char kStrFirmwareRevision[] = "firmwareRevision"; | |
| 158 const char kStrGoogleNameServers[] = "googleNameServers"; | |
| 159 const char kStrHardwareAddress[] = "hardwareAddress"; | |
| 160 const char kStrHardwareRevision[] = "hardwareRevision"; | |
| 161 const char kStrInetAddress[] = "inetAddress"; | |
| 162 const char kStrInetAutoConnectNetwork[] = "inetAutoConnectNetwork"; | |
| 163 const char kStrInetBssid[] = "inetBssid"; | |
| 164 const char kStrInetConnect[] = "inetConnect"; | |
| 165 const char kStrInetEncryption[] = "inetEncryption"; | |
| 166 const char kStrInetFrequency[] = "inetFrequency"; | |
| 167 const char kStrInetFrequencyFormat[] = "inetFrequencyFormat"; | |
| 168 const char kStrInetGateway[] = "inetGateway"; | |
| 169 const char kStrInetLogin[] = "inetLogin"; | |
| 170 const char kStrInetNameServers[] = "inetNameServers"; | |
| 171 const char kStrInetNetmask[] = "inetNetmask"; | |
| 172 const char kStrInetNetworkShared[] = "inetNetworkShared"; | |
| 173 const char kStrInetPassPrompt[] = "inetPassPrompt"; | |
| 174 const char kStrInetPassProtected[] = "inetPassProtected"; | |
| 175 const char kStrInetPreferredNetwork[] = "inetPreferredNetwork"; | |
| 176 const char kStrInetProviderType[] = "inetProviderType"; | |
| 177 const char kStrInetServerHostname[] = "inetServerHostname"; | |
| 178 const char kStrInetServiceName[] = "inetServiceName"; | |
| 179 const char kStrInetShowPass[] = "inetShowPass"; | |
| 180 const char kStrInetSignalStrength[] = "inetSignalStrength"; | |
| 181 const char kStrInetSignalStrengthFormat[] = "inetSignalStrengthFormat"; | |
| 182 const char kStrInetSsid[] = "inetSsid"; | |
| 183 const char kStrInetSsidPrompt[] = "inetSsidPrompt"; | |
| 184 const char kStrInetStatus[] = "inetStatus"; | |
| 185 const char kStrInetUsername[] = "inetUsername"; | |
| 186 const char kStrIpAutomaticConfiguration[] = "ipAutomaticConfiguration"; | |
| 187 const char kStrJoinOtherNetwork[] = "joinOtherNetwork"; | |
| 188 const char kStrLockSimCard[] = "lockSimCard"; | |
| 189 const char kStrManagedNetwork[] = "managedNetwork"; | |
| 190 const char kStrManufacturer[] = "manufacturer"; | |
| 191 const char kStrModelId[] = "modelId"; | |
| 192 const char kStrNetworkConnected[] = "networkConnected"; | |
| 193 const char kStrNetworkData[] = "networkData"; | |
| 194 const char kStrNetworkDisabled[] = "networkDisabled"; | |
| 195 const char kStrNetworkNotConnected[] = "networkNotConnected"; | |
| 196 const char kStrNetworkOffline[] = "networkOffline"; | |
| 197 const char kStrNetworkOnline[] = "networkOnline"; | |
| 198 const char kStrNetworkOptions[] = "networkOptions"; | |
| 199 const char kStrNetworkTabLabel[] = "networkTabLabel"; | |
| 200 const char kStrNetworkTechnology[] = "networkTechnology"; | |
| 201 const char kStrNoPlansFound[] = "noPlansFound"; | |
| 202 const char kStrOperatorCode[] = "operatorCode"; | |
| 203 const char kStrOperatorName[] = "operatorName"; | |
| 204 const char kStrOwnerUserId[] = "ownerUserId"; | |
| 205 const char kStrPlanExpires[] = "planExpires"; | |
| 206 const char kStrPlanLoading[] = "planLoading"; | |
| 207 const char kStrPlanName[] = "planName"; | |
| 208 const char kStrPreferredNetworks[] = "preferredNetworks"; | |
| 209 const char kStrPreferredNetworksPage[] = "preferredNetworksPage"; | |
| 210 const char kStrPrlVersion[] = "prlVersion"; | |
| 211 const char kStrProxyTabLabel[] = "proxyTabLabel"; | |
| 212 const char kStrPurchaseMore[] = "purchaseMore"; | |
| 213 const char kStrRestrictedPool[] = "restrictedPool"; | |
| 214 const char kStrRoamingState[] = "roamingState"; | |
| 215 const char kStrSecurityTabLabel[] = "securityTabLabel"; | |
| 216 const char kStrServiceName[] = "serviceName"; | |
| 217 const char kStrShowPlanNotifications[] = "showPlanNotifications"; | |
| 218 const char kStrTurnOffCellular[] = "turnOffCellular"; | |
| 219 const char kStrTurnOffWifi[] = "turnOffWifi"; | |
| 220 const char kStrUserNameServer1[] = "userNameServer1"; | |
| 221 const char kStrUserNameServer2[] = "userNameServer2"; | |
| 222 const char kStrUserNameServer3[] = "userNameServer3"; | |
| 223 const char kStrUserNameServer4[] = "userNameServer4"; | |
| 224 const char kStrUserNameServers[] = "userNameServers"; | |
| 225 const char kStrUseSharedProxies[] = "useSharedProxies"; | |
| 226 const char kStrViewAccountButton[] = "viewAccountButton"; | |
| 227 const char kStrVpnTabLabel[] = "vpnTabLabel"; | |
| 228 const char kStrVpnTitle[] = "vpnTitle"; | |
| 229 const char kStrWifiNetworkTabLabel[] = "wifiNetworkTabLabel"; | |
| 230 const char kStrWifiTitle[] = "wifiTitle"; | |
| 231 const char kStrWimaxConnTabLabel[] = "wimaxConnTabLabel"; | |
| 232 const char kStrWimaxTitle[] = "wimaxTitle"; | |
|
stevenjb
2012/08/14 17:50:01
Since these are all just used once in a table, I'm
| |
| 233 | |
| 234 // These are other strings used to communicate with JavaScript. | |
| 235 const char kTagAccessLocked[] = "accessLocked"; | |
| 236 const char kTagActivate[] = "activate"; | |
| 237 const char kTagActivated[] = "activated"; | |
| 238 const char kTagActivationState[] = "activationState"; | |
| 239 const char kTagAirplaneMode[] = "airplaneMode"; | |
| 240 const char kTagApn[] = "apn"; | |
| 241 const char kTagAutoConnect[] = "autoConnect"; | |
| 242 const char kTagBssid[] = "bssid"; | |
| 243 const char kTagBuyDataPlan[] = "buyDataPlan"; | |
| 244 const char kTagCarrierUrl[] = "carrierUrl"; | |
| 245 const char kTagCellularAvailable[] = "cellularAvailable"; | |
| 246 const char kTagCellularBusy[] = "cellularBusy"; | |
| 247 const char kTagCellularEnabled[] = "cellularEnabled"; | |
| 248 const char kTagChangePin[] = "changePin"; | |
| 249 const char kTagConnect[] = "connect"; | |
| 250 const char kTagConnected[] = "connected"; | |
| 251 const char kTagConnecting[] = "connecting"; | |
| 252 const char kTagConnectionState[] = "connectionState"; | |
| 253 const char kTagControlledBy[] = "controlledBy"; | |
| 254 const char kTagDataRemaining[] = "dataRemaining"; | |
| 255 const char kTagDefault[] = "default"; | |
| 256 const char kTagDeviceConnected[] = "deviceConnected"; | |
| 257 const char kTagDisableCellular[] = "disableCellular"; | |
| 258 const char kTagDisableWifi[] = "disableWifi"; | |
| 259 const char kTagDisableWimax[] = "disableWimax"; | |
| 260 const char kTagDisconnect[] = "disconnect"; | |
| 261 const char kTagEnableCellular[] = "enableCellular"; | |
| 262 const char kTagEnableWifi[] = "enableWifi"; | |
| 263 const char kTagEnableWimax[] = "enableWimax"; | |
| 264 const char kTagEncryption[] = "encryption"; | |
| 265 const char kTagErrorState[] = "errorState"; | |
| 266 const char kTagEsn[] = "esn"; | |
| 267 const char kTagFirmwareRevision[] = "firmwareRevision"; | |
| 268 const char kTagForget[] = "forget"; | |
| 269 const char kTagFrequency[] = "frequency"; | |
| 270 const char kTagGsm[] = "gsm"; | |
| 271 const char kTagHardwareAddress[] = "hardwareAddress"; | |
| 272 const char kTagHardwareRevision[] = "hardwareRevision"; | |
| 273 const char kTagIdentity[] = "identity"; | |
| 274 const char kTagImei[] = "imei"; | |
| 275 const char kTagImsi[] = "imsi"; | |
| 276 const char kTagLanguage[] = "language"; | |
| 277 const char kTagLastGoodApn[] = "lastGoodApn"; | |
| 278 const char kTagLocalizedName[] = "localizedName"; | |
| 279 const char kTagManufacturer[] = "manufacturer"; | |
| 280 const char kTagMdn[] = "mdn"; | |
| 281 const char kTagMeid[] = "meid"; | |
| 282 const char kTagMin[] = "min"; | |
| 283 const char kTagModelId[] = "modelId"; | |
| 284 const char kTagName[] = "name"; | |
| 285 const char kTagNameServersGoogle[] = "nameServersGoogle"; | |
| 286 const char kTagNameServerType[] = "nameServerType"; | |
| 287 const char kTagNeedsPlan[] = "needsPlan"; | |
| 288 const char kTagNetworkCommand[] = "networkCommand"; | |
| 289 const char kTagNetworkId[] = "networkId"; | |
| 290 const char kTagNetworkName[] = "networkName"; | |
| 291 const char kTagNetworkTechnology[] = "networkTechnology"; | |
| 292 const char kTagOperatorCode[] = "operatorCode"; | |
| 293 const char kTagOperatorName[] = "operatorName"; | |
| 294 const char kTagOptions[] = "options"; | |
| 295 const char kTagPassword[] = "password"; | |
| 296 const char kTagPlanExpires[] = "planExpires"; | |
| 297 const char kTagPlans[] = "plans"; | |
| 298 const char kTagPlanSummary[] = "planSummary"; | |
| 299 const char kTagPlanType[] = "planType"; | |
| 300 const char kTagPolicy[] = "policy"; | |
| 301 const char kTagPreferred[] = "preferred"; | |
| 302 const char kTagPrlVersion[] = "prlVersion"; | |
| 303 const char kTagProvider_type[] = "provider_type"; | |
| 304 const char kTagProviderApnList[] = "providerApnList"; | |
| 305 const char kTagRecommended[] = "recommended"; | |
| 306 const char kTagRefreshCellularPlan[] = "refreshCellularPlan"; | |
| 307 const char kTagRefreshNetworks[] = "refreshNetworks"; | |
| 308 const char kTagRemembered[] = "remembered"; | |
| 309 const char kTagRememberedList[] = "rememberedList"; | |
| 310 const char kTagRestrictedPool[] = "restrictedPool"; | |
| 311 const char kTagRoamingState[] = "roamingState"; | |
| 312 const char kTagServer_hostname[] = "server_hostname"; | |
| 313 const char kTagService_name[] = "service_name"; | |
| 314 const char kTagServiceName[] = "serviceName"; | |
| 315 const char kTagServicePath[] = "servicePath"; | |
| 316 const char kTagSetApn[] = "setApn"; | |
| 317 const char kTagSetAutoConnect[] = "setAutoConnect"; | |
| 318 const char kTagSetIPConfig[] = "setIPConfig"; | |
| 319 const char kTagSetPreferNetwork[] = "setPreferNetwork"; | |
| 320 const char kTagSetSimCardLock[] = "setSimCardLock"; | |
| 321 const char kTagShared[] = "shared"; | |
| 322 const char kTagShowActivateButton[] = "showActivateButton"; | |
| 323 const char kTagShowBuyButton[] = "showBuyButton"; | |
| 324 const char kTagShowMorePlanInfo[] = "showMorePlanInfo"; | |
| 325 const char kTagShowPreferred[] = "showPreferred"; | |
| 326 const char kTagShowProxy[] = "showProxy"; | |
| 327 const char kTagShowStaticIPConfig[] = "showStaticIPConfig"; | |
| 328 const char kTagShowViewAccountButton[] = "showViewAccountButton"; | |
| 329 const char kTagSimCardLockEnabled[] = "simCardLockEnabled"; | |
| 330 const char kTagSsid[] = "ssid"; | |
| 331 const char kTagStrength[] = "strength"; | |
| 332 const char kTagSupportUrl[] = "supportUrl"; | |
| 333 const char kTagToggleAirplaneMode[] = "toggleAirplaneMode"; | |
| 334 const char kTagTrue[] = "true"; | |
| 335 const char kTagType[] = "type"; | |
| 336 const char kTagUsername[] = "username"; | |
| 337 const char kTagValue[] = "value"; | |
| 338 const char kTagVpnList[] = "vpnList"; | |
| 339 const char kTagWarning[] = "warning"; | |
| 340 const char kTagWifiAvailable[] = "wifiAvailable"; | |
| 341 const char kTagWifiBusy[] = "wifiBusy"; | |
| 342 const char kTagWifiEnabled[] = "wifiEnabled"; | |
| 343 const char kTagWimaxAvailable[] = "wimaxAvailable"; | |
| 344 const char kTagWimaxBusy[] = "wimaxBusy"; | |
| 345 const char kTagWimaxEnabled[] = "wimaxEnabled"; | |
| 346 const char kTagWiredList[] = "wiredList"; | |
| 347 const char kTagWirelessList[] = "wirelessList"; | |
| 348 | |
| 84 // A helper class for building network information dictionaries to be sent to | 349 // A helper class for building network information dictionaries to be sent to |
| 85 // the webui code. | 350 // the webui code. |
| 86 class NetworkInfoDictionary { | 351 class NetworkInfoDictionary { |
| 87 public: | 352 public: |
| 88 // Initializes the dictionary with default values. | 353 // Initializes the dictionary with default values. |
| 89 explicit NetworkInfoDictionary(float icon_scale); | 354 explicit NetworkInfoDictionary(float icon_scale); |
| 90 | 355 |
| 91 // Copies in service path, connect{ing|ed|able} flags and connection type from | 356 // Copies in service path, connect{ing|ed|able} flags and connection type from |
| 92 // the provided network object. Also chooses an appropriate icon based on the | 357 // the provided network object. Also chooses an appropriate icon based on the |
| 93 // network type. | 358 // network type. |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 253 network_info->SetString(kNetworkInfoKeyNetworkName, name_); | 518 network_info->SetString(kNetworkInfoKeyNetworkName, name_); |
| 254 network_info->SetString(kNetworkInfoKeyNetworkStatus, status); | 519 network_info->SetString(kNetworkInfoKeyNetworkStatus, status); |
| 255 network_info->SetInteger(kNetworkInfoKeyNetworkType, | 520 network_info->SetInteger(kNetworkInfoKeyNetworkType, |
| 256 static_cast<int>(connection_type_)); | 521 static_cast<int>(connection_type_)); |
| 257 network_info->SetBoolean(kNetworkInfoKeyRemembered, remembered_); | 522 network_info->SetBoolean(kNetworkInfoKeyRemembered, remembered_); |
| 258 network_info->SetString(kNetworkInfoKeyServicePath, service_path_); | 523 network_info->SetString(kNetworkInfoKeyServicePath, service_path_); |
| 259 network_info->SetBoolean(kNetworkInfoKeyPolicyManaged, policy_managed_); | 524 network_info->SetBoolean(kNetworkInfoKeyPolicyManaged, policy_managed_); |
| 260 return network_info.release(); | 525 return network_info.release(); |
| 261 } | 526 } |
| 262 | 527 |
| 528 // Pulls IP information out of a shill service properties dictionary. If | |
| 529 // |static_ip| is true, then it fetches "StaticIP.*" properties. If not, then it | |
| 530 // fetches "SavedIP.*" properties. Caller must take ownership of returned | |
| 531 // dictionary. If non-NULL, |ip_parameters_set| returns a count of the number | |
| 532 // of IP routing parameters that get set. | |
| 533 DictionaryValue* BuildIPInfoDictionary(const DictionaryValue& shill_properties, | |
| 534 bool static_ip, | |
| 535 int* routing_parameters_set) { | |
| 536 std::string address_key; | |
| 537 std::string prefix_len_key; | |
| 538 std::string gateway_key; | |
| 539 std::string name_servers_key; | |
| 540 if (static_ip) { | |
| 541 address_key = shill::kStaticIPAddressProperty; | |
| 542 prefix_len_key = shill::kStaticIPPrefixlenProperty; | |
| 543 gateway_key = shill::kStaticIPGatewayProperty; | |
| 544 name_servers_key = shill::kStaticIPNameServersProperty; | |
| 545 } else { | |
| 546 address_key = shill::kSavedIPAddressProperty; | |
| 547 prefix_len_key = shill::kSavedIPPrefixlenProperty; | |
| 548 gateway_key = shill::kSavedIPGatewayProperty; | |
| 549 name_servers_key = shill::kSavedIPNameServersProperty; | |
| 550 } | |
| 551 | |
| 552 scoped_ptr<DictionaryValue> ip_info_dict(new DictionaryValue); | |
| 553 std::string address; | |
| 554 int routing_parameters = 0; | |
| 555 if (shill_properties.GetStringWithoutPathExpansion(address_key, &address)) { | |
| 556 ip_info_dict->SetString(kIpConfigAddress, address); | |
| 557 VLOG(2) << "Found " << address_key << ": " << address; | |
| 558 routing_parameters++; | |
| 559 } | |
| 560 int prefix_len = -1; | |
| 561 if (shill_properties.GetIntegerWithoutPathExpansion( | |
| 562 prefix_len_key, &prefix_len)) { | |
| 563 ip_info_dict->SetInteger(kIpConfigPrefixLength, prefix_len); | |
| 564 ip_info_dict->SetString(kIpConfigNetmask, | |
| 565 chromeos::CrosPrefixLengthToNetmask(prefix_len)); | |
| 566 VLOG(2) << "Found " << prefix_len_key << ": " | |
| 567 << prefix_len | |
| 568 << " (" << chromeos::CrosPrefixLengthToNetmask(prefix_len) << ")"; | |
| 569 routing_parameters++; | |
| 570 } | |
| 571 std::string gateway; | |
| 572 if (shill_properties.GetStringWithoutPathExpansion(gateway_key, &gateway)) { | |
| 573 ip_info_dict->SetString(kIpConfigGateway, gateway); | |
| 574 VLOG(2) << "Found " << gateway_key << ": " << gateway; | |
| 575 routing_parameters++; | |
| 576 } | |
| 577 if (routing_parameters_set) | |
| 578 *routing_parameters_set = routing_parameters; | |
| 579 | |
| 580 std::string name_servers; | |
| 581 if (shill_properties.GetStringWithoutPathExpansion( | |
| 582 name_servers_key, &name_servers)) { | |
| 583 ip_info_dict->SetString(kIpConfigNameServers, name_servers); | |
| 584 VLOG(2) << "Found " << name_servers_key << ": " << name_servers; | |
| 585 } | |
| 586 | |
| 587 return ip_info_dict.release(); | |
| 588 } | |
| 589 | |
| 263 } // namespace | 590 } // namespace |
| 264 | 591 |
| 265 namespace options2 { | 592 namespace options2 { |
| 266 | 593 |
| 267 InternetOptionsHandler::InternetOptionsHandler() | 594 InternetOptionsHandler::InternetOptionsHandler() |
| 268 : ALLOW_THIS_IN_INITIALIZER_LIST(weak_factory_(this)) { | 595 : ALLOW_THIS_IN_INITIALIZER_LIST(weak_factory_(this)) { |
| 269 registrar_.Add(this, chrome::NOTIFICATION_REQUIRE_PIN_SETTING_CHANGE_ENDED, | 596 registrar_.Add(this, chrome::NOTIFICATION_REQUIRE_PIN_SETTING_CHANGE_ENDED, |
| 270 content::NotificationService::AllSources()); | 597 content::NotificationService::AllSources()); |
| 271 registrar_.Add(this, chrome::NOTIFICATION_ENTER_PIN_ENDED, | 598 registrar_.Add(this, chrome::NOTIFICATION_ENTER_PIN_ENDED, |
| 272 content::NotificationService::AllSources()); | 599 content::NotificationService::AllSources()); |
| (...skipping 14 matching lines...) Expand all Loading... | |
| 287 } | 614 } |
| 288 | 615 |
| 289 void InternetOptionsHandler::GetLocalizedValues( | 616 void InternetOptionsHandler::GetLocalizedValues( |
| 290 DictionaryValue* localized_strings) { | 617 DictionaryValue* localized_strings) { |
| 291 DCHECK(localized_strings); | 618 DCHECK(localized_strings); |
| 292 | 619 |
| 293 static OptionsStringResource resources[] = { | 620 static OptionsStringResource resources[] = { |
| 294 | 621 |
| 295 // Main settings page. | 622 // Main settings page. |
| 296 | 623 |
| 297 { "ethernetTitle", IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET }, | 624 { kStrEthernetTitle, IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET }, |
| 298 { "wifiTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_WIFI_NETWORK }, | 625 { kStrWifiTitle, IDS_OPTIONS_SETTINGS_SECTION_TITLE_WIFI_NETWORK }, |
| 299 // TODO(zelidrag): Change details title to Wimax once we get strings. | 626 // TODO(zelidrag): Change details title to Wimax once we get strings. |
| 300 { "wimaxTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_CELLULAR_NETWORK }, | 627 { kStrWimaxTitle, IDS_OPTIONS_SETTINGS_SECTION_TITLE_CELLULAR_NETWORK }, |
| 301 { "cellularTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_CELLULAR_NETWORK }, | 628 { kStrCellularTitle, IDS_OPTIONS_SETTINGS_SECTION_TITLE_CELLULAR_NETWORK }, |
| 302 { "vpnTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_PRIVATE_NETWORK }, | 629 { kStrVpnTitle, IDS_OPTIONS_SETTINGS_SECTION_TITLE_PRIVATE_NETWORK }, |
| 303 { "airplaneModeTitle", IDS_OPTIONS_SETTINGS_SECTION_TITLE_AIRPLANE_MODE }, | 630 { kStrAirplaneModeTitle, IDS_OPTIONS_SETTINGS_SECTION_TITLE_AIRPLANE_MODE }, |
| 304 { "airplaneModeLabel", IDS_OPTIONS_SETTINGS_NETWORK_AIRPLANE_MODE_LABEL }, | 631 { kStrAirplaneModeLabel, IDS_OPTIONS_SETTINGS_NETWORK_AIRPLANE_MODE_LABEL }, |
| 305 { "networkNotConnected", IDS_OPTIONS_SETTINGS_NETWORK_NOT_CONNECTED }, | 632 { kStrNetworkNotConnected, IDS_OPTIONS_SETTINGS_NETWORK_NOT_CONNECTED }, |
| 306 { "networkConnected", IDS_CHROMEOS_NETWORK_STATE_READY }, | 633 { kStrNetworkConnected, IDS_CHROMEOS_NETWORK_STATE_READY }, |
| 307 { "joinOtherNetwork", IDS_OPTIONS_SETTINGS_NETWORK_OTHER }, | 634 { kStrJoinOtherNetwork, IDS_OPTIONS_SETTINGS_NETWORK_OTHER }, |
| 308 { "networkOffline", IDS_OPTIONS_SETTINGS_NETWORK_OFFLINE }, | 635 { kStrNetworkOffline, IDS_OPTIONS_SETTINGS_NETWORK_OFFLINE }, |
| 309 { "networkDisabled", IDS_OPTIONS_SETTINGS_NETWORK_DISABLED }, | 636 { kStrNetworkDisabled, IDS_OPTIONS_SETTINGS_NETWORK_DISABLED }, |
| 310 { "networkOnline", IDS_OPTIONS_SETTINGS_NETWORK_ONLINE }, | 637 { kStrNetworkOnline, IDS_OPTIONS_SETTINGS_NETWORK_ONLINE }, |
| 311 { "networkOptions", IDS_OPTIONS_SETTINGS_NETWORK_OPTIONS }, | 638 { kStrNetworkOptions, IDS_OPTIONS_SETTINGS_NETWORK_OPTIONS }, |
| 312 { "turnOffWifi", IDS_OPTIONS_SETTINGS_NETWORK_DISABLE_WIFI }, | 639 { kStrTurnOffWifi, IDS_OPTIONS_SETTINGS_NETWORK_DISABLE_WIFI }, |
| 313 { "turnOffCellular", IDS_OPTIONS_SETTINGS_NETWORK_DISABLE_CELLULAR }, | 640 { kStrTurnOffCellular, IDS_OPTIONS_SETTINGS_NETWORK_DISABLE_CELLULAR }, |
| 314 { "disconnectNetwork", IDS_OPTIONS_SETTINGS_DISCONNECT }, | 641 { kStrDisconnectNetwork, IDS_OPTIONS_SETTINGS_DISCONNECT }, |
| 315 { "preferredNetworks", IDS_OPTIONS_SETTINGS_PREFERRED_NETWORKS_LABEL }, | 642 { kStrPreferredNetworks, IDS_OPTIONS_SETTINGS_PREFERRED_NETWORKS_LABEL }, |
| 316 { "preferredNetworksPage", IDS_OPTIONS_SETTINGS_PREFERRED_NETWORKS_TITLE }, | 643 { kStrPreferredNetworksPage, |
| 317 { "useSharedProxies", IDS_OPTIONS_SETTINGS_USE_SHARED_PROXIES }, | 644 IDS_OPTIONS_SETTINGS_PREFERRED_NETWORKS_TITLE }, |
| 318 { "addConnectionTitle", | 645 { kStrUseSharedProxies, IDS_OPTIONS_SETTINGS_USE_SHARED_PROXIES }, |
| 646 { kStrAddConnectionTitle, | |
| 319 IDS_OPTIONS_SETTINGS_SECTION_TITLE_ADD_CONNECTION }, | 647 IDS_OPTIONS_SETTINGS_SECTION_TITLE_ADD_CONNECTION }, |
| 320 { "addConnectionWifi", IDS_OPTIONS_SETTINGS_ADD_CONNECTION_WIFI }, | 648 { kStrAddConnectionWifi, IDS_OPTIONS_SETTINGS_ADD_CONNECTION_WIFI }, |
| 321 { "addConnectionVPN", IDS_STATUSBAR_NETWORK_ADD_VPN }, | 649 { kStrAddConnectionVPN, IDS_STATUSBAR_NETWORK_ADD_VPN }, |
| 322 { "enableDataRoaming", IDS_OPTIONS_SETTINGS_ENABLE_DATA_ROAMING }, | 650 { kStrEnableDataRoaming, IDS_OPTIONS_SETTINGS_ENABLE_DATA_ROAMING }, |
| 323 { "disableDataRoaming", IDS_OPTIONS_SETTINGS_DISABLE_DATA_ROAMING }, | 651 { kStrDisableDataRoaming, IDS_OPTIONS_SETTINGS_DISABLE_DATA_ROAMING }, |
| 324 { "dataRoamingDisableToggleTooltip", | 652 { kStrDataRoamingDisableToggleTooltip, |
| 325 IDS_OPTIONS_SETTINGS_TOGGLE_DATA_ROAMING_RESTRICTION }, | 653 IDS_OPTIONS_SETTINGS_TOGGLE_DATA_ROAMING_RESTRICTION }, |
| 326 { "activateNetwork", IDS_STATUSBAR_NETWORK_DEVICE_ACTIVATE }, | 654 { kStrActivateNetwork, IDS_STATUSBAR_NETWORK_DEVICE_ACTIVATE }, |
| 327 | 655 |
| 328 // Internet details dialog. | 656 // Internet details dialog. |
| 329 | 657 |
| 330 { "changeProxyButton", | 658 { kStrChangeProxyButton, |
| 331 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_CHANGE_PROXY_BUTTON }, | 659 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_CHANGE_PROXY_BUTTON }, |
| 332 { "managedNetwork", IDS_OPTIONS_SETTINGS_MANAGED_NETWORK }, | 660 { kStrManagedNetwork, IDS_OPTIONS_SETTINGS_MANAGED_NETWORK }, |
| 333 { "wifiNetworkTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION }, | 661 { kStrWifiNetworkTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION }, |
| 334 { "vpnTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_VPN }, | 662 { kStrVpnTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_VPN }, |
| 335 { "cellularPlanTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_PLAN }, | 663 { kStrCellularPlanTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_PLAN }, |
| 336 { "cellularConnTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION }, | 664 { kStrCellularConnTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION }, |
| 337 { "cellularDeviceTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_DEVICE }, | 665 { kStrCellularDeviceTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_DEVICE }, |
| 338 { "networkTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_NETWORK }, | 666 { kStrNetworkTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_NETWORK }, |
| 339 { "securityTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_SECURITY }, | 667 { kStrSecurityTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_SECURITY }, |
| 340 { "proxyTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_PROXY }, | 668 { kStrProxyTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_PROXY }, |
| 341 { "useDHCP", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_USE_DHCP }, | 669 { kStrConnectionState, IDS_OPTIONS_SETTINGS_INTERNET_CONNECTION_STATE }, |
| 342 { "useStaticIP", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_USE_STATIC_IP }, | 670 { kStrInetAddress, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_ADDRESS }, |
| 343 { "connectionState", IDS_OPTIONS_SETTINGS_INTERNET_CONNECTION_STATE }, | 671 { kStrInetNetmask, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SUBNETMASK }, |
| 344 { "inetAddress", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_ADDRESS }, | 672 { kStrInetGateway, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_GATEWAY }, |
| 345 { "inetSubnetAddress", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SUBNETMASK }, | 673 { kStrInetNameServers, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_DNSSERVER }, |
| 346 { "inetGateway", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_GATEWAY }, | 674 { kStrIpAutomaticConfiguration, |
| 347 { "inetDns", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_DNSSERVER }, | 675 IDS_OPTIONS_SETTINGS_INTERNET_IP_AUTOMATIC_CONFIGURATION }, |
| 348 { "hardwareAddress", | 676 { kStrAutomaticNameServers, |
| 677 IDS_OPTIONS_SETTINGS_INTERNET_AUTOMATIC_NAME_SERVERS }, | |
| 678 { kStrUserNameServer1, IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_1 }, | |
| 679 { kStrUserNameServer2, IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_2 }, | |
| 680 { kStrUserNameServer3, IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_3 }, | |
| 681 { kStrUserNameServer4, IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVER_4 }, | |
| 682 { kStrGoogleNameServers, | |
| 683 IDS_OPTIONS_SETTINGS_INTERNET_GOOGLE_NAME_SERVERS }, | |
| 684 { kStrUserNameServers, IDS_OPTIONS_SETTINGS_INTERNET_USER_NAME_SERVERS }, | |
| 685 { kStrHardwareAddress, | |
| 349 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_HARDWARE_ADDRESS }, | 686 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_HARDWARE_ADDRESS }, |
| 350 { "detailsInternetDismiss", IDS_CLOSE }, | 687 { kStrDetailsInternetDismiss, IDS_CLOSE }, |
| 351 { "activateButton", IDS_OPTIONS_SETTINGS_ACTIVATE }, | 688 { kStrActivateButton, IDS_OPTIONS_SETTINGS_ACTIVATE }, |
| 352 { "buyplanButton", IDS_OPTIONS_SETTINGS_BUY_PLAN }, | 689 { kStrBuyplanButton, IDS_OPTIONS_SETTINGS_BUY_PLAN }, |
| 353 { "connectButton", IDS_OPTIONS_SETTINGS_CONNECT }, | 690 { kStrConnectButton, IDS_OPTIONS_SETTINGS_CONNECT }, |
| 354 { "disconnectButton", IDS_OPTIONS_SETTINGS_DISCONNECT }, | 691 { kStrDisconnectButton, IDS_OPTIONS_SETTINGS_DISCONNECT }, |
| 355 { "viewAccountButton", IDS_STATUSBAR_NETWORK_VIEW_ACCOUNT }, | 692 { kStrViewAccountButton, IDS_STATUSBAR_NETWORK_VIEW_ACCOUNT }, |
| 356 | 693 |
| 357 // TODO(zelidrag): Change details title to Wimax once we get strings. | 694 // TODO(zelidrag): Change details title to Wimax once we get strings. |
| 358 { "wimaxConnTabLabel", IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION }, | 695 { kStrWimaxConnTabLabel, IDS_OPTIONS_SETTINGS_INTERNET_TAB_CONNECTION }, |
| 359 | 696 |
| 360 // Wifi Tab. | 697 // Wifi Tab. |
| 361 | 698 |
| 362 { "accessLockedMsg", IDS_STATUSBAR_NETWORK_LOCKED }, | 699 { kStrAccessLockedMsg, IDS_STATUSBAR_NETWORK_LOCKED }, |
| 363 { "inetSsid", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_ID }, | 700 { kStrInetSsid, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_ID }, |
| 364 { "inetBssid", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_BSSID }, | 701 { kStrInetBssid, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_BSSID }, |
| 365 { "inetEncryption", | 702 { kStrInetEncryption, |
| 366 IDS_OPTIONS_SETTIGNS_INTERNET_OPTIONS_NETWORK_ENCRYPTION }, | 703 IDS_OPTIONS_SETTIGNS_INTERNET_OPTIONS_NETWORK_ENCRYPTION }, |
| 367 { "inetFrequency", | 704 { kStrInetFrequency, |
| 368 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_FREQUENCY }, | 705 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_FREQUENCY }, |
| 369 { "inetFrequencyFormat", | 706 { kStrInetFrequencyFormat, |
| 370 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_FREQUENCY_MHZ }, | 707 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_FREQUENCY_MHZ }, |
| 371 { "inetSignalStrength", | 708 { kStrInetSignalStrength, |
| 372 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_STRENGTH }, | 709 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_STRENGTH }, |
| 373 { "inetSignalStrengthFormat", | 710 { kStrInetSignalStrengthFormat, |
| 374 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_STRENGTH_PERCENTAGE }, | 711 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_STRENGTH_PERCENTAGE }, |
| 375 { "inetPassProtected", | 712 { kStrInetPassProtected, |
| 376 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NET_PROTECTED }, | 713 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NET_PROTECTED }, |
| 377 { "inetNetworkShared", | 714 { kStrInetNetworkShared, |
| 378 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_SHARED }, | 715 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NETWORK_SHARED }, |
| 379 { "inetPreferredNetwork", | 716 { kStrInetPreferredNetwork, |
| 380 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_PREFER_NETWORK }, | 717 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_PREFER_NETWORK }, |
| 381 { "inetAutoConnectNetwork", | 718 { kStrInetAutoConnectNetwork, |
| 382 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_AUTO_CONNECT }, | 719 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_AUTO_CONNECT }, |
| 383 { "inetLogin", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_LOGIN }, | 720 { kStrInetLogin, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_LOGIN }, |
| 384 { "inetShowPass", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SHOWPASSWORD }, | 721 { kStrInetShowPass, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SHOWPASSWORD }, |
| 385 { "inetPassPrompt", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_PASSWORD }, | 722 { kStrInetPassPrompt, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_PASSWORD }, |
| 386 { "inetSsidPrompt", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SSID }, | 723 { kStrInetSsidPrompt, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SSID }, |
| 387 { "inetStatus", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_STATUS_TITLE }, | 724 { kStrInetStatus, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_STATUS_TITLE }, |
| 388 { "inetConnect", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_CONNECT_TITLE }, | 725 { kStrInetConnect, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_CONNECT_TITLE }, |
| 389 | 726 |
| 390 // VPN Tab. | 727 // VPN Tab. |
| 391 | 728 |
| 392 { "inetServiceName", | 729 { kStrInetServiceName, |
| 393 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_SERVICE_NAME }, | 730 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_SERVICE_NAME }, |
| 394 { "inetServerHostname", | 731 { kStrInetServerHostname, |
| 395 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_SERVER_HOSTNAME }, | 732 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_SERVER_HOSTNAME }, |
| 396 { "inetProviderType", | 733 { kStrInetProviderType, |
| 397 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_PROVIDER_TYPE }, | 734 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_PROVIDER_TYPE }, |
| 398 { "inetUsername", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_USERNAME }, | 735 { kStrInetUsername, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_VPN_USERNAME }, |
| 399 | 736 |
| 400 // Cellular Tab. | 737 // Cellular Tab. |
| 401 | 738 |
| 402 { "serviceName", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_SERVICE_NAME }, | 739 { kStrServiceName, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_SERVICE_NAME }, |
| 403 { "networkTechnology", | 740 { kStrNetworkTechnology, |
| 404 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_NETWORK_TECHNOLOGY }, | 741 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_NETWORK_TECHNOLOGY }, |
| 405 { "operatorName", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_OPERATOR }, | 742 { kStrOperatorName, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_OPERATOR }, |
| 406 { "operatorCode", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_OPERATOR_CODE }, | 743 { kStrOperatorCode, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_OPERATOR_CODE }, |
| 407 { "activationState", | 744 { kStrActivationState, |
| 408 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ACTIVATION_STATE }, | 745 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ACTIVATION_STATE }, |
| 409 { "roamingState", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ROAMING_STATE }, | 746 { kStrRoamingState, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ROAMING_STATE }, |
| 410 { "restrictedPool", | 747 { kStrRestrictedPool, |
| 411 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_RESTRICTED_POOL }, | 748 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_RESTRICTED_POOL }, |
| 412 { "errorState", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ERROR_STATE }, | 749 { kStrErrorState, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ERROR_STATE }, |
| 413 { "manufacturer", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_MANUFACTURER }, | 750 { kStrManufacturer, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_MANUFACTURER }, |
| 414 { "modelId", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_MODEL_ID }, | 751 { kStrModelId, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_MODEL_ID }, |
| 415 { "firmwareRevision", | 752 { kStrFirmwareRevision, |
| 416 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_FIRMWARE_REVISION }, | 753 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_FIRMWARE_REVISION }, |
| 417 { "hardwareRevision", | 754 { kStrHardwareRevision, |
| 418 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_HARDWARE_REVISION }, | 755 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_HARDWARE_REVISION }, |
| 419 { "prlVersion", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_PRL_VERSION }, | 756 { kStrPrlVersion, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_PRL_VERSION }, |
| 420 { "cellularApnLabel", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN }, | 757 { kStrCellularApnLabel, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN }, |
| 421 { "cellularApnOther", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_OTHER }, | 758 { kStrCellularApnOther, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_OTHER }, |
| 422 { "cellularApnUsername", | 759 { kStrCellularApnUsername, |
| 423 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_USERNAME }, | 760 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_USERNAME }, |
| 424 { "cellularApnPassword", | 761 { kStrCellularApnPassword, |
| 425 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_PASSWORD }, | 762 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_PASSWORD }, |
| 426 { "cellularApnUseDefault", | 763 { kStrCellularApnUseDefault, |
| 427 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_CLEAR }, | 764 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_CLEAR }, |
| 428 { "cellularApnSet", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_SET }, | 765 { kStrCellularApnSet, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_APN_SET }, |
| 429 { "cellularApnCancel", IDS_CANCEL }, | 766 { kStrCellularApnCancel, IDS_CANCEL }, |
| 430 | 767 |
| 431 // Security Tab. | 768 // Security Tab. |
| 432 | 769 |
| 433 { "accessSecurityTabLink", | 770 { kStrAccessSecurityTabLink, |
| 434 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ACCESS_SECURITY_TAB }, | 771 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_ACCESS_SECURITY_TAB }, |
| 435 { "lockSimCard", IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_LOCK_SIM_CARD }, | 772 { kStrLockSimCard, IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_LOCK_SIM_CARD }, |
| 436 { "changePinButton", | 773 { kStrChangePinButton, |
| 437 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_CHANGE_PIN_BUTTON }, | 774 IDS_OPTIONS_SETTINGS_INTERNET_CELLULAR_CHANGE_PIN_BUTTON }, |
| 438 | 775 |
| 439 // Plan Tab. | 776 // Plan Tab. |
| 440 | 777 |
| 441 { "planName", IDS_OPTIONS_SETTINGS_INTERNET_CELL_PLAN_NAME }, | 778 { kStrPlanName, IDS_OPTIONS_SETTINGS_INTERNET_CELL_PLAN_NAME }, |
| 442 { "planLoading", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_LOADING_PLAN }, | 779 { kStrPlanLoading, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_LOADING_PLAN }, |
| 443 { "noPlansFound", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NO_PLANS_FOUND }, | 780 { kStrNoPlansFound, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_NO_PLANS_FOUND }, |
| 444 { "purchaseMore", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_PURCHASE_MORE }, | 781 { kStrPurchaseMore, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_PURCHASE_MORE }, |
| 445 { "dataRemaining", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_DATA_REMAINING }, | 782 { kStrDataRemaining, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_DATA_REMAINING }, |
| 446 { "planExpires", IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_EXPIRES }, | 783 { kStrPlanExpires, IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_EXPIRES }, |
| 447 { "showPlanNotifications", | 784 { kStrShowPlanNotifications, |
| 448 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SHOW_MOBILE_NOTIFICATION }, | 785 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_SHOW_MOBILE_NOTIFICATION }, |
| 449 { "autoconnectCellular", | 786 { kStrAutoconnectCellular, |
| 450 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_AUTO_CONNECT } | 787 IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_AUTO_CONNECT } |
| 451 }; | 788 }; |
| 452 | 789 |
| 453 RegisterStrings(localized_strings, resources, arraysize(resources)); | 790 RegisterStrings(localized_strings, resources, arraysize(resources)); |
| 454 | 791 |
| 455 std::string owner; | 792 std::string owner; |
| 456 chromeos::CrosSettings::Get()->GetString(chromeos::kDeviceOwner, &owner); | 793 chromeos::CrosSettings::Get()->GetString(chromeos::kDeviceOwner, &owner); |
| 457 localized_strings->SetString("ownerUserId", UTF8ToUTF16(owner)); | 794 localized_strings->SetString(kStrOwnerUserId, UTF8ToUTF16(owner)); |
| 458 | 795 |
| 459 DictionaryValue* network_dictionary = new DictionaryValue; | 796 DictionaryValue* network_dictionary = new DictionaryValue; |
| 460 FillNetworkInfo(network_dictionary); | 797 FillNetworkInfo(network_dictionary); |
| 461 localized_strings->Set("networkData", network_dictionary); | 798 localized_strings->Set(kStrNetworkData, network_dictionary); |
| 462 } | 799 } |
| 463 | 800 |
| 464 void InternetOptionsHandler::InitializePage() { | 801 void InternetOptionsHandler::InitializePage() { |
| 465 cros_->RequestNetworkScan(); | 802 cros_->RequestNetworkScan(); |
| 466 } | 803 } |
| 467 | 804 |
| 468 void InternetOptionsHandler::RegisterMessages() { | 805 void InternetOptionsHandler::RegisterMessages() { |
| 469 // Setup handlers specific to this panel. | 806 // Setup handlers specific to this panel. |
| 470 web_ui()->RegisterMessageCallback("networkCommand", | 807 web_ui()->RegisterMessageCallback(kTagNetworkCommand, |
| 471 base::Bind(&InternetOptionsHandler::NetworkCommandCallback, | 808 base::Bind(&InternetOptionsHandler::NetworkCommandCallback, |
| 472 base::Unretained(this))); | 809 base::Unretained(this))); |
| 473 web_ui()->RegisterMessageCallback("refreshNetworks", | 810 web_ui()->RegisterMessageCallback(kTagRefreshNetworks, |
| 474 base::Bind(&InternetOptionsHandler::RefreshNetworksCallback, | 811 base::Bind(&InternetOptionsHandler::RefreshNetworksCallback, |
| 475 base::Unretained(this))); | 812 base::Unretained(this))); |
| 476 web_ui()->RegisterMessageCallback("refreshCellularPlan", | 813 web_ui()->RegisterMessageCallback(kTagRefreshCellularPlan, |
| 477 base::Bind(&InternetOptionsHandler::RefreshCellularPlanCallback, | 814 base::Bind(&InternetOptionsHandler::RefreshCellularPlanCallback, |
| 478 base::Unretained(this))); | 815 base::Unretained(this))); |
| 479 web_ui()->RegisterMessageCallback("setPreferNetwork", | 816 web_ui()->RegisterMessageCallback(kTagSetPreferNetwork, |
| 480 base::Bind(&InternetOptionsHandler::SetPreferNetworkCallback, | 817 base::Bind(&InternetOptionsHandler::SetPreferNetworkCallback, |
| 481 base::Unretained(this))); | 818 base::Unretained(this))); |
| 482 web_ui()->RegisterMessageCallback("setAutoConnect", | 819 web_ui()->RegisterMessageCallback(kTagSetAutoConnect, |
| 483 base::Bind(&InternetOptionsHandler::SetAutoConnectCallback, | 820 base::Bind(&InternetOptionsHandler::SetAutoConnectCallback, |
| 484 base::Unretained(this))); | 821 base::Unretained(this))); |
| 485 web_ui()->RegisterMessageCallback("setIPConfig", | 822 web_ui()->RegisterMessageCallback(kTagSetIPConfig, |
| 486 base::Bind(&InternetOptionsHandler::SetIPConfigCallback, | 823 base::Bind(&InternetOptionsHandler::SetIPConfigCallback, |
| 487 base::Unretained(this))); | 824 base::Unretained(this))); |
| 488 web_ui()->RegisterMessageCallback("enableWifi", | 825 web_ui()->RegisterMessageCallback(kTagEnableWifi, |
| 489 base::Bind(&InternetOptionsHandler::EnableWifiCallback, | 826 base::Bind(&InternetOptionsHandler::EnableWifiCallback, |
| 490 base::Unretained(this))); | 827 base::Unretained(this))); |
| 491 web_ui()->RegisterMessageCallback("disableWifi", | 828 web_ui()->RegisterMessageCallback(kTagDisableWifi, |
| 492 base::Bind(&InternetOptionsHandler::DisableWifiCallback, | 829 base::Bind(&InternetOptionsHandler::DisableWifiCallback, |
| 493 base::Unretained(this))); | 830 base::Unretained(this))); |
| 494 web_ui()->RegisterMessageCallback("enableCellular", | 831 web_ui()->RegisterMessageCallback(kTagEnableCellular, |
| 495 base::Bind(&InternetOptionsHandler::EnableCellularCallback, | 832 base::Bind(&InternetOptionsHandler::EnableCellularCallback, |
| 496 base::Unretained(this))); | 833 base::Unretained(this))); |
| 497 web_ui()->RegisterMessageCallback("disableCellular", | 834 web_ui()->RegisterMessageCallback(kTagDisableCellular, |
| 498 base::Bind(&InternetOptionsHandler::DisableCellularCallback, | 835 base::Bind(&InternetOptionsHandler::DisableCellularCallback, |
| 499 base::Unretained(this))); | 836 base::Unretained(this))); |
| 500 web_ui()->RegisterMessageCallback("enableWimax", | 837 web_ui()->RegisterMessageCallback(kTagEnableWimax, |
| 501 base::Bind(&InternetOptionsHandler::EnableWimaxCallback, | 838 base::Bind(&InternetOptionsHandler::EnableWimaxCallback, |
| 502 base::Unretained(this))); | 839 base::Unretained(this))); |
| 503 web_ui()->RegisterMessageCallback("disableWimax", | 840 web_ui()->RegisterMessageCallback(kTagDisableWimax, |
| 504 base::Bind(&InternetOptionsHandler::DisableWimaxCallback, | 841 base::Bind(&InternetOptionsHandler::DisableWimaxCallback, |
| 505 base::Unretained(this))); | 842 base::Unretained(this))); |
| 506 web_ui()->RegisterMessageCallback("buyDataPlan", | 843 web_ui()->RegisterMessageCallback(kTagBuyDataPlan, |
| 507 base::Bind(&InternetOptionsHandler::BuyDataPlanCallback, | 844 base::Bind(&InternetOptionsHandler::BuyDataPlanCallback, |
| 508 base::Unretained(this))); | 845 base::Unretained(this))); |
| 509 web_ui()->RegisterMessageCallback("showMorePlanInfo", | 846 web_ui()->RegisterMessageCallback(kTagShowMorePlanInfo, |
| 510 base::Bind(&InternetOptionsHandler::ShowMorePlanInfoCallback, | 847 base::Bind(&InternetOptionsHandler::ShowMorePlanInfoCallback, |
| 511 base::Unretained(this))); | 848 base::Unretained(this))); |
| 512 web_ui()->RegisterMessageCallback("setApn", | 849 web_ui()->RegisterMessageCallback(kTagSetApn, |
| 513 base::Bind(&InternetOptionsHandler::SetApnCallback, | 850 base::Bind(&InternetOptionsHandler::SetApnCallback, |
| 514 base::Unretained(this))); | 851 base::Unretained(this))); |
| 515 web_ui()->RegisterMessageCallback("setSimCardLock", | 852 web_ui()->RegisterMessageCallback(kTagSetSimCardLock, |
| 516 base::Bind(&InternetOptionsHandler::SetSimCardLockCallback, | 853 base::Bind(&InternetOptionsHandler::SetSimCardLockCallback, |
| 517 base::Unretained(this))); | 854 base::Unretained(this))); |
| 518 web_ui()->RegisterMessageCallback("changePin", | 855 web_ui()->RegisterMessageCallback(kTagChangePin, |
| 519 base::Bind(&InternetOptionsHandler::ChangePinCallback, | 856 base::Bind(&InternetOptionsHandler::ChangePinCallback, |
| 520 base::Unretained(this))); | 857 base::Unretained(this))); |
| 521 web_ui()->RegisterMessageCallback("toggleAirplaneMode", | 858 web_ui()->RegisterMessageCallback(kTagToggleAirplaneMode, |
| 522 base::Bind(&InternetOptionsHandler::ToggleAirplaneModeCallback, | 859 base::Bind(&InternetOptionsHandler::ToggleAirplaneModeCallback, |
| 523 base::Unretained(this))); | 860 base::Unretained(this))); |
|
stevenjb
2012/08/14 17:50:01
Same with these tags - presumably they are used ju
| |
| 524 } | 861 } |
| 525 | 862 |
| 526 void InternetOptionsHandler::EnableWifiCallback(const ListValue* args) { | 863 void InternetOptionsHandler::EnableWifiCallback(const ListValue* args) { |
| 527 cros_->EnableWifiNetworkDevice(true); | 864 cros_->EnableWifiNetworkDevice(true); |
| 528 } | 865 } |
| 529 | 866 |
| 530 void InternetOptionsHandler::DisableWifiCallback(const ListValue* args) { | 867 void InternetOptionsHandler::DisableWifiCallback(const ListValue* args) { |
| 531 cros_->EnableWifiNetworkDevice(false); | 868 cros_->EnableWifiNetworkDevice(false); |
| 532 } | 869 } |
| 533 | 870 |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 646 } | 983 } |
| 647 | 984 |
| 648 void InternetOptionsHandler::RefreshNetworksCallback(const ListValue* args) { | 985 void InternetOptionsHandler::RefreshNetworksCallback(const ListValue* args) { |
| 649 cros_->RequestNetworkScan(); | 986 cros_->RequestNetworkScan(); |
| 650 } | 987 } |
| 651 | 988 |
| 652 void InternetOptionsHandler::RefreshNetworkData() { | 989 void InternetOptionsHandler::RefreshNetworkData() { |
| 653 DictionaryValue dictionary; | 990 DictionaryValue dictionary; |
| 654 FillNetworkInfo(&dictionary); | 991 FillNetworkInfo(&dictionary); |
| 655 web_ui()->CallJavascriptFunction( | 992 web_ui()->CallJavascriptFunction( |
| 656 "options.network.NetworkList.refreshNetworkData", dictionary); | 993 kRefreshNetworkDataFunction, dictionary); |
| 657 } | 994 } |
| 658 | 995 |
| 659 void InternetOptionsHandler::OnNetworkManagerChanged( | 996 void InternetOptionsHandler::OnNetworkManagerChanged( |
| 660 chromeos::NetworkLibrary* cros) { | 997 chromeos::NetworkLibrary* cros) { |
| 661 if (!web_ui()) | 998 if (!web_ui()) |
| 662 return; | 999 return; |
| 663 MonitorNetworks(); | 1000 MonitorNetworks(); |
| 664 RefreshNetworkData(); | 1001 RefreshNetworkData(); |
| 665 } | 1002 } |
| 666 | 1003 |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 715 const chromeos::CellularDataPlanVector* plans = | 1052 const chromeos::CellularDataPlanVector* plans = |
| 716 cros_->GetDataPlans(cellular->service_path()); | 1053 cros_->GetDataPlans(cellular->service_path()); |
| 717 DictionaryValue connection_plans; | 1054 DictionaryValue connection_plans; |
| 718 ListValue* plan_list = new ListValue(); | 1055 ListValue* plan_list = new ListValue(); |
| 719 if (plans) { | 1056 if (plans) { |
| 720 for (chromeos::CellularDataPlanVector::const_iterator iter = plans->begin(); | 1057 for (chromeos::CellularDataPlanVector::const_iterator iter = plans->begin(); |
| 721 iter != plans->end(); ++iter) { | 1058 iter != plans->end(); ++iter) { |
| 722 plan_list->Append(CellularDataPlanToDictionary(*iter)); | 1059 plan_list->Append(CellularDataPlanToDictionary(*iter)); |
| 723 } | 1060 } |
| 724 } | 1061 } |
| 725 connection_plans.SetString("servicePath", cellular->service_path()); | 1062 connection_plans.SetString(kTagServicePath, cellular->service_path()); |
| 726 connection_plans.SetBoolean("needsPlan", cellular->needs_new_plan()); | 1063 connection_plans.SetBoolean(kTagNeedsPlan, cellular->needs_new_plan()); |
| 727 connection_plans.SetBoolean("activated", | 1064 connection_plans.SetBoolean(kTagActivated, |
| 728 cellular->activation_state() == chromeos::ACTIVATION_STATE_ACTIVATED); | 1065 cellular->activation_state() == chromeos::ACTIVATION_STATE_ACTIVATED); |
| 729 connection_plans.Set("plans", plan_list); | 1066 connection_plans.Set(kTagPlans, plan_list); |
| 730 SetActivationButtonVisibility(cellular, | 1067 SetActivationButtonVisibility(cellular, |
| 731 &connection_plans, | 1068 &connection_plans, |
| 732 cros_->GetCellularHomeCarrierId()); | 1069 cros_->GetCellularHomeCarrierId()); |
| 733 web_ui()->CallJavascriptFunction( | 1070 web_ui()->CallJavascriptFunction( |
| 734 "options.internet.DetailsInternetPage.updateCellularPlans", | 1071 kUpdateCellularPlansFunction, |
| 735 connection_plans); | 1072 connection_plans); |
| 736 } | 1073 } |
| 737 | 1074 |
| 738 | 1075 |
| 739 void InternetOptionsHandler::Observe( | 1076 void InternetOptionsHandler::Observe( |
| 740 int type, | 1077 int type, |
| 741 const content::NotificationSource& source, | 1078 const content::NotificationSource& source, |
| 742 const content::NotificationDetails& details) { | 1079 const content::NotificationDetails& details) { |
| 743 OptionsPageUIHandler::Observe(type, source, details); | 1080 OptionsPageUIHandler::Observe(type, source, details); |
| 744 if (type == chrome::NOTIFICATION_REQUIRE_PIN_SETTING_CHANGE_ENDED) { | 1081 if (type == chrome::NOTIFICATION_REQUIRE_PIN_SETTING_CHANGE_ENDED) { |
| 745 base::FundamentalValue require_pin(*content::Details<bool>(details).ptr()); | 1082 base::FundamentalValue require_pin(*content::Details<bool>(details).ptr()); |
| 746 web_ui()->CallJavascriptFunction( | 1083 web_ui()->CallJavascriptFunction( |
| 747 "options.internet.DetailsInternetPage.updateSecurityTab", require_pin); | 1084 kUpdateSecurityTabFunction, require_pin); |
| 748 } else if (type == chrome::NOTIFICATION_ENTER_PIN_ENDED) { | 1085 } else if (type == chrome::NOTIFICATION_ENTER_PIN_ENDED) { |
| 749 // We make an assumption (which is valid for now) that the SIM | 1086 // We make an assumption (which is valid for now) that the SIM |
| 750 // unlock dialog is put up only when the user is trying to enable | 1087 // unlock dialog is put up only when the user is trying to enable |
| 751 // mobile data. | 1088 // mobile data. |
| 752 bool cancelled = *content::Details<bool>(details).ptr(); | 1089 bool cancelled = *content::Details<bool>(details).ptr(); |
| 753 if (cancelled) | 1090 if (cancelled) |
| 754 RefreshNetworkData(); | 1091 RefreshNetworkData(); |
| 755 // The case in which the correct PIN was entered and the SIM is | 1092 // The case in which the correct PIN was entered and the SIM is |
| 756 // now unlocked is handled in NetworkMenuButton. | 1093 // now unlocked is handled in NetworkMenuButton. |
| 757 } | 1094 } |
| 758 } | 1095 } |
| 759 | 1096 |
| 760 DictionaryValue* InternetOptionsHandler::CellularDataPlanToDictionary( | 1097 DictionaryValue* InternetOptionsHandler::CellularDataPlanToDictionary( |
| 761 const chromeos::CellularDataPlan* plan) { | 1098 const chromeos::CellularDataPlan* plan) { |
| 762 DictionaryValue* plan_dict = new DictionaryValue(); | 1099 DictionaryValue* plan_dict = new DictionaryValue(); |
| 763 plan_dict->SetInteger("planType", plan->plan_type); | 1100 plan_dict->SetInteger(kTagPlanType, plan->plan_type); |
| 764 plan_dict->SetString("name", plan->plan_name); | 1101 plan_dict->SetString(kTagName, plan->plan_name); |
| 765 plan_dict->SetString("planSummary", plan->GetPlanDesciption()); | 1102 plan_dict->SetString(kTagPlanSummary, plan->GetPlanDesciption()); |
| 766 plan_dict->SetString("dataRemaining", plan->GetDataRemainingDesciption()); | 1103 plan_dict->SetString(kTagDataRemaining, plan->GetDataRemainingDesciption()); |
| 767 plan_dict->SetString("planExpires", plan->GetPlanExpiration()); | 1104 plan_dict->SetString(kTagPlanExpires, plan->GetPlanExpiration()); |
| 768 plan_dict->SetString("warning", plan->GetRemainingWarning()); | 1105 plan_dict->SetString(kTagWarning, plan->GetRemainingWarning()); |
| 769 return plan_dict; | 1106 return plan_dict; |
| 770 } | 1107 } |
| 771 | 1108 |
| 772 void InternetOptionsHandler::SetPreferNetworkCallback(const ListValue* args) { | 1109 void InternetOptionsHandler::SetPreferNetworkCallback(const ListValue* args) { |
| 773 std::string service_path; | 1110 std::string service_path; |
| 774 std::string prefer_network_str; | 1111 std::string prefer_network_str; |
| 775 | 1112 |
| 776 if (args->GetSize() < 2 || | 1113 if (args->GetSize() < 2 || |
| 777 !args->GetString(0, &service_path) || | 1114 !args->GetString(0, &service_path) || |
| 778 !args->GetString(1, &prefer_network_str)) { | 1115 !args->GetString(1, &prefer_network_str)) { |
| 779 NOTREACHED(); | 1116 NOTREACHED(); |
| 780 return; | 1117 return; |
| 781 } | 1118 } |
| 782 | 1119 |
| 783 chromeos::Network* network = cros_->FindNetworkByPath(service_path); | 1120 chromeos::Network* network = cros_->FindNetworkByPath(service_path); |
| 784 if (!network) | 1121 if (!network) |
| 785 return; | 1122 return; |
| 786 | 1123 |
| 787 bool prefer_network = prefer_network_str == "true"; | 1124 bool prefer_network = prefer_network_str == kTagTrue; |
| 788 if (prefer_network != network->preferred()) | 1125 if (prefer_network != network->preferred()) |
| 789 network->SetPreferred(prefer_network); | 1126 network->SetPreferred(prefer_network); |
| 790 } | 1127 } |
| 791 | 1128 |
| 792 void InternetOptionsHandler::SetAutoConnectCallback(const ListValue* args) { | 1129 void InternetOptionsHandler::SetAutoConnectCallback(const ListValue* args) { |
| 793 std::string service_path; | 1130 std::string service_path; |
| 794 std::string auto_connect_str; | 1131 std::string auto_connect_str; |
| 795 | 1132 |
| 796 if (args->GetSize() < 2 || | 1133 if (args->GetSize() < 2 || |
| 797 !args->GetString(0, &service_path) || | 1134 !args->GetString(0, &service_path) || |
| 798 !args->GetString(1, &auto_connect_str)) { | 1135 !args->GetString(1, &auto_connect_str)) { |
| 799 NOTREACHED(); | 1136 NOTREACHED(); |
| 800 return; | 1137 return; |
| 801 } | 1138 } |
| 802 | 1139 |
| 803 chromeos::Network* network = cros_->FindNetworkByPath(service_path); | 1140 chromeos::Network* network = cros_->FindNetworkByPath(service_path); |
| 804 if (!network) | 1141 if (!network) |
| 805 return; | 1142 return; |
| 806 | 1143 |
| 807 bool auto_connect = auto_connect_str == "true"; | 1144 bool auto_connect = auto_connect_str == kTagTrue; |
| 808 if (auto_connect != network->auto_connect()) | 1145 if (auto_connect != network->auto_connect()) |
| 809 network->SetAutoConnect(auto_connect); | 1146 network->SetAutoConnect(auto_connect); |
| 810 } | 1147 } |
| 811 | 1148 |
| 812 void InternetOptionsHandler::SetIPConfigCallback(const ListValue* args) { | 1149 void InternetOptionsHandler::SetIPConfigCallback(const ListValue* args) { |
| 813 std::string service_path; | 1150 std::string service_path; |
| 814 std::string dhcp_str; | 1151 bool dhcp_for_ip; |
| 815 std::string address; | 1152 std::string address; |
| 816 std::string netmask; | 1153 std::string netmask; |
| 817 std::string gateway; | 1154 std::string gateway; |
| 1155 std::string name_server_type; | |
| 818 std::string name_servers; | 1156 std::string name_servers; |
| 819 | 1157 |
| 820 if (args->GetSize() < 6 || | 1158 if (args->GetSize() < 7 || |
| 821 !args->GetString(0, &service_path) || | 1159 !args->GetString(0, &service_path) || |
| 822 !args->GetString(1, &dhcp_str) || | 1160 !args->GetBoolean(1, &dhcp_for_ip) || |
| 823 !args->GetString(2, &address) || | 1161 !args->GetString(2, &address) || |
| 824 !args->GetString(3, &netmask) || | 1162 !args->GetString(3, &netmask) || |
| 825 !args->GetString(4, &gateway) || | 1163 !args->GetString(4, &gateway) || |
| 826 !args->GetString(5, &name_servers)) { | 1164 !args->GetString(5, &name_server_type) || |
| 1165 !args->GetString(6, &name_servers)) { | |
| 827 NOTREACHED(); | 1166 NOTREACHED(); |
| 828 return; | 1167 return; |
| 829 } | 1168 } |
| 830 | 1169 |
| 831 chromeos::Network* network = cros_->FindNetworkByPath(service_path); | 1170 int dhcp_usage_mask = 0; |
| 832 if (!network) | 1171 if (dhcp_for_ip) { |
| 833 return; | 1172 dhcp_usage_mask = (chromeos::NetworkLibrary::USE_DHCP_ADDRESS | |
| 1173 chromeos::NetworkLibrary::USE_DHCP_NETMASK | | |
| 1174 chromeos::NetworkLibrary::USE_DHCP_GATEWAY); | |
| 1175 } | |
| 1176 if (name_server_type == kNameServerTypeAutomatic) { | |
| 1177 dhcp_usage_mask |= chromeos::NetworkLibrary::USE_DHCP_NAME_SERVERS; | |
| 1178 name_servers.clear(); | |
| 1179 } else if (name_server_type == kNameServerTypeGoogle) { | |
| 1180 name_servers = kGoogleNameServers; | |
| 1181 } | |
| 834 | 1182 |
| 835 cros_->SetIPConfig(chromeos::NetworkIPConfig(network->device_path(), | 1183 cros_->SetIPParameters(service_path, |
| 836 dhcp_str == "true" ? chromeos::IPCONFIG_TYPE_DHCP : | 1184 address, |
| 837 chromeos::IPCONFIG_TYPE_IPV4, | 1185 netmask, |
| 838 address, netmask, gateway, name_servers)); | 1186 gateway, |
| 1187 name_servers, | |
| 1188 dhcp_usage_mask); | |
| 839 } | 1189 } |
| 840 | 1190 |
| 841 void InternetOptionsHandler::PopulateDictionaryDetails( | 1191 void InternetOptionsHandler::PopulateDictionaryDetails( |
| 842 const chromeos::Network* network) { | 1192 const chromeos::Network* network) { |
| 843 DCHECK(network); | 1193 DCHECK(network); |
| 844 | 1194 |
| 1195 // Send off an asynchronous request to Shill to get the service properties | |
| 1196 // and continue in the callback. | |
| 1197 chromeos::CrosRequestNetworkServiceProperties( | |
| 1198 network->service_path(), | |
| 1199 base::Bind(&InternetOptionsHandler::PopulateDictionaryDetailsCallback, | |
| 1200 weak_factory_.GetWeakPtr(), network)); | |
| 1201 } | |
| 1202 | |
| 1203 void InternetOptionsHandler::PopulateDictionaryDetailsCallback( | |
| 1204 const chromeos::Network* network, | |
| 1205 const std::string& service_path, | |
| 1206 const base::DictionaryValue* shill_properties) { | |
| 1207 if (VLOG_IS_ON(2)) { | |
| 1208 std::string properties_json; | |
| 1209 base::JSONWriter::WriteWithOptions(shill_properties, | |
| 1210 base::JSONWriter::OPTIONS_PRETTY_PRINT, | |
| 1211 &properties_json); | |
| 1212 VLOG(2) << "Shill Properties: " << std::endl << properties_json; | |
| 1213 } | |
| 1214 | |
| 845 if (web_ui()) { | 1215 if (web_ui()) { |
| 846 Profile::FromWebUI(web_ui())->GetProxyConfigTracker()->UISetCurrentNetwork( | 1216 Profile::FromWebUI(web_ui())->GetProxyConfigTracker()->UISetCurrentNetwork( |
| 847 network->service_path()); | 1217 network->service_path()); |
| 848 } | 1218 } |
| 849 | 1219 |
| 850 const chromeos::NetworkUIData& ui_data = network->ui_data(); | 1220 const chromeos::NetworkUIData& ui_data = network->ui_data(); |
| 851 const base::DictionaryValue* onc = | 1221 const base::DictionaryValue* onc = |
| 852 cros_->FindOncForNetwork(network->unique_id()); | 1222 cros_->FindOncForNetwork(network->unique_id()); |
| 853 | 1223 |
| 854 DictionaryValue dictionary; | 1224 base::DictionaryValue dictionary; |
| 855 std::string hardware_address; | 1225 std::string hardware_address; |
| 856 chromeos::NetworkIPConfigVector ipconfigs = cros_->GetIPConfigs( | 1226 chromeos::NetworkIPConfigVector ipconfigs = cros_->GetIPConfigs( |
| 857 network->device_path(), &hardware_address, | 1227 network->device_path(), &hardware_address, |
| 858 chromeos::NetworkLibrary::FORMAT_COLON_SEPARATED_HEX); | 1228 chromeos::NetworkLibrary::FORMAT_COLON_SEPARATED_HEX); |
| 859 if (!hardware_address.empty()) | 1229 if (!hardware_address.empty()) |
| 860 dictionary.SetString("hardwareAddress", hardware_address); | 1230 dictionary.SetString(kTagHardwareAddress, hardware_address); |
| 861 | 1231 |
| 862 scoped_ptr<DictionaryValue> ipconfig_dhcp; | 1232 // The DHCP IPConfig contains the values that are actually in use at the |
| 863 scoped_ptr<DictionaryValue> ipconfig_static; | 1233 // moment, even if some are overridden by static IP values. |
| 1234 scoped_ptr<DictionaryValue> ipconfig_dhcp(new DictionaryValue); | |
| 1235 std::string ipconfig_name_servers; | |
| 864 for (chromeos::NetworkIPConfigVector::const_iterator it = ipconfigs.begin(); | 1236 for (chromeos::NetworkIPConfigVector::const_iterator it = ipconfigs.begin(); |
| 865 it != ipconfigs.end(); ++it) { | 1237 it != ipconfigs.end(); ++it) { |
| 866 const chromeos::NetworkIPConfig& ipconfig = *it; | 1238 const chromeos::NetworkIPConfig& ipconfig = *it; |
| 867 scoped_ptr<DictionaryValue> ipconfig_dict(new DictionaryValue()); | 1239 if (ipconfig.type == chromeos::IPCONFIG_TYPE_DHCP) { |
| 868 ipconfig_dict->SetString("address", ipconfig.address); | 1240 ipconfig_dhcp->SetString(kIpConfigAddress, ipconfig.address); |
| 869 ipconfig_dict->SetString("subnetAddress", ipconfig.netmask); | 1241 VLOG(2) << "Found DHCP Address: " << ipconfig.address; |
| 870 ipconfig_dict->SetString("gateway", ipconfig.gateway); | 1242 ipconfig_dhcp->SetString(kIpConfigNetmask, ipconfig.netmask); |
| 871 ipconfig_dict->SetString("dns", ipconfig.name_servers); | 1243 VLOG(2) << "Found DHCP Netmask: " << ipconfig.netmask; |
| 872 if (ipconfig.type == chromeos::IPCONFIG_TYPE_DHCP) | 1244 ipconfig_dhcp->SetString(kIpConfigGateway, ipconfig.gateway); |
| 873 ipconfig_dhcp.reset(ipconfig_dict.release()); | 1245 VLOG(2) << "Found DHCP Gateway: " << ipconfig.gateway; |
| 874 else if (ipconfig.type == chromeos::IPCONFIG_TYPE_IPV4) | 1246 ipconfig_dhcp->SetString(kIpConfigNameServers, ipconfig.name_servers); |
| 875 ipconfig_static.reset(ipconfig_dict.release()); | 1247 ipconfig_name_servers = ipconfig.name_servers; // save for later |
| 1248 VLOG(2) << "Found DHCP Name Servers: " << ipconfig.name_servers; | |
| 1249 break; | |
| 1250 } | |
| 876 } | 1251 } |
| 877 | 1252 |
| 878 chromeos::NetworkPropertyUIData ipconfig_dhcp_ui_data(ui_data); | 1253 chromeos::NetworkPropertyUIData ipconfig_dhcp_ui_data(ui_data); |
| 879 SetValueDictionary(&dictionary, "ipconfigDHCP", ipconfig_dhcp.release(), | 1254 |
| 1255 chromeos::NetworkPropertyUIData static_ip_ui_data(ui_data); | |
| 1256 int automatic_ip_config; | |
| 1257 scoped_ptr<DictionaryValue> static_ip_dict( | |
| 1258 BuildIPInfoDictionary(*shill_properties, true, &automatic_ip_config)); | |
| 1259 dictionary.SetBoolean(kIpConfigAutoConfig, automatic_ip_config == 0); | |
| 1260 DCHECK(automatic_ip_config == 3 || automatic_ip_config == 0) | |
| 1261 << "UI doesn't support automatic specification of individual " | |
| 1262 << "static ip parameters."; | |
| 1263 scoped_ptr<DictionaryValue> saved_ip_dict( | |
| 1264 BuildIPInfoDictionary(*shill_properties, false, NULL)); | |
| 1265 dictionary.Set(kDictionarySavedIp, saved_ip_dict.release()); | |
| 1266 | |
| 1267 // Determine what kind of name server setting we have by comparing the | |
| 1268 // StaticIP and Google values with the ipconfig values. | |
| 1269 std::string name_server_type = kNameServerTypeAutomatic; | |
| 1270 std::string static_ip_nameservers; | |
| 1271 static_ip_dict->GetString(kIpConfigNameServers, &static_ip_nameservers); | |
| 1272 if (!static_ip_nameservers.empty() && | |
| 1273 static_ip_nameservers == ipconfig_name_servers) { | |
| 1274 name_server_type = kNameServerTypeUser; | |
| 1275 } | |
| 1276 if (ipconfig_name_servers == kGoogleNameServers) { | |
| 1277 name_server_type = kNameServerTypeGoogle; | |
| 1278 } | |
| 1279 | |
| 1280 SetValueDictionary(&dictionary, kDictionaryIpConfig, ipconfig_dhcp.release(), | |
| 880 ipconfig_dhcp_ui_data); | 1281 ipconfig_dhcp_ui_data); |
| 881 chromeos::NetworkPropertyUIData ipconfig_static_ui_data(ui_data); | 1282 SetValueDictionary(&dictionary, kDictionaryStaticIp, static_ip_dict.release(), |
| 882 SetValueDictionary(&dictionary, "ipconfigStatic", ipconfig_static.release(), | 1283 static_ip_ui_data); |
| 883 ipconfig_static_ui_data); | |
| 884 | 1284 |
| 885 chromeos::ConnectionType type = network->type(); | 1285 chromeos::ConnectionType type = network->type(); |
| 886 dictionary.SetInteger("type", type); | 1286 dictionary.SetInteger(kTagType, type); |
| 887 dictionary.SetString("servicePath", network->service_path()); | 1287 dictionary.SetString(kTagServicePath, network->service_path()); |
| 888 dictionary.SetBoolean("connecting", network->connecting()); | 1288 dictionary.SetBoolean(kTagConnecting, network->connecting()); |
| 889 dictionary.SetBoolean("connected", network->connected()); | 1289 dictionary.SetBoolean(kTagConnected, network->connected()); |
| 890 dictionary.SetString("connectionState", network->GetStateString()); | 1290 dictionary.SetString(kTagConnectionState, network->GetStateString()); |
| 891 dictionary.SetString("networkName", network->name()); | 1291 dictionary.SetString(kTagNetworkName, network->name()); |
| 1292 dictionary.SetString(kTagNameServerType, name_server_type); | |
| 1293 dictionary.SetString(kTagNameServersGoogle, kGoogleNameServers); | |
| 892 | 1294 |
| 893 // Only show proxy for remembered networks. | 1295 // Only show proxy for remembered networks. |
| 894 chromeos::NetworkProfileType network_profile = network->profile_type(); | 1296 chromeos::NetworkProfileType network_profile = network->profile_type(); |
| 895 dictionary.SetBoolean("showProxy", network_profile != chromeos::PROFILE_NONE); | 1297 dictionary.SetBoolean(kTagShowProxy, |
| 1298 network_profile != chromeos::PROFILE_NONE); | |
| 896 | 1299 |
| 897 // Enable static ip config for ethernet. For wifi, enable if flag is set. | 1300 // Enable static ip config for ethernet. For wifi, enable if flag is set. |
| 898 bool staticIPConfig = type == chromeos::TYPE_ETHERNET || | 1301 bool staticIPConfig = type == chromeos::TYPE_ETHERNET || |
| 899 (type == chromeos::TYPE_WIFI && | 1302 (type == chromeos::TYPE_WIFI && |
| 900 CommandLine::ForCurrentProcess()->HasSwitch( | 1303 CommandLine::ForCurrentProcess()->HasSwitch( |
| 901 switches::kEnableStaticIPConfig)); | 1304 switches::kEnableStaticIPConfig)); |
| 902 dictionary.SetBoolean("showStaticIPConfig", staticIPConfig); | 1305 dictionary.SetBoolean(kTagShowStaticIPConfig, staticIPConfig); |
| 903 | 1306 |
| 904 chromeos::NetworkPropertyUIData preferred_ui_data(ui_data); | 1307 chromeos::NetworkPropertyUIData preferred_ui_data(ui_data); |
| 905 if (network_profile == chromeos::PROFILE_USER) { | 1308 if (network_profile == chromeos::PROFILE_USER) { |
| 906 dictionary.SetBoolean("showPreferred", true); | 1309 dictionary.SetBoolean(kTagShowPreferred, true); |
| 907 SetValueDictionary(&dictionary, "preferred", | 1310 SetValueDictionary(&dictionary, kTagPreferred, |
| 908 Value::CreateBooleanValue(network->preferred()), | 1311 Value::CreateBooleanValue(network->preferred()), |
| 909 preferred_ui_data); | 1312 preferred_ui_data); |
| 910 } else { | 1313 } else { |
| 911 dictionary.SetBoolean("showPreferred", false); | 1314 dictionary.SetBoolean(kTagShowPreferred, false); |
| 912 SetValueDictionary(&dictionary, "preferred", | 1315 SetValueDictionary(&dictionary, kTagPreferred, |
| 913 Value::CreateBooleanValue(network->preferred()), | 1316 Value::CreateBooleanValue(network->preferred()), |
| 914 preferred_ui_data); | 1317 preferred_ui_data); |
| 915 } | 1318 } |
| 916 chromeos::NetworkPropertyUIData auto_connect_ui_data(ui_data); | 1319 chromeos::NetworkPropertyUIData auto_connect_ui_data(ui_data); |
| 917 if (type == chromeos::TYPE_WIFI) { | 1320 if (type == chromeos::TYPE_WIFI) { |
| 918 auto_connect_ui_data.ParseOncProperty( | 1321 auto_connect_ui_data.ParseOncProperty( |
| 919 ui_data, onc, | 1322 ui_data, onc, |
| 920 base::StringPrintf("%s.%s", | 1323 base::StringPrintf("%s.%s", |
| 921 chromeos::onc::kWiFi, | 1324 chromeos::onc::kWiFi, |
| 922 chromeos::onc::wifi::kAutoConnect)); | 1325 chromeos::onc::wifi::kAutoConnect)); |
| 923 } | 1326 } |
| 924 SetValueDictionary(&dictionary, "autoConnect", | 1327 SetValueDictionary(&dictionary, kTagAutoConnect, |
| 925 Value::CreateBooleanValue(network->auto_connect()), | 1328 Value::CreateBooleanValue(network->auto_connect()), |
| 926 auto_connect_ui_data); | 1329 auto_connect_ui_data); |
| 927 | 1330 |
| 928 if (type == chromeos::TYPE_WIFI) { | 1331 if (type == chromeos::TYPE_WIFI) { |
| 929 dictionary.SetBoolean("deviceConnected", cros_->wifi_connected()); | 1332 dictionary.SetBoolean(kTagDeviceConnected, cros_->wifi_connected()); |
| 930 const chromeos::WifiNetwork* wifi = | 1333 const chromeos::WifiNetwork* wifi = |
| 931 cros_->FindWifiNetworkByPath(network->service_path()); | 1334 cros_->FindWifiNetworkByPath(network->service_path()); |
| 932 if (!wifi) { | 1335 if (!wifi) { |
| 933 LOG(WARNING) << "Cannot find network " << network->service_path(); | 1336 LOG(WARNING) << "Cannot find network " << network->service_path(); |
| 934 } else { | 1337 } else { |
| 935 PopulateWifiDetails(wifi, &dictionary); | 1338 PopulateWifiDetails(wifi, &dictionary); |
| 936 } | 1339 } |
| 937 } else if (type == chromeos::TYPE_WIMAX) { | 1340 } else if (type == chromeos::TYPE_WIMAX) { |
| 938 dictionary.SetBoolean("deviceConnected", cros_->wimax_connected()); | 1341 dictionary.SetBoolean(kTagDeviceConnected, cros_->wimax_connected()); |
| 939 const chromeos::WimaxNetwork* wimax = | 1342 const chromeos::WimaxNetwork* wimax = |
| 940 cros_->FindWimaxNetworkByPath(network->service_path()); | 1343 cros_->FindWimaxNetworkByPath(network->service_path()); |
| 941 if (!wimax) { | 1344 if (!wimax) { |
| 942 LOG(WARNING) << "Cannot find network " << network->service_path(); | 1345 LOG(WARNING) << "Cannot find network " << network->service_path(); |
| 943 } else { | 1346 } else { |
| 944 PopulateWimaxDetails(wimax, &dictionary); | 1347 PopulateWimaxDetails(wimax, &dictionary); |
| 945 } | 1348 } |
| 946 } else if (type == chromeos::TYPE_CELLULAR) { | 1349 } else if (type == chromeos::TYPE_CELLULAR) { |
| 947 dictionary.SetBoolean("deviceConnected", cros_->cellular_connected()); | 1350 dictionary.SetBoolean(kTagDeviceConnected, cros_->cellular_connected()); |
| 948 const chromeos::CellularNetwork* cellular = | 1351 const chromeos::CellularNetwork* cellular = |
| 949 cros_->FindCellularNetworkByPath(network->service_path()); | 1352 cros_->FindCellularNetworkByPath(network->service_path()); |
| 950 if (!cellular) { | 1353 if (!cellular) { |
| 951 LOG(WARNING) << "Cannot find network " << network->service_path(); | 1354 LOG(WARNING) << "Cannot find network " << network->service_path(); |
| 952 } else { | 1355 } else { |
| 953 PopulateCellularDetails(cellular, &dictionary); | 1356 PopulateCellularDetails(cellular, &dictionary); |
| 954 } | 1357 } |
| 955 } else if (type == chromeos::TYPE_VPN) { | 1358 } else if (type == chromeos::TYPE_VPN) { |
| 956 dictionary.SetBoolean("deviceConnected", | 1359 dictionary.SetBoolean(kTagDeviceConnected, |
| 957 cros_->virtual_network_connected()); | 1360 cros_->virtual_network_connected()); |
| 958 const chromeos::VirtualNetwork* vpn = | 1361 const chromeos::VirtualNetwork* vpn = |
| 959 cros_->FindVirtualNetworkByPath(network->service_path()); | 1362 cros_->FindVirtualNetworkByPath(network->service_path()); |
| 960 if (!vpn) { | 1363 if (!vpn) { |
| 961 LOG(WARNING) << "Cannot find network " << network->service_path(); | 1364 LOG(WARNING) << "Cannot find network " << network->service_path(); |
| 962 } else { | 1365 } else { |
| 963 PopulateVPNDetails(vpn, &dictionary); | 1366 PopulateVPNDetails(vpn, &dictionary); |
| 964 } | 1367 } |
| 965 } else if (type == chromeos::TYPE_ETHERNET) { | 1368 } else if (type == chromeos::TYPE_ETHERNET) { |
| 966 dictionary.SetBoolean("deviceConnected", cros_->ethernet_connected()); | 1369 dictionary.SetBoolean(kTagDeviceConnected, cros_->ethernet_connected()); |
| 967 } | 1370 } |
| 968 | 1371 |
| 969 web_ui()->CallJavascriptFunction( | 1372 web_ui()->CallJavascriptFunction( |
| 970 "options.internet.DetailsInternetPage.showDetailedInfo", dictionary); | 1373 kShowDetailedInfoFunction, dictionary); |
| 971 } | 1374 } |
| 972 | 1375 |
| 973 void InternetOptionsHandler::PopulateWifiDetails( | 1376 void InternetOptionsHandler::PopulateWifiDetails( |
| 974 const chromeos::WifiNetwork* wifi, | 1377 const chromeos::WifiNetwork* wifi, |
| 975 DictionaryValue* dictionary) { | 1378 DictionaryValue* dictionary) { |
| 976 dictionary->SetString("ssid", wifi->name()); | 1379 dictionary->SetString(kTagSsid, wifi->name()); |
| 977 bool remembered = (wifi->profile_type() != chromeos::PROFILE_NONE); | 1380 bool remembered = (wifi->profile_type() != chromeos::PROFILE_NONE); |
| 978 dictionary->SetBoolean("remembered", remembered); | 1381 dictionary->SetBoolean(kTagRemembered, remembered); |
| 979 bool shared = wifi->profile_type() == chromeos::PROFILE_SHARED; | 1382 bool shared = wifi->profile_type() == chromeos::PROFILE_SHARED; |
| 980 dictionary->SetBoolean("shared", shared); | 1383 dictionary->SetBoolean(kTagShared, shared); |
| 981 dictionary->SetString("encryption", wifi->GetEncryptionString()); | 1384 dictionary->SetString(kTagEncryption, wifi->GetEncryptionString()); |
| 982 dictionary->SetString("bssid", wifi->bssid()); | 1385 dictionary->SetString(kTagBssid, wifi->bssid()); |
| 983 dictionary->SetInteger("frequency", wifi->frequency()); | 1386 dictionary->SetInteger(kTagFrequency, wifi->frequency()); |
| 984 dictionary->SetInteger("strength", wifi->strength()); | 1387 dictionary->SetInteger(kTagStrength, wifi->strength()); |
| 985 } | 1388 } |
| 986 | 1389 |
| 987 void InternetOptionsHandler::PopulateWimaxDetails( | 1390 void InternetOptionsHandler::PopulateWimaxDetails( |
| 988 const chromeos::WimaxNetwork* wimax, | 1391 const chromeos::WimaxNetwork* wimax, |
| 989 DictionaryValue* dictionary) { | 1392 DictionaryValue* dictionary) { |
| 990 bool remembered = (wimax->profile_type() != chromeos::PROFILE_NONE); | 1393 bool remembered = (wimax->profile_type() != chromeos::PROFILE_NONE); |
| 991 dictionary->SetBoolean("remembered", remembered); | 1394 dictionary->SetBoolean(kTagRemembered, remembered); |
| 992 bool shared = wimax->profile_type() == chromeos::PROFILE_SHARED; | 1395 bool shared = wimax->profile_type() == chromeos::PROFILE_SHARED; |
| 993 dictionary->SetBoolean("shared", shared); | 1396 dictionary->SetBoolean(kTagShared, shared); |
| 994 if (wimax->passphrase_required()) | 1397 if (wimax->passphrase_required()) |
| 995 dictionary->SetString("identity", wimax->eap_identity()); | 1398 dictionary->SetString(kTagIdentity, wimax->eap_identity()); |
| 996 | 1399 |
| 997 dictionary->SetInteger("strength", wimax->strength()); | 1400 dictionary->SetInteger(kTagStrength, wimax->strength()); |
| 998 } | 1401 } |
| 999 | 1402 |
| 1000 DictionaryValue* InternetOptionsHandler::CreateDictionaryFromCellularApn( | 1403 DictionaryValue* InternetOptionsHandler::CreateDictionaryFromCellularApn( |
| 1001 const chromeos::CellularApn& apn) { | 1404 const chromeos::CellularApn& apn) { |
| 1002 DictionaryValue* dictionary = new DictionaryValue(); | 1405 DictionaryValue* dictionary = new DictionaryValue(); |
| 1003 dictionary->SetString("apn", apn.apn); | 1406 dictionary->SetString(kTagApn, apn.apn); |
| 1004 dictionary->SetString("networkId", apn.network_id); | 1407 dictionary->SetString(kTagNetworkId, apn.network_id); |
| 1005 dictionary->SetString("username", apn.username); | 1408 dictionary->SetString(kTagUsername, apn.username); |
| 1006 dictionary->SetString("password", apn.password); | 1409 dictionary->SetString(kTagPassword, apn.password); |
| 1007 dictionary->SetString("name", apn.name); | 1410 dictionary->SetString(kTagName, apn.name); |
| 1008 dictionary->SetString("localizedName", apn.localized_name); | 1411 dictionary->SetString(kTagLocalizedName, apn.localized_name); |
| 1009 dictionary->SetString("language", apn.language); | 1412 dictionary->SetString(kTagLanguage, apn.language); |
| 1010 return dictionary; | 1413 return dictionary; |
| 1011 } | 1414 } |
| 1012 | 1415 |
| 1013 void InternetOptionsHandler::PopulateCellularDetails( | 1416 void InternetOptionsHandler::PopulateCellularDetails( |
| 1014 const chromeos::CellularNetwork* cellular, | 1417 const chromeos::CellularNetwork* cellular, |
| 1015 DictionaryValue* dictionary) { | 1418 DictionaryValue* dictionary) { |
| 1016 // Cellular network / connection settings. | 1419 // Cellular network / connection settings. |
| 1017 dictionary->SetString("serviceName", cellular->name()); | 1420 dictionary->SetString(kTagServiceName, cellular->name()); |
| 1018 dictionary->SetString("networkTechnology", | 1421 dictionary->SetString(kTagNetworkTechnology, |
| 1019 cellular->GetNetworkTechnologyString()); | 1422 cellular->GetNetworkTechnologyString()); |
| 1020 dictionary->SetString("operatorName", cellular->operator_name()); | 1423 dictionary->SetString(kTagOperatorName, cellular->operator_name()); |
| 1021 dictionary->SetString("operatorCode", cellular->operator_code()); | 1424 dictionary->SetString(kTagOperatorCode, cellular->operator_code()); |
| 1022 dictionary->SetString("activationState", | 1425 dictionary->SetString(kTagActivationState, |
| 1023 cellular->GetActivationStateString()); | 1426 cellular->GetActivationStateString()); |
| 1024 dictionary->SetString("roamingState", | 1427 dictionary->SetString(kTagRoamingState, |
| 1025 cellular->GetRoamingStateString()); | 1428 cellular->GetRoamingStateString()); |
| 1026 dictionary->SetString("restrictedPool", | 1429 dictionary->SetString(kTagRestrictedPool, |
| 1027 cellular->restricted_pool() ? | 1430 cellular->restricted_pool() ? |
| 1028 l10n_util::GetStringUTF8( | 1431 l10n_util::GetStringUTF8( |
| 1029 IDS_CONFIRM_MESSAGEBOX_YES_BUTTON_LABEL) : | 1432 IDS_CONFIRM_MESSAGEBOX_YES_BUTTON_LABEL) : |
| 1030 l10n_util::GetStringUTF8( | 1433 l10n_util::GetStringUTF8( |
| 1031 IDS_CONFIRM_MESSAGEBOX_NO_BUTTON_LABEL)); | 1434 IDS_CONFIRM_MESSAGEBOX_NO_BUTTON_LABEL)); |
| 1032 dictionary->SetString("errorState", cellular->GetErrorString()); | 1435 dictionary->SetString(kTagErrorState, cellular->GetErrorString()); |
| 1033 dictionary->SetString("supportUrl", cellular->payment_url()); | 1436 dictionary->SetString(kTagSupportUrl, cellular->payment_url()); |
| 1034 dictionary->SetBoolean("needsPlan", cellular->needs_new_plan()); | 1437 dictionary->SetBoolean(kTagNeedsPlan, cellular->needs_new_plan()); |
| 1035 | 1438 |
| 1036 dictionary->Set("apn", CreateDictionaryFromCellularApn(cellular->apn())); | 1439 dictionary->Set(kTagApn, CreateDictionaryFromCellularApn(cellular->apn())); |
| 1037 dictionary->Set("lastGoodApn", | 1440 dictionary->Set(kTagLastGoodApn, |
| 1038 CreateDictionaryFromCellularApn(cellular->last_good_apn())); | 1441 CreateDictionaryFromCellularApn(cellular->last_good_apn())); |
| 1039 | 1442 |
| 1040 // Device settings. | 1443 // Device settings. |
| 1041 const chromeos::NetworkDevice* device = | 1444 const chromeos::NetworkDevice* device = |
| 1042 cros_->FindNetworkDeviceByPath(cellular->device_path()); | 1445 cros_->FindNetworkDeviceByPath(cellular->device_path()); |
| 1043 if (device) { | 1446 if (device) { |
| 1044 chromeos::NetworkPropertyUIData cellular_propety_ui_data( | 1447 chromeos::NetworkPropertyUIData cellular_propety_ui_data( |
| 1045 cellular->ui_data()); | 1448 cellular->ui_data()); |
| 1046 dictionary->SetString("manufacturer", device->manufacturer()); | 1449 dictionary->SetString(kTagManufacturer, device->manufacturer()); |
| 1047 dictionary->SetString("modelId", device->model_id()); | 1450 dictionary->SetString(kTagModelId, device->model_id()); |
| 1048 dictionary->SetString("firmwareRevision", device->firmware_revision()); | 1451 dictionary->SetString(kTagFirmwareRevision, device->firmware_revision()); |
| 1049 dictionary->SetString("hardwareRevision", device->hardware_revision()); | 1452 dictionary->SetString(kTagHardwareRevision, device->hardware_revision()); |
| 1050 dictionary->SetString("prlVersion", | 1453 dictionary->SetString(kTagPrlVersion, |
| 1051 base::StringPrintf("%u", device->prl_version())); | 1454 base::StringPrintf("%u", device->prl_version())); |
| 1052 dictionary->SetString("meid", device->meid()); | 1455 dictionary->SetString(kTagMeid, device->meid()); |
| 1053 dictionary->SetString("imei", device->imei()); | 1456 dictionary->SetString(kTagImei, device->imei()); |
| 1054 dictionary->SetString("mdn", device->mdn()); | 1457 dictionary->SetString(kTagMdn, device->mdn()); |
| 1055 dictionary->SetString("imsi", device->imsi()); | 1458 dictionary->SetString(kTagImsi, device->imsi()); |
| 1056 dictionary->SetString("esn", device->esn()); | 1459 dictionary->SetString(kTagEsn, device->esn()); |
| 1057 dictionary->SetString("min", device->min()); | 1460 dictionary->SetString(kTagMin, device->min()); |
| 1058 dictionary->SetBoolean("gsm", | 1461 dictionary->SetBoolean(kTagGsm, |
| 1059 device->technology_family() == chromeos::TECHNOLOGY_FAMILY_GSM); | 1462 device->technology_family() == chromeos::TECHNOLOGY_FAMILY_GSM); |
| 1060 SetValueDictionary( | 1463 SetValueDictionary( |
| 1061 dictionary, "simCardLockEnabled", | 1464 dictionary, kTagSimCardLockEnabled, |
| 1062 Value::CreateBooleanValue( | 1465 Value::CreateBooleanValue( |
| 1063 device->sim_pin_required() == chromeos::SIM_PIN_REQUIRED), | 1466 device->sim_pin_required() == chromeos::SIM_PIN_REQUIRED), |
| 1064 cellular_propety_ui_data); | 1467 cellular_propety_ui_data); |
| 1065 | 1468 |
| 1066 chromeos::MobileConfig* config = chromeos::MobileConfig::GetInstance(); | 1469 chromeos::MobileConfig* config = chromeos::MobileConfig::GetInstance(); |
| 1067 if (config->IsReady()) { | 1470 if (config->IsReady()) { |
| 1068 const std::string& carrier_id = cros_->GetCellularHomeCarrierId(); | 1471 const std::string& carrier_id = cros_->GetCellularHomeCarrierId(); |
| 1069 const chromeos::MobileConfig::Carrier* carrier = | 1472 const chromeos::MobileConfig::Carrier* carrier = |
| 1070 config->GetCarrier(carrier_id); | 1473 config->GetCarrier(carrier_id); |
| 1071 if (carrier && !carrier->top_up_url().empty()) | 1474 if (carrier && !carrier->top_up_url().empty()) |
| 1072 dictionary->SetString("carrierUrl", carrier->top_up_url()); | 1475 dictionary->SetString(kTagCarrierUrl, carrier->top_up_url()); |
| 1073 } | 1476 } |
| 1074 | 1477 |
| 1075 const chromeos::CellularApnList& apn_list = device->provider_apn_list(); | 1478 const chromeos::CellularApnList& apn_list = device->provider_apn_list(); |
| 1076 ListValue* apn_list_value = new ListValue(); | 1479 ListValue* apn_list_value = new ListValue(); |
| 1077 for (chromeos::CellularApnList::const_iterator it = apn_list.begin(); | 1480 for (chromeos::CellularApnList::const_iterator it = apn_list.begin(); |
| 1078 it != apn_list.end(); ++it) { | 1481 it != apn_list.end(); ++it) { |
| 1079 apn_list_value->Append(CreateDictionaryFromCellularApn(*it)); | 1482 apn_list_value->Append(CreateDictionaryFromCellularApn(*it)); |
| 1080 } | 1483 } |
| 1081 SetValueDictionary(dictionary, "providerApnList", apn_list_value, | 1484 SetValueDictionary(dictionary, kTagProviderApnList, apn_list_value, |
| 1082 cellular_propety_ui_data); | 1485 cellular_propety_ui_data); |
| 1083 } | 1486 } |
| 1084 | 1487 |
| 1085 SetActivationButtonVisibility(cellular, | 1488 SetActivationButtonVisibility(cellular, |
| 1086 dictionary, | 1489 dictionary, |
| 1087 cros_->GetCellularHomeCarrierId()); | 1490 cros_->GetCellularHomeCarrierId()); |
| 1088 } | 1491 } |
| 1089 | 1492 |
| 1090 void InternetOptionsHandler::PopulateVPNDetails( | 1493 void InternetOptionsHandler::PopulateVPNDetails( |
| 1091 const chromeos::VirtualNetwork* vpn, | 1494 const chromeos::VirtualNetwork* vpn, |
| 1092 DictionaryValue* dictionary) { | 1495 DictionaryValue* dictionary) { |
| 1093 dictionary->SetString("service_name", vpn->name()); | 1496 dictionary->SetString(kTagService_name, vpn->name()); |
| 1094 bool remembered = (vpn->profile_type() != chromeos::PROFILE_NONE); | 1497 bool remembered = (vpn->profile_type() != chromeos::PROFILE_NONE); |
| 1095 dictionary->SetBoolean("remembered", remembered); | 1498 dictionary->SetBoolean(kTagRemembered, remembered); |
| 1096 dictionary->SetString("server_hostname", vpn->server_hostname()); | 1499 dictionary->SetString(kTagServer_hostname, vpn->server_hostname()); |
| 1097 dictionary->SetString("provider_type", vpn->GetProviderTypeString()); | 1500 dictionary->SetString(kTagProvider_type, vpn->GetProviderTypeString()); |
| 1098 dictionary->SetString("username", vpn->username()); | 1501 dictionary->SetString(kTagUsername, vpn->username()); |
| 1099 } | 1502 } |
| 1100 | 1503 |
| 1101 void InternetOptionsHandler::SetActivationButtonVisibility( | 1504 void InternetOptionsHandler::SetActivationButtonVisibility( |
| 1102 const chromeos::CellularNetwork* cellular, | 1505 const chromeos::CellularNetwork* cellular, |
| 1103 DictionaryValue* dictionary, | 1506 DictionaryValue* dictionary, |
| 1104 const std::string& carrier_id) { | 1507 const std::string& carrier_id) { |
| 1105 if (cellular->needs_new_plan()) { | 1508 if (cellular->needs_new_plan()) { |
| 1106 dictionary->SetBoolean("showBuyButton", true); | 1509 dictionary->SetBoolean(kTagShowBuyButton, true); |
| 1107 } else if (cellular->activation_state() != | 1510 } else if (cellular->activation_state() != |
| 1108 chromeos::ACTIVATION_STATE_ACTIVATING && | 1511 chromeos::ACTIVATION_STATE_ACTIVATING && |
| 1109 cellular->activation_state() != | 1512 cellular->activation_state() != |
| 1110 chromeos::ACTIVATION_STATE_ACTIVATED) { | 1513 chromeos::ACTIVATION_STATE_ACTIVATED) { |
| 1111 dictionary->SetBoolean("showActivateButton", true); | 1514 dictionary->SetBoolean(kTagShowActivateButton, true); |
| 1112 } else { | 1515 } else { |
| 1113 const chromeos::MobileConfig::Carrier* carrier = | 1516 const chromeos::MobileConfig::Carrier* carrier = |
| 1114 chromeos::MobileConfig::GetInstance()->GetCarrier(carrier_id); | 1517 chromeos::MobileConfig::GetInstance()->GetCarrier(carrier_id); |
| 1115 if (carrier && carrier->show_portal_button()) { | 1518 if (carrier && carrier->show_portal_button()) { |
| 1116 // This will trigger BuyDataPlanCallback() so that | 1519 // This will trigger BuyDataPlanCallback() so that |
| 1117 // chrome://mobilesetup/ will open carrier specific portal. | 1520 // chrome://mobilesetup/ will open carrier specific portal. |
| 1118 dictionary->SetBoolean("showViewAccountButton", true); | 1521 dictionary->SetBoolean(kTagShowViewAccountButton, true); |
| 1119 } | 1522 } |
| 1120 } | 1523 } |
| 1121 } | 1524 } |
| 1122 | 1525 |
| 1123 gfx::NativeWindow InternetOptionsHandler::GetNativeWindow() const { | 1526 gfx::NativeWindow InternetOptionsHandler::GetNativeWindow() const { |
| 1124 // TODO(beng): This is an improper direct dependency on Browser. Route this | 1527 // TODO(beng): This is an improper direct dependency on Browser. Route this |
| 1125 // through some sort of delegate. | 1528 // through some sort of delegate. |
| 1126 Browser* browser = | 1529 Browser* browser = |
| 1127 browser::FindBrowserWithWebContents(web_ui()->GetWebContents()); | 1530 browser::FindBrowserWithWebContents(web_ui()->GetWebContents()); |
| 1128 return browser->window()->GetNativeWindow(); | 1531 return browser->window()->GetNativeWindow(); |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1166 void InternetOptionsHandler::ToggleAirplaneModeCallback(const ListValue* args) { | 1569 void InternetOptionsHandler::ToggleAirplaneModeCallback(const ListValue* args) { |
| 1167 // TODO(kevers): The use of 'offline_mode' is not quite correct. Update once | 1570 // TODO(kevers): The use of 'offline_mode' is not quite correct. Update once |
| 1168 // we have proper back-end support. | 1571 // we have proper back-end support. |
| 1169 cros_->EnableOfflineMode(!cros_->offline_mode()); | 1572 cros_->EnableOfflineMode(!cros_->offline_mode()); |
| 1170 } | 1573 } |
| 1171 | 1574 |
| 1172 void InternetOptionsHandler::HandleWifiButtonClick( | 1575 void InternetOptionsHandler::HandleWifiButtonClick( |
| 1173 const std::string& service_path, | 1576 const std::string& service_path, |
| 1174 const std::string& command) { | 1577 const std::string& command) { |
| 1175 chromeos::WifiNetwork* wifi = NULL; | 1578 chromeos::WifiNetwork* wifi = NULL; |
| 1176 if (command == "forget") { | 1579 if (command == kTagForget) { |
| 1177 cros_->ForgetNetwork(service_path); | 1580 cros_->ForgetNetwork(service_path); |
| 1178 } else if (service_path == kOtherNetworksFakePath) { | 1581 } else if (service_path == kOtherNetworksFakePath) { |
| 1179 // Other wifi networks. | 1582 // Other wifi networks. |
| 1180 chromeos::NetworkConfigView::ShowForType( | 1583 chromeos::NetworkConfigView::ShowForType( |
| 1181 chromeos::TYPE_WIFI, GetNativeWindow()); | 1584 chromeos::TYPE_WIFI, GetNativeWindow()); |
| 1182 } else if ((wifi = cros_->FindWifiNetworkByPath(service_path))) { | 1585 } else if ((wifi = cros_->FindWifiNetworkByPath(service_path))) { |
| 1183 if (command == "connect") { | 1586 if (command == kTagConnect) { |
| 1184 wifi->SetEnrollmentDelegate( | 1587 wifi->SetEnrollmentDelegate( |
| 1185 chromeos::CreateEnrollmentDelegate(GetNativeWindow(), wifi->name(), | 1588 chromeos::CreateEnrollmentDelegate(GetNativeWindow(), wifi->name(), |
| 1186 ProfileManager::GetLastUsedProfile())); | 1589 ProfileManager::GetLastUsedProfile())); |
| 1187 wifi->AttemptConnection(base::Bind(&InternetOptionsHandler::DoConnect, | 1590 wifi->AttemptConnection(base::Bind(&InternetOptionsHandler::DoConnect, |
| 1188 weak_factory_.GetWeakPtr(), | 1591 weak_factory_.GetWeakPtr(), |
| 1189 wifi)); | 1592 wifi)); |
| 1190 } else if (command == "disconnect") { | 1593 } else if (command == kTagDisconnect) { |
| 1191 cros_->DisconnectFromNetwork(wifi); | 1594 cros_->DisconnectFromNetwork(wifi); |
| 1192 } else if (command == "options") { | 1595 } else if (command == kTagOptions) { |
| 1193 PopulateDictionaryDetails(wifi); | 1596 PopulateDictionaryDetails(wifi); |
| 1194 } | 1597 } |
| 1195 } | 1598 } |
| 1196 } | 1599 } |
| 1197 | 1600 |
| 1198 void InternetOptionsHandler::HandleWimaxButtonClick( | 1601 void InternetOptionsHandler::HandleWimaxButtonClick( |
| 1199 const std::string& service_path, | 1602 const std::string& service_path, |
| 1200 const std::string& command) { | 1603 const std::string& command) { |
| 1201 chromeos::WimaxNetwork* wimax = NULL; | 1604 chromeos::WimaxNetwork* wimax = NULL; |
| 1202 if (command == "forget") { | 1605 if (command == kTagForget) { |
| 1203 cros_->ForgetNetwork(service_path); | 1606 cros_->ForgetNetwork(service_path); |
| 1204 } else if ((wimax = cros_->FindWimaxNetworkByPath(service_path))) { | 1607 } else if ((wimax = cros_->FindWimaxNetworkByPath(service_path))) { |
| 1205 if (command == "connect") { | 1608 if (command == kTagConnect) { |
| 1206 wimax->SetEnrollmentDelegate( | 1609 wimax->SetEnrollmentDelegate( |
| 1207 chromeos::CreateEnrollmentDelegate(GetNativeWindow(), wimax->name(), | 1610 chromeos::CreateEnrollmentDelegate(GetNativeWindow(), wimax->name(), |
| 1208 ProfileManager::GetLastUsedProfile())); | 1611 ProfileManager::GetLastUsedProfile())); |
| 1209 wimax->AttemptConnection(base::Bind(&InternetOptionsHandler::DoConnect, | 1612 wimax->AttemptConnection(base::Bind(&InternetOptionsHandler::DoConnect, |
| 1210 weak_factory_.GetWeakPtr(), | 1613 weak_factory_.GetWeakPtr(), |
| 1211 wimax)); | 1614 wimax)); |
| 1212 } else if (command == "disconnect") { | 1615 } else if (command == kTagDisconnect) { |
| 1213 cros_->DisconnectFromNetwork(wimax); | 1616 cros_->DisconnectFromNetwork(wimax); |
| 1214 } else if (command == "options") { | 1617 } else if (command == kTagOptions) { |
| 1215 PopulateDictionaryDetails(wimax); | 1618 PopulateDictionaryDetails(wimax); |
| 1216 } | 1619 } |
| 1217 } | 1620 } |
| 1218 } | 1621 } |
| 1219 | 1622 |
| 1220 void InternetOptionsHandler::HandleCellularButtonClick( | 1623 void InternetOptionsHandler::HandleCellularButtonClick( |
| 1221 const std::string& service_path, | 1624 const std::string& service_path, |
| 1222 const std::string& command) { | 1625 const std::string& command) { |
| 1223 chromeos::CellularNetwork* cellular = NULL; | 1626 chromeos::CellularNetwork* cellular = NULL; |
| 1224 if (service_path == kOtherNetworksFakePath) { | 1627 if (service_path == kOtherNetworksFakePath) { |
| 1225 chromeos::ChooseMobileNetworkDialog::ShowDialog(GetNativeWindow()); | 1628 chromeos::ChooseMobileNetworkDialog::ShowDialog(GetNativeWindow()); |
| 1226 } else if ((cellular = cros_->FindCellularNetworkByPath(service_path))) { | 1629 } else if ((cellular = cros_->FindCellularNetworkByPath(service_path))) { |
| 1227 if (command == "connect") { | 1630 if (command == kTagConnect) { |
| 1228 cros_->ConnectToCellularNetwork(cellular); | 1631 cros_->ConnectToCellularNetwork(cellular); |
| 1229 } else if (command == "disconnect") { | 1632 } else if (command == kTagDisconnect) { |
| 1230 cros_->DisconnectFromNetwork(cellular); | 1633 cros_->DisconnectFromNetwork(cellular); |
| 1231 } else if (command == "activate") { | 1634 } else if (command == kTagActivate) { |
| 1232 ash::Shell::GetInstance()->delegate()->OpenMobileSetup(service_path); | 1635 ash::Shell::GetInstance()->delegate()->OpenMobileSetup(service_path); |
| 1233 } else if (command == "options") { | 1636 } else if (command == kTagOptions) { |
| 1234 PopulateDictionaryDetails(cellular); | 1637 PopulateDictionaryDetails(cellular); |
| 1235 } | 1638 } |
| 1236 } | 1639 } |
| 1237 } | 1640 } |
| 1238 | 1641 |
| 1239 void InternetOptionsHandler::HandleVPNButtonClick( | 1642 void InternetOptionsHandler::HandleVPNButtonClick( |
| 1240 const std::string& service_path, | 1643 const std::string& service_path, |
| 1241 const std::string& command) { | 1644 const std::string& command) { |
| 1242 chromeos::VirtualNetwork* network = NULL; | 1645 chromeos::VirtualNetwork* network = NULL; |
| 1243 if (command == "forget") { | 1646 if (command == kTagForget) { |
| 1244 cros_->ForgetNetwork(service_path); | 1647 cros_->ForgetNetwork(service_path); |
| 1245 } else if (service_path == kOtherNetworksFakePath) { | 1648 } else if (service_path == kOtherNetworksFakePath) { |
| 1246 // TODO(altimofeev): verify if service_path in condition is correct. | 1649 // TODO(altimofeev): verify if service_path in condition is correct. |
| 1247 // Other VPN networks. | 1650 // Other VPN networks. |
| 1248 chromeos::NetworkConfigView::ShowForType( | 1651 chromeos::NetworkConfigView::ShowForType( |
| 1249 chromeos::TYPE_VPN, GetNativeWindow()); | 1652 chromeos::TYPE_VPN, GetNativeWindow()); |
| 1250 } else if ((network = cros_->FindVirtualNetworkByPath(service_path))) { | 1653 } else if ((network = cros_->FindVirtualNetworkByPath(service_path))) { |
| 1251 if (command == "connect") { | 1654 if (command == kTagConnect) { |
| 1252 network->SetEnrollmentDelegate( | 1655 network->SetEnrollmentDelegate( |
| 1253 chromeos::CreateEnrollmentDelegate( | 1656 chromeos::CreateEnrollmentDelegate( |
| 1254 GetNativeWindow(), | 1657 GetNativeWindow(), |
| 1255 network->name(), | 1658 network->name(), |
| 1256 ProfileManager::GetLastUsedProfile())); | 1659 ProfileManager::GetLastUsedProfile())); |
| 1257 network->AttemptConnection(base::Bind(&InternetOptionsHandler::DoConnect, | 1660 network->AttemptConnection(base::Bind(&InternetOptionsHandler::DoConnect, |
| 1258 weak_factory_.GetWeakPtr(), | 1661 weak_factory_.GetWeakPtr(), |
| 1259 network)); | 1662 network)); |
| 1260 } else if (command == "disconnect") { | 1663 } else if (command == kTagDisconnect) { |
| 1261 cros_->DisconnectFromNetwork(network); | 1664 cros_->DisconnectFromNetwork(network); |
| 1262 } else if (command == "options") { | 1665 } else if (command == kTagOptions) { |
| 1263 PopulateDictionaryDetails(network); | 1666 PopulateDictionaryDetails(network); |
| 1264 } | 1667 } |
| 1265 } | 1668 } |
| 1266 } | 1669 } |
| 1267 | 1670 |
| 1268 void InternetOptionsHandler::DoConnect(chromeos::Network* network) { | 1671 void InternetOptionsHandler::DoConnect(chromeos::Network* network) { |
| 1269 if (network->type() == chromeos::TYPE_VPN) { | 1672 if (network->type() == chromeos::TYPE_VPN) { |
| 1270 chromeos::VirtualNetwork* vpn = | 1673 chromeos::VirtualNetwork* vpn = |
| 1271 static_cast<chromeos::VirtualNetwork*>(network); | 1674 static_cast<chromeos::VirtualNetwork*>(network); |
| 1272 if (vpn->NeedMoreInfoToConnect()) { | 1675 if (vpn->NeedMoreInfoToConnect()) { |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1425 NetworkInfoDictionary network_dict(vpn, | 1828 NetworkInfoDictionary network_dict(vpn, |
| 1426 remembered, | 1829 remembered, |
| 1427 web_ui()->GetDeviceScale()); | 1830 web_ui()->GetDeviceScale()); |
| 1428 list->Append(network_dict.BuildDictionary()); | 1831 list->Append(network_dict.BuildDictionary()); |
| 1429 } | 1832 } |
| 1430 | 1833 |
| 1431 return list; | 1834 return list; |
| 1432 } | 1835 } |
| 1433 | 1836 |
| 1434 void InternetOptionsHandler::FillNetworkInfo(DictionaryValue* dictionary) { | 1837 void InternetOptionsHandler::FillNetworkInfo(DictionaryValue* dictionary) { |
| 1435 dictionary->SetBoolean("accessLocked", cros_->IsLocked()); | 1838 dictionary->SetBoolean(kTagAccessLocked, cros_->IsLocked()); |
| 1436 dictionary->Set("wiredList", GetWiredList()); | 1839 dictionary->Set(kTagWiredList, GetWiredList()); |
| 1437 dictionary->Set("wirelessList", GetWirelessList()); | 1840 dictionary->Set(kTagWirelessList, GetWirelessList()); |
| 1438 dictionary->Set("vpnList", GetVPNList()); | 1841 dictionary->Set(kTagVpnList, GetVPNList()); |
| 1439 dictionary->Set("rememberedList", GetRememberedList()); | 1842 dictionary->Set(kTagRememberedList, GetRememberedList()); |
| 1440 dictionary->SetBoolean("wifiAvailable", cros_->wifi_available()); | 1843 dictionary->SetBoolean(kTagWifiAvailable, cros_->wifi_available()); |
| 1441 dictionary->SetBoolean("wifiBusy", cros_->wifi_busy()); | 1844 dictionary->SetBoolean(kTagWifiBusy, cros_->wifi_busy()); |
| 1442 dictionary->SetBoolean("wifiEnabled", cros_->wifi_enabled()); | 1845 dictionary->SetBoolean(kTagWifiEnabled, cros_->wifi_enabled()); |
| 1443 dictionary->SetBoolean("cellularAvailable", cros_->cellular_available()); | 1846 dictionary->SetBoolean(kTagCellularAvailable, cros_->cellular_available()); |
| 1444 dictionary->SetBoolean("cellularBusy", cros_->cellular_busy()); | 1847 dictionary->SetBoolean(kTagCellularBusy, cros_->cellular_busy()); |
| 1445 dictionary->SetBoolean("cellularEnabled", cros_->cellular_enabled()); | 1848 dictionary->SetBoolean(kTagCellularEnabled, cros_->cellular_enabled()); |
| 1446 dictionary->SetBoolean("wimaxEnabled", cros_->wimax_enabled()); | 1849 dictionary->SetBoolean(kTagWimaxEnabled, cros_->wimax_enabled()); |
| 1447 dictionary->SetBoolean("wimaxAvailable", cros_->wimax_available()); | 1850 dictionary->SetBoolean(kTagWimaxAvailable, cros_->wimax_available()); |
| 1448 dictionary->SetBoolean("wimaxBusy", cros_->wimax_busy()); | 1851 dictionary->SetBoolean(kTagWimaxBusy, cros_->wimax_busy()); |
| 1449 // TODO(kevers): The use of 'offline_mode' is not quite correct. Update once | 1852 // TODO(kevers): The use of 'offline_mode' is not quite correct. Update once |
| 1450 // we have proper back-end support. | 1853 // we have proper back-end support. |
| 1451 dictionary->SetBoolean("airplaneMode", cros_->offline_mode()); | 1854 dictionary->SetBoolean(kTagAirplaneMode, cros_->offline_mode()); |
| 1452 } | 1855 } |
| 1453 | 1856 |
| 1454 void InternetOptionsHandler::SetValueDictionary( | 1857 void InternetOptionsHandler::SetValueDictionary( |
| 1455 DictionaryValue* settings, | 1858 DictionaryValue* settings, |
| 1456 const char* key, | 1859 const char* key, |
| 1457 base::Value* value, | 1860 base::Value* value, |
| 1458 const chromeos::NetworkPropertyUIData& ui_data) { | 1861 const chromeos::NetworkPropertyUIData& ui_data) { |
| 1459 DictionaryValue* value_dict = new DictionaryValue(); | 1862 DictionaryValue* value_dict = new DictionaryValue(); |
| 1460 // DictionaryValue::Set() takes ownership of |value|. | 1863 // DictionaryValue::Set() takes ownership of |value|. |
| 1461 if (value) | 1864 if (value) |
| 1462 value_dict->Set("value", value); | 1865 value_dict->Set(kTagValue, value); |
| 1463 const base::Value* default_value = ui_data.default_value(); | 1866 const base::Value* default_value = ui_data.default_value(); |
| 1464 if (default_value) | 1867 if (default_value) |
| 1465 value_dict->Set("default", default_value->DeepCopy()); | 1868 value_dict->Set(kTagDefault, default_value->DeepCopy()); |
| 1466 if (ui_data.managed()) | 1869 if (ui_data.managed()) |
| 1467 value_dict->SetString("controlledBy", "policy"); | 1870 value_dict->SetString(kTagControlledBy, kTagPolicy); |
| 1468 else if (ui_data.recommended()) | 1871 else if (ui_data.recommended()) |
| 1469 value_dict->SetString("controlledBy", "recommended"); | 1872 value_dict->SetString(kTagControlledBy, kTagRecommended); |
| 1470 settings->Set(key, value_dict); | 1873 settings->Set(key, value_dict); |
| 1471 } | 1874 } |
| 1472 | 1875 |
| 1473 } // namespace options2 | 1876 } // namespace options2 |
| OLD | NEW |