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

Side by Side Diff: Source/devtools/front_end/DOMModel.js

Issue 206313004: DevTools: Rename WebInspector.DOMAgent into WebInspector.DOMModel (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebase on master Created 6 years, 9 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) 2009, 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2009, 2010 Google Inc. All rights reserved.
3 * Copyright (C) 2009 Joseph Pecoraro 3 * Copyright (C) 2009 Joseph Pecoraro
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 13 matching lines...) Expand all
24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 */ 30 */
31 31
32 /** 32 /**
33 * @constructor 33 * @constructor
34 * @param {!WebInspector.DOMAgent} domAgent 34 * @param {!WebInspector.DOMModel} domModel
35 * @param {?WebInspector.DOMDocument} doc 35 * @param {?WebInspector.DOMDocument} doc
36 * @param {boolean} isInShadowTree 36 * @param {boolean} isInShadowTree
37 * @param {!DOMAgent.Node} payload 37 * @param {!DOMAgent.Node} payload
38 */ 38 */
39 WebInspector.DOMNode = function(domAgent, doc, isInShadowTree, payload) { 39 WebInspector.DOMNode = function(domModel, doc, isInShadowTree, payload) {
40 this._domAgent = domAgent; 40 this._domModel = domModel;
41 this.ownerDocument = doc; 41 this.ownerDocument = doc;
42 this._isInShadowTree = isInShadowTree; 42 this._isInShadowTree = isInShadowTree;
43 43
44 this.id = payload.nodeId; 44 this.id = payload.nodeId;
45 domAgent._idToDOMNode[this.id] = this; 45 domModel._idToDOMNode[this.id] = this;
46 this._nodeType = payload.nodeType; 46 this._nodeType = payload.nodeType;
47 this._nodeName = payload.nodeName; 47 this._nodeName = payload.nodeName;
48 this._localName = payload.localName; 48 this._localName = payload.localName;
49 this._nodeValue = payload.nodeValue; 49 this._nodeValue = payload.nodeValue;
50 this._pseudoType = payload.pseudoType; 50 this._pseudoType = payload.pseudoType;
51 this._shadowRootType = payload.shadowRootType; 51 this._shadowRootType = payload.shadowRootType;
52 this._frameId = payload.frameId || null; 52 this._frameId = payload.frameId || null;
53 53
54 this._shadowRoots = []; 54 this._shadowRoots = [];
55 55
(...skipping 10 matching lines...) Expand all
66 66
67 this.nextSibling = null; 67 this.nextSibling = null;
68 this.previousSibling = null; 68 this.previousSibling = null;
69 this.firstChild = null; 69 this.firstChild = null;
70 this.lastChild = null; 70 this.lastChild = null;
71 this.parentNode = null; 71 this.parentNode = null;
72 72
73 if (payload.shadowRoots) { 73 if (payload.shadowRoots) {
74 for (var i = 0; i < payload.shadowRoots.length; ++i) { 74 for (var i = 0; i < payload.shadowRoots.length; ++i) {
75 var root = payload.shadowRoots[i]; 75 var root = payload.shadowRoots[i];
76 var node = new WebInspector.DOMNode(this._domAgent, this.ownerDocume nt, true, root); 76 var node = new WebInspector.DOMNode(this._domModel, this.ownerDocume nt, true, root);
77 this._shadowRoots.push(node); 77 this._shadowRoots.push(node);
78 node.parentNode = this; 78 node.parentNode = this;
79 } 79 }
80 } 80 }
81 81
82 if (payload.templateContent) { 82 if (payload.templateContent) {
83 this._templateContent = new WebInspector.DOMNode(this._domAgent, this.ow nerDocument, true, payload.templateContent); 83 this._templateContent = new WebInspector.DOMNode(this._domModel, this.ow nerDocument, true, payload.templateContent);
84 this._templateContent.parentNode = this; 84 this._templateContent.parentNode = this;
85 } 85 }
86 86
87 if (payload.importedDocument) { 87 if (payload.importedDocument) {
88 this._importedDocument = new WebInspector.DOMNode(this._domAgent, this.o wnerDocument, true, payload.importedDocument); 88 this._importedDocument = new WebInspector.DOMNode(this._domModel, this.o wnerDocument, true, payload.importedDocument);
89 this._importedDocument.parentNode = this; 89 this._importedDocument.parentNode = this;
90 } 90 }
91 91
92 if (payload.children) 92 if (payload.children)
93 this._setChildrenPayload(payload.children); 93 this._setChildrenPayload(payload.children);
94 94
95 this._setPseudoElements(payload.pseudoElements); 95 this._setPseudoElements(payload.pseudoElements);
96 96
97 if (payload.contentDocument) { 97 if (payload.contentDocument) {
98 this._contentDocument = new WebInspector.DOMDocument(domAgent, payload.c ontentDocument); 98 this._contentDocument = new WebInspector.DOMDocument(domModel, payload.c ontentDocument);
99 this._children = [this._contentDocument]; 99 this._children = [this._contentDocument];
100 this._renumber(); 100 this._renumber();
101 } 101 }
102 102
103 if (this._nodeType === Node.ELEMENT_NODE) { 103 if (this._nodeType === Node.ELEMENT_NODE) {
104 // HTML and BODY from internal iframes should not overwrite top-level on es. 104 // HTML and BODY from internal iframes should not overwrite top-level on es.
105 if (this.ownerDocument && !this.ownerDocument.documentElement && this._n odeName === "HTML") 105 if (this.ownerDocument && !this.ownerDocument.documentElement && this._n odeName === "HTML")
106 this.ownerDocument.documentElement = this; 106 this.ownerDocument.documentElement = this;
107 if (this.ownerDocument && !this.ownerDocument.body && this._nodeName === "BODY") 107 if (this.ownerDocument && !this.ownerDocument.body && this._nodeName === "BODY")
108 this.ownerDocument.body = this; 108 this.ownerDocument.body = this;
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 return "#shadow-root" + (shadowRootType === WebInspector.DOMNode.Sha dowRootTypes.UserAgent ? " (user-agent)" : ""); 277 return "#shadow-root" + (shadowRootType === WebInspector.DOMNode.Sha dowRootTypes.UserAgent ? " (user-agent)" : "");
278 return this.isXMLNode() ? this.nodeName() : this.nodeName().toLowerCase( ); 278 return this.isXMLNode() ? this.nodeName() : this.nodeName().toLowerCase( );
279 }, 279 },
280 280
281 /** 281 /**
282 * @param {string} name 282 * @param {string} name
283 * @param {function(?Protocol.Error)=} callback 283 * @param {function(?Protocol.Error)=} callback
284 */ 284 */
285 setNodeName: function(name, callback) 285 setNodeName: function(name, callback)
286 { 286 {
287 DOMAgent.setNodeName(this.id, name, WebInspector.domAgent._markRevision( this, callback)); 287 DOMAgent.setNodeName(this.id, name, WebInspector.domModel._markRevision( this, callback));
288 }, 288 },
289 289
290 /** 290 /**
291 * @return {string} 291 * @return {string}
292 */ 292 */
293 localName: function() 293 localName: function()
294 { 294 {
295 return this._localName; 295 return this._localName;
296 }, 296 },
297 297
298 /** 298 /**
299 * @return {string} 299 * @return {string}
300 */ 300 */
301 nodeValue: function() 301 nodeValue: function()
302 { 302 {
303 return this._nodeValue; 303 return this._nodeValue;
304 }, 304 },
305 305
306 /** 306 /**
307 * @param {string} value 307 * @param {string} value
308 * @param {function(?Protocol.Error)=} callback 308 * @param {function(?Protocol.Error)=} callback
309 */ 309 */
310 setNodeValue: function(value, callback) 310 setNodeValue: function(value, callback)
311 { 311 {
312 DOMAgent.setNodeValue(this.id, value, WebInspector.domAgent._markRevisio n(this, callback)); 312 DOMAgent.setNodeValue(this.id, value, WebInspector.domModel._markRevisio n(this, callback));
313 }, 313 },
314 314
315 /** 315 /**
316 * @param {string} name 316 * @param {string} name
317 * @return {string} 317 * @return {string}
318 */ 318 */
319 getAttribute: function(name) 319 getAttribute: function(name)
320 { 320 {
321 var attr = this._attributesMap[name]; 321 var attr = this._attributesMap[name];
322 return attr ? attr.value : undefined; 322 return attr ? attr.value : undefined;
323 }, 323 },
324 324
325 /** 325 /**
326 * @param {string} name 326 * @param {string} name
327 * @param {string} text 327 * @param {string} text
328 * @param {function(?Protocol.Error)=} callback 328 * @param {function(?Protocol.Error)=} callback
329 */ 329 */
330 setAttribute: function(name, text, callback) 330 setAttribute: function(name, text, callback)
331 { 331 {
332 DOMAgent.setAttributesAsText(this.id, text, name, WebInspector.domAgent. _markRevision(this, callback)); 332 DOMAgent.setAttributesAsText(this.id, text, name, WebInspector.domModel. _markRevision(this, callback));
333 }, 333 },
334 334
335 /** 335 /**
336 * @param {string} name 336 * @param {string} name
337 * @param {string} value 337 * @param {string} value
338 * @param {function(?Protocol.Error)=} callback 338 * @param {function(?Protocol.Error)=} callback
339 */ 339 */
340 setAttributeValue: function(name, value, callback) 340 setAttributeValue: function(name, value, callback)
341 { 341 {
342 DOMAgent.setAttributeValue(this.id, name, value, WebInspector.domAgent._ markRevision(this, callback)); 342 DOMAgent.setAttributeValue(this.id, name, value, WebInspector.domModel._ markRevision(this, callback));
343 }, 343 },
344 344
345 /** 345 /**
346 * @return {!Object} 346 * @return {!Object}
347 */ 347 */
348 attributes: function() 348 attributes: function()
349 { 349 {
350 return this._attributes; 350 return this._attributes;
351 }, 351 },
352 352
(...skipping 12 matching lines...) Expand all
365 if (!error) { 365 if (!error) {
366 delete this._attributesMap[name]; 366 delete this._attributesMap[name];
367 for (var i = 0; i < this._attributes.length; ++i) { 367 for (var i = 0; i < this._attributes.length; ++i) {
368 if (this._attributes[i].name === name) { 368 if (this._attributes[i].name === name) {
369 this._attributes.splice(i, 1); 369 this._attributes.splice(i, 1);
370 break; 370 break;
371 } 371 }
372 } 372 }
373 } 373 }
374 374
375 WebInspector.domAgent._markRevision(this, callback)(error); 375 WebInspector.domModel._markRevision(this, callback)(error);
376 } 376 }
377 DOMAgent.removeAttribute(this.id, name, mycallback.bind(this)); 377 DOMAgent.removeAttribute(this.id, name, mycallback.bind(this));
378 }, 378 },
379 379
380 /** 380 /**
381 * @param {function(?Array.<!WebInspector.DOMNode>)=} callback 381 * @param {function(?Array.<!WebInspector.DOMNode>)=} callback
382 */ 382 */
383 getChildNodes: function(callback) 383 getChildNodes: function(callback)
384 { 384 {
385 if (this._children) { 385 if (this._children) {
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 { 427 {
428 DOMAgent.getOuterHTML(this.id, callback); 428 DOMAgent.getOuterHTML(this.id, callback);
429 }, 429 },
430 430
431 /** 431 /**
432 * @param {string} html 432 * @param {string} html
433 * @param {function(?Protocol.Error)=} callback 433 * @param {function(?Protocol.Error)=} callback
434 */ 434 */
435 setOuterHTML: function(html, callback) 435 setOuterHTML: function(html, callback)
436 { 436 {
437 DOMAgent.setOuterHTML(this.id, html, WebInspector.domAgent._markRevision (this, callback)); 437 DOMAgent.setOuterHTML(this.id, html, WebInspector.domModel._markRevision (this, callback));
438 }, 438 },
439 439
440 /** 440 /**
441 * @param {function(?Protocol.Error, !DOMAgent.NodeId=)=} callback 441 * @param {function(?Protocol.Error, !DOMAgent.NodeId=)=} callback
442 */ 442 */
443 removeNode: function(callback) 443 removeNode: function(callback)
444 { 444 {
445 DOMAgent.removeNode(this.id, WebInspector.domAgent._markRevision(this, c allback)); 445 DOMAgent.removeNode(this.id, WebInspector.domModel._markRevision(this, c allback));
446 }, 446 },
447 447
448 copyNode: function() 448 copyNode: function()
449 { 449 {
450 function copy(error, text) 450 function copy(error, text)
451 { 451 {
452 if (!error) 452 if (!error)
453 InspectorFrontendHost.copyText(text); 453 InspectorFrontendHost.copyText(text);
454 } 454 }
455 DOMAgent.getOuterHTML(this.id, copy); 455 DOMAgent.getOuterHTML(this.id, copy);
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
552 return attributesChanged; 552 return attributesChanged;
553 }, 553 },
554 554
555 /** 555 /**
556 * @param {!WebInspector.DOMNode} prev 556 * @param {!WebInspector.DOMNode} prev
557 * @param {!DOMAgent.Node} payload 557 * @param {!DOMAgent.Node} payload
558 * @return {!WebInspector.DOMNode} 558 * @return {!WebInspector.DOMNode}
559 */ 559 */
560 _insertChild: function(prev, payload) 560 _insertChild: function(prev, payload)
561 { 561 {
562 var node = new WebInspector.DOMNode(this._domAgent, this.ownerDocument, this._isInShadowTree, payload); 562 var node = new WebInspector.DOMNode(this._domModel, this.ownerDocument, this._isInShadowTree, payload);
563 this._children.splice(this._children.indexOf(prev) + 1, 0, node); 563 this._children.splice(this._children.indexOf(prev) + 1, 0, node);
564 this._renumber(); 564 this._renumber();
565 return node; 565 return node;
566 }, 566 },
567 567
568 /** 568 /**
569 * @param {!WebInspector.DOMNode} node 569 * @param {!WebInspector.DOMNode} node
570 */ 570 */
571 _removeChild: function(node) 571 _removeChild: function(node)
572 { 572 {
(...skipping 16 matching lines...) Expand all
589 */ 589 */
590 _setChildrenPayload: function(payloads) 590 _setChildrenPayload: function(payloads)
591 { 591 {
592 // We set children in the constructor. 592 // We set children in the constructor.
593 if (this._contentDocument) 593 if (this._contentDocument)
594 return; 594 return;
595 595
596 this._children = []; 596 this._children = [];
597 for (var i = 0; i < payloads.length; ++i) { 597 for (var i = 0; i < payloads.length; ++i) {
598 var payload = payloads[i]; 598 var payload = payloads[i];
599 var node = new WebInspector.DOMNode(this._domAgent, this.ownerDocume nt, this._isInShadowTree, payload); 599 var node = new WebInspector.DOMNode(this._domModel, this.ownerDocume nt, this._isInShadowTree, payload);
600 this._children.push(node); 600 this._children.push(node);
601 } 601 }
602 this._renumber(); 602 this._renumber();
603 }, 603 },
604 604
605 /** 605 /**
606 * @param {!Array.<!DOMAgent.Node>|undefined} payloads 606 * @param {!Array.<!DOMAgent.Node>|undefined} payloads
607 */ 607 */
608 _setPseudoElements: function(payloads) 608 _setPseudoElements: function(payloads)
609 { 609 {
610 this._pseudoElements = {}; 610 this._pseudoElements = {};
611 if (!payloads) 611 if (!payloads)
612 return; 612 return;
613 613
614 for (var i = 0; i < payloads.length; ++i) { 614 for (var i = 0; i < payloads.length; ++i) {
615 var node = new WebInspector.DOMNode(this._domAgent, this.ownerDocume nt, this._isInShadowTree, payloads[i]); 615 var node = new WebInspector.DOMNode(this._domModel, this.ownerDocume nt, this._isInShadowTree, payloads[i]);
616 node.parentNode = this; 616 node.parentNode = this;
617 this._pseudoElements[node.pseudoType()] = node; 617 this._pseudoElements[node.pseudoType()] = node;
618 } 618 }
619 }, 619 },
620 620
621 _renumber: function() 621 _renumber: function()
622 { 622 {
623 this._childNodeCount = this._children.length; 623 this._childNodeCount = this._children.length;
624 if (this._childNodeCount == 0) { 624 if (this._childNodeCount == 0) {
625 this.firstChild = null; 625 this.firstChild = null;
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
677 } 677 }
678 }, 678 },
679 679
680 /** 680 /**
681 * @param {!WebInspector.DOMNode} targetNode 681 * @param {!WebInspector.DOMNode} targetNode
682 * @param {?WebInspector.DOMNode} anchorNode 682 * @param {?WebInspector.DOMNode} anchorNode
683 * @param {function(?Protocol.Error, !DOMAgent.NodeId=)=} callback 683 * @param {function(?Protocol.Error, !DOMAgent.NodeId=)=} callback
684 */ 684 */
685 moveTo: function(targetNode, anchorNode, callback) 685 moveTo: function(targetNode, anchorNode, callback)
686 { 686 {
687 DOMAgent.moveTo(this.id, targetNode.id, anchorNode ? anchorNode.id : und efined, WebInspector.domAgent._markRevision(this, callback)); 687 DOMAgent.moveTo(this.id, targetNode.id, anchorNode ? anchorNode.id : und efined, WebInspector.domModel._markRevision(this, callback));
688 }, 688 },
689 689
690 /** 690 /**
691 * @return {boolean} 691 * @return {boolean}
692 */ 692 */
693 isXMLNode: function() 693 isXMLNode: function()
694 { 694 {
695 return !!this.ownerDocument && !!this.ownerDocument.xmlVersion; 695 return !!this.ownerDocument && !!this.ownerDocument.xmlVersion;
696 }, 696 },
697 697
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
779 if (frameOwnerCandidate.baseURL) 779 if (frameOwnerCandidate.baseURL)
780 return WebInspector.ParsedURL.completeURL(frameOwnerCandidate.ba seURL, url); 780 return WebInspector.ParsedURL.completeURL(frameOwnerCandidate.ba seURL, url);
781 } 781 }
782 return null; 782 return null;
783 } 783 }
784 } 784 }
785 785
786 /** 786 /**
787 * @extends {WebInspector.DOMNode} 787 * @extends {WebInspector.DOMNode}
788 * @constructor 788 * @constructor
789 * @param {!WebInspector.DOMAgent} domAgent 789 * @param {!WebInspector.DOMModel} domModel
790 * @param {!DOMAgent.Node} payload 790 * @param {!DOMAgent.Node} payload
791 */ 791 */
792 WebInspector.DOMDocument = function(domAgent, payload) 792 WebInspector.DOMDocument = function(domModel, payload)
793 { 793 {
794 WebInspector.DOMNode.call(this, domAgent, this, false, payload); 794 WebInspector.DOMNode.call(this, domModel, this, false, payload);
795 this.documentURL = payload.documentURL || ""; 795 this.documentURL = payload.documentURL || "";
796 this.baseURL = payload.baseURL || ""; 796 this.baseURL = payload.baseURL || "";
797 this.xmlVersion = payload.xmlVersion; 797 this.xmlVersion = payload.xmlVersion;
798 this._listeners = {}; 798 this._listeners = {};
799 } 799 }
800 800
801 WebInspector.DOMDocument.prototype = { 801 WebInspector.DOMDocument.prototype = {
802 __proto__: WebInspector.DOMNode.prototype 802 __proto__: WebInspector.DOMNode.prototype
803 } 803 }
804 804
805 /** 805 /**
806 * @extends {WebInspector.Object} 806 * @extends {WebInspector.Object}
807 * @constructor 807 * @constructor
808 */ 808 */
809 WebInspector.DOMAgent = function() { 809 WebInspector.DOMModel = function() {
810 /** @type {!Object.<number, !WebInspector.DOMNode>} */ 810 /** @type {!Object.<number, !WebInspector.DOMNode>} */
811 this._idToDOMNode = {}; 811 this._idToDOMNode = {};
812 /** @type {?WebInspector.DOMDocument} */ 812 /** @type {?WebInspector.DOMDocument} */
813 this._document = null; 813 this._document = null;
814 /** @type {!Object.<number, boolean>} */ 814 /** @type {!Object.<number, boolean>} */
815 this._attributeLoadNodeIds = {}; 815 this._attributeLoadNodeIds = {};
816 InspectorBackend.registerDOMDispatcher(new WebInspector.DOMDispatcher(this)) ; 816 InspectorBackend.registerDOMDispatcher(new WebInspector.DOMDispatcher(this)) ;
817 817
818 this._defaultHighlighter = new WebInspector.DefaultDOMNodeHighlighter(); 818 this._defaultHighlighter = new WebInspector.DefaultDOMNodeHighlighter();
819 this._highlighter = this._defaultHighlighter; 819 this._highlighter = this._defaultHighlighter;
820 } 820 }
821 821
822 WebInspector.DOMAgent.Events = { 822 WebInspector.DOMModel.Events = {
823 AttrModified: "AttrModified", 823 AttrModified: "AttrModified",
824 AttrRemoved: "AttrRemoved", 824 AttrRemoved: "AttrRemoved",
825 CharacterDataModified: "CharacterDataModified", 825 CharacterDataModified: "CharacterDataModified",
826 NodeInserted: "NodeInserted", 826 NodeInserted: "NodeInserted",
827 NodeRemoved: "NodeRemoved", 827 NodeRemoved: "NodeRemoved",
828 DocumentUpdated: "DocumentUpdated", 828 DocumentUpdated: "DocumentUpdated",
829 ChildNodeCountUpdated: "ChildNodeCountUpdated", 829 ChildNodeCountUpdated: "ChildNodeCountUpdated",
830 UndoRedoRequested: "UndoRedoRequested", 830 UndoRedoRequested: "UndoRedoRequested",
831 UndoRedoCompleted: "UndoRedoCompleted", 831 UndoRedoCompleted: "UndoRedoCompleted",
832 } 832 }
833 833
834 WebInspector.DOMAgent.prototype = { 834 WebInspector.DOMModel.prototype = {
835 /** 835 /**
836 * @param {function(!WebInspector.DOMDocument)=} callback 836 * @param {function(!WebInspector.DOMDocument)=} callback
837 */ 837 */
838 requestDocument: function(callback) 838 requestDocument: function(callback)
839 { 839 {
840 if (this._document) { 840 if (this._document) {
841 if (callback) 841 if (callback)
842 callback(this._document); 842 callback(this._document);
843 return; 843 return;
844 } 844 }
845 845
846 if (this._pendingDocumentRequestCallbacks) { 846 if (this._pendingDocumentRequestCallbacks) {
847 this._pendingDocumentRequestCallbacks.push(callback); 847 this._pendingDocumentRequestCallbacks.push(callback);
848 return; 848 return;
849 } 849 }
850 850
851 this._pendingDocumentRequestCallbacks = [callback]; 851 this._pendingDocumentRequestCallbacks = [callback];
852 852
853 /** 853 /**
854 * @this {WebInspector.DOMAgent} 854 * @this {WebInspector.DOMModel}
855 * @param {?Protocol.Error} error 855 * @param {?Protocol.Error} error
856 * @param {!DOMAgent.Node} root 856 * @param {!DOMAgent.Node} root
857 */ 857 */
858 function onDocumentAvailable(error, root) 858 function onDocumentAvailable(error, root)
859 { 859 {
860 if (!error) 860 if (!error)
861 this._setDocument(root); 861 this._setDocument(root);
862 862
863 for (var i = 0; i < this._pendingDocumentRequestCallbacks.length; ++ i) { 863 for (var i = 0; i < this._pendingDocumentRequestCallbacks.length; ++ i) {
864 var callback = this._pendingDocumentRequestCallbacks[i]; 864 var callback = this._pendingDocumentRequestCallbacks[i];
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
930 /** 930 /**
931 * @param {function(function(?Protocol.Error, !T=)=)} func 931 * @param {function(function(?Protocol.Error, !T=)=)} func
932 * @param {function(!T)=} callback 932 * @param {function(!T)=} callback
933 * @template T 933 * @template T
934 */ 934 */
935 _dispatchWhenDocumentAvailable: function(func, callback) 935 _dispatchWhenDocumentAvailable: function(func, callback)
936 { 936 {
937 var callbackWrapper = this._wrapClientCallback(callback); 937 var callbackWrapper = this._wrapClientCallback(callback);
938 938
939 /** 939 /**
940 * @this {WebInspector.DOMAgent} 940 * @this {WebInspector.DOMModel}
941 */ 941 */
942 function onDocumentAvailable() 942 function onDocumentAvailable()
943 { 943 {
944 if (this._document) 944 if (this._document)
945 func(callbackWrapper); 945 func(callbackWrapper);
946 else { 946 else {
947 if (callbackWrapper) 947 if (callbackWrapper)
948 callbackWrapper("No document"); 948 callbackWrapper("No document");
949 } 949 }
950 } 950 }
951 this.requestDocument(onDocumentAvailable.bind(this)); 951 this.requestDocument(onDocumentAvailable.bind(this));
952 }, 952 },
953 953
954 /** 954 /**
955 * @param {!DOMAgent.NodeId} nodeId 955 * @param {!DOMAgent.NodeId} nodeId
956 * @param {string} name 956 * @param {string} name
957 * @param {string} value 957 * @param {string} value
958 */ 958 */
959 _attributeModified: function(nodeId, name, value) 959 _attributeModified: function(nodeId, name, value)
960 { 960 {
961 var node = this._idToDOMNode[nodeId]; 961 var node = this._idToDOMNode[nodeId];
962 if (!node) 962 if (!node)
963 return; 963 return;
964 964
965 node._setAttribute(name, value); 965 node._setAttribute(name, value);
966 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.AttrModified, { node: node, name: name }); 966 this.dispatchEventToListeners(WebInspector.DOMModel.Events.AttrModified, { node: node, name: name });
967 }, 967 },
968 968
969 /** 969 /**
970 * @param {!DOMAgent.NodeId} nodeId 970 * @param {!DOMAgent.NodeId} nodeId
971 * @param {string} name 971 * @param {string} name
972 */ 972 */
973 _attributeRemoved: function(nodeId, name) 973 _attributeRemoved: function(nodeId, name)
974 { 974 {
975 var node = this._idToDOMNode[nodeId]; 975 var node = this._idToDOMNode[nodeId];
976 if (!node) 976 if (!node)
977 return; 977 return;
978 node._removeAttribute(name); 978 node._removeAttribute(name);
979 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.AttrRemoved, { node: node, name: name }); 979 this.dispatchEventToListeners(WebInspector.DOMModel.Events.AttrRemoved, { node: node, name: name });
980 }, 980 },
981 981
982 /** 982 /**
983 * @param {!Array.<!DOMAgent.NodeId>} nodeIds 983 * @param {!Array.<!DOMAgent.NodeId>} nodeIds
984 */ 984 */
985 _inlineStyleInvalidated: function(nodeIds) 985 _inlineStyleInvalidated: function(nodeIds)
986 { 986 {
987 for (var i = 0; i < nodeIds.length; ++i) 987 for (var i = 0; i < nodeIds.length; ++i)
988 this._attributeLoadNodeIds[nodeIds[i]] = true; 988 this._attributeLoadNodeIds[nodeIds[i]] = true;
989 if ("_loadNodeAttributesTimeout" in this) 989 if ("_loadNodeAttributesTimeout" in this)
990 return; 990 return;
991 this._loadNodeAttributesTimeout = setTimeout(this._loadNodeAttributes.bi nd(this), 20); 991 this._loadNodeAttributesTimeout = setTimeout(this._loadNodeAttributes.bi nd(this), 20);
992 }, 992 },
993 993
994 _loadNodeAttributes: function() 994 _loadNodeAttributes: function()
995 { 995 {
996 /** 996 /**
997 * @this {WebInspector.DOMAgent} 997 * @this {WebInspector.DOMModel}
998 * @param {!DOMAgent.NodeId} nodeId 998 * @param {!DOMAgent.NodeId} nodeId
999 * @param {?Protocol.Error} error 999 * @param {?Protocol.Error} error
1000 * @param {!Array.<string>} attributes 1000 * @param {!Array.<string>} attributes
1001 */ 1001 */
1002 function callback(nodeId, error, attributes) 1002 function callback(nodeId, error, attributes)
1003 { 1003 {
1004 if (error) { 1004 if (error) {
1005 // We are calling _loadNodeAttributes asynchronously, it is ok i f node is not found. 1005 // We are calling _loadNodeAttributes asynchronously, it is ok i f node is not found.
1006 return; 1006 return;
1007 } 1007 }
1008 var node = this._idToDOMNode[nodeId]; 1008 var node = this._idToDOMNode[nodeId];
1009 if (node) { 1009 if (node) {
1010 if (node._setAttributesPayload(attributes)) 1010 if (node._setAttributesPayload(attributes))
1011 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.A ttrModified, { node: node, name: "style" }); 1011 this.dispatchEventToListeners(WebInspector.DOMModel.Events.A ttrModified, { node: node, name: "style" });
1012 } 1012 }
1013 } 1013 }
1014 1014
1015 delete this._loadNodeAttributesTimeout; 1015 delete this._loadNodeAttributesTimeout;
1016 1016
1017 for (var nodeId in this._attributeLoadNodeIds) { 1017 for (var nodeId in this._attributeLoadNodeIds) {
1018 var nodeIdAsNumber = parseInt(nodeId, 10); 1018 var nodeIdAsNumber = parseInt(nodeId, 10);
1019 DOMAgent.getAttributes(nodeIdAsNumber, callback.bind(this, nodeIdAsN umber)); 1019 DOMAgent.getAttributes(nodeIdAsNumber, callback.bind(this, nodeIdAsN umber));
1020 } 1020 }
1021 this._attributeLoadNodeIds = {}; 1021 this._attributeLoadNodeIds = {};
1022 }, 1022 },
1023 1023
1024 /** 1024 /**
1025 * @param {!DOMAgent.NodeId} nodeId 1025 * @param {!DOMAgent.NodeId} nodeId
1026 * @param {string} newValue 1026 * @param {string} newValue
1027 */ 1027 */
1028 _characterDataModified: function(nodeId, newValue) 1028 _characterDataModified: function(nodeId, newValue)
1029 { 1029 {
1030 var node = this._idToDOMNode[nodeId]; 1030 var node = this._idToDOMNode[nodeId];
1031 node._nodeValue = newValue; 1031 node._nodeValue = newValue;
1032 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.CharacterData Modified, node); 1032 this.dispatchEventToListeners(WebInspector.DOMModel.Events.CharacterData Modified, node);
1033 }, 1033 },
1034 1034
1035 /** 1035 /**
1036 * @param {!DOMAgent.NodeId} nodeId 1036 * @param {!DOMAgent.NodeId} nodeId
1037 * @return {?WebInspector.DOMNode} 1037 * @return {?WebInspector.DOMNode}
1038 */ 1038 */
1039 nodeForId: function(nodeId) 1039 nodeForId: function(nodeId)
1040 { 1040 {
1041 return this._idToDOMNode[nodeId] || null; 1041 return this._idToDOMNode[nodeId] || null;
1042 }, 1042 },
1043 1043
1044 _documentUpdated: function() 1044 _documentUpdated: function()
1045 { 1045 {
1046 this._setDocument(null); 1046 this._setDocument(null);
1047 }, 1047 },
1048 1048
1049 /** 1049 /**
1050 * @param {?DOMAgent.Node} payload 1050 * @param {?DOMAgent.Node} payload
1051 */ 1051 */
1052 _setDocument: function(payload) 1052 _setDocument: function(payload)
1053 { 1053 {
1054 this._idToDOMNode = {}; 1054 this._idToDOMNode = {};
1055 if (payload && "nodeId" in payload) 1055 if (payload && "nodeId" in payload)
1056 this._document = new WebInspector.DOMDocument(this, payload); 1056 this._document = new WebInspector.DOMDocument(this, payload);
1057 else 1057 else
1058 this._document = null; 1058 this._document = null;
1059 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.DocumentUpdat ed, this._document); 1059 this.dispatchEventToListeners(WebInspector.DOMModel.Events.DocumentUpdat ed, this._document);
1060 }, 1060 },
1061 1061
1062 /** 1062 /**
1063 * @param {!DOMAgent.Node} payload 1063 * @param {!DOMAgent.Node} payload
1064 */ 1064 */
1065 _setDetachedRoot: function(payload) 1065 _setDetachedRoot: function(payload)
1066 { 1066 {
1067 if (payload.nodeName === "#document") 1067 if (payload.nodeName === "#document")
1068 new WebInspector.DOMDocument(this, payload); 1068 new WebInspector.DOMDocument(this, payload);
1069 else 1069 else
(...skipping 16 matching lines...) Expand all
1086 }, 1086 },
1087 1087
1088 /** 1088 /**
1089 * @param {!DOMAgent.NodeId} nodeId 1089 * @param {!DOMAgent.NodeId} nodeId
1090 * @param {number} newValue 1090 * @param {number} newValue
1091 */ 1091 */
1092 _childNodeCountUpdated: function(nodeId, newValue) 1092 _childNodeCountUpdated: function(nodeId, newValue)
1093 { 1093 {
1094 var node = this._idToDOMNode[nodeId]; 1094 var node = this._idToDOMNode[nodeId];
1095 node._childNodeCount = newValue; 1095 node._childNodeCount = newValue;
1096 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.ChildNodeCoun tUpdated, node); 1096 this.dispatchEventToListeners(WebInspector.DOMModel.Events.ChildNodeCoun tUpdated, node);
1097 }, 1097 },
1098 1098
1099 /** 1099 /**
1100 * @param {!DOMAgent.NodeId} parentId 1100 * @param {!DOMAgent.NodeId} parentId
1101 * @param {!DOMAgent.NodeId} prevId 1101 * @param {!DOMAgent.NodeId} prevId
1102 * @param {!DOMAgent.Node} payload 1102 * @param {!DOMAgent.Node} payload
1103 */ 1103 */
1104 _childNodeInserted: function(parentId, prevId, payload) 1104 _childNodeInserted: function(parentId, prevId, payload)
1105 { 1105 {
1106 var parent = this._idToDOMNode[parentId]; 1106 var parent = this._idToDOMNode[parentId];
1107 var prev = this._idToDOMNode[prevId]; 1107 var prev = this._idToDOMNode[prevId];
1108 var node = parent._insertChild(prev, payload); 1108 var node = parent._insertChild(prev, payload);
1109 this._idToDOMNode[node.id] = node; 1109 this._idToDOMNode[node.id] = node;
1110 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.NodeInserted, node); 1110 this.dispatchEventToListeners(WebInspector.DOMModel.Events.NodeInserted, node);
1111 }, 1111 },
1112 1112
1113 /** 1113 /**
1114 * @param {!DOMAgent.NodeId} parentId 1114 * @param {!DOMAgent.NodeId} parentId
1115 * @param {!DOMAgent.NodeId} nodeId 1115 * @param {!DOMAgent.NodeId} nodeId
1116 */ 1116 */
1117 _childNodeRemoved: function(parentId, nodeId) 1117 _childNodeRemoved: function(parentId, nodeId)
1118 { 1118 {
1119 var parent = this._idToDOMNode[parentId]; 1119 var parent = this._idToDOMNode[parentId];
1120 var node = this._idToDOMNode[nodeId]; 1120 var node = this._idToDOMNode[nodeId];
1121 parent._removeChild(node); 1121 parent._removeChild(node);
1122 this._unbind(node); 1122 this._unbind(node);
1123 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.NodeRemoved, {node: node, parent: parent}); 1123 this.dispatchEventToListeners(WebInspector.DOMModel.Events.NodeRemoved, {node: node, parent: parent});
1124 }, 1124 },
1125 1125
1126 /** 1126 /**
1127 * @param {!DOMAgent.NodeId} hostId 1127 * @param {!DOMAgent.NodeId} hostId
1128 * @param {!DOMAgent.Node} root 1128 * @param {!DOMAgent.Node} root
1129 */ 1129 */
1130 _shadowRootPushed: function(hostId, root) 1130 _shadowRootPushed: function(hostId, root)
1131 { 1131 {
1132 var host = this._idToDOMNode[hostId]; 1132 var host = this._idToDOMNode[hostId];
1133 if (!host) 1133 if (!host)
1134 return; 1134 return;
1135 var node = new WebInspector.DOMNode(this, host.ownerDocument, true, root ); 1135 var node = new WebInspector.DOMNode(this, host.ownerDocument, true, root );
1136 node.parentNode = host; 1136 node.parentNode = host;
1137 this._idToDOMNode[node.id] = node; 1137 this._idToDOMNode[node.id] = node;
1138 host._shadowRoots.push(node); 1138 host._shadowRoots.push(node);
1139 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.NodeInserted, node); 1139 this.dispatchEventToListeners(WebInspector.DOMModel.Events.NodeInserted, node);
1140 }, 1140 },
1141 1141
1142 /** 1142 /**
1143 * @param {!DOMAgent.NodeId} hostId 1143 * @param {!DOMAgent.NodeId} hostId
1144 * @param {!DOMAgent.NodeId} rootId 1144 * @param {!DOMAgent.NodeId} rootId
1145 */ 1145 */
1146 _shadowRootPopped: function(hostId, rootId) 1146 _shadowRootPopped: function(hostId, rootId)
1147 { 1147 {
1148 var host = this._idToDOMNode[hostId]; 1148 var host = this._idToDOMNode[hostId];
1149 if (!host) 1149 if (!host)
1150 return; 1150 return;
1151 var root = this._idToDOMNode[rootId]; 1151 var root = this._idToDOMNode[rootId];
1152 if (!root) 1152 if (!root)
1153 return; 1153 return;
1154 host._removeChild(root); 1154 host._removeChild(root);
1155 this._unbind(root); 1155 this._unbind(root);
1156 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.NodeRemoved, {node: root, parent: host}); 1156 this.dispatchEventToListeners(WebInspector.DOMModel.Events.NodeRemoved, {node: root, parent: host});
1157 }, 1157 },
1158 1158
1159 /** 1159 /**
1160 * @param {!DOMAgent.NodeId} parentId 1160 * @param {!DOMAgent.NodeId} parentId
1161 * @param {!DOMAgent.Node} pseudoElement 1161 * @param {!DOMAgent.Node} pseudoElement
1162 */ 1162 */
1163 _pseudoElementAdded: function(parentId, pseudoElement) 1163 _pseudoElementAdded: function(parentId, pseudoElement)
1164 { 1164 {
1165 var parent = this._idToDOMNode[parentId]; 1165 var parent = this._idToDOMNode[parentId];
1166 if (!parent) 1166 if (!parent)
1167 return; 1167 return;
1168 var node = new WebInspector.DOMNode(this, parent.ownerDocument, false, p seudoElement); 1168 var node = new WebInspector.DOMNode(this, parent.ownerDocument, false, p seudoElement);
1169 node.parentNode = parent; 1169 node.parentNode = parent;
1170 this._idToDOMNode[node.id] = node; 1170 this._idToDOMNode[node.id] = node;
1171 console.assert(!parent._pseudoElements[node.pseudoType()]); 1171 console.assert(!parent._pseudoElements[node.pseudoType()]);
1172 parent._pseudoElements[node.pseudoType()] = node; 1172 parent._pseudoElements[node.pseudoType()] = node;
1173 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.NodeInserted, node); 1173 this.dispatchEventToListeners(WebInspector.DOMModel.Events.NodeInserted, node);
1174 }, 1174 },
1175 1175
1176 /** 1176 /**
1177 * @param {!DOMAgent.NodeId} parentId 1177 * @param {!DOMAgent.NodeId} parentId
1178 * @param {!DOMAgent.NodeId} pseudoElementId 1178 * @param {!DOMAgent.NodeId} pseudoElementId
1179 */ 1179 */
1180 _pseudoElementRemoved: function(parentId, pseudoElementId) 1180 _pseudoElementRemoved: function(parentId, pseudoElementId)
1181 { 1181 {
1182 var parent = this._idToDOMNode[parentId]; 1182 var parent = this._idToDOMNode[parentId];
1183 if (!parent) 1183 if (!parent)
1184 return; 1184 return;
1185 var pseudoElement = this._idToDOMNode[pseudoElementId]; 1185 var pseudoElement = this._idToDOMNode[pseudoElementId];
1186 if (!pseudoElement) 1186 if (!pseudoElement)
1187 return; 1187 return;
1188 parent._removeChild(pseudoElement); 1188 parent._removeChild(pseudoElement);
1189 this._unbind(pseudoElement); 1189 this._unbind(pseudoElement);
1190 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.NodeRemoved, {node: pseudoElement, parent: parent}); 1190 this.dispatchEventToListeners(WebInspector.DOMModel.Events.NodeRemoved, {node: pseudoElement, parent: parent});
1191 }, 1191 },
1192 1192
1193 /** 1193 /**
1194 * @param {!WebInspector.DOMNode} node 1194 * @param {!WebInspector.DOMNode} node
1195 */ 1195 */
1196 _unbind: function(node) 1196 _unbind: function(node)
1197 { 1197 {
1198 delete this._idToDOMNode[node.id]; 1198 delete this._idToDOMNode[node.id];
1199 for (var i = 0; node._children && i < node._children.length; ++i) 1199 for (var i = 0; node._children && i < node._children.length; ++i)
1200 this._unbind(node._children[i]); 1200 this._unbind(node._children[i]);
(...skipping 27 matching lines...) Expand all
1228 * @param {function(number)} searchCallback 1228 * @param {function(number)} searchCallback
1229 */ 1229 */
1230 performSearch: function(query, searchCallback) 1230 performSearch: function(query, searchCallback)
1231 { 1231 {
1232 this.cancelSearch(); 1232 this.cancelSearch();
1233 1233
1234 /** 1234 /**
1235 * @param {?Protocol.Error} error 1235 * @param {?Protocol.Error} error
1236 * @param {string} searchId 1236 * @param {string} searchId
1237 * @param {number} resultsCount 1237 * @param {number} resultsCount
1238 * @this {WebInspector.DOMAgent} 1238 * @this {WebInspector.DOMModel}
1239 */ 1239 */
1240 function callback(error, searchId, resultsCount) 1240 function callback(error, searchId, resultsCount)
1241 { 1241 {
1242 this._searchId = searchId; 1242 this._searchId = searchId;
1243 searchCallback(resultsCount); 1243 searchCallback(resultsCount);
1244 } 1244 }
1245 DOMAgent.performSearch(query, callback.bind(this)); 1245 DOMAgent.performSearch(query, callback.bind(this));
1246 }, 1246 },
1247 1247
1248 /** 1248 /**
1249 * @param {number} index 1249 * @param {number} index
1250 * @param {?function(?WebInspector.DOMNode)} callback 1250 * @param {?function(?WebInspector.DOMNode)} callback
1251 */ 1251 */
1252 searchResult: function(index, callback) 1252 searchResult: function(index, callback)
1253 { 1253 {
1254 if (this._searchId) 1254 if (this._searchId)
1255 DOMAgent.getSearchResults(this._searchId, index, index + 1, searchRe sultsCallback.bind(this)); 1255 DOMAgent.getSearchResults(this._searchId, index, index + 1, searchRe sultsCallback.bind(this));
1256 else 1256 else
1257 callback(null); 1257 callback(null);
1258 1258
1259 /** 1259 /**
1260 * @param {?Protocol.Error} error 1260 * @param {?Protocol.Error} error
1261 * @param {!Array.<number>} nodeIds 1261 * @param {!Array.<number>} nodeIds
1262 * @this {WebInspector.DOMAgent} 1262 * @this {WebInspector.DOMModel}
1263 */ 1263 */
1264 function searchResultsCallback(error, nodeIds) 1264 function searchResultsCallback(error, nodeIds)
1265 { 1265 {
1266 if (error) { 1266 if (error) {
1267 console.error(error); 1267 console.error(error);
1268 callback(null); 1268 callback(null);
1269 return; 1269 return;
1270 } 1270 }
1271 if (nodeIds.length != 1) 1271 if (nodeIds.length != 1)
1272 return; 1272 return;
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
1332 }, 1332 },
1333 1333
1334 /** 1334 /**
1335 * @param {boolean} enabled 1335 * @param {boolean} enabled
1336 * @param {boolean} inspectUAShadowDOM 1336 * @param {boolean} inspectUAShadowDOM
1337 * @param {function(?Protocol.Error)=} callback 1337 * @param {function(?Protocol.Error)=} callback
1338 */ 1338 */
1339 setInspectModeEnabled: function(enabled, inspectUAShadowDOM, callback) 1339 setInspectModeEnabled: function(enabled, inspectUAShadowDOM, callback)
1340 { 1340 {
1341 /** 1341 /**
1342 * @this {WebInspector.DOMAgent} 1342 * @this {WebInspector.DOMModel}
1343 */ 1343 */
1344 function onDocumentAvailable() 1344 function onDocumentAvailable()
1345 { 1345 {
1346 this._highlighter.setInspectModeEnabled(enabled, inspectUAShadowDOM, this._buildHighlightConfig(), callback); 1346 this._highlighter.setInspectModeEnabled(enabled, inspectUAShadowDOM, this._buildHighlightConfig(), callback);
1347 } 1347 }
1348 this.requestDocument(onDocumentAvailable.bind(this)); 1348 this.requestDocument(onDocumentAvailable.bind(this));
1349 }, 1349 },
1350 1350
1351 /** 1351 /**
1352 * @param {string=} mode 1352 * @param {string=} mode
(...skipping 24 matching lines...) Expand all
1377 /** 1377 /**
1378 * @param {!WebInspector.DOMNode} node 1378 * @param {!WebInspector.DOMNode} node
1379 * @param {function(?Protocol.Error, !A=, !B=)=} callback 1379 * @param {function(?Protocol.Error, !A=, !B=)=} callback
1380 * @return {function(?Protocol.Error, !A=, !B=)} 1380 * @return {function(?Protocol.Error, !A=, !B=)}
1381 * @template A,B 1381 * @template A,B
1382 */ 1382 */
1383 _markRevision: function(node, callback) 1383 _markRevision: function(node, callback)
1384 { 1384 {
1385 /** 1385 /**
1386 * @param {?Protocol.Error} error 1386 * @param {?Protocol.Error} error
1387 * @this {WebInspector.DOMAgent} 1387 * @this {WebInspector.DOMModel}
1388 */ 1388 */
1389 function wrapperFunction(error) 1389 function wrapperFunction(error)
1390 { 1390 {
1391 if (!error) 1391 if (!error)
1392 this.markUndoableState(); 1392 this.markUndoableState();
1393 1393
1394 if (callback) 1394 if (callback)
1395 callback.apply(this, arguments); 1395 callback.apply(this, arguments);
1396 } 1396 }
1397 return wrapperFunction.bind(this); 1397 return wrapperFunction.bind(this);
(...skipping 21 matching lines...) Expand all
1419 } else { 1419 } else {
1420 if (typeof this._addTouchEventsScriptId !== "undefined") { 1420 if (typeof this._addTouchEventsScriptId !== "undefined") {
1421 PageAgent.removeScriptToEvaluateOnLoad(this._addTouchEventsScrip tId); 1421 PageAgent.removeScriptToEvaluateOnLoad(this._addTouchEventsScrip tId);
1422 delete this._addTouchEventsScriptId; 1422 delete this._addTouchEventsScriptId;
1423 } 1423 }
1424 } 1424 }
1425 1425
1426 /** 1426 /**
1427 * @param {?Protocol.Error} error 1427 * @param {?Protocol.Error} error
1428 * @param {string} scriptId 1428 * @param {string} scriptId
1429 * @this {WebInspector.DOMAgent} 1429 * @this {WebInspector.DOMModel}
1430 */ 1430 */
1431 function scriptAddedCallback(error, scriptId) 1431 function scriptAddedCallback(error, scriptId)
1432 { 1432 {
1433 delete this._addTouchEventsScriptInjecting; 1433 delete this._addTouchEventsScriptInjecting;
1434 if (error) 1434 if (error)
1435 return; 1435 return;
1436 this._addTouchEventsScriptId = scriptId; 1436 this._addTouchEventsScriptId = scriptId;
1437 } 1437 }
1438 1438
1439 PageAgent.setTouchEmulationEnabled(emulationEnabled); 1439 PageAgent.setTouchEmulationEnabled(emulationEnabled);
1440 }, 1440 },
1441 1441
1442 markUndoableState: function() 1442 markUndoableState: function()
1443 { 1443 {
1444 DOMAgent.markUndoableState(); 1444 DOMAgent.markUndoableState();
1445 }, 1445 },
1446 1446
1447 /** 1447 /**
1448 * @param {function(?Protocol.Error)=} callback 1448 * @param {function(?Protocol.Error)=} callback
1449 */ 1449 */
1450 undo: function(callback) 1450 undo: function(callback)
1451 { 1451 {
1452 /** 1452 /**
1453 * @param {?Protocol.Error} error 1453 * @param {?Protocol.Error} error
1454 * @this {WebInspector.DOMAgent} 1454 * @this {WebInspector.DOMModel}
1455 */ 1455 */
1456 function mycallback(error) 1456 function mycallback(error)
1457 { 1457 {
1458 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.UndoRedoC ompleted); 1458 this.dispatchEventToListeners(WebInspector.DOMModel.Events.UndoRedoC ompleted);
1459 callback(error); 1459 callback(error);
1460 } 1460 }
1461 1461
1462 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.UndoRedoReque sted); 1462 this.dispatchEventToListeners(WebInspector.DOMModel.Events.UndoRedoReque sted);
1463 DOMAgent.undo(callback); 1463 DOMAgent.undo(callback);
1464 }, 1464 },
1465 1465
1466 /** 1466 /**
1467 * @param {function(?Protocol.Error)=} callback 1467 * @param {function(?Protocol.Error)=} callback
1468 */ 1468 */
1469 redo: function(callback) 1469 redo: function(callback)
1470 { 1470 {
1471 /** 1471 /**
1472 * @param {?Protocol.Error} error 1472 * @param {?Protocol.Error} error
1473 * @this {WebInspector.DOMAgent} 1473 * @this {WebInspector.DOMModel}
1474 */ 1474 */
1475 function mycallback(error) 1475 function mycallback(error)
1476 { 1476 {
1477 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.UndoRedoC ompleted); 1477 this.dispatchEventToListeners(WebInspector.DOMModel.Events.UndoRedoC ompleted);
1478 callback(error); 1478 callback(error);
1479 } 1479 }
1480 1480
1481 this.dispatchEventToListeners(WebInspector.DOMAgent.Events.UndoRedoReque sted); 1481 this.dispatchEventToListeners(WebInspector.DOMModel.Events.UndoRedoReque sted);
1482 DOMAgent.redo(callback); 1482 DOMAgent.redo(callback);
1483 }, 1483 },
1484 1484
1485 /** 1485 /**
1486 * @param {?WebInspector.DOMNodeHighlighter} highlighter 1486 * @param {?WebInspector.DOMNodeHighlighter} highlighter
1487 */ 1487 */
1488 setHighlighter: function(highlighter) 1488 setHighlighter: function(highlighter)
1489 { 1489 {
1490 this._highlighter = highlighter || this._defaultHighlighter; 1490 this._highlighter = highlighter || this._defaultHighlighter;
1491 }, 1491 },
1492 1492
1493 __proto__: WebInspector.Object.prototype 1493 __proto__: WebInspector.Object.prototype
1494 } 1494 }
1495 1495
1496 /** 1496 /**
1497 * @constructor 1497 * @constructor
1498 * @implements {DOMAgent.Dispatcher} 1498 * @implements {DOMAgent.Dispatcher}
1499 * @param {!WebInspector.DOMAgent} domAgent 1499 * @param {!WebInspector.DOMModel} domModel
1500 */ 1500 */
1501 WebInspector.DOMDispatcher = function(domAgent) 1501 WebInspector.DOMDispatcher = function(domModel)
1502 { 1502 {
1503 this._domAgent = domAgent; 1503 this._domModel = domModel;
1504 } 1504 }
1505 1505
1506 WebInspector.DOMDispatcher.prototype = { 1506 WebInspector.DOMDispatcher.prototype = {
1507 documentUpdated: function() 1507 documentUpdated: function()
1508 { 1508 {
1509 this._domAgent._documentUpdated(); 1509 this._domModel._documentUpdated();
1510 }, 1510 },
1511 1511
1512 /** 1512 /**
1513 * @param {!DOMAgent.NodeId} nodeId 1513 * @param {!DOMAgent.NodeId} nodeId
1514 */ 1514 */
1515 inspectNodeRequested: function(nodeId) 1515 inspectNodeRequested: function(nodeId)
1516 { 1516 {
1517 this._domAgent._inspectNodeRequested(nodeId); 1517 this._domModel._inspectNodeRequested(nodeId);
1518 }, 1518 },
1519 1519
1520 /** 1520 /**
1521 * @param {!DOMAgent.NodeId} nodeId 1521 * @param {!DOMAgent.NodeId} nodeId
1522 * @param {string} name 1522 * @param {string} name
1523 * @param {string} value 1523 * @param {string} value
1524 */ 1524 */
1525 attributeModified: function(nodeId, name, value) 1525 attributeModified: function(nodeId, name, value)
1526 { 1526 {
1527 this._domAgent._attributeModified(nodeId, name, value); 1527 this._domModel._attributeModified(nodeId, name, value);
1528 }, 1528 },
1529 1529
1530 /** 1530 /**
1531 * @param {!DOMAgent.NodeId} nodeId 1531 * @param {!DOMAgent.NodeId} nodeId
1532 * @param {string} name 1532 * @param {string} name
1533 */ 1533 */
1534 attributeRemoved: function(nodeId, name) 1534 attributeRemoved: function(nodeId, name)
1535 { 1535 {
1536 this._domAgent._attributeRemoved(nodeId, name); 1536 this._domModel._attributeRemoved(nodeId, name);
1537 }, 1537 },
1538 1538
1539 /** 1539 /**
1540 * @param {!Array.<!DOMAgent.NodeId>} nodeIds 1540 * @param {!Array.<!DOMAgent.NodeId>} nodeIds
1541 */ 1541 */
1542 inlineStyleInvalidated: function(nodeIds) 1542 inlineStyleInvalidated: function(nodeIds)
1543 { 1543 {
1544 this._domAgent._inlineStyleInvalidated(nodeIds); 1544 this._domModel._inlineStyleInvalidated(nodeIds);
1545 }, 1545 },
1546 1546
1547 /** 1547 /**
1548 * @param {!DOMAgent.NodeId} nodeId 1548 * @param {!DOMAgent.NodeId} nodeId
1549 * @param {string} characterData 1549 * @param {string} characterData
1550 */ 1550 */
1551 characterDataModified: function(nodeId, characterData) 1551 characterDataModified: function(nodeId, characterData)
1552 { 1552 {
1553 this._domAgent._characterDataModified(nodeId, characterData); 1553 this._domModel._characterDataModified(nodeId, characterData);
1554 }, 1554 },
1555 1555
1556 /** 1556 /**
1557 * @param {!DOMAgent.NodeId} parentId 1557 * @param {!DOMAgent.NodeId} parentId
1558 * @param {!Array.<!DOMAgent.Node>} payloads 1558 * @param {!Array.<!DOMAgent.Node>} payloads
1559 */ 1559 */
1560 setChildNodes: function(parentId, payloads) 1560 setChildNodes: function(parentId, payloads)
1561 { 1561 {
1562 this._domAgent._setChildNodes(parentId, payloads); 1562 this._domModel._setChildNodes(parentId, payloads);
1563 }, 1563 },
1564 1564
1565 /** 1565 /**
1566 * @param {!DOMAgent.NodeId} nodeId 1566 * @param {!DOMAgent.NodeId} nodeId
1567 * @param {number} childNodeCount 1567 * @param {number} childNodeCount
1568 */ 1568 */
1569 childNodeCountUpdated: function(nodeId, childNodeCount) 1569 childNodeCountUpdated: function(nodeId, childNodeCount)
1570 { 1570 {
1571 this._domAgent._childNodeCountUpdated(nodeId, childNodeCount); 1571 this._domModel._childNodeCountUpdated(nodeId, childNodeCount);
1572 }, 1572 },
1573 1573
1574 /** 1574 /**
1575 * @param {!DOMAgent.NodeId} parentNodeId 1575 * @param {!DOMAgent.NodeId} parentNodeId
1576 * @param {!DOMAgent.NodeId} previousNodeId 1576 * @param {!DOMAgent.NodeId} previousNodeId
1577 * @param {!DOMAgent.Node} payload 1577 * @param {!DOMAgent.Node} payload
1578 */ 1578 */
1579 childNodeInserted: function(parentNodeId, previousNodeId, payload) 1579 childNodeInserted: function(parentNodeId, previousNodeId, payload)
1580 { 1580 {
1581 this._domAgent._childNodeInserted(parentNodeId, previousNodeId, payload) ; 1581 this._domModel._childNodeInserted(parentNodeId, previousNodeId, payload) ;
1582 }, 1582 },
1583 1583
1584 /** 1584 /**
1585 * @param {!DOMAgent.NodeId} parentNodeId 1585 * @param {!DOMAgent.NodeId} parentNodeId
1586 * @param {!DOMAgent.NodeId} nodeId 1586 * @param {!DOMAgent.NodeId} nodeId
1587 */ 1587 */
1588 childNodeRemoved: function(parentNodeId, nodeId) 1588 childNodeRemoved: function(parentNodeId, nodeId)
1589 { 1589 {
1590 this._domAgent._childNodeRemoved(parentNodeId, nodeId); 1590 this._domModel._childNodeRemoved(parentNodeId, nodeId);
1591 }, 1591 },
1592 1592
1593 /** 1593 /**
1594 * @param {!DOMAgent.NodeId} hostId 1594 * @param {!DOMAgent.NodeId} hostId
1595 * @param {!DOMAgent.Node} root 1595 * @param {!DOMAgent.Node} root
1596 */ 1596 */
1597 shadowRootPushed: function(hostId, root) 1597 shadowRootPushed: function(hostId, root)
1598 { 1598 {
1599 this._domAgent._shadowRootPushed(hostId, root); 1599 this._domModel._shadowRootPushed(hostId, root);
1600 }, 1600 },
1601 1601
1602 /** 1602 /**
1603 * @param {!DOMAgent.NodeId} hostId 1603 * @param {!DOMAgent.NodeId} hostId
1604 * @param {!DOMAgent.NodeId} rootId 1604 * @param {!DOMAgent.NodeId} rootId
1605 */ 1605 */
1606 shadowRootPopped: function(hostId, rootId) 1606 shadowRootPopped: function(hostId, rootId)
1607 { 1607 {
1608 this._domAgent._shadowRootPopped(hostId, rootId); 1608 this._domModel._shadowRootPopped(hostId, rootId);
1609 }, 1609 },
1610 1610
1611 /** 1611 /**
1612 * @param {!DOMAgent.NodeId} parentId 1612 * @param {!DOMAgent.NodeId} parentId
1613 * @param {!DOMAgent.Node} pseudoElement 1613 * @param {!DOMAgent.Node} pseudoElement
1614 */ 1614 */
1615 pseudoElementAdded: function(parentId, pseudoElement) 1615 pseudoElementAdded: function(parentId, pseudoElement)
1616 { 1616 {
1617 this._domAgent._pseudoElementAdded(parentId, pseudoElement); 1617 this._domModel._pseudoElementAdded(parentId, pseudoElement);
1618 }, 1618 },
1619 1619
1620 /** 1620 /**
1621 * @param {!DOMAgent.NodeId} parentId 1621 * @param {!DOMAgent.NodeId} parentId
1622 * @param {!DOMAgent.NodeId} pseudoElementId 1622 * @param {!DOMAgent.NodeId} pseudoElementId
1623 */ 1623 */
1624 pseudoElementRemoved: function(parentId, pseudoElementId) 1624 pseudoElementRemoved: function(parentId, pseudoElementId)
1625 { 1625 {
1626 this._domAgent._pseudoElementRemoved(parentId, pseudoElementId); 1626 this._domModel._pseudoElementRemoved(parentId, pseudoElementId);
1627 } 1627 }
1628 } 1628 }
1629 1629
1630 /** 1630 /**
1631 * @interface 1631 * @interface
1632 */ 1632 */
1633 WebInspector.DOMNodeHighlighter = function() { 1633 WebInspector.DOMNodeHighlighter = function() {
1634 } 1634 }
1635 1635
1636 WebInspector.DOMNodeHighlighter.prototype = { 1636 WebInspector.DOMNodeHighlighter.prototype = {
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
1677 * @param {!DOMAgent.HighlightConfig} config 1677 * @param {!DOMAgent.HighlightConfig} config
1678 * @param {function(?Protocol.Error)=} callback 1678 * @param {function(?Protocol.Error)=} callback
1679 */ 1679 */
1680 setInspectModeEnabled: function(enabled, inspectUAShadowDOM, config, callbac k) 1680 setInspectModeEnabled: function(enabled, inspectUAShadowDOM, config, callbac k)
1681 { 1681 {
1682 DOMAgent.setInspectModeEnabled(enabled, inspectUAShadowDOM, config, call back); 1682 DOMAgent.setInspectModeEnabled(enabled, inspectUAShadowDOM, config, call back);
1683 } 1683 }
1684 } 1684 }
1685 1685
1686 /** 1686 /**
1687 * @type {!WebInspector.DOMAgent} 1687 * @type {!WebInspector.DOMModel}
1688 */ 1688 */
1689 WebInspector.domAgent; 1689 WebInspector.domModel;
OLDNEW
« no previous file with comments | « Source/devtools/front_end/DOMBreakpointsSidebarPane.js ('k') | Source/devtools/front_end/DOMPresentationUtils.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698