| OLD | NEW | 
|---|
| 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  Loading... | 
| 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  Loading... | 
| 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  Loading... | 
| 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 }; | 
| OLD | NEW | 
|---|