Changeset 80228 in webkit
- Timestamp:
- Mar 3, 2011 3:27:00 AM (13 years ago)
- Location:
- trunk/Source
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r80226 r80228 1 2011-03-02 Pavel Podivilov <podivilov@chromium.org> 2 3 Reviewed by Yury Semikhatsky. 4 5 Web Inspector: make selected call frame debugger presentation model property. 6 https://bugs.webkit.org/show_bug.cgi?id=55582 7 8 * inspector/front-end/CallStackSidebarPane.js: 9 (WebInspector.CallStackSidebarPane): 10 (WebInspector.CallStackSidebarPane.prototype.update): 11 (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame): 12 (WebInspector.CallStackSidebarPane.prototype._selectedCallFrameIndex): 13 * inspector/front-end/ConsoleView.js: 14 (WebInspector.ConsoleView.prototype.completions): 15 * inspector/front-end/DebuggerPresentationModel.js: 16 (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame): 17 (WebInspector.DebuggerPresentationModel.prototype.get selectedCallFrame): 18 * inspector/front-end/ScriptsPanel.js: 19 (WebInspector.ScriptsPanel): 20 (WebInspector.ScriptsPanel.prototype.getCompletionsOnCallFrame): 21 (WebInspector.ScriptsPanel.prototype._debuggerResumed): 22 (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded): 23 (WebInspector.ScriptsPanel.prototype._callFrameSelected): 24 1 25 2011-03-03 Jia Pu <jpu@apple.com> 2 26 -
trunk/Source/WebCore/inspector/front-end/CallStackSidebarPane.js
r78482 r80228 24 24 */ 25 25 26 WebInspector.CallStackSidebarPane = function( )26 WebInspector.CallStackSidebarPane = function(model) 27 27 { 28 28 WebInspector.SidebarPane.call(this, WebInspector.UIString("Call Stack")); 29 this._model = model; 29 30 } 30 31 … … 35 36 36 37 this.placards = []; 37 delete this._selectedCallFrame;38 38 39 39 if (!details) { … … 67 67 subtitle = WebInspector.UIString("(internal script)"); 68 68 69 if (callFrame.line > 0) { 70 if (subtitle) 71 subtitle += ":" + callFrame.line; 72 else 73 subtitle = WebInspector.UIString("line %d", callFrame.line); 74 } 69 if (subtitle) 70 subtitle += ":" + (callFrame.line + 1); 71 else 72 subtitle = WebInspector.UIString("line %d", callFrame.line + 1); 75 73 76 74 var placard = new WebInspector.Placard(title, subtitle); … … 89 87 }, 90 88 91 get selectedCallFrame()92 {93 return this._selectedCallFrame;94 },95 96 89 set selectedCallFrame(x) 97 90 { 98 this._ selectedCallFrame = x;91 this._model.selectedCallFrame = x; 99 92 100 93 for (var i = 0; i < this.placards.length; ++i) { 101 94 var placard = this.placards[i]; 102 placard.selected = (placard.callFrame === this._selectedCallFrame);95 placard.selected = (placard.callFrame === x); 103 96 } 104 105 this.dispatchEventToListeners("call frame selected");106 97 }, 107 98 … … 142 133 _selectedCallFrameIndex: function() 143 134 { 144 if (!this._ selectedCallFrame)135 if (!this._model.selectedCallFrame) 145 136 return -1; 146 137 for (var i = 0; i < this.placards.length; ++i) { 147 138 var placard = this.placards[i]; 148 if (placard.callFrame === this._ selectedCallFrame)139 if (placard.callFrame === this._model.selectedCallFrame) 149 140 return i; 150 141 } -
trunk/Source/WebCore/inspector/front-end/ConsoleView.js
r79345 r80228 358 358 359 359 var includeCommandLineAPI = (!dotNotation && !bracketNotation); 360 if (WebInspector.panels.scripts && WebInspector.panels.scripts.paused)361 DebuggerAgent.getCompletionsOnCallFrame(WebInspector.panels.scripts.selectedCallFrameId(),expressionString, includeCommandLineAPI, reportCompletions);360 if (WebInspector.panels.scripts.paused) 361 WebInspector.panels.scripts.getCompletionsOnCallFrame(expressionString, includeCommandLineAPI, reportCompletions); 362 362 else 363 363 RuntimeAgent.getCompletions(expressionString, includeCommandLineAPI, reportCompletions); -
trunk/Source/WebCore/inspector/front-end/DebuggerPresentationModel.js
r80224 r80228 106 106 }, 107 107 108 set selectedCallFrame(callFrame) 109 { 110 this._selectedCallFrame = callFrame; 111 if (!callFrame) 112 return; 113 114 var script = WebInspector.debuggerModel.scriptForSourceID(callFrame.sourceID); 115 callFrame.sourceLocation = this._actualLocationToSourceLocation(script.sourceURL || script.sourceID, callFrame.line, callFrame.column); 116 this.dispatchEventToListeners(WebInspector.DebuggerPresentationModel.Events.CallFrameSelected, callFrame); 117 }, 118 119 get selectedCallFrame() 120 { 121 return this._selectedCallFrame; 122 }, 123 108 124 _actualLocationToSourceLocation: function(sourceID, lineNumber, columnNumber) 109 125 { -
trunk/Source/WebCore/inspector/front-end/ScriptsPanel.js
r80224 r80228 141 141 this.sidebarPanes = {}; 142 142 this.sidebarPanes.watchExpressions = new WebInspector.WatchExpressionsSidebarPane(); 143 this.sidebarPanes.callstack = new WebInspector.CallStackSidebarPane( );143 this.sidebarPanes.callstack = new WebInspector.CallStackSidebarPane(this._presentationModel); 144 144 this.sidebarPanes.scopechain = new WebInspector.ScopeChainSidebarPane(); 145 145 this.sidebarPanes.jsBreakpoints = new WebInspector.JavaScriptBreakpointsSidebarPane(); … … 156 156 157 157 this.sidebarPanes.callstack.expanded = true; 158 this.sidebarPanes.callstack.addEventListener("call frame selected", this._callFrameSelected, this);159 158 160 159 this.sidebarPanes.scopechain.expanded = true; … … 194 193 this._presentationModel.addEventListener(WebInspector.DebuggerPresentationModel.Events.BreakpointAdded, this._breakpointAdded, this); 195 194 this._presentationModel.addEventListener(WebInspector.DebuggerPresentationModel.Events.BreakpointRemoved, this._breakpointRemoved, this); 195 this._presentationModel.addEventListener(WebInspector.DebuggerPresentationModel.Events.CallFrameSelected, this._callFrameSelected, this); 196 196 } 197 197 … … 404 404 }, 405 405 406 selectedCallFrameId: function() 407 { 408 var selectedCallFrame = this.sidebarPanes.callstack.selectedCallFrame; 409 if (!selectedCallFrame) 410 return null; 411 return selectedCallFrame.id; 406 getCompletionsOnCallFrame: function(expressionString, includeCommandLineAPI, callback) 407 { 408 var selectedCallFrame = this._presentationModel.selectedCallFrame; 409 if (!this._paused || !selectedCallFrame) 410 return; 411 412 DebuggerAgent.getCompletionsOnCallFrame(selectedCallFrame.id, expressionString, includeCommandLineAPI, callback); 412 413 }, 413 414 414 415 evaluateInSelectedCallFrame: function(code, updateInterface, objectGroup, includeCommandLineAPI, callback) 415 416 { 416 var selectedCallFrame = this. sidebarPanes.callstack.selectedCallFrame;417 var selectedCallFrame = this._presentationModel.selectedCallFrame; 417 418 if (!this._paused || !selectedCallFrame) 418 419 return; … … 453 454 _debuggerResumed: function() 454 455 { 456 this._presentationModel.selectedCallFrame = null; 457 455 458 this._paused = false; 456 459 this._waitingToPause = false; … … 642 645 } 643 646 644 var selectedCallFrame = this. sidebarPanes.callstack.selectedCallFrame;647 var selectedCallFrame = this._presentationModel.selectedCallFrame; 645 648 if (selectedCallFrame) { 646 var script = WebInspector.debuggerModel.scriptForSourceID(selectedCallFrame.sourceID); 647 if (this._sourceFileIdForScript(script) === sourceFileId) { 648 sourceFrame.setExecutionLine(selectedCallFrame.line); 649 if (selectedCallFrame.sourceLocation.sourceFileId === sourceFileId) { 650 sourceFrame.setExecutionLine(selectedCallFrame.sourceLocation.lineNumber); 649 651 this._executionSourceFrame = sourceFrame; 650 652 } … … 673 675 }, 674 676 675 _callFrameSelected: function() 676 { 677 _callFrameSelected: function(event) 678 { 679 var callFrame = event.data; 680 677 681 this._clearCurrentExecutionLine(); 678 682 679 var callStackPane = this.sidebarPanes.callstack; 680 var currentFrame = callStackPane.selectedCallFrame; 681 if (!currentFrame) 682 return; 683 684 this.sidebarPanes.scopechain.update(currentFrame); 683 if (!callFrame) 684 return; 685 686 this.sidebarPanes.scopechain.update(callFrame); 685 687 this.sidebarPanes.watchExpressions.refreshExpressions(); 686 688 687 var script = WebInspector.debuggerModel.scriptForSourceID(currentFrame.sourceID); 688 var sourceFileId = this._sourceFileIdForScript(script); 689 var sourceFileId = callFrame.sourceLocation.sourceFileId; 689 690 if (!(sourceFileId in this._sourceFileIdToFilesSelectOption)) { 690 691 // This happens in two cases: … … 695 696 var sourceFrame = this._showSourceFrameAndAddToHistory(sourceFileId); 696 697 if (sourceFrame.loaded) { 697 sourceFrame.setExecutionLine(c urrentFrame.line);698 sourceFrame.setExecutionLine(callFrame.sourceLocation.lineNumber); 698 699 this._executionSourceFrame = sourceFrame; 699 700 } -
trunk/Source/WebKit/chromium/ChangeLog
r80219 r80228 1 2011-03-03 Pavel Podivilov <podivilov@chromium.org> 2 3 Reviewed by Yury Semikhatsky. 4 5 Web Inspector: make selected call frame debugger presentation model property. 6 https://bugs.webkit.org/show_bug.cgi?id=55582 7 8 * src/js/Tests.js: 9 1 10 2011-03-03 Bill Budge <bbudge@chromium.org> 2 11 -
trunk/Source/WebKit/chromium/src/js/Tests.js
r79555 r80228 455 455 // Script execution can already be paused. 456 456 if (WebInspector.currentPanel.paused) { 457 var callFrame = WebInspector.currentPanel. sidebarPanes.callstack.selectedCallFrame;457 var callFrame = WebInspector.currentPanel._presentationModel.selectedCallFrame; 458 458 this.assertEquals(expectations.functionsOnStack[0], callFrame.functionName); 459 459 var callbackInvoked = false;
Note: See TracChangeset
for help on using the changeset viewer.