summaryrefslogtreecommitdiffstats
path: root/WebCore/rendering/HitTestResult.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge WebKit at r70209: Initial merge by GitBen Murdoch2010-10-261-5/+6
| | | | Change-Id: Id23a68efa36e9d1126bcce0b137872db00892c8e
* Merge WebKit at r68651 : Initial merge by git.Kristian Monsen2010-10-071-20/+163
| | | | Change-Id: I3d6bff59f17eedd6722723354f386fec9be8ad12
* Merge WebKit at r66079 : Initial merge by gitSteve Block2010-09-021-2/+2
| | | | Change-Id: Ie2e1440fb9d487d24e52c247342c076fecaecac7
* Use upstream version of ANDROID_HITTEST_WITHSIZESteve Block2010-08-271-17/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change removes the last occurrences of ANDROID_HITTEST_WITHSIZE and updates WebKit to use the upstream version of this logic. This follows on from https://android-git.corp.google.com/g/#change,60166 which merged the upstream logic into the Android tree but maintained the existing behaviour for Android, guarded with ANDROID_HITTEST_WITHSIZE. This change introduces the following functional changes ... - HitTestResult::addNodeToRectBasedTestResult() The Android version proceeded with the containment test if the node is null. We now early out and continue the hit test. We also record the node's shadowAncestorNode, rather than the node itself. - RenderLayer::hitTestList() The android version always updates the result, but only updates the result layer if the result is not a rect based result. We now always update result layer, but only update the result if the result is not a rect based result. - RenderSVGRoot::nodeAtPoint() The Android version returned true only if it's not a rect based hit test. Now we return true always. - HitTestResult::m_isRectBased In the Android version, a padding must have positive width and height. Now we allow one of the two to be zero, provided the other is positive All other changes are non-functional and should probably have been done as part of https://android-git.corp.google.com/g/#change,60166 Note that the change to RenderBlock::nodeAtPoint() is a non-functional change because we don't pass a rect to addNodeToRectBasedTestResult(), so the default zero rect is used and the hit test always fails. Change-Id: I4163fddad59ad6485df40cd48794aa262f76ced7
* Merge WebKit at r64523 : Fix conflicts due to ANDROID_HITTEST_WITHSIZESteve Block2010-08-091-65/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A modified version of this Android-specific code was upstreamed in http://trac.webkit.org/changeset/64272 For the most part, the differences between the Android and upstreamed versions are syntactic only. In these cases, we take the upstream version. In a small number of cases, logical changes exist. In these cases, the Android logic has been retained, guarded with ANDROID_HITTEST_WITHSIZE, but using the new syntax. In particular ... - Android's HitTestResult::intersects(x, y, rect) is logically equivalent to the uspstream IntRect::intersects(HitTestPoint::rectFromPoint(x, y))). - Android's HitTestResult::addRawNode() is logically equivalent to the upstream HitTestResult::m_rectBasedTestResult.add(). - Android's HitTestResult::isRegionTest() is slightly different from the upstream HitTestResult::isRectBasedTest(). The latter is modified with a new ANDROID_HITTEST_WITHSIZE guard in HitTestResult::HitTestResult() to maintain the same behaviour. - The upstreamed code uses HitTestResult::addNodeToRectBasedTestResult() as a helper method in place of inline logic in the Android version. The slight difference in behaviour between this helper and the Android logic is reflected in the new ANDROID_HITTEST_WITHSIZE guard in the helper. This change should introduce no change in behaviour. Change-Id: I974d68e3ac963f18334418e32b08c3fd9ab1182e
* Merge WebKit at r64523 : Initial merge by git.Steve Block2010-08-091-0/+61
| | | | Change-Id: Ibb796c6802e757b1d9b40f58205cfbe4da95fcd4
* First draft to add a fat point to WebKit hit test.Grace Kloba2010-05-241-0/+63
| | | | | | | | | | | | | | | | | | | | | | | If padding is 0, it is the old style point hit test. If it finds a node, it will break the search loop and return. If padding is non-zero, the first node will be added to HitTestResult's innerNode as before. But instead of finishing the search, hit test will continue to look for other nodes covered by the fat point unless it is fully inside the current node. Here are some highlights of the changes. . instead of testing renderRect.contains(x, y), we now test renderRect.intersect(pointRect) . when a Node is hit, it will be appended to the rawNodeList of HitTestResult. So the order inside the rawNodeList represents the hit test order. Currently the fat point doesn't support SVG nodes. It also doesn't support overflow control yet.
* Merge webkit.org at r50258 : Initial merge by git.Steve Block2009-11-101-12/+1
| | | | Change-Id: I1a9e1dc4ed654b69174ad52a4f031a07240f37b0
* Merge webkit.org at R49305 : Automatic merge by git.Steve Block2009-10-201-1/+1
| | | | Change-Id: I8968561bc1bfd72b8923b7118d3728579c6dbcc7
* Revert "Merge WebKit r47420"Andrei Popescu2009-08-191-1/+1
| | | | This reverts commit d227fc870c7a697500a3c900c31baf05fb9a8524.
* Merge WebKit r47420Ben Murdoch2009-08-181-1/+1
|
* Merge in WebKit r47029.Ben Murdoch2009-08-111-7/+37
|
* Get WebKit r44544.Feng Qian2009-06-171-0/+14
|
* auto import from //depot/cupcake/@136594The Android Open Source Project2009-03-051-11/+33
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-0/+310
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-310/+0
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-171-16/+13
|
* Initial ContributionThe Android Open Source Project2008-10-211-3/+10
|
* external/webkit r30707Upstream1970-01-121-0/+306