| Index: Source/core/dom/Document.cpp
 | 
| diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp
 | 
| index d4899823de51d810c236569a9a1cd5f9a8d2d397..245548683d376cd198e7b55d261954ee2230c531 100644
 | 
| --- a/Source/core/dom/Document.cpp
 | 
| +++ b/Source/core/dom/Document.cpp
 | 
| @@ -106,7 +106,6 @@
 | 
|  #include "ScriptedAnimationController.h"
 | 
|  #include "SelectorQuery.h"
 | 
|  #include "ShadowRoot.h"
 | 
| -#include "StaticHashSetNodeList.h"
 | 
|  #include "StylePropertySet.h"
 | 
|  #include "StyleResolver.h"
 | 
|  #include "StyleSheetContents.h"
 | 
| @@ -1291,58 +1290,6 @@ String Document::suggestedMIMEType() const
 | 
|      return String();
 | 
|  }
 | 
|  
 | 
| -// FIXME: We need to discuss the DOM API here at some point. Ideas:
 | 
| -// * making it receive a rect as parameter, i.e. nodesFromRect(x, y, w, h);
 | 
| -// * making it receive the expading size of each direction separately,
 | 
| -//   i.e. nodesFromRect(x, y, topSize, rightSize, bottomSize, leftSize);
 | 
| -PassRefPtr<NodeList> Document::nodesFromRect(int centerX, int centerY, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, unsigned leftPadding, HitTestRequest::HitTestRequestType hitType) const
 | 
| -{
 | 
| -    // FIXME: Share code between this, elementFromPoint and caretRangeFromPoint.
 | 
| -    if (!renderer())
 | 
| -        return 0;
 | 
| -    Frame* frame = this->frame();
 | 
| -    if (!frame)
 | 
| -        return 0;
 | 
| -    FrameView* frameView = frame->view();
 | 
| -    if (!frameView)
 | 
| -        return 0;
 | 
| -
 | 
| -    float zoomFactor = frame->pageZoomFactor();
 | 
| -    LayoutPoint point = roundedLayoutPoint(FloatPoint(centerX * zoomFactor + view()->scrollX(), centerY * zoomFactor + view()->scrollY()));
 | 
| -
 | 
| -    HitTestRequest request(hitType);
 | 
| -
 | 
| -    // When ignoreClipping is false, this method returns null for coordinates outside of the viewport.
 | 
| -    if (!request.ignoreClipping() && !frameView->visibleContentRect().intersects(HitTestLocation::rectForPoint(point, topPadding, rightPadding, bottomPadding, leftPadding)))
 | 
| -        return 0;
 | 
| -
 | 
| -    // Passing a zero padding will trigger a rect hit test, however for the purposes of nodesFromRect,
 | 
| -    // we special handle this case in order to return a valid NodeList.
 | 
| -    if (!topPadding && !rightPadding && !bottomPadding && !leftPadding) {
 | 
| -        HitTestResult result(point);
 | 
| -        return handleZeroPadding(request, result);
 | 
| -    }
 | 
| -
 | 
| -    HitTestResult result(point, topPadding, rightPadding, bottomPadding, leftPadding);
 | 
| -    renderView()->hitTest(request, result);
 | 
| -
 | 
| -    return StaticHashSetNodeList::adopt(result.rectBasedTestResult());
 | 
| -}
 | 
| -
 | 
| -PassRefPtr<NodeList> Document::handleZeroPadding(const HitTestRequest& request, HitTestResult& result) const
 | 
| -{
 | 
| -    renderView()->hitTest(request, result);
 | 
| -
 | 
| -    Node* node = result.innerNode();
 | 
| -    if (!node)
 | 
| -        return 0;
 | 
| -
 | 
| -    node = node->deprecatedShadowAncestorNode();
 | 
| -    ListHashSet<RefPtr<Node> > list;
 | 
| -    list.add(node);
 | 
| -    return StaticHashSetNodeList::adopt(list);
 | 
| -}
 | 
| -
 | 
|  Element* Document::elementFromPoint(int x, int y) const
 | 
|  {
 | 
|      if (!renderer())
 | 
| 
 |