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

Side by Side Diff: Source/devtools/front_end/settings/SettingsScreen.js

Issue 1292673002: [DevTools] Group options in network presets select. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Updated visual design Created 5 years, 4 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 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 194
195 this._appendSection().appendChild(createTextButton(WebInspector.UIString("Re store defaults and reload"), restoreAndReload)); 195 this._appendSection().appendChild(createTextButton(WebInspector.UIString("Re store defaults and reload"), restoreAndReload));
196 196
197 function restoreAndReload() 197 function restoreAndReload()
198 { 198 {
199 WebInspector.settings.clearAll(); 199 WebInspector.settings.clearAll();
200 WebInspector.reload(); 200 WebInspector.reload();
201 } 201 }
202 } 202 }
203 203
204 /**
205 * @param {!Runtime.Extension} extension
206 * @return {boolean}
207 */
208 WebInspector.GenericSettingsTab.isSettingVisible = function(extension)
209 {
210 var descriptor = extension.descriptor();
211 if (!("title" in descriptor))
212 return false;
213 if (!(("category" in descriptor) || ("parentSettingName" in descriptor)))
214 return false;
215 return true;
216 }
217
204 WebInspector.GenericSettingsTab.prototype = { 218 WebInspector.GenericSettingsTab.prototype = {
205 /** 219 /**
206 * @param {!Runtime.Extension} extension 220 * @param {!Runtime.Extension} extension
207 */ 221 */
208 _addSetting: function(extension) 222 _addSetting: function(extension)
209 { 223 {
224 if (!WebInspector.GenericSettingsTab.isSettingVisible(extension))
225 return;
210 var descriptor = extension.descriptor(); 226 var descriptor = extension.descriptor();
211 if (!("title" in descriptor))
212 return;
213 if (!(("category" in descriptor) || ("parentSettingName" in descriptor)) )
214 return;
215
216 var sectionName = descriptor["category"]; 227 var sectionName = descriptor["category"];
217 var settingName = descriptor["settingName"]; 228 var settingName = descriptor["settingName"];
218 var setting = WebInspector.moduleSetting(settingName); 229 var setting = WebInspector.moduleSetting(settingName);
219 var uiTitle = WebInspector.UIString(extension.title(WebInspector.platfor m())); 230 var uiTitle = WebInspector.UIString(extension.title(WebInspector.platfor m()));
220 231
221 var sectionElement = this._sectionElement(sectionName); 232 var sectionElement = this._sectionElement(sectionName);
222 var parentSettingName = descriptor["parentSettingName"]; 233 var parentSettingName = descriptor["parentSettingName"];
223 var parentSettingElement = parentSettingName ? this._nameToSettingElemen t.get(descriptor["parentSettingName"]) : null; 234 var parentSettingElement = parentSettingName ? this._nameToSettingElemen t.get(descriptor["parentSettingName"]) : null;
224 var parentFieldset = null; 235 var parentFieldset = null;
225 if (parentSettingElement) { 236 if (parentSettingElement) {
(...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after
601 WebInspector._settingsController.showSettingsScreen(); 612 WebInspector._settingsController.showSettingsScreen();
602 else if (actionId === "settings.help") 613 else if (actionId === "settings.help")
603 InspectorFrontendHost.openInNewTab("https://developers.google.com/we b/tools/chrome-devtools/"); 614 InspectorFrontendHost.openInNewTab("https://developers.google.com/we b/tools/chrome-devtools/");
604 else if (actionId === "settings.shortcuts") 615 else if (actionId === "settings.shortcuts")
605 WebInspector._settingsController.showSettingsScreen("shortcuts"); 616 WebInspector._settingsController.showSettingsScreen("shortcuts");
606 } 617 }
607 } 618 }
608 619
609 /** 620 /**
610 * @constructor 621 * @constructor
622 * @implements {WebInspector.Revealer}
623 */
624 WebInspector.SettingsController.Revealer = function() { }
625
626 WebInspector.SettingsController.Revealer.prototype = {
627 /**
628 * @override
629 * @param {!Object} object
630 * @param {number=} lineNumber
631 * @return {!Promise}
632 */
633 reveal: function(object, lineNumber)
634 {
635 console.assert(object instanceof WebInspector.Setting);
636 var setting = /** @type {!WebInspector.Setting} */ (object);
637 var success = false;
638
639 self.runtime.extensions("setting").forEach(revealModuleSetting);
640 self.runtime.extensions(WebInspector.SettingUI).forEach(revealSettingUI) ;
641 self.runtime.extensions("settings-view").forEach(revealSettingsView);
642
643 return success ? Promise.resolve() : Promise.reject();
644
645 /**
646 * @param {!Runtime.Extension} extension
647 */
648 function revealModuleSetting(extension)
649 {
650 if (!WebInspector.GenericSettingsTab.isSettingVisible(extension))
651 return;
652 if (extension.descriptor()["settingName"] === setting.name) {
653 WebInspector._settingsController.showSettingsScreen("general");
654 success = true;
655 }
656 }
657
658 /**
659 * @param {!Runtime.Extension} extension
660 */
661 function revealSettingUI(extension)
662 {
663 var settings = extension.descriptor()["settings"];
664 if (settings && settings.indexOf(setting.name) !== -1) {
665 WebInspector._settingsController.showSettingsScreen("general");
666 success = true;
667 }
668 }
669
670 /**
671 * @param {!Runtime.Extension} extension
672 */
673 function revealSettingsView(extension)
674 {
675 var settings = extension.descriptor()["settings"];
676 if (settings && settings.indexOf(setting.name) !== -1) {
677 WebInspector._settingsController.showSettingsScreen(extension.de scriptor()["name"]);
678 success = true;
679 }
680 }
681 }
682 }
683
684 /**
685 * @constructor
611 * @extends {WebInspector.Object} 686 * @extends {WebInspector.Object}
612 * @param {!Array.<{id: string, placeholder: (string|undefined), options: (!Arra y.<string>|undefined)}>} columns 687 * @param {!Array.<{id: string, placeholder: (string|undefined), options: (!Arra y.<string>|undefined)}>} columns
613 * @param {function(!Element, {id: string, placeholder: (string|undefined), opti ons: (!Array.<string>|undefined)}, ?string)} itemRenderer 688 * @param {function(!Element, {id: string, placeholder: (string|undefined), opti ons: (!Array.<string>|undefined)}, ?string)} itemRenderer
614 */ 689 */
615 WebInspector.SettingsList = function(columns, itemRenderer) 690 WebInspector.SettingsList = function(columns, itemRenderer)
616 { 691 {
617 this.element = createElementWithClass("div", "settings-list"); 692 this.element = createElementWithClass("div", "settings-list");
618 this.element.tabIndex = -1; 693 this.element.tabIndex = -1;
619 this._itemRenderer = itemRenderer; 694 this._itemRenderer = itemRenderer;
620 /** @type {!Map.<string, !Element>} */ 695 /** @type {!Map.<string, !Element>} */
(...skipping 461 matching lines...) Expand 10 before | Expand all | Expand 10 after
1082 var columnId = columns[i]; 1157 var columnId = columns[i];
1083 var editElement = this._addInputElements.get(columnId); 1158 var editElement = this._addInputElements.get(columnId);
1084 this._setEditElementValue(editElement, ""); 1159 this._setEditElementValue(editElement, "");
1085 } 1160 }
1086 }, 1161 },
1087 1162
1088 __proto__: WebInspector.SettingsList.prototype 1163 __proto__: WebInspector.SettingsList.prototype
1089 } 1164 }
1090 1165
1091 WebInspector._settingsController = new WebInspector.SettingsController(); 1166 WebInspector._settingsController = new WebInspector.SettingsController();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698