| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 /** | 4 /** |
| 5 * @unrestricted | 5 * @unrestricted |
| 6 */ | 6 */ |
| 7 Accessibility.AXTreePane = class extends Accessibility.AccessibilitySubPane { | 7 Accessibility.AXTreePane = class extends Accessibility.AccessibilitySubPane { |
| 8 constructor() { | 8 constructor() { |
| 9 super(Common.UIString('Accessibility Tree')); | 9 super(Common.UIString('Accessibility Tree')); |
| 10 | 10 |
| (...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 169 */ | 169 */ |
| 170 axNode() { | 170 axNode() { |
| 171 return this._axNode; | 171 return this._axNode; |
| 172 } | 172 } |
| 173 | 173 |
| 174 /** | 174 /** |
| 175 * @param {boolean} inspected | 175 * @param {boolean} inspected |
| 176 */ | 176 */ |
| 177 setInspected(inspected) { | 177 setInspected(inspected) { |
| 178 this._inspected = inspected; | 178 this._inspected = inspected; |
| 179 if (this._inspected) |
| 180 this.setTrailingIcons([UI.Icon.create('smallicon-thick-left-arrow')]); |
| 181 else |
| 182 this.setTrailingIcons([]); |
| 183 |
| 179 this.listItemElement.classList.toggle('inspected', this._inspected); | 184 this.listItemElement.classList.toggle('inspected', this._inspected); |
| 180 } | 185 } |
| 181 | 186 |
| 182 /** | 187 /** |
| 183 * @override | 188 * @override |
| 184 * @return {boolean} | 189 * @return {boolean} |
| 185 */ | 190 */ |
| 186 onenter() { | 191 onenter() { |
| 187 this.inspectDOMNode(); | 192 this.inspectDOMNode(); |
| 188 return true; | 193 return true; |
| (...skipping 15 matching lines...) Expand all Loading... |
| 204 } | 209 } |
| 205 | 210 |
| 206 /** | 211 /** |
| 207 * @override | 212 * @override |
| 208 */ | 213 */ |
| 209 onattach() { | 214 onattach() { |
| 210 this._update(); | 215 this._update(); |
| 211 } | 216 } |
| 212 | 217 |
| 213 _update() { | 218 _update() { |
| 214 this.listItemElement.removeChildren(); | 219 this.titleElement().removeChildren(); |
| 215 | 220 |
| 216 if (this._axNode.ignored()) { | 221 if (this._axNode.ignored()) { |
| 217 this._appendIgnoredNodeElement(); | 222 this._appendIgnoredNodeElement(); |
| 218 } else { | 223 } else { |
| 219 this._appendRoleElement(this._axNode.role()); | 224 this._appendRoleElement(this._axNode.role()); |
| 220 if (this._axNode.name().value) { | 225 if (this._axNode.name().value) { |
| 221 this.listItemElement.createChild('span', 'separator').textContent = '\u0
0A0'; | 226 this.titleElement().createChild('span', 'separator').textContent = '\u00
A0'; |
| 222 this._appendNameElement(/** @type {string} */ (this._axNode.name().value
)); | 227 this._appendNameElement(/** @type {string} */ (this._axNode.name().value
)); |
| 223 } | 228 } |
| 224 } | 229 } |
| 225 | 230 |
| 226 if (this._axNode.hasOnlyUnloadedChildren()) { | 231 if (this._axNode.hasOnlyUnloadedChildren()) { |
| 227 this.listItemElement.classList.add('children-unloaded'); | 232 this.titleElement().classList.add('children-unloaded'); |
| 228 this.setExpandable(true); | 233 this.setExpandable(true); |
| 229 } else { | 234 } else { |
| 230 this.setExpandable(!!this._axNode.numChildren()); | 235 this.setExpandable(!!this._axNode.numChildren()); |
| 231 } | 236 } |
| 232 | 237 |
| 233 if (!this._axNode.isDOMNode()) | 238 if (!this._axNode.isDOMNode()) |
| 234 this.listItemElement.classList.add('no-dom-node'); | 239 this.titleElement().classList.add('no-dom-node'); |
| 235 this.listItemElement.appendChild(this._inspectNodeButton.element); | 240 this.titleElement().appendChild(this._inspectNodeButton.element); |
| 236 } | 241 } |
| 237 | 242 |
| 238 /** | 243 /** |
| 239 * @override | 244 * @override |
| 240 */ | 245 */ |
| 241 expand() { | 246 expand() { |
| 242 if (!this._axNode || this._axNode.hasOnlyUnloadedChildren()) | 247 if (!this._axNode || this._axNode.hasOnlyUnloadedChildren()) |
| 243 return; | 248 return; |
| 244 | 249 |
| 245 this._treePane.setExpanded(this._axNode.backendDOMNodeId(), true); | 250 this._treePane.setExpanded(this._axNode.backendDOMNodeId(), true); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 258 super.collapse(); | 263 super.collapse(); |
| 259 } | 264 } |
| 260 | 265 |
| 261 /** | 266 /** |
| 262 * @param {string} name | 267 * @param {string} name |
| 263 */ | 268 */ |
| 264 _appendNameElement(name) { | 269 _appendNameElement(name) { |
| 265 var nameElement = createElement('span'); | 270 var nameElement = createElement('span'); |
| 266 nameElement.textContent = '"' + name + '"'; | 271 nameElement.textContent = '"' + name + '"'; |
| 267 nameElement.classList.add('ax-readable-string'); | 272 nameElement.classList.add('ax-readable-string'); |
| 268 this.listItemElement.appendChild(nameElement); | 273 this.titleElement().appendChild(nameElement); |
| 269 } | 274 } |
| 270 | 275 |
| 271 /** | 276 /** |
| 272 * @param {?Protocol.Accessibility.AXValue} role | 277 * @param {?Protocol.Accessibility.AXValue} role |
| 273 */ | 278 */ |
| 274 _appendRoleElement(role) { | 279 _appendRoleElement(role) { |
| 275 if (!role) | 280 if (!role) |
| 276 return; | 281 return; |
| 277 | 282 |
| 278 var roleElement = createElementWithClass('span', 'monospace'); | 283 var roleElement = createElementWithClass('span', 'monospace'); |
| 279 roleElement.classList.add(Accessibility.AXNodeTreeElement.RoleStyles[role.ty
pe]); | 284 roleElement.classList.add(Accessibility.AXNodeTreeElement.RoleStyles[role.ty
pe]); |
| 280 roleElement.setTextContentTruncatedIfNeeded(role.value || ''); | 285 roleElement.setTextContentTruncatedIfNeeded(role.value || ''); |
| 281 | 286 |
| 282 this.listItemElement.appendChild(roleElement); | 287 this.titleElement().appendChild(roleElement); |
| 283 } | 288 } |
| 284 | 289 |
| 285 _appendIgnoredNodeElement() { | 290 _appendIgnoredNodeElement() { |
| 286 var ignoredNodeElement = createElementWithClass('span', 'monospace'); | 291 var ignoredNodeElement = createElementWithClass('span', 'monospace'); |
| 287 ignoredNodeElement.textContent = Common.UIString('Ignored'); | 292 ignoredNodeElement.textContent = Common.UIString('Ignored'); |
| 288 ignoredNodeElement.classList.add('ax-tree-ignored-node'); | 293 ignoredNodeElement.classList.add('ax-tree-ignored-node'); |
| 289 this.listItemElement.appendChild(ignoredNodeElement); | 294 this.titleElement().appendChild(ignoredNodeElement); |
| 290 } | 295 } |
| 291 | 296 |
| 292 /** | 297 /** |
| 293 * @param {boolean=} omitFocus | 298 * @param {boolean=} omitFocus |
| 294 * @param {boolean=} selectedByUser | 299 * @param {boolean=} selectedByUser |
| 295 * @return {boolean} | 300 * @return {boolean} |
| 296 * @override | 301 * @override |
| 297 */ | 302 */ |
| 298 select(omitFocus, selectedByUser) { | 303 select(omitFocus, selectedByUser) { |
| 299 this._treePane.setSelectedByUser(!!selectedByUser); | 304 this._treePane.setSelectedByUser(!!selectedByUser); |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 352 } | 357 } |
| 353 | 358 |
| 354 /** | 359 /** |
| 355 * @override | 360 * @override |
| 356 */ | 361 */ |
| 357 onattach() { | 362 onattach() { |
| 358 super.onattach(); | 363 super.onattach(); |
| 359 if (this._treePane.isExpanded(this._axNode.backendDOMNodeId())) | 364 if (this._treePane.isExpanded(this._axNode.backendDOMNodeId())) |
| 360 this.listItemElement.classList.add('siblings-expanded'); | 365 this.listItemElement.classList.add('siblings-expanded'); |
| 361 if (this._axNode.numChildren() > 1) | 366 if (this._axNode.numChildren() > 1) |
| 362 this.listItemElement.insertBefore(this._expandSiblingsButton.element, this
._inspectNodeButton.element); | 367 this.titleElement().insertBefore(this._expandSiblingsButton.element, this.
_inspectNodeButton.element); |
| 363 } | 368 } |
| 364 | 369 |
| 365 /** | 370 /** |
| 366 * @param {boolean} altKey | 371 * @param {boolean} altKey |
| 367 * @return {boolean} | 372 * @return {boolean} |
| 368 * @override | 373 * @override |
| 369 */ | 374 */ |
| 370 descendOrExpand(altKey) { | 375 descendOrExpand(altKey) { |
| 371 if (!this.expanded || !this._partiallyExpanded) | 376 if (!this.expanded || !this._partiallyExpanded) |
| 372 return super.descendOrExpand(altKey); | 377 return super.descendOrExpand(altKey); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 404 continue; | 409 continue; |
| 405 } | 410 } |
| 406 siblingTreeElement = new Accessibility.AXNodeTreeElement(sibling, this._tr
eePane); | 411 siblingTreeElement = new Accessibility.AXNodeTreeElement(sibling, this._tr
eePane); |
| 407 if (foundInspectedNode) | 412 if (foundInspectedNode) |
| 408 this.appendChild(siblingTreeElement); | 413 this.appendChild(siblingTreeElement); |
| 409 else | 414 else |
| 410 this.insertChild(siblingTreeElement, nextIndex++); | 415 this.insertChild(siblingTreeElement, nextIndex++); |
| 411 } | 416 } |
| 412 } | 417 } |
| 413 }; | 418 }; |
| OLD | NEW |