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

Side by Side Diff: Source/WebCore/rendering/RenderBlock.cpp

Issue 13942005: Add hit testing mode which ignores pointer-events:none. (Closed) Base URL: svn://svn.chromium.org/blink/trunk/
Patch Set: Created 7 years, 8 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
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) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 4926 matching lines...) Expand 10 before | Expand all | Expand 10 after
4937 return true; 4937 return true;
4938 } else if (hitTestColumns(request, result, locationInContainer, toLayout Point(scrolledOffset), hitTestAction)) { 4938 } else if (hitTestColumns(request, result, locationInContainer, toLayout Point(scrolledOffset), hitTestAction)) {
4939 updateHitTestResult(result, flipForWritingMode(locationInContainer.p oint() - localOffset)); 4939 updateHitTestResult(result, flipForWritingMode(locationInContainer.p oint() - localOffset));
4940 return true; 4940 return true;
4941 } 4941 }
4942 } 4942 }
4943 4943
4944 // Now hit test our background 4944 // Now hit test our background
4945 if (hitTestAction == HitTestBlockBackground || hitTestAction == HitTestChild BlockBackground) { 4945 if (hitTestAction == HitTestBlockBackground || hitTestAction == HitTestChild BlockBackground) {
4946 LayoutRect boundsRect(adjustedLocation, size()); 4946 LayoutRect boundsRect(adjustedLocation, size());
4947 if (visibleToHitTesting() && locationInContainer.intersects(boundsRect)) { 4947 if (visibleToHitTestRequest(request) && locationInContainer.intersects(b oundsRect)) {
4948 updateHitTestResult(result, flipForWritingMode(locationInContainer.p oint() - localOffset)); 4948 updateHitTestResult(result, flipForWritingMode(locationInContainer.p oint() - localOffset));
4949 if (!result.addNodeToRectBasedTestResult(nodeForHitTest(), request, locationInContainer, boundsRect)) 4949 if (!result.addNodeToRectBasedTestResult(nodeForHitTest(), request, locationInContainer, boundsRect))
4950 return true; 4950 return true;
4951 } 4951 }
4952 } 4952 }
4953 4953
4954 return false; 4954 return false;
4955 } 4955 }
4956 4956
4957 bool RenderBlock::hitTestFloats(const HitTestRequest& request, HitTestResult& re sult, const HitTestLocation& locationInContainer, const LayoutPoint& accumulated Offset) 4957 bool RenderBlock::hitTestFloats(const HitTestRequest& request, HitTestResult& re sult, const HitTestLocation& locationInContainer, const LayoutPoint& accumulated Offset)
(...skipping 3149 matching lines...) Expand 10 before | Expand all | Expand 10 after
8107 { 8107 {
8108 memoryInstrumentation->addRootObject(gColumnInfoMap, WebCoreMemoryTypes::Ren deringStructures); 8108 memoryInstrumentation->addRootObject(gColumnInfoMap, WebCoreMemoryTypes::Ren deringStructures);
8109 memoryInstrumentation->addRootObject(gPositionedDescendantsMap, WebCoreMemor yTypes::RenderingStructures); 8109 memoryInstrumentation->addRootObject(gPositionedDescendantsMap, WebCoreMemor yTypes::RenderingStructures);
8110 memoryInstrumentation->addRootObject(gPercentHeightDescendantsMap, WebCoreMe moryTypes::RenderingStructures); 8110 memoryInstrumentation->addRootObject(gPercentHeightDescendantsMap, WebCoreMe moryTypes::RenderingStructures);
8111 memoryInstrumentation->addRootObject(gPositionedContainerMap, WebCoreMemoryT ypes::RenderingStructures); 8111 memoryInstrumentation->addRootObject(gPositionedContainerMap, WebCoreMemoryT ypes::RenderingStructures);
8112 memoryInstrumentation->addRootObject(gPercentHeightContainerMap, WebCoreMemo ryTypes::RenderingStructures); 8112 memoryInstrumentation->addRootObject(gPercentHeightContainerMap, WebCoreMemo ryTypes::RenderingStructures);
8113 memoryInstrumentation->addRootObject(gDelayedUpdateScrollInfoSet, WebCoreMem oryTypes::RenderingStructures); 8113 memoryInstrumentation->addRootObject(gDelayedUpdateScrollInfoSet, WebCoreMem oryTypes::RenderingStructures);
8114 } 8114 }
8115 8115
8116 } // namespace WebCore 8116 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698