OLD | NEW |
1 /* | 1 /* |
2 * This file is part of the WebKit project. | 2 * This file is part of the WebKit project. |
3 * | 3 * |
4 * Copyright (C) 2006 Apple Computer, Inc. | 4 * Copyright (C) 2006 Apple Computer, Inc. |
5 * 2006 Alexander Kellett <lypanov@kde.org> | 5 * 2006 Alexander Kellett <lypanov@kde.org> |
6 * 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> | 6 * 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> |
7 * 2007 Nikolas Zimmermann <zimmermann@kde.org> | 7 * 2007 Nikolas Zimmermann <zimmermann@kde.org> |
8 * 2008 Rob Buis <buis@kde.org> | 8 * 2008 Rob Buis <buis@kde.org> |
9 * | 9 * |
10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 | 111 |
112 bool RenderSVGText::nodeAtPoint(const HitTestRequest& request, HitTestResult& re
sult, int _x, int _y, int _tx, int _ty, HitTestAction hitTestAction) | 112 bool RenderSVGText::nodeAtPoint(const HitTestRequest& request, HitTestResult& re
sult, int _x, int _y, int _tx, int _ty, HitTestAction hitTestAction) |
113 { | 113 { |
114 PointerEventsHitRules hitRules(PointerEventsHitRules::SVG_TEXT_HITTESTING, s
tyle()->pointerEvents()); | 114 PointerEventsHitRules hitRules(PointerEventsHitRules::SVG_TEXT_HITTESTING, s
tyle()->pointerEvents()); |
115 bool isVisible = (style()->visibility() == VISIBLE); | 115 bool isVisible = (style()->visibility() == VISIBLE); |
116 if (isVisible || !hitRules.requireVisible) { | 116 if (isVisible || !hitRules.requireVisible) { |
117 if ((hitRules.canHitStroke && (style()->svgStyle()->hasStroke() || !hitR
ules.requireStroke)) | 117 if ((hitRules.canHitStroke && (style()->svgStyle()->hasStroke() || !hitR
ules.requireStroke)) |
118 || (hitRules.canHitFill && (style()->svgStyle()->hasFill() || !hitRu
les.requireFill))) { | 118 || (hitRules.canHitFill && (style()->svgStyle()->hasFill() || !hitRu
les.requireFill))) { |
119 TransformationMatrix totalTransform = absoluteTransform(); | 119 TransformationMatrix totalTransform = absoluteTransform(); |
120 double localX, localY; | 120 double localX, localY; |
121 totalTransform.inverse().map(_x, _y, &localX, &localY); | 121 totalTransform.inverse().map(_x, _y, localX, localY); |
122 FloatPoint hitPoint(_x, _y); | 122 FloatPoint hitPoint(_x, _y); |
123 return RenderBlock::nodeAtPoint(request, result, (int)localX, (int)l
ocalY, _tx, _ty, hitTestAction); | 123 return RenderBlock::nodeAtPoint(request, result, (int)localX, (int)l
ocalY, _tx, _ty, hitTestAction); |
124 } | 124 } |
125 } | 125 } |
126 | 126 |
127 return false; | 127 return false; |
128 } | 128 } |
129 | 129 |
130 void RenderSVGText::absoluteRects(Vector<IntRect>& rects, int, int, bool) | 130 void RenderSVGText::absoluteRects(Vector<IntRect>& rects, int, int, bool) |
131 { | 131 { |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 | 215 |
216 repaintRect.move(x(), y()); | 216 repaintRect.move(x(), y()); |
217 return repaintRect; | 217 return repaintRect; |
218 } | 218 } |
219 | 219 |
220 } | 220 } |
221 | 221 |
222 #endif // ENABLE(SVG) | 222 #endif // ENABLE(SVG) |
223 | 223 |
224 // vim:ts=4:noet | 224 // vim:ts=4:noet |
OLD | NEW |