Index: third_party/WebKit/Source/devtools/front_end/accessibility/AccessibilityNodeView.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/accessibility/AccessibilityNodeView.js b/third_party/WebKit/Source/devtools/front_end/accessibility/AccessibilityNodeView.js |
index ba08454a03b084e341475e042cae25d463f7d42e..51c4d8617eaa450637a9b47828d24764e16290d3 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/accessibility/AccessibilityNodeView.js |
+++ b/third_party/WebKit/Source/devtools/front_end/accessibility/AccessibilityNodeView.js |
@@ -221,7 +221,8 @@ WebInspector.AXNodePropertyTreeElement.prototype = { |
if (value.type === AXValueType.Idref || value.type === AXValueType.Node || |
value.type === AXValueType.IdrefList || value.type === AXValueType.NodeList) { |
this.appendRelatedNodeListValueElement(value); |
- return null; |
+ if (!value.value) |
+ return null; |
} else if (value.sources) { |
var sources = value.sources; |
for (var i = 0; i < sources.length; i++) { |
@@ -242,9 +243,16 @@ WebInspector.AXNodePropertyTreeElement.prototype = { |
*/ |
appendRelatedNode: function(relatedNode, index) |
{ |
- if (index > 0) |
- this.listItemElement.createTextChild(",\u00a0"); |
+ var deferredNode = new WebInspector.DeferredDOMNode(this._target, relatedNode.backendNodeId); |
+ var nodeTreeElement = new WebInspector.AXRelatedNodeSourceTreeElement({ deferredNode: deferredNode }, relatedNode); |
+ this.appendChild(nodeTreeElement); |
+ }, |
+ /** |
+ * @param {!AccessibilityAgent.AXRelatedNode} relatedNode |
+ */ |
+ appendRelatedNodeInline: function(relatedNode) |
+ { |
var deferredNode = new WebInspector.DeferredDOMNode(this._target, relatedNode.backendNodeId); |
var linkedNode = new WebInspector.AXRelatedNodeElement({ deferredNode: deferredNode }, relatedNode); |
this.listItemElement.appendChild(linkedNode.render()); |
@@ -255,7 +263,16 @@ WebInspector.AXNodePropertyTreeElement.prototype = { |
*/ |
appendRelatedNodeListValueElement: function(value) |
{ |
+ if (value.relatedNodes.length === 1 && !value.value) { |
+ this.appendRelatedNodeInline(value.relatedNodes[0]); |
+ return; |
+ } |
+ |
value.relatedNodes.forEach(this.appendRelatedNode, this); |
+ if (value.relatedNodes.length <= 3) |
+ this.expand(); |
+ else |
+ this.collapse(); |
}, |
__proto__: TreeElement.prototype |
@@ -327,18 +344,6 @@ WebInspector.AXValueSourceTreeElement.prototype = { |
/** |
* @param {!AccessibilityAgent.AXRelatedNode} relatedNode |
* @param {number} index |
- * @override |
- */ |
- appendRelatedNode: function(relatedNode, index) |
- { |
- var deferredNode = new WebInspector.DeferredDOMNode(this._target, relatedNode.backendNodeId); |
- var nodeTreeElement = new WebInspector.AXRelatedNodeSourceTreeElement({ deferredNode: deferredNode }, relatedNode); |
- this.appendChild(nodeTreeElement); |
- }, |
- |
- /** |
- * @param {!AccessibilityAgent.AXRelatedNode} relatedNode |
- * @param {number} index |
* @param {string} idref |
*/ |
appendRelatedNodeWithIdref: function(relatedNode, index, idref) |