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

Side by Side Diff: chrome/tools/test/reference_build/chrome_linux/resources/inspector/ScriptsPanel.js

Issue 177049: On Linux, move the passing of filedescriptors to a dedicated socketpair(). (Closed)
Patch Set: Removed *.d files from reference build Created 11 years, 3 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) 2008 Apple Inc. All Rights Reserved. 2 * Copyright (C) 2008 Apple 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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 this.forwardButton.title = WebInspector.UIString("Show the next script resou rce."); 49 this.forwardButton.title = WebInspector.UIString("Show the next script resou rce.");
50 this.forwardButton.disabled = true; 50 this.forwardButton.disabled = true;
51 this.forwardButton.appendChild(document.createElement("img")); 51 this.forwardButton.appendChild(document.createElement("img"));
52 this.forwardButton.addEventListener("click", this._goForward.bind(this), fal se); 52 this.forwardButton.addEventListener("click", this._goForward.bind(this), fal se);
53 this.topStatusBar.appendChild(this.forwardButton); 53 this.topStatusBar.appendChild(this.forwardButton);
54 54
55 this.filesSelectElement = document.createElement("select"); 55 this.filesSelectElement = document.createElement("select");
56 this.filesSelectElement.className = "status-bar-item"; 56 this.filesSelectElement.className = "status-bar-item";
57 this.filesSelectElement.id = "scripts-files"; 57 this.filesSelectElement.id = "scripts-files";
58 this.filesSelectElement.addEventListener("change", this._changeVisibleFile.b ind(this), false); 58 this.filesSelectElement.addEventListener("change", this._changeVisibleFile.b ind(this), false);
59 this.filesSelectElement.handleKeyEvent = this.handleKeyEvent.bind(this);
59 this.topStatusBar.appendChild(this.filesSelectElement); 60 this.topStatusBar.appendChild(this.filesSelectElement);
60 61
61 this.functionsSelectElement = document.createElement("select"); 62 this.functionsSelectElement = document.createElement("select");
62 this.functionsSelectElement.className = "status-bar-item"; 63 this.functionsSelectElement.className = "status-bar-item";
63 this.functionsSelectElement.id = "scripts-functions"; 64 this.functionsSelectElement.id = "scripts-functions";
64 65
65 // FIXME: append the functions select element to the top status bar when it is implemented. 66 // FIXME: append the functions select element to the top status bar when it is implemented.
66 // this.topStatusBar.appendChild(this.functionsSelectElement); 67 // this.topStatusBar.appendChild(this.functionsSelectElement);
67 68
68 this.sidebarButtonsElement = document.createElement("div"); 69 this.sidebarButtonsElement = document.createElement("div");
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 this.topStatusBar.appendChild(this.sidebarResizeWidgetElement); 126 this.topStatusBar.appendChild(this.sidebarResizeWidgetElement);
126 127
127 this.sidebarPanes = {}; 128 this.sidebarPanes = {};
128 this.sidebarPanes.callstack = new WebInspector.CallStackSidebarPane(); 129 this.sidebarPanes.callstack = new WebInspector.CallStackSidebarPane();
129 this.sidebarPanes.scopechain = new WebInspector.ScopeChainSidebarPane(); 130 this.sidebarPanes.scopechain = new WebInspector.ScopeChainSidebarPane();
130 this.sidebarPanes.breakpoints = new WebInspector.BreakpointsSidebarPane(); 131 this.sidebarPanes.breakpoints = new WebInspector.BreakpointsSidebarPane();
131 132
132 for (var pane in this.sidebarPanes) 133 for (var pane in this.sidebarPanes)
133 this.sidebarElement.appendChild(this.sidebarPanes[pane].element); 134 this.sidebarElement.appendChild(this.sidebarPanes[pane].element);
134 135
135 // FIXME: remove the following line of code when the Breakpoints pane has co ntent.
136 this.sidebarElement.removeChild(this.sidebarPanes.breakpoints.element);
137
138 this.sidebarPanes.callstack.expanded = true; 136 this.sidebarPanes.callstack.expanded = true;
139 this.sidebarPanes.callstack.addEventListener("call frame selected", this._ca llFrameSelected, this); 137 this.sidebarPanes.callstack.addEventListener("call frame selected", this._ca llFrameSelected, this);
140 138
141 this.sidebarPanes.scopechain.expanded = true; 139 this.sidebarPanes.scopechain.expanded = true;
140 this.sidebarPanes.breakpoints.expanded = true;
142 141
143 var panelEnablerHeading = WebInspector.UIString("You need to enable debuggin g before you can use the Scripts panel."); 142 var panelEnablerHeading = WebInspector.UIString("You need to enable debuggin g before you can use the Scripts panel.");
144 var panelEnablerDisclaimer = WebInspector.UIString("Enabling debugging will make scripts run slower."); 143 var panelEnablerDisclaimer = WebInspector.UIString("Enabling debugging will make scripts run slower.");
145 var panelEnablerButton = WebInspector.UIString("Enable Debugging"); 144 var panelEnablerButton = WebInspector.UIString("Enable Debugging");
146 145
147 this.panelEnablerView = new WebInspector.PanelEnablerView("scripts", panelEn ablerHeading, panelEnablerDisclaimer, panelEnablerButton); 146 this.panelEnablerView = new WebInspector.PanelEnablerView("scripts", panelEn ablerHeading, panelEnablerDisclaimer, panelEnablerButton);
148 this.panelEnablerView.addEventListener("enable clicked", this._enableDebuggi ng, this); 147 this.panelEnablerView.addEventListener("enable clicked", this._enableDebuggi ng, this);
149 148
150 this.element.appendChild(this.panelEnablerView.element); 149 this.element.appendChild(this.panelEnablerView.element);
151 this.element.appendChild(this.viewsContainerElement); 150 this.element.appendChild(this.viewsContainerElement);
152 this.element.appendChild(this.sidebarElement); 151 this.element.appendChild(this.sidebarElement);
153 this.element.appendChild(this.sidebarResizeElement); 152 this.element.appendChild(this.sidebarResizeElement);
154 153
155 this.enableToggleButton = document.createElement("button"); 154 this.enableToggleButton = new WebInspector.StatusBarButton("", "enable-toggl e-status-bar-item");
156 this.enableToggleButton.className = "enable-toggle-status-bar-item status-ba r-item";
157 this.enableToggleButton.addEventListener("click", this._toggleDebugging.bind (this), false); 155 this.enableToggleButton.addEventListener("click", this._toggleDebugging.bind (this), false);
158 156
159 this.pauseOnExceptionButton = document.createElement("button"); 157 this.pauseOnExceptionButton = new WebInspector.StatusBarButton("", "scripts- pause-on-exceptions-status-bar-item");
160 this.pauseOnExceptionButton.id = "scripts-pause-on-exceptions-status-bar-ite m";
161 this.pauseOnExceptionButton.className = "status-bar-item";
162 this.pauseOnExceptionButton.addEventListener("click", this._togglePauseOnExc eptions.bind(this), false); 158 this.pauseOnExceptionButton.addEventListener("click", this._togglePauseOnExc eptions.bind(this), false);
163 159
164 this._breakpointsURLMap = {}; 160 this._breakpointsURLMap = {};
165 161
162 this._shortcuts = {};
163
164 var isMac = InspectorController.platform().indexOf("mac-") === 0;
165 var platformSpecificModifier = isMac ? WebInspector.KeyboardShortcut.Modifie rs.Meta : WebInspector.KeyboardShortcut.Modifiers.Ctrl;
166
167 // Continue.
168 var handler = this.pauseButton.click.bind(this.pauseButton);
169 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.F8);
170 this._shortcuts[shortcut] = handler;
171 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.Slash, platformSpecificModifier);
172 this._shortcuts[shortcut] = handler;
173
174 // Step over.
175 var handler = this.stepOverButton.click.bind(this.stepOverButton);
176 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.F10);
177 this._shortcuts[shortcut] = handler;
178 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.SingleQuote, platformSpecificModifier);
179 this._shortcuts[shortcut] = handler;
180
181 // Step into.
182 var handler = this.stepIntoButton.click.bind(this.stepIntoButton);
183 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.F11);
184 this._shortcuts[shortcut] = handler;
185 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.Semicolon, platformSpecificModifier);
186 this._shortcuts[shortcut] = handler;
187
188 // Step out.
189 var handler = this.stepOutButton.click.bind(this.stepOutButton);
190 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.F11, WebInspector.KeyboardShortcut.Modifiers.Shift);
191 this._shortcuts[shortcut] = handler;
192 var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardSh ortcut.KeyCodes.Semicolon, WebInspector.KeyboardShortcut.Modifiers.Shift, platfo rmSpecificModifier);
193 this._shortcuts[shortcut] = handler;
194
166 this.reset(); 195 this.reset();
167 } 196 }
168 197
169 WebInspector.ScriptsPanel.prototype = { 198 WebInspector.ScriptsPanel.prototype = {
170 toolbarItemClass: "scripts", 199 toolbarItemClass: "scripts",
171 200
172 get toolbarItemLabel() 201 get toolbarItemLabel()
173 { 202 {
174 return WebInspector.UIString("Scripts"); 203 return WebInspector.UIString("Scripts");
175 }, 204 },
176 205
177 get statusBarItems() 206 get statusBarItems()
178 { 207 {
179 return [this.enableToggleButton, this.pauseOnExceptionButton]; 208 return [this.enableToggleButton.element, this.pauseOnExceptionButton.ele ment];
180 }, 209 },
181 210
182 get paused() 211 get paused()
183 { 212 {
184 return this._paused; 213 return this._paused;
185 }, 214 },
186 215
187 show: function() 216 show: function()
188 { 217 {
189 WebInspector.Panel.prototype.show.call(this); 218 WebInspector.Panel.prototype.show.call(this);
190 this.sidebarResizeElement.style.right = (this.sidebarElement.offsetWidth - 3) + "px"; 219 this.sidebarResizeElement.style.right = (this.sidebarElement.offsetWidth - 3) + "px";
191 220
192 if (this.visibleView) { 221 if (this.visibleView) {
193 if (this.visibleView instanceof WebInspector.ResourceView) 222 if (this.visibleView instanceof WebInspector.ResourceView)
194 this.visibleView.headersVisible = false; 223 this.visibleView.headersVisible = false;
195 this.visibleView.show(this.viewsContainerElement); 224 this.visibleView.show(this.viewsContainerElement);
196 } 225 }
197 226
198 // Hide any views that are visible that are not this panel's current vis ible view. 227 // Hide any views that are visible that are not this panel's current vis ible view.
199 // This can happen when a ResourceView is visible in the Resources panel then switched 228 // This can happen when a ResourceView is visible in the Resources panel then switched
200 // to the this panel. 229 // to the this panel.
201 for (var sourceID in this._sourceIDMap) { 230 for (var sourceID in this._sourceIDMap) {
202 var scriptOrResource = this._sourceIDMap[sourceID]; 231 var scriptOrResource = this._sourceIDMap[sourceID];
203 var view = this._sourceViewForScriptOrResource(scriptOrResource); 232 var view = this._sourceViewForScriptOrResource(scriptOrResource);
204 if (!view || view === this.visibleView) 233 if (!view || view === this.visibleView)
205 continue; 234 continue;
206 view.visible = false; 235 view.visible = false;
207 } 236 }
237 if (this._attachDebuggerWhenShown) {
238 InspectorController.enableDebugger(false);
239 delete this._attachDebuggerWhenShown;
240 }
208 }, 241 },
209 242
210 get searchableViews() 243 get searchableViews()
211 { 244 {
212 var views = []; 245 var views = [];
213 246
214 const visibleView = this.visibleView; 247 const visibleView = this.visibleView;
215 if (visibleView && visibleView.performSearch) { 248 if (visibleView && visibleView.performSearch) {
216 visibleView.alreadySearching = true; 249 visibleView.alreadySearching = true;
217 views.push(visibleView); 250 views.push(visibleView);
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 } 287 }
255 } 288 }
256 } 289 }
257 290
258 if (sourceID) 291 if (sourceID)
259 this._sourceIDMap[sourceID] = (resource || script); 292 this._sourceIDMap[sourceID] = (resource || script);
260 293
261 this._addScriptToFilesMenu(script); 294 this._addScriptToFilesMenu(script);
262 }, 295 },
263 296
297 scriptOrResourceForID: function(id)
298 {
299 return this._sourceIDMap[id];
300 },
301
264 addBreakpoint: function(breakpoint) 302 addBreakpoint: function(breakpoint)
265 { 303 {
266 this.sidebarPanes.breakpoints.addBreakpoint(breakpoint); 304 this.sidebarPanes.breakpoints.addBreakpoint(breakpoint);
267 305
268 var sourceFrame; 306 var sourceFrame;
269 if (breakpoint.url) { 307 if (breakpoint.url) {
270 if (!(breakpoint.url in this._breakpointsURLMap)) 308 if (!(breakpoint.url in this._breakpointsURLMap))
271 this._breakpointsURLMap[breakpoint.url] = []; 309 this._breakpointsURLMap[breakpoint.url] = [];
272 this._breakpointsURLMap[breakpoint.url].unshift(breakpoint); 310 this._breakpointsURLMap[breakpoint.url].unshift(breakpoint);
273 311
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 343
306 if (breakpoint.sourceID && !sourceFrame) { 344 if (breakpoint.sourceID && !sourceFrame) {
307 var object = this._sourceIDMap[breakpoint.sourceID] 345 var object = this._sourceIDMap[breakpoint.sourceID]
308 sourceFrame = this._sourceFrameForScriptOrResource(object); 346 sourceFrame = this._sourceFrameForScriptOrResource(object);
309 } 347 }
310 348
311 if (sourceFrame) 349 if (sourceFrame)
312 sourceFrame.removeBreakpoint(breakpoint); 350 sourceFrame.removeBreakpoint(breakpoint);
313 }, 351 },
314 352
315 evaluateInSelectedCallFrame: function(code, updateInterface) 353 evaluateInSelectedCallFrame: function(code, updateInterface, callback)
316 { 354 {
317 var selectedCallFrame = this.sidebarPanes.callstack.selectedCallFrame; 355 var selectedCallFrame = this.sidebarPanes.callstack.selectedCallFrame;
318 if (!this._paused || !selectedCallFrame) 356 if (!this._paused || !selectedCallFrame)
319 return; 357 return;
358
320 if (typeof updateInterface === "undefined") 359 if (typeof updateInterface === "undefined")
321 updateInterface = true; 360 updateInterface = true;
322 var result = selectedCallFrame.evaluate(code); 361
323 if (updateInterface) 362 var self = this;
324 this.sidebarPanes.scopechain.update(selectedCallFrame); 363 function updatingCallbackWrapper(result, exception)
325 return result; 364 {
365 callback(result, exception);
366 if (updateInterface)
367 self.sidebarPanes.scopechain.update(selectedCallFrame);
368 }
369 this.doEvalInCallFrame(selectedCallFrame, code, updatingCallbackWrapper) ;
326 }, 370 },
327 371
328 variablesInScopeForSelectedCallFrame: function() 372 doEvalInCallFrame: function(callFrame, code, callback)
373 {
374 function evalCallback(result)
375 {
376 if (result)
377 callback(result.value, result.isException);
378 }
379 InspectorController.evaluateInCallFrame(callFrame.id, code, evalCallback );
380 },
381
382 variablesInSelectedCallFrame: function()
329 { 383 {
330 var selectedCallFrame = this.sidebarPanes.callstack.selectedCallFrame; 384 var selectedCallFrame = this.sidebarPanes.callstack.selectedCallFrame;
331 if (!this._paused || !selectedCallFrame) 385 if (!this._paused || !selectedCallFrame)
332 return {}; 386 return {};
333 387
334 var result = {}; 388 var result = {};
335 var scopeChain = selectedCallFrame.scopeChain; 389 var scopeChain = selectedCallFrame.scopeChain;
336 for (var i = 0; i < scopeChain.length; ++i) { 390 for (var i = 0; i < scopeChain.length; ++i) {
337 var scopeObject = scopeChain[i]; 391 var scopeObjectProperties = scopeChain[i].properties;
338 for (var property in scopeObject) 392 for (var j = 0; j < scopeObjectProperties.length; ++j)
339 result[property] = true; 393 result[scopeObjectProperties[j]] = true;
340 } 394 }
341
342 return result; 395 return result;
343 }, 396 },
344 397
345 debuggerPaused: function() 398 debuggerPaused: function()
346 { 399 {
347 this._paused = true; 400 this._paused = true;
348 this._waitingToPause = false; 401 this._waitingToPause = false;
349 this._stepping = false; 402 this._stepping = false;
350 403
351 this._updateDebuggerButtons(); 404 this._updateDebuggerButtons();
352 405
406 var self = this;
353 var callStackPane = this.sidebarPanes.callstack; 407 var callStackPane = this.sidebarPanes.callstack;
354 var currentFrame = InspectorController.currentCallFrame(); 408 function callback(callFrames)
355 callStackPane.update(currentFrame, this._sourceIDMap); 409 {
356 callStackPane.selectedCallFrame = currentFrame; 410 callStackPane.update(callFrames, self._sourceIDMap);
411 callStackPane.selectedCallFrame = callFrames[0];
357 412
358 WebInspector.currentPanel = this; 413 WebInspector.currentPanel = self;
359 window.focus(); 414 window.focus();
415 }
416 InspectorController.getCallFrames(callback);
360 }, 417 },
361 418
362 debuggerResumed: function() 419 debuggerResumed: function()
363 { 420 {
364 this._paused = false; 421 this._paused = false;
365 this._waitingToPause = false; 422 this._waitingToPause = false;
366 this._stepping = false; 423 this._stepping = false;
367 424
368 this._clearInterface(); 425 this._clearInterface();
369 }, 426 },
370 427
428 attachDebuggerWhenShown: function()
429 {
430 if (this.element.parentElement) {
431 InspectorController.enableDebugger(false);
432 } else {
433 this._attachDebuggerWhenShown = true;
434 }
435 },
436
371 debuggerWasEnabled: function() 437 debuggerWasEnabled: function()
372 { 438 {
373 this.reset(); 439 this.reset();
374 }, 440 },
375 441
376 debuggerWasDisabled: function() 442 debuggerWasDisabled: function()
377 { 443 {
378 this.reset(); 444 this.reset();
379 }, 445 },
380 446
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
447 this._showScriptOrResource(resource, line, true); 513 this._showScriptOrResource(resource, line, true);
448 }, 514 },
449 515
450 showView: function(view) 516 showView: function(view)
451 { 517 {
452 if (!view) 518 if (!view)
453 return; 519 return;
454 this._showScriptOrResource((view.resource || view.script)); 520 this._showScriptOrResource((view.resource || view.script));
455 }, 521 },
456 522
523 handleKeyEvent: function(event)
524 {
525 var shortcut = WebInspector.KeyboardShortcut.makeKeyFromEvent(event);
526 var handler = this._shortcuts[shortcut];
527 if (handler) {
528 handler(event);
529 event.preventDefault();
530 event.handled = true;
531 } else {
532 this.sidebarPanes.callstack.handleKeyEvent(event);
533 }
534 },
535
457 scriptViewForScript: function(script) 536 scriptViewForScript: function(script)
458 { 537 {
459 if (!script) 538 if (!script)
460 return null; 539 return null;
461 if (!script._scriptView) 540 if (!script._scriptView)
462 script._scriptView = new WebInspector.ScriptView(script); 541 script._scriptView = new WebInspector.ScriptView(script);
463 return script._scriptView; 542 return script._scriptView;
464 }, 543 },
465 544
466 sourceFrameForScript: function(script) 545 sourceFrameForScript: function(script)
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
674 this.sidebarResizeWidgetElement.style.right = newWidth + "px"; 753 this.sidebarResizeWidgetElement.style.right = newWidth + "px";
675 this.sidebarResizeElement.style.right = (newWidth - 3) + "px"; 754 this.sidebarResizeElement.style.right = (newWidth - 3) + "px";
676 755
677 event.preventDefault(); 756 event.preventDefault();
678 }, 757 },
679 758
680 _updatePauseOnExceptionsButton: function() 759 _updatePauseOnExceptionsButton: function()
681 { 760 {
682 if (InspectorController.pauseOnExceptions()) { 761 if (InspectorController.pauseOnExceptions()) {
683 this.pauseOnExceptionButton.title = WebInspector.UIString("Don't pau se on exceptions."); 762 this.pauseOnExceptionButton.title = WebInspector.UIString("Don't pau se on exceptions.");
684 this.pauseOnExceptionButton.addStyleClass("toggled-on"); 763 this.pauseOnExceptionButton.toggled = true;
685 } else { 764 } else {
686 this.pauseOnExceptionButton.title = WebInspector.UIString("Pause on exceptions."); 765 this.pauseOnExceptionButton.title = WebInspector.UIString("Pause on exceptions.");
687 this.pauseOnExceptionButton.removeStyleClass("toggled-on"); 766 this.pauseOnExceptionButton.toggled = false;
688 } 767 }
689 }, 768 },
690 769
691 _updateDebuggerButtons: function() 770 _updateDebuggerButtons: function()
692 { 771 {
693 if (InspectorController.debuggerEnabled()) { 772 if (InspectorController.debuggerEnabled()) {
694 this.enableToggleButton.title = WebInspector.UIString("Debugging ena bled. Click to disable."); 773 this.enableToggleButton.title = WebInspector.UIString("Debugging ena bled. Click to disable.");
695 this.enableToggleButton.addStyleClass("toggled-on"); 774 this.enableToggleButton.toggled = true;
696 this.pauseOnExceptionButton.removeStyleClass("hidden"); 775 this.pauseOnExceptionButton.visible = true;
697 this.panelEnablerView.visible = false; 776 this.panelEnablerView.visible = false;
698 } else { 777 } else {
699 this.enableToggleButton.title = WebInspector.UIString("Debugging dis abled. Click to enable."); 778 this.enableToggleButton.title = WebInspector.UIString("Debugging dis abled. Click to enable.");
700 this.enableToggleButton.removeStyleClass("toggled-on"); 779 this.enableToggleButton.toggled = false;
701 this.pauseOnExceptionButton.addStyleClass("hidden"); 780 this.pauseOnExceptionButton.visible = false;
702 this.panelEnablerView.visible = true; 781 this.panelEnablerView.visible = true;
703 } 782 }
704 783
705 this._updatePauseOnExceptionsButton(); 784 this._updatePauseOnExceptionsButton();
706 785
707 if (this._paused) { 786 if (this._paused) {
708 this.pauseButton.addStyleClass("paused"); 787 this.pauseButton.addStyleClass("paused");
709 788
710 this.pauseButton.disabled = false; 789 this.pauseButton.disabled = false;
711 this.stepOverButton.disabled = false; 790 this.stepOverButton.disabled = false;
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
764 } 843 }
765 844
766 this._showScriptOrResource(this._backForwardList[++this._currentBackForw ardIndex], null, false, true); 845 this._showScriptOrResource(this._backForwardList[++this._currentBackForw ardIndex], null, false, true);
767 this._updateBackAndForwardButtons(); 846 this._updateBackAndForwardButtons();
768 }, 847 },
769 848
770 _enableDebugging: function() 849 _enableDebugging: function()
771 { 850 {
772 if (InspectorController.debuggerEnabled()) 851 if (InspectorController.debuggerEnabled())
773 return; 852 return;
774 this._toggleDebugging(); 853 this._toggleDebugging(this.panelEnablerView.alwaysEnabled);
775 }, 854 },
776 855
777 _toggleDebugging: function() 856 _toggleDebugging: function(optionalAlways)
778 { 857 {
779 this._paused = false; 858 this._paused = false;
780 this._waitingToPause = false; 859 this._waitingToPause = false;
781 this._stepping = false; 860 this._stepping = false;
782 861
783 if (InspectorController.debuggerEnabled()) 862 if (InspectorController.debuggerEnabled())
784 InspectorController.disableDebugger(); 863 InspectorController.disableDebugger(true);
785 else 864 else
786 InspectorController.enableDebugger(); 865 InspectorController.enableDebugger(!!optionalAlways);
787 }, 866 },
788 867
789 _togglePauseOnExceptions: function() 868 _togglePauseOnExceptions: function()
790 { 869 {
791 InspectorController.setPauseOnExceptions(!InspectorController.pauseOnExc eptions()); 870 InspectorController.setPauseOnExceptions(!InspectorController.pauseOnExc eptions());
792 this._updatePauseOnExceptionsButton(); 871 this._updatePauseOnExceptionsButton();
793 }, 872 },
794 873
795 _togglePause: function() 874 _togglePause: function()
796 { 875 {
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
832 this._paused = false; 911 this._paused = false;
833 this._stepping = true; 912 this._stepping = true;
834 913
835 this._clearInterface(); 914 this._clearInterface();
836 915
837 InspectorController.stepOutOfFunctionInDebugger(); 916 InspectorController.stepOutOfFunctionInDebugger();
838 } 917 }
839 } 918 }
840 919
841 WebInspector.ScriptsPanel.prototype.__proto__ = WebInspector.Panel.prototype; 920 WebInspector.ScriptsPanel.prototype.__proto__ = WebInspector.Panel.prototype;
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698