Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(220)

Side by Side Diff: Source/core/dom/Document.cpp

Issue 14859016: Don't force layout for mouse event hit tests (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/core/page/EventHandler.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All r ights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All r ights reserved.
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. 8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved.
9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved. 10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved.
(...skipping 2778 matching lines...) Expand 10 before | Expand all | Expand 10 after
2789 else if (equalIgnoringCase(policy, "always")) 2789 else if (equalIgnoringCase(policy, "always"))
2790 m_referrerPolicy = ReferrerPolicyAlways; 2790 m_referrerPolicy = ReferrerPolicyAlways;
2791 else if (equalIgnoringCase(policy, "origin")) 2791 else if (equalIgnoringCase(policy, "origin"))
2792 m_referrerPolicy = ReferrerPolicyOrigin; 2792 m_referrerPolicy = ReferrerPolicyOrigin;
2793 } 2793 }
2794 2794
2795 MouseEventWithHitTestResults Document::prepareMouseEvent(const HitTestRequest& r equest, const LayoutPoint& documentPoint, const PlatformMouseEvent& event) 2795 MouseEventWithHitTestResults Document::prepareMouseEvent(const HitTestRequest& r equest, const LayoutPoint& documentPoint, const PlatformMouseEvent& event)
2796 { 2796 {
2797 ASSERT(!renderer() || renderer()->isRenderView()); 2797 ASSERT(!renderer() || renderer()->isRenderView());
2798 2798
2799 if (!renderer()) 2799 if (!renderer() || !shouldScheduleLayout())
eseidel 2013/05/14 00:35:03 What if I have a renderer, but I don't need a layo
cbiesinger 2013/05/14 00:46:57 I think my/ojan's previous comments addressed this
2800 return MouseEventWithHitTestResults(event, HitTestResult(LayoutPoint())) ; 2800 return MouseEventWithHitTestResults(event, HitTestResult(LayoutPoint())) ;
2801 2801
2802 HitTestResult result(documentPoint); 2802 HitTestResult result(documentPoint);
2803 renderView()->hitTest(request, result); 2803 renderView()->hitTest(request, result);
2804 2804
2805 if (!request.readOnly()) 2805 if (!request.readOnly())
2806 updateHoverActiveState(request, result.innerElement()); 2806 updateHoverActiveState(request, result.innerElement());
2807 2807
2808 return MouseEventWithHitTestResults(event, result); 2808 return MouseEventWithHitTestResults(event, result);
2809 } 2809 }
(...skipping 2830 matching lines...) Expand 10 before | Expand all | Expand 10 after
5640 return; 5640 return;
5641 5641
5642 Vector<RefPtr<Element> > associatedFormControls; 5642 Vector<RefPtr<Element> > associatedFormControls;
5643 copyToVector(m_associatedFormControls, associatedFormControls); 5643 copyToVector(m_associatedFormControls, associatedFormControls);
5644 5644
5645 frame()->page()->chrome()->client()->didAssociateFormControls(associatedForm Controls); 5645 frame()->page()->chrome()->client()->didAssociateFormControls(associatedForm Controls);
5646 m_associatedFormControls.clear(); 5646 m_associatedFormControls.clear();
5647 } 5647 }
5648 5648
5649 } // namespace WebCore 5649 } // namespace WebCore
OLDNEW
« no previous file with comments | « no previous file | Source/core/page/EventHandler.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698