Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2007 Apple Inc. All rights reserved. | 2 * Copyright (C) 2007 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 316 return this.getCachedTreeElement(representedObject); | 316 return this.getCachedTreeElement(representedObject); |
| 317 } | 317 } |
| 318 | 318 |
| 319 /** | 319 /** |
| 320 * @param {number} x | 320 * @param {number} x |
| 321 * @param {number} y | 321 * @param {number} y |
| 322 * @return {?TreeElement} | 322 * @return {?TreeElement} |
| 323 */ | 323 */ |
| 324 TreeOutline.prototype.treeElementFromPoint = function(x, y) | 324 TreeOutline.prototype.treeElementFromPoint = function(x, y) |
| 325 { | 325 { |
| 326 var node = this._childrenListNode.ownerDocument.elementFromPoint(x, y); | 326 var node = this._childrenListNode.ownerDocument.deepElementFromPoint(x, y); |
| 327 if (!node) | 327 if (!node) |
| 328 return null; | 328 return null; |
| 329 | 329 |
| 330 var listNode = node.enclosingNodeOrSelfWithNodeNameInArray(["ol", "li"]); | 330 var listNode = node.enclosingNodeOrSelfWithNodeNameInArray(["ol", "li"]); |
| 331 if (listNode) | 331 if (listNode) |
| 332 return listNode.parentTreeElement || listNode.treeElement; | 332 return listNode.parentTreeElement || listNode.treeElement; |
| 333 return null; | 333 return null; |
| 334 } | 334 } |
| 335 | 335 |
| 336 /** | |
| 337 * @param {?Event} event | |
|
aandrey
2014/09/25 05:47:21
either {!Event} or check for null before accessing
pfeldman
2014/10/13 13:33:11
Done.
| |
| 338 * @return {?TreeElement} | |
| 339 */ | |
| 340 TreeOutline.prototype.treeElementFromEvent = function(event) | |
| 341 { | |
| 342 return this.treeElementFromPoint(event.pageX, event.pageY); | |
| 343 } | |
| 344 | |
| 336 TreeOutline.prototype._treeKeyDown = function(event) | 345 TreeOutline.prototype._treeKeyDown = function(event) |
| 337 { | 346 { |
| 338 if (event.target !== this._childrenListNode) | 347 if (event.target !== this._childrenListNode) |
| 339 return; | 348 return; |
| 340 | 349 |
| 341 if (!this.selectedTreeElement || event.shiftKey || event.metaKey || event.ct rlKey) | 350 if (!this.selectedTreeElement || event.shiftKey || event.metaKey || event.ct rlKey) |
| 342 return; | 351 return; |
| 343 | 352 |
| 344 var handled = false; | 353 var handled = false; |
| 345 var nextSelectedElement; | 354 var nextSelectedElement; |
| (...skipping 660 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1006 * @return {boolean} | 1015 * @return {boolean} |
| 1007 */ | 1016 */ |
| 1008 TreeElement.prototype.isEventWithinDisclosureTriangle = function(event) | 1017 TreeElement.prototype.isEventWithinDisclosureTriangle = function(event) |
| 1009 { | 1018 { |
| 1010 // FIXME: We should not use getComputedStyle(). For that we need to get rid of using ::before for disclosure triangle. (http://webk.it/74446) | 1019 // FIXME: We should not use getComputedStyle(). For that we need to get rid of using ::before for disclosure triangle. (http://webk.it/74446) |
| 1011 var paddingLeftValue = window.getComputedStyle(this._listItemNode).getProper tyCSSValue("padding-left"); | 1020 var paddingLeftValue = window.getComputedStyle(this._listItemNode).getProper tyCSSValue("padding-left"); |
| 1012 var computedLeftPadding = paddingLeftValue ? paddingLeftValue.getFloatValue( CSSPrimitiveValue.CSS_PX) : 0; | 1021 var computedLeftPadding = paddingLeftValue ? paddingLeftValue.getFloatValue( CSSPrimitiveValue.CSS_PX) : 0; |
| 1013 var left = this._listItemNode.totalOffsetLeft() + computedLeftPadding; | 1022 var left = this._listItemNode.totalOffsetLeft() + computedLeftPadding; |
| 1014 return event.pageX >= left && event.pageX <= left + this.arrowToggleWidth && this.hasChildren; | 1023 return event.pageX >= left && event.pageX <= left + this.arrowToggleWidth && this.hasChildren; |
| 1015 } | 1024 } |
| OLD | NEW |