| Index: third_party/WebKit/Source/devtools/front_end/sources/ThreadsSidebarPane.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/sources/ThreadsSidebarPane.js b/third_party/WebKit/Source/devtools/front_end/sources/ThreadsSidebarPane.js
|
| index cc92481d6331dab7061bd0c1616ef2f74742f449..3dcd45ffaea6a0737dd4278871caafaae3ec58e8 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/sources/ThreadsSidebarPane.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/sources/ThreadsSidebarPane.js
|
| @@ -23,6 +23,7 @@ WebInspector.ThreadsSidebarPane = function()
|
| WebInspector.targetManager.addModelListener(WebInspector.DebuggerModel, WebInspector.DebuggerModel.Events.DebuggerResumed, this._onDebuggerStateChanged, this);
|
| WebInspector.targetManager.addModelListener(WebInspector.RuntimeModel, WebInspector.RuntimeModel.Events.ExecutionContextChanged, this._onExecutionContextChanged, this);
|
| WebInspector.context.addFlavorChangeListener(WebInspector.Target, this._targetChanged, this);
|
| + WebInspector.targetManager.addEventListener(WebInspector.TargetManager.Events.NameChanged, this._targetNameChanged, this);
|
| WebInspector.targetManager.observeTargets(this);
|
| }
|
|
|
| @@ -33,13 +34,11 @@ WebInspector.ThreadsSidebarPane.prototype = {
|
| */
|
| targetAdded: function(target)
|
| {
|
| - var debuggerModel = WebInspector.DebuggerModel.fromTarget(target)
|
| + var debuggerModel = WebInspector.DebuggerModel.fromTarget(target);
|
| if (!debuggerModel)
|
| return;
|
|
|
| - var executionContext = target.runtimeModel.defaultExecutionContext();
|
| - var label = executionContext && executionContext.label() ? executionContext.label() : target.name();
|
| - var listItem = new WebInspector.UIList.Item(label, "");
|
| + var listItem = new WebInspector.UIList.Item(this._titleForTarget(target), "");
|
| listItem.element.addEventListener("click", this._onListItemClick.bind(this, listItem), false);
|
| var currentTarget = WebInspector.context.flavor(WebInspector.Target);
|
| if (currentTarget === target)
|
| @@ -57,7 +56,7 @@ WebInspector.ThreadsSidebarPane.prototype = {
|
| */
|
| targetRemoved: function(target)
|
| {
|
| - var debuggerModel = WebInspector.DebuggerModel.fromTarget(target)
|
| + var debuggerModel = WebInspector.DebuggerModel.fromTarget(target);
|
| if (!debuggerModel)
|
| return;
|
| var listItem = this._debuggerModelToListItems.remove(debuggerModel);
|
| @@ -70,14 +69,44 @@ WebInspector.ThreadsSidebarPane.prototype = {
|
| /**
|
| * @param {!WebInspector.Event} event
|
| */
|
| + _targetNameChanged: function(event)
|
| + {
|
| + var target = /** @type {!WebInspector.Target} */ (event.data);
|
| + var listItem = this._listItemForTarget(target);
|
| + if (listItem)
|
| + listItem.setTitle(this._titleForTarget(target));
|
| + },
|
| +
|
| + /**
|
| + * @param {!WebInspector.Event} event
|
| + */
|
| _targetChanged: function(event)
|
| {
|
| - var newTarget = /** @type {!WebInspector.Target} */(event.data);
|
| - var debuggerModel = WebInspector.DebuggerModel.fromTarget(newTarget)
|
| + var listItem = this._listItemForTarget(/** @type {!WebInspector.Target} */ (event.data));
|
| + if (listItem)
|
| + this._selectListItem(listItem);
|
| + },
|
| +
|
| + /**
|
| + * @param {!WebInspector.Target} target
|
| + * @return {?WebInspector.UIList.Item}
|
| + */
|
| + _listItemForTarget: function(target)
|
| + {
|
| + var debuggerModel = WebInspector.DebuggerModel.fromTarget(target);
|
| if (!debuggerModel)
|
| - return;
|
| - var listItem = /** @type {!WebInspector.UIList.Item} */ (this._debuggerModelToListItems.get(debuggerModel));
|
| - this._selectListItem(listItem);
|
| + return null;
|
| + return this._debuggerModelToListItems.get(debuggerModel) || null;
|
| + },
|
| +
|
| + /**
|
| + * @param {!WebInspector.Target} target
|
| + * @return {string}
|
| + */
|
| + _titleForTarget: function(target)
|
| + {
|
| + var executionContext = target.runtimeModel.defaultExecutionContext();
|
| + return executionContext && executionContext.label() ? executionContext.label() : target.name();
|
| },
|
|
|
| /**
|
|
|