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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/components/DOMBreakpointsSidebarPane.js

Issue 2900843002: DevTools: remove BreakpointsSidebarPaneBase and breakpointsList.css (Closed)
Patch Set: rebase again Created 3 years, 6 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 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 13 matching lines...) Expand all
24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */ 29 */
30 30
31 /** 31 /**
32 * @implements {UI.ContextFlavorListener} 32 * @implements {UI.ContextFlavorListener}
33 */ 33 */
34 Components.DOMBreakpointsSidebarPane = class extends Components.BreakpointsSideb arPaneBase { 34 Components.DOMBreakpointsSidebarPane = class extends UI.VBox {
35 constructor() { 35 constructor() {
36 super(); 36 super(true);
37 this.registerRequiredCSS('components/breakpointsList.css'); 37 this.registerRequiredCSS('components/domBreakpointsSidebarPane.css');
38 this.listElement.classList.add('dom-breakpoints-list'); 38
39 this._listElement = this.contentElement.createChild('div', 'breakpoint-list hidden');
40 this._emptyElement = this.contentElement.createChild('div', 'gray-info-messa ge');
41 this._emptyElement.textContent = Common.UIString('No Breakpoints');
39 42
40 /** @type {!Map<!SDK.DOMDebuggerModel.DOMBreakpoint, !Components.DOMBreakpoi ntsSidebarPane.Item>} */ 43 /** @type {!Map<!SDK.DOMDebuggerModel.DOMBreakpoint, !Components.DOMBreakpoi ntsSidebarPane.Item>} */
41 this._items = new Map(); 44 this._items = new Map();
42 SDK.targetManager.addModelListener( 45 SDK.targetManager.addModelListener(
43 SDK.DOMDebuggerModel, SDK.DOMDebuggerModel.Events.DOMBreakpointAdded, th is._breakpointAdded, this); 46 SDK.DOMDebuggerModel, SDK.DOMDebuggerModel.Events.DOMBreakpointAdded, th is._breakpointAdded, this);
44 SDK.targetManager.addModelListener( 47 SDK.targetManager.addModelListener(
45 SDK.DOMDebuggerModel, SDK.DOMDebuggerModel.Events.DOMBreakpointToggled, this._breakpointToggled, this); 48 SDK.DOMDebuggerModel, SDK.DOMDebuggerModel.Events.DOMBreakpointToggled, this._breakpointToggled, this);
46 SDK.targetManager.addModelListener( 49 SDK.targetManager.addModelListener(
47 SDK.DOMDebuggerModel, SDK.DOMDebuggerModel.Events.DOMBreakpointsRemoved, this._breakpointsRemoved, this); 50 SDK.DOMDebuggerModel, SDK.DOMDebuggerModel.Events.DOMBreakpointsRemoved, this._breakpointsRemoved, this);
48 51
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 113
111 /** 114 /**
112 * @param {!Common.Event} event 115 * @param {!Common.Event} event
113 */ 116 */
114 _breakpointsRemoved(event) { 117 _breakpointsRemoved(event) {
115 var breakpoints = /** @type {!Array<!SDK.DOMDebuggerModel.DOMBreakpoint>} */ (event.data); 118 var breakpoints = /** @type {!Array<!SDK.DOMDebuggerModel.DOMBreakpoint>} */ (event.data);
116 for (var breakpoint of breakpoints) { 119 for (var breakpoint of breakpoints) {
117 var item = this._items.get(breakpoint); 120 var item = this._items.get(breakpoint);
118 if (item) { 121 if (item) {
119 this._items.delete(breakpoint); 122 this._items.delete(breakpoint);
120 this.removeListElement(item.element); 123 this._listElement.removeChild(item.element);
121 } 124 }
122 } 125 }
126 if (!this._listElement.firstChild) {
127 this._emptyElement.classList.remove('hidden');
128 this._listElement.classList.add('hidden');
129 }
123 } 130 }
124 131
125 /** 132 /**
126 * @param {!SDK.DOMDebuggerModel.DOMBreakpoint} breakpoint 133 * @param {!SDK.DOMDebuggerModel.DOMBreakpoint} breakpoint
127 */ 134 */
128 _addBreakpoint(breakpoint) { 135 _addBreakpoint(breakpoint) {
129 var element = createElement('li'); 136 var element = createElementWithClass('div', 'breakpoint-entry');
130 element.addEventListener('contextmenu', this._contextMenu.bind(this, breakpo int), true); 137 element.addEventListener('contextmenu', this._contextMenu.bind(this, breakpo int), true);
131 138
132 var checkboxLabel = UI.CheckboxLabel.create('', breakpoint.enabled); 139 var checkboxLabel = UI.CheckboxLabel.create('', breakpoint.enabled);
133 var checkboxElement = checkboxLabel.checkboxElement; 140 var checkboxElement = checkboxLabel.checkboxElement;
134 checkboxElement.addEventListener('click', this._checkboxClicked.bind(this, b reakpoint), false); 141 checkboxElement.addEventListener('click', this._checkboxClicked.bind(this, b reakpoint), false);
135 element.appendChild(checkboxLabel); 142 element.appendChild(checkboxLabel);
136 143
137 var labelElement = createElementWithClass('div', 'dom-breakpoint'); 144 var labelElement = createElementWithClass('div', 'dom-breakpoint');
138 element.appendChild(labelElement); 145 element.appendChild(labelElement);
139 146
140 var linkifiedNode = Components.DOMPresentationUtils.linkifyNodeReference(bre akpoint.node); 147 var linkifiedNode = Components.DOMPresentationUtils.linkifyNodeReference(bre akpoint.node);
141 linkifiedNode.classList.add('monospace'); 148 linkifiedNode.classList.add('monospace');
142 linkifiedNode.style.display = 'block'; 149 linkifiedNode.style.display = 'block';
143 labelElement.appendChild(linkifiedNode); 150 labelElement.appendChild(linkifiedNode);
144 151
145 var description = createElement('div'); 152 var description = createElement('div');
146 description.textContent = Components.DOMBreakpointsSidebarPane.BreakpointTyp eLabels.get(breakpoint.type); 153 description.textContent = Components.DOMBreakpointsSidebarPane.BreakpointTyp eLabels.get(breakpoint.type);
147 labelElement.appendChild(description); 154 labelElement.appendChild(description);
148 155
149 var item = {breakpoint: breakpoint, element: element, checkbox: checkboxElem ent}; 156 var item = {breakpoint: breakpoint, element: element, checkbox: checkboxElem ent};
150 element._item = item; 157 element._item = item;
151 this._items.set(breakpoint, item); 158 this._items.set(breakpoint, item);
152 159
153 var currentElement = this.listElement.firstChild; 160 var currentElement = this._listElement.firstChild;
154 while (currentElement) { 161 while (currentElement) {
155 if (currentElement._item && currentElement._item.breakpoint.type < breakpo int.type) 162 if (currentElement._item && currentElement._item.breakpoint.type < breakpo int.type)
156 break; 163 break;
157 currentElement = currentElement.nextSibling; 164 currentElement = currentElement.nextSibling;
158 } 165 }
159 this.addListElement(element, currentElement); 166 this._listElement.insertBefore(element, currentElement);
167 this._emptyElement.classList.add('hidden');
168 this._listElement.classList.remove('hidden');
160 } 169 }
161 170
162 /** 171 /**
163 * @param {!SDK.DOMDebuggerModel.DOMBreakpoint} breakpoint 172 * @param {!SDK.DOMDebuggerModel.DOMBreakpoint} breakpoint
164 * @param {!Event} event 173 * @param {!Event} event
165 */ 174 */
166 _contextMenu(breakpoint, event) { 175 _contextMenu(breakpoint, event) {
167 var contextMenu = new UI.ContextMenu(event); 176 var contextMenu = new UI.ContextMenu(event);
168 contextMenu.appendItem(Common.UIString.capitalize('Remove ^breakpoint'), () => { 177 contextMenu.appendItem(Common.UIString.capitalize('Remove ^breakpoint'), () => {
169 breakpoint.domDebuggerModel.removeDOMBreakpoint(breakpoint.node, breakpoin t.type); 178 breakpoint.domDebuggerModel.removeDOMBreakpoint(breakpoint.node, breakpoin t.type);
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 275
267 var breakpointsMenu = contextMenu.appendSubMenuItem(Common.UIString('Break o n...')); 276 var breakpointsMenu = contextMenu.appendSubMenuItem(Common.UIString('Break o n...'));
268 for (var key in SDK.DOMDebuggerModel.DOMBreakpoint.Type) { 277 for (var key in SDK.DOMDebuggerModel.DOMBreakpoint.Type) {
269 var type = SDK.DOMDebuggerModel.DOMBreakpoint.Type[key]; 278 var type = SDK.DOMDebuggerModel.DOMBreakpoint.Type[key];
270 var label = Components.DOMBreakpointsSidebarPane.BreakpointTypeNouns.get(t ype); 279 var label = Components.DOMBreakpointsSidebarPane.BreakpointTypeNouns.get(t ype);
271 breakpointsMenu.appendCheckboxItem( 280 breakpointsMenu.appendCheckboxItem(
272 label, toggleBreakpoint.bind(null, type), domDebuggerModel.hasDOMBreak point(node, type)); 281 label, toggleBreakpoint.bind(null, type), domDebuggerModel.hasDOMBreak point(node, type));
273 } 282 }
274 } 283 }
275 }; 284 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698