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

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

Issue 2740803002: [DevTools] Simplify Popover API (Closed)
Patch Set: addressed comments 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeOutline.js
diff --git a/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeOutline.js b/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeOutline.js
index e60a30a40de62f08954f133263acd190aa6ac162..d48b56d0bfe9e2b7a5aafd7ee2f972434526716c 100644
--- a/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeOutline.js
+++ b/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeOutline.js
@@ -77,6 +77,7 @@ Elements.ElementsTreeOutline = class extends UI.TreeOutline {
this._popoverHelper = new UI.PopoverHelper(this._element);
this._popoverHelper.initializeCallbacks(this._getPopoverAnchor.bind(this), this._showPopover.bind(this));
+ this._popoverHelper.setHasPadding(true);
this._popoverHelper.setTimeout(0, 100);
/** @type {!Map<!SDK.DOMNode, !Elements.ElementsTreeOutline.UpdateRecord>} */
@@ -572,23 +573,27 @@ Elements.ElementsTreeOutline = class extends UI.TreeOutline {
/**
* @param {!Element} link
- * @param {!UI.Popover} popover
+ * @param {!UI.GlassPane} popover
+ * @return {!Promise<boolean>}
*/
_showPopover(link, popover) {
+ var fulfill;
+ var promise = new Promise(x => fulfill = x);
var listItem = link.enclosingNodeOrSelfWithNodeName('li');
var node = /** @type {!Elements.ElementsTreeElement} */ (listItem.treeElement).node();
this._loadDimensionsForNode(
node, Components.DOMPresentationUtils.buildImagePreviewContents.bind(
Components.DOMPresentationUtils, node.target(), link[Elements.ElementsTreeElement.HrefSymbol], true,
showPopover));
+ return promise;
/**
* @param {!Element=} contents
*/
function showPopover(contents) {
- if (!contents)
- return;
- popover.showForAnchor(contents, link);
+ if (contents)
+ popover.contentElement.appendChild(contents);
+ fulfill(!!contents);
}
}

Powered by Google App Engine
This is Rietveld 408576698