summaryrefslogtreecommitdiff
path: root/chromium/chrome/browser/resources/settings/internet_page/network_proxy_input.js
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/browser/resources/settings/internet_page/network_proxy_input.js')
-rw-r--r--chromium/chrome/browser/resources/settings/internet_page/network_proxy_input.js53
1 files changed, 53 insertions, 0 deletions
diff --git a/chromium/chrome/browser/resources/settings/internet_page/network_proxy_input.js b/chromium/chrome/browser/resources/settings/internet_page/network_proxy_input.js
new file mode 100644
index 00000000000..a4806ff1467
--- /dev/null
+++ b/chromium/chrome/browser/resources/settings/internet_page/network_proxy_input.js
@@ -0,0 +1,53 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+/**
+ * @fileoverview Polymer element for displaying and editing a single
+ * network proxy value. When the URL or port changes, a 'changed' event is
+ * fired with the combined url and port values passed as a single string,
+ * url:port.
+ */
+Polymer({
+ is: 'network-proxy-input',
+
+ properties: {
+ /**
+ * Whether or not the proxy value can be edited.
+ */
+ editable: {
+ type: Boolean,
+ value: false
+ },
+
+ /**
+ * A label for the proxy value.
+ */
+ label: {
+ type: String,
+ value: 'Proxy'
+ },
+
+ /**
+ * The proxy object.
+ * @type {?CrOnc.ProxyLocation}
+ */
+ value: {
+ type: Object,
+ value: function() { return { Host: '', Port: 80 }; },
+ notify: true
+ },
+ },
+
+ /**
+ * Event triggered when an input value changes.
+ * @private
+ */
+ onValueChanged_: function() {
+ var port = parseInt(this.value.Port);
+ if (isNaN(port))
+ port = 80;
+ this.value.Port = port;
+ this.fire('changed', { value: this.value });
+ }
+});