Changeset 113193 in webkit


Ignore:
Timestamp:
Apr 4, 2012 8:42:02 AM (12 years ago)
Author:
commit-queue@webkit.org
Message:

Source/WebCore: Best clickable node might return non "clickable" node.
https://bugs.webkit.org/show_bug.cgi?id=83153

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-04
Reviewed by Kenneth Rohde Christiansen.

Do not return non-clickable nodes as a best clickable node.

  • page/EventHandler.cpp:

(WebCore::EventHandler::bestClickableNodeForTouchPoint):

LayoutTests: Best clickable node might return non "clickable" node.
https://bugs.webkit.org/show_bug.cgi?id=83153

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-04
Reviewed by Kenneth Rohde Christiansen.

  • touchadjustment/touch-inlines-expected.txt:
  • touchadjustment/touch-inlines.html:
Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r113188 r113193  
     12012-04-04  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
     2
     3        Best clickable node might return non "clickable" node.
     4        https://bugs.webkit.org/show_bug.cgi?id=83153
     5
     6        Reviewed by Kenneth Rohde Christiansen.
     7
     8        * touchadjustment/touch-inlines-expected.txt:
     9        * touchadjustment/touch-inlines.html:
     10
    1112012-04-04  Csaba Osztrogonác  <ossy@webkit.org>
    212
  • trunk/LayoutTests/touchadjustment/touch-inlines-expected.txt

    r111185 r113193  
    1616PASS adjustedNode.id is "6"
    1717Test a few direct misses.
    18 PASS adjustedNode.id is ""
    19 PASS adjustedNode.id is ""
     18PASS adjustedNode is null
     19PASS adjustedNode is null
    2020Test some in-direct hits.
    2121PASS adjustedNode.id is "2"
  • trunk/LayoutTests/touchadjustment/touch-inlines.html

    r111185 r113193  
    2727        var height = radius * 2;
    2828        var adjustedNode = internals.touchNodeAdjustedToBestClickableNode(x, y, width, height, document);
    29         if (adjustedNode.nodeType == 3) // TEXT node
     29        if (adjustedNode && adjustedNode.nodeType == 3) // TEXT node
    3030            adjustedNode = adjustedNode.parentNode;
    3131        return adjustedNode;
     
    5454
    5555        adjustedNode = testRoundTouch(56, 60, 8)
    56         shouldBeEqualToString('adjustedNode.id', '');
     56        shouldEvaluateTo('adjustedNode', 'null');
    5757
    5858        adjustedNode = testRoundTouch(20, 160, 4)
    59         shouldBeEqualToString('adjustedNode.id', '');
     59        shouldEvaluateTo('adjustedNode', 'null');
    6060
    6161    }
  • trunk/Source/WebCore/ChangeLog

    r113192 r113193  
     12012-04-04  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
     2
     3        Best clickable node might return non "clickable" node.
     4        https://bugs.webkit.org/show_bug.cgi?id=83153
     5
     6        Reviewed by Kenneth Rohde Christiansen.
     7
     8        Do not return non-clickable nodes as a best clickable node.
     9
     10        * page/EventHandler.cpp:
     11        (WebCore::EventHandler::bestClickableNodeForTouchPoint):
     12
    1132012-04-04  Pavel Feldman  <pfeldman@chromium.org>
    214
  • trunk/Source/WebCore/page/EventHandler.cpp

    r112669 r113193  
    24702470    IntRect touchRect = result.rectForPoint(touchCenter);
    24712471    RefPtr<StaticHashSetNodeList> nodeList = StaticHashSetNodeList::adopt(result.rectBasedTestResult());
    2472     if (!findBestClickableCandidate(targetNode, targetPoint, touchCenter, touchRect, *nodeList.get())) {
    2473         // Default to just returning innerNonSharedNode.
    2474         targetPoint = touchCenter;
    2475         targetNode = result.innerNonSharedNode();
    2476     }
     2472    findBestClickableCandidate(targetNode, targetPoint, touchCenter, touchRect, *nodeList.get());
    24772473}
    24782474
Note: See TracChangeset for help on using the changeset viewer.