Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 /** | 5 /** |
| 6 * @fileoverview | 6 * @fileoverview |
| 7 * 'settings-internet-page' is the settings page containing internet | 7 * 'settings-internet-page' is the settings page containing internet |
| 8 * settings. | 8 * settings. |
| 9 */ | 9 */ |
| 10 Polymer({ | 10 Polymer({ |
| 11 is: 'settings-internet-page', | 11 is: 'settings-internet-page', |
| 12 | 12 |
| 13 behaviors: [I18nBehavior], | 13 behaviors: [I18nBehavior, settings.RouteObserverBehavior], |
| 14 | 14 |
| 15 properties: { | 15 properties: { |
| 16 /** | 16 /** |
| 17 * Interface for networkingPrivate calls. May be overriden by tests. | 17 * Interface for networkingPrivate calls. May be overriden by tests. |
| 18 * @type {NetworkingPrivate} | 18 * @type {NetworkingPrivate} |
| 19 */ | 19 */ |
| 20 networkingPrivate: { | 20 networkingPrivate: { |
| 21 type: Object, | 21 type: Object, |
| 22 value: chrome.networkingPrivate, | 22 value: chrome.networkingPrivate, |
| 23 }, | 23 }, |
| (...skipping 17 matching lines...) Expand all Loading... | |
| 41 /** | 41 /** |
| 42 * Highest priority connected network or null. Set by network-summary. | 42 * Highest priority connected network or null. Set by network-summary. |
| 43 * @type {?CrOnc.NetworkStateProperties|undefined} | 43 * @type {?CrOnc.NetworkStateProperties|undefined} |
| 44 */ | 44 */ |
| 45 defaultNetwork: { | 45 defaultNetwork: { |
| 46 type: Object, | 46 type: Object, |
| 47 notify: true, | 47 notify: true, |
| 48 }, | 48 }, |
| 49 | 49 |
| 50 /** | 50 /** |
| 51 * Set by internet-subpage. Controls spinner visibility in subpage header. | |
| 52 * @private | |
| 53 */ | |
| 54 showSpinner_: { | |
| 55 type: Boolean, | |
| 56 notify: true, | |
|
michaelpg
2017/03/01 23:27:59
notify: true means it should propagate upwards; in
stevenjb
2017/03/02 00:25:17
Done.
| |
| 57 }, | |
| 58 | |
| 59 /** | |
| 60 * The network type for the networks subpage. Used in the subpage header. | |
| 61 * @private | |
| 62 */ | |
| 63 subpageType_: String, | |
| 64 | |
| 65 /** | |
| 51 * The network type for the known networks subpage. | 66 * The network type for the known networks subpage. |
| 52 * @private | 67 * @private |
| 53 */ | 68 */ |
| 54 knownNetworksType_: String, | 69 knownNetworksType_: String, |
| 55 | 70 |
| 56 /** | 71 /** |
| 57 * Whether the 'Add connection' section is expanded. | 72 * Whether the 'Add connection' section is expanded. |
| 58 * @private | 73 * @private |
| 59 */ | 74 */ |
| 60 addConnectionExpanded_: { | 75 addConnectionExpanded_: { |
| (...skipping 15 matching lines...) Expand all Loading... | |
| 76 return []; | 91 return []; |
| 77 } | 92 } |
| 78 }, | 93 }, |
| 79 }, | 94 }, |
| 80 | 95 |
| 81 // Element event listeners | 96 // Element event listeners |
| 82 listeners: { | 97 listeners: { |
| 83 'device-enabled-toggled': 'onDeviceEnabledToggled_', | 98 'device-enabled-toggled': 'onDeviceEnabledToggled_', |
| 84 'show-detail': 'onShowDetail_', | 99 'show-detail': 'onShowDetail_', |
| 85 'show-known-networks': 'onShowKnownNetworks_', | 100 'show-known-networks': 'onShowKnownNetworks_', |
| 101 'show-networks': 'onShowNetworks_', | |
| 86 }, | 102 }, |
| 87 | 103 |
| 88 // chrome.networkingPrivate listeners | 104 // chrome.networkingPrivate listeners |
| 89 /** @private {Function} */ | 105 /** @private {Function} */ |
| 90 onExtensionAddedListener_: null, | 106 onExtensionAddedListener_: null, |
| 91 | 107 |
| 92 /** @private {Function} */ | 108 /** @private {Function} */ |
| 93 onExtensionRemovedListener_: null, | 109 onExtensionRemovedListener_: null, |
| 94 | 110 |
| 95 /** @private {Function} */ | 111 /** @private {Function} */ |
| (...skipping 28 matching lines...) Expand all Loading... | |
| 124 assert(this.onExtensionAddedListener_)); | 140 assert(this.onExtensionAddedListener_)); |
| 125 chrome.management.onEnabled.removeListener( | 141 chrome.management.onEnabled.removeListener( |
| 126 assert(this.onExtensionAddedListener_)); | 142 assert(this.onExtensionAddedListener_)); |
| 127 chrome.management.onUninstalled.removeListener( | 143 chrome.management.onUninstalled.removeListener( |
| 128 assert(this.onExtensionRemovedListener_)); | 144 assert(this.onExtensionRemovedListener_)); |
| 129 chrome.management.onDisabled.removeListener( | 145 chrome.management.onDisabled.removeListener( |
| 130 assert(this.onExtensionDisabledListener_)); | 146 assert(this.onExtensionDisabledListener_)); |
| 131 }, | 147 }, |
| 132 | 148 |
| 133 /** | 149 /** |
| 150 * settings.RouteObserverBehavior | |
| 151 * @param {!settings.Route} route | |
| 152 * @protected | |
| 153 */ | |
| 154 currentRouteChanged: function(route) { | |
| 155 if (route == settings.Route.INTERNET_NETWORKS) { | |
| 156 // Handle direct navigation to the networks page, | |
| 157 // e.g. chrome://settings/internet/networks?type=WiFi | |
| 158 var queryParams = settings.getQueryParameters(); | |
| 159 var type = queryParams.get('type'); | |
|
michaelpg
2017/03/01 23:27:59
nit: instead of creating a variable, use queryPara
stevenjb
2017/03/02 00:25:17
But.... that requires two lookups! I know it's pro
| |
| 160 if (type) | |
| 161 this.subpageType_ = type; | |
| 162 } | |
| 163 }, | |
| 164 | |
| 165 /** | |
| 134 * Event triggered by a device state enabled toggle. | 166 * Event triggered by a device state enabled toggle. |
| 135 * @param {!{detail: {enabled: boolean, | 167 * @param {!{detail: {enabled: boolean, |
| 136 * type: chrome.networkingPrivate.NetworkType}}} event | 168 * type: chrome.networkingPrivate.NetworkType}}} event |
| 137 * @private | 169 * @private |
| 138 */ | 170 */ |
| 139 onDeviceEnabledToggled_: function(event) { | 171 onDeviceEnabledToggled_: function(event) { |
| 140 if (event.detail.enabled) | 172 if (event.detail.enabled) |
| 141 this.networkingPrivate.enableNetworkType(event.detail.type); | 173 this.networkingPrivate.enableNetworkType(event.detail.type); |
| 142 else | 174 else |
| 143 this.networkingPrivate.disableNetworkType(event.detail.type); | 175 this.networkingPrivate.disableNetworkType(event.detail.type); |
| 144 }, | 176 }, |
| 145 | 177 |
| 146 /** | 178 /** |
| 147 * @param {!{detail: !CrOnc.NetworkStateProperties}} event | 179 * @param {!{detail: !CrOnc.NetworkStateProperties}} event |
| 148 * @private | 180 * @private |
| 149 */ | 181 */ |
| 150 onShowDetail_: function(event) { | 182 onShowDetail_: function(event) { |
| 151 var params = new URLSearchParams; | 183 var params = new URLSearchParams; |
| 152 params.append('guid', event.detail.GUID); | 184 params.append('guid', event.detail.GUID); |
| 153 params.append('type', event.detail.Type); | 185 params.append('type', event.detail.Type); |
| 154 if (event.detail.Name) | 186 if (event.detail.Name) |
| 155 params.append('name', event.detail.Name); | 187 params.append('name', event.detail.Name); |
| 156 settings.navigateTo(settings.Route.NETWORK_DETAIL, params); | 188 settings.navigateTo(settings.Route.NETWORK_DETAIL, params); |
| 157 }, | 189 }, |
| 158 | 190 |
| 159 /** | 191 /** |
| 160 * @param {!{detail: {type: string}}} event | 192 * @param {!{detail: {type: string}}} event |
| 161 * @private | 193 * @private |
| 162 */ | 194 */ |
| 195 onShowNetworks_: function(event) { | |
| 196 var params = new URLSearchParams; | |
| 197 params.append('type', event.detail.Type); | |
| 198 this.subpageType_ = event.detail.Type; | |
| 199 settings.navigateTo(settings.Route.INTERNET_NETWORKS, params); | |
| 200 }, | |
| 201 | |
| 202 /** | |
| 203 * @return {string} | |
| 204 * @private | |
| 205 */ | |
| 206 getNetworksPageTitle_: function() { | |
| 207 return this.i18n('OncType' + this.subpageType_); | |
| 208 }, | |
| 209 | |
| 210 /** | |
| 211 * @param {!{detail: {type: string}}} event | |
| 212 * @private | |
| 213 */ | |
| 163 onShowKnownNetworks_: function(event) { | 214 onShowKnownNetworks_: function(event) { |
| 164 this.knownNetworksType_ = event.detail.type; | 215 this.knownNetworksType_ = event.detail.type; |
| 165 settings.navigateTo(settings.Route.KNOWN_NETWORKS); | 216 settings.navigateTo(settings.Route.KNOWN_NETWORKS); |
| 166 }, | 217 }, |
| 167 | 218 |
| 168 /** | 219 /** |
| 169 * Event triggered when the 'Add connections' div is tapped. | 220 * Event triggered when the 'Add connections' div is tapped. |
| 170 * @param {Event} event | 221 * @param {Event} event |
| 171 * @private | 222 * @private |
| 172 */ | 223 */ |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 275 }, | 326 }, |
| 276 | 327 |
| 277 /** | 328 /** |
| 278 * @param {!chrome.networkingPrivate.ThirdPartyVPNProperties} provider | 329 * @param {!chrome.networkingPrivate.ThirdPartyVPNProperties} provider |
| 279 * @return {string} | 330 * @return {string} |
| 280 */ | 331 */ |
| 281 getAddThirdParrtyVpnLabel_: function(provider) { | 332 getAddThirdParrtyVpnLabel_: function(provider) { |
| 282 return this.i18n('internetAddThirdPartyVPN', provider.ProviderName); | 333 return this.i18n('internetAddThirdPartyVPN', provider.ProviderName); |
| 283 } | 334 } |
| 284 }); | 335 }); |
| OLD | NEW |