Index: Source/devtools/front_end/sdk/AnimationModel.js |
diff --git a/Source/devtools/front_end/sdk/AnimationModel.js b/Source/devtools/front_end/sdk/AnimationModel.js |
index 3f70c93f4e0186e714f1ebf8bf745d6c229b635a..6a1fa08b3887cea21df3bca23d969af5ae3bdc26 100644 |
--- a/Source/devtools/front_end/sdk/AnimationModel.js |
+++ b/Source/devtools/front_end/sdk/AnimationModel.js |
@@ -20,9 +20,10 @@ WebInspector.AnimationModel = function(target) |
WebInspector.AnimationModel.prototype = { |
/** |
* @param {!DOMAgent.NodeId} nodeId |
+ * @param {boolean} showSubtreeAnimations |
* @param {function(?Array.<!WebInspector.AnimationModel.AnimationPlayer>)} userCallback |
*/ |
- getAnimationPlayers: function(nodeId, userCallback) |
+ animationPlayers: function(nodeId, showSubtreeAnimations, userCallback) |
{ |
/** |
* @param {?Protocol.Error} error |
@@ -34,16 +35,14 @@ WebInspector.AnimationModel.prototype = { |
var callbacks = this._nodeIdToCallbackData[nodeId]; |
delete this._nodeIdToCallbackData[nodeId]; |
if (error) { |
- callbacks.forEach(function(callback) { |
- callback(null); |
- }); |
+ for (var i = 0; i < callbacks.length; i++) |
+ callbacks[i](null); |
return; |
} |
var animationPlayers = payloads.map(WebInspector.AnimationModel.AnimationPlayer.parsePayload.bind(null, target)); |
- callbacks.forEach(function(callback) { |
- callback(animationPlayers); |
- }); |
+ for (var i = 0; i < callbacks.length; i++) |
+ callbacks[i](animationPlayers); |
} |
if (this._nodeIdToCallbackData[nodeId]) { |
@@ -53,7 +52,7 @@ WebInspector.AnimationModel.prototype = { |
var target = this.target(); |
this._nodeIdToCallbackData[nodeId] = [userCallback]; |
- this._agent.getAnimationPlayersForNode(nodeId, resultCallback.bind(this)); |
+ this._agent.getAnimationPlayersForNode(nodeId, showSubtreeAnimations, resultCallback.bind(this)); |
}, |
__proto__: WebInspector.SDKModel.prototype |
@@ -196,7 +195,6 @@ WebInspector.AnimationModel.AnimationPlayer.prototype = { |
function mycallback(error, currentTime, isRunning) |
{ |
if (error) { |
- console.error(error); |
vsevik
2014/11/12 09:14:35
Why did you remove this?
You should also remove br
samli
2014/11/13 01:12:44
When the selected node changes, the list of animat
|
return; |
} |
callback(currentTime, isRunning); |
@@ -295,6 +293,28 @@ WebInspector.AnimationModel.AnimationNode.prototype = { |
}, |
/** |
+ * @param {function(?WebInspector.DOMNode)} callback |
+ */ |
+ node: function(callback) |
vsevik
2014/11/12 09:14:35
We usually use get prefix for asynchronous getters
samli
2014/11/13 01:12:44
Done.
|
+ { |
+ /** |
+ * @this {WebInspector.AnimationModel.AnimationNode} |
+ * @param {?Array.<number>} nodeIds |
+ */ |
+ function nodePushedCallback(nodeIds) |
+ { |
+ if (nodeIds) |
+ this.nodeId = nodeIds[0]; |
+ callback(this.target().domModel.nodeForId(this.nodeId)); |
+ } |
+ |
+ if (this.nodeId) |
+ callback(this.target().domModel.nodeForId(this.nodeId)); |
+ else |
+ this._target.domModel.pushNodesByBackendIdsToFrontend([this._payload.backendNodeId], nodePushedCallback.bind(this)); |
+ }, |
+ |
+ /** |
* @return {?WebInspector.AnimationModel.KeyframesRule} |
*/ |
keyframesRule: function() |