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

Side by Side Diff: chrome/browser/resources/options/chromeos/internet_detail.js

Issue 11066015: Finish implementation of controlled setting indicator (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 cr.define('options.internet', function() { 5 cr.define('options.internet', function() {
6 var OptionsPage = options.OptionsPage; 6 var OptionsPage = options.OptionsPage;
7 /** @const */ var ArrayDataModel = cr.ui.ArrayDataModel; 7 /** @const */ var ArrayDataModel = cr.ui.ArrayDataModel;
8 /** @const */ var IPAddressField = options.internet.IPAddressField; 8 /** @const */ var IPAddressField = options.internet.IPAddressField;
9 9
10 /** 10 /**
(...skipping 957 matching lines...) Expand 10 before | Expand all | Expand 10 after
968 detailsPage.vpn = true; 968 detailsPage.vpn = true;
969 detailsPage.ethernet = false; 969 detailsPage.ethernet = false;
970 detailsPage.cellular = false; 970 detailsPage.cellular = false;
971 detailsPage.gsm = false; 971 detailsPage.gsm = false;
972 $('inet-service-name').textContent = data.service_name; 972 $('inet-service-name').textContent = data.service_name;
973 $('inet-provider-type').textContent = data.provider_type; 973 $('inet-provider-type').textContent = data.provider_type;
974 $('inet-username').textContent = data.username; 974 $('inet-username').textContent = data.username;
975 var inetServerHostname = $('inet-server-hostname'); 975 var inetServerHostname = $('inet-server-hostname');
976 inetServerHostname.value = data.serverHostname.value; 976 inetServerHostname.value = data.serverHostname.value;
977 inetServerHostname.resetHandler = function() { 977 inetServerHostname.resetHandler = function() {
978 inetServerHostname.value = data.serverHostname.default; 978 inetServerHostname.value = data.serverHostname.recommendedValue;
979 OptionsPage.hideBubble();
979 }; 980 };
980 } else { 981 } else {
981 OptionsPage.showTab($('internet-nav-tab')); 982 OptionsPage.showTab($('internet-nav-tab'));
982 detailsPage.ethernet = true; 983 detailsPage.ethernet = true;
983 detailsPage.wireless = false; 984 detailsPage.wireless = false;
984 detailsPage.wimax = false; 985 detailsPage.wimax = false;
985 detailsPage.vpn = false; 986 detailsPage.vpn = false;
986 detailsPage.cellular = false; 987 detailsPage.cellular = false;
987 detailsPage.gsm = false; 988 detailsPage.gsm = false;
988 } 989 }
989 990
990 // Update controlled option indicators. 991 // Update controlled option indicators.
991 indicators = cr.doc.querySelectorAll( 992 indicators = cr.doc.querySelectorAll(
992 '#details-internet-page .controlled-setting-indicator'); 993 '#details-internet-page .controlled-setting-indicator');
993 for (var i = 0; i < indicators.length; i++) { 994 for (var i = 0; i < indicators.length; i++) {
994 var dataProperty = indicators[i].getAttribute('data'); 995 var propName = indicators[i].getAttribute('data');
995 if (dataProperty && data[dataProperty]) { 996 if (propName && data[propName]) {
James Hawkins 2012/10/04 16:16:51 Optional nit: Save a lot of indentation by continu
bartfab (slow) 2012/10/04 18:55:39 Done.
996 var controlledBy = data[dataProperty].controlledBy; 997 var propData = data[propName];
997 if (controlledBy) { 998 // Create a synthetic pref change event decorated as
998 indicators[i].controlledBy = controlledBy; 999 // CoreOptionsHandler::CreateValueForPref() does.
999 var forElement = $(indicators[i].getAttribute('for')); 1000 var event = new cr.Event(name);
1000 if (forElement) { 1001 event.value = {
1001 forElement.disabled = controlledBy != 'recommended'; 1002 value: propData.value,
1002 if (forElement.type == 'radio' && !forElement.checked) 1003 controlledBy: propData.controlledBy,
1003 indicators[i].hidden = true; 1004 recommendedValue: propData.recommendedValue,
1004 if (forElement.resetHandler) 1005 };
1005 indicators[i].resetHandler = forElement.resetHandler; 1006 indicators[i].handlePrefChange(event);
1006 } 1007 var forElement = $(indicators[i].getAttribute('for'));
1007 } else { 1008 if (forElement) {
1008 indicators[i].controlledBy = null; 1009 forElement.disabled = propData.controlledBy == 'policy';
1010 if (forElement.resetHandler)
1011 indicators[i].resetHandler = forElement.resetHandler;
1009 } 1012 }
1010 } 1013 }
1011 } 1014 }
1012 1015
1013 detailsPage.updateControls(); 1016 detailsPage.updateControls();
1014 1017
1015 // Don't show page name in address bar and in history to prevent people 1018 // Don't show page name in address bar and in history to prevent people
1016 // navigate here by hand and solve issue with page session restore. 1019 // navigate here by hand and solve issue with page session restore.
1017 OptionsPage.showPageByName('detailsInternetPage', false); 1020 OptionsPage.showPageByName('detailsInternetPage', false);
1018 }; 1021 };
1019 1022
1020 return { 1023 return {
1021 DetailsInternetPage: DetailsInternetPage 1024 DetailsInternetPage: DetailsInternetPage
1022 }; 1025 };
1023 }); 1026 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698