| Index: third_party/WebKit/Source/devtools/front_end/sources/SourcesPanel.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/sources/SourcesPanel.js b/third_party/WebKit/Source/devtools/front_end/sources/SourcesPanel.js
|
| index 6b477d62f39d0f4744ffa42f94a23b9602f223b9..88b613eb450ce59cb285a8df3504317352aa1596 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/sources/SourcesPanel.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/sources/SourcesPanel.js
|
| @@ -46,6 +46,8 @@ Sources.SourcesPanel = class extends UI.Panel {
|
| /** @type {!UI.Action }*/ (UI.actionRegistry.action('debugger.step-over'));
|
| this._stepIntoAction =
|
| /** @type {!UI.Action }*/ (UI.actionRegistry.action('debugger.step-into'));
|
| + this._stepIntoAsyncAction =
|
| + /** @type {!UI.Action }*/ (UI.actionRegistry.action('debugger.step-into-async'));
|
| this._stepOutAction = /** @type {!UI.Action }*/ (UI.actionRegistry.action('debugger.step-out'));
|
| this._toggleBreakpointsActiveAction =
|
| /** @type {!UI.Action }*/ (UI.actionRegistry.action('debugger.toggle-breakpoints-active'));
|
| @@ -472,26 +474,28 @@ Sources.SourcesPanel = class extends UI.Panel {
|
| _updateDebuggerButtonsAndStatus() {
|
| var currentTarget = UI.context.flavor(SDK.Target);
|
| var currentDebuggerModel = SDK.DebuggerModel.fromTarget(currentTarget);
|
| + var details = currentDebuggerModel ? currentDebuggerModel.debuggerPausedDetails() : null;
|
| if (!currentDebuggerModel) {
|
| this._togglePauseAction.setEnabled(false);
|
| this._stepOverAction.setEnabled(false);
|
| this._stepIntoAction.setEnabled(false);
|
| + this._stepIntoAsyncAction.setEnabled(false);
|
| this._stepOutAction.setEnabled(false);
|
| } else if (this._paused) {
|
| this._togglePauseAction.setToggled(true);
|
| this._togglePauseAction.setEnabled(true);
|
| this._stepOverAction.setEnabled(true);
|
| this._stepIntoAction.setEnabled(true);
|
| + this._stepIntoAsyncAction.setEnabled(details && details.auxData && details.auxData['stepIntoAsyncAvailable']);
|
| this._stepOutAction.setEnabled(true);
|
| } else {
|
| this._togglePauseAction.setToggled(false);
|
| this._togglePauseAction.setEnabled(!currentDebuggerModel.isPausing());
|
| this._stepOverAction.setEnabled(false);
|
| this._stepIntoAction.setEnabled(false);
|
| + this._stepIntoAsyncAction.setEnabled(false);
|
| this._stepOutAction.setEnabled(false);
|
| }
|
| -
|
| - var details = currentDebuggerModel ? currentDebuggerModel.debuggerPausedDetails() : null;
|
| this._debuggerPausedMessage.render(details, Bindings.debuggerWorkspaceBinding, Bindings.breakpointManager);
|
| }
|
|
|
| @@ -604,40 +608,35 @@ Sources.SourcesPanel = class extends UI.Panel {
|
| debuggerModel.resume();
|
| }
|
|
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| _stepOver() {
|
| var debuggerModel = this._prepareToResume();
|
| if (!debuggerModel)
|
| - return true;
|
| -
|
| + return;
|
| debuggerModel.stepOver();
|
| - return true;
|
| }
|
|
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| _stepInto() {
|
| var debuggerModel = this._prepareToResume();
|
| if (!debuggerModel)
|
| - return true;
|
| -
|
| + return;
|
| debuggerModel.stepInto();
|
| - return true;
|
| }
|
|
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - _stepOut() {
|
| + _stepIntoAsync() {
|
| var debuggerModel = this._prepareToResume();
|
| if (!debuggerModel)
|
| - return true;
|
| + return;
|
| + var details = debuggerModel.debuggerPausedDetails();
|
| + if (!details || !details.auxData || !details.auxData['stepIntoAsyncAvailable'])
|
| + return;
|
| + debuggerModel.stepIntoAsync();
|
| + }
|
|
|
| + _stepOut() {
|
| + var debuggerModel = this._prepareToResume();
|
| + if (!debuggerModel)
|
| + return;
|
| debuggerModel.stepOut();
|
| - return true;
|
| }
|
|
|
| /**
|
| @@ -683,6 +682,7 @@ Sources.SourcesPanel = class extends UI.Panel {
|
|
|
| debugToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._stepOverAction));
|
| debugToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._stepIntoAction));
|
| + debugToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._stepIntoAsyncAction));
|
| debugToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._stepOutAction));
|
| debugToolbar.appendSeparator();
|
| debugToolbar.appendToolbarItem(UI.Toolbar.createActionButton(this._toggleBreakpointsActiveAction));
|
| @@ -1254,6 +1254,9 @@ Sources.SourcesPanel.DebuggingActionDelegate = class {
|
| case 'debugger.step-into':
|
| panel._stepInto();
|
| return true;
|
| + case 'debugger.step-into-async':
|
| + panel._stepIntoAsync();
|
| + return true;
|
| case 'debugger.step-out':
|
| panel._stepOut();
|
| return true;
|
|
|