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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeOutline.js

Issue 2728543002: DevTools: refactor Common.Renderer for DOM nodes (Closed)
Patch Set: cl fb Created 3 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) 2007, 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
3 * Copyright (C) 2008 Matt Lilek <webkit@mattlilek.com> 3 * Copyright (C) 2008 Matt Lilek <webkit@mattlilek.com>
4 * Copyright (C) 2009 Joseph Pecoraro 4 * Copyright (C) 2009 Joseph Pecoraro
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 9 *
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
(...skipping 1573 matching lines...) Expand 10 before | Expand all | Expand 10 after
1584 * @return {!Promise.<!Element>} 1584 * @return {!Promise.<!Element>}
1585 */ 1585 */
1586 render(object) { 1586 render(object) {
1587 return new Promise(renderPromise); 1587 return new Promise(renderPromise);
1588 1588
1589 /** 1589 /**
1590 * @param {function(!Element)} resolve 1590 * @param {function(!Element)} resolve
1591 * @param {function(!Error)} reject 1591 * @param {function(!Error)} reject
1592 */ 1592 */
1593 function renderPromise(resolve, reject) { 1593 function renderPromise(resolve, reject) {
1594 if (object instanceof SDK.DOMNode) { 1594 if (object instanceof SDK.DOMNode)
1595 onNodeResolved(/** @type {!SDK.DOMNode} */ (object)); 1595 onNodeResolved(/** @type {!SDK.DOMNode} */ (object));
1596 } else if (object instanceof SDK.DeferredDOMNode) { 1596 else if (object instanceof SDK.DeferredDOMNode)
1597 (/** @type {!SDK.DeferredDOMNode} */ (object)).resolve(onNodeResolved); 1597 (/** @type {!SDK.DeferredDOMNode} */ (object)).resolve(onNodeResolved);
1598 } else if (object instanceof SDK.RemoteObject) { 1598 else
1599 var domModel = SDK.DOMModel.fromTarget((/** @type {!SDK.RemoteObject} */ (object)).target());
1600 if (domModel)
1601 domModel.pushObjectAsNodeToFrontend(object, onNodeResolved);
1602 else
1603 reject(new Error('No dom model for given JS object target found.'));
1604 } else {
1605 reject(new Error('Can\'t reveal not a node.')); 1599 reject(new Error('Can\'t reveal not a node.'));
1606 } 1600
1607 1601
1608 /** 1602 /**
1609 * @param {?SDK.DOMNode} node 1603 * @param {?SDK.DOMNode} node
1610 */ 1604 */
1611 function onNodeResolved(node) { 1605 function onNodeResolved(node) {
1612 if (!node) { 1606 if (!node) {
1613 reject(new Error('Could not resolve node.')); 1607 reject(new Error('Could not resolve node.'));
1614 return; 1608 return;
1615 } 1609 }
1616 var treeOutline = new Elements.ElementsTreeOutline(node.domModel(), fals e, false); 1610 var treeOutline = new Elements.ElementsTreeOutline(node.domModel(), fals e, false);
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
1689 */ 1683 */
1690 function resolved(node) { 1684 function resolved(node) {
1691 if (node) { 1685 if (node) {
1692 this.treeOutline._selectedDOMNode = node; 1686 this.treeOutline._selectedDOMNode = node;
1693 this.treeOutline._selectedNodeChanged(); 1687 this.treeOutline._selectedNodeChanged();
1694 } 1688 }
1695 } 1689 }
1696 return true; 1690 return true;
1697 } 1691 }
1698 }; 1692 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698