Changeset 101314 in webkit
- Timestamp:
- Nov 28, 2011, 6:34:22 PM (15 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
inspector/front-end/treeoutline.js (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r101313 r101314 1 2011-11-28 Timothy Hatcher <timothy@apple.com> 2 3 Skip selecting TreeElements that are hidden when keyboard navigating. 4 5 We already skipped non-selectable tree elements in the common cases, this just makes selectable 6 take the hidden flag into account. 7 8 Reviewed by Brian Weinstein. 9 10 * inspector/front-end/treeoutline.js: 11 (TreeOutline.prototype._treeKeyDown): Skip non-selectable elements when pressing Left or Right, 12 similar to what we already do when pressing Up and Down. 13 (TreeElement): Set _selectable to true. 14 (TreeElement.prototype.get selectable): Added. Return false when hidden. 15 (TreeElement.prototype.set selectable): Added. Set _selectable. 16 (TreeElement.prototype.traverseNextTreeElement): Renamed skipHidden to skipUnrevealed to prevent confusion with 17 the hidden property of TreeElement. 18 (TreeElement.prototype.traversePreviousTreeElement): Ditto. 19 1 20 2011-11-28 Timothy Hatcher <timothy@apple.com> 2 21 -
trunk/Source/WebCore/inspector/front-end/treeoutline.js
r101313 r101314 379 379 if (this.selectedTreeElement.parent.selectable) { 380 380 nextSelectedElement = this.selectedTreeElement.parent; 381 while (nextSelectedElement && !nextSelectedElement.selectable) 382 nextSelectedElement = nextSelectedElement.parent; 381 383 handled = nextSelectedElement ? true : false; 382 384 } else if (this.selectedTreeElement.parent) … … 391 393 if (this.selectedTreeElement.expanded) { 392 394 nextSelectedElement = this.selectedTreeElement.children[0]; 395 while (nextSelectedElement && !nextSelectedElement.selectable) 396 nextSelectedElement = nextSelectedElement.nextSibling; 393 397 handled = nextSelectedElement ? true : false; 394 398 } else { … … 469 473 470 474 this._hidden = false; 475 this._selectable = true; 471 476 this.expanded = false; 472 477 this.selected = false; … … 481 486 482 487 TreeElement.prototype = { 483 selectable: true,484 488 arrowToggleWidth: 10, 489 490 get selectable() { 491 if (this._hidden) 492 return false; 493 return this._selectable; 494 }, 495 496 set selectable(x) { 497 this._selectable = x; 498 }, 485 499 486 500 get listItemElement() { … … 889 903 890 904 /** 891 * @param {boolean} skip Hidden905 * @param {boolean} skipUnrevealed 892 906 * @param {(TreeOutline|TreeElement)=} stayWithin 893 907 * @param {boolean=} dontPopulate … … 895 909 * @return {TreeElement} 896 910 */ 897 TreeElement.prototype.traverseNextTreeElement = function(skip Hidden, stayWithin, dontPopulate, info)911 TreeElement.prototype.traverseNextTreeElement = function(skipUnrevealed, stayWithin, dontPopulate, info) 898 912 { 899 913 if (!dontPopulate && this.hasChildren) … … 903 917 info.depthChange = 0; 904 918 905 var element = skip Hidden? (this.revealed() ? this.children[0] : null) : this.children[0];906 if (element && (!skip Hidden || (skipHidden&& this.expanded))) {919 var element = skipUnrevealed ? (this.revealed() ? this.children[0] : null) : this.children[0]; 920 if (element && (!skipUnrevealed || (skipUnrevealed && this.expanded))) { 907 921 if (info) 908 922 info.depthChange = 1; … … 913 927 return null; 914 928 915 element = skip Hidden? (this.revealed() ? this.nextSibling : null) : this.nextSibling;929 element = skipUnrevealed ? (this.revealed() ? this.nextSibling : null) : this.nextSibling; 916 930 if (element) 917 931 return element; 918 932 919 933 element = this; 920 while (element && !element.root && !(skip Hidden? (element.revealed() ? element.nextSibling : null) : element.nextSibling) && element.parent !== stayWithin) {934 while (element && !element.root && !(skipUnrevealed ? (element.revealed() ? element.nextSibling : null) : element.nextSibling) && element.parent !== stayWithin) { 921 935 if (info) 922 936 info.depthChange -= 1; … … 927 941 return null; 928 942 929 return (skip Hidden? (element.revealed() ? element.nextSibling : null) : element.nextSibling);943 return (skipUnrevealed ? (element.revealed() ? element.nextSibling : null) : element.nextSibling); 930 944 } 931 945 932 946 /** 933 * @param {boolean} skip Hidden947 * @param {boolean} skipUnrevealed 934 948 * @param {boolean=} dontPopulate 935 949 * @return {TreeElement} 936 950 */ 937 TreeElement.prototype.traversePreviousTreeElement = function(skip Hidden, dontPopulate)938 { 939 var element = skip Hidden? (this.revealed() ? this.previousSibling : null) : this.previousSibling;951 TreeElement.prototype.traversePreviousTreeElement = function(skipUnrevealed, dontPopulate) 952 { 953 var element = skipUnrevealed ? (this.revealed() ? this.previousSibling : null) : this.previousSibling; 940 954 if (!dontPopulate && element && element.hasChildren) 941 955 element.onpopulate(); 942 956 943 while (element && (skip Hidden? (element.revealed() && element.expanded ? element.children[element.children.length - 1] : null) : element.children[element.children.length - 1])) {957 while (element && (skipUnrevealed ? (element.revealed() && element.expanded ? element.children[element.children.length - 1] : null) : element.children[element.children.length - 1])) { 944 958 if (!dontPopulate && element.hasChildren) 945 959 element.onpopulate(); 946 element = (skip Hidden? (element.revealed() && element.expanded ? element.children[element.children.length - 1] : null) : element.children[element.children.length - 1]);960 element = (skipUnrevealed ? (element.revealed() && element.expanded ? element.children[element.children.length - 1] : null) : element.children[element.children.length - 1]); 947 961 } 948 962
Note:
See TracChangeset
for help on using the changeset viewer.