| OLD | NEW |
| 1 /* | 1 /* |
| 2 Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> | 2 Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> |
| 3 2004, 2005, 2007 Rob Buis <buis@kde.org> | 3 2004, 2005, 2007 Rob Buis <buis@kde.org> |
| 4 2007 Eric Seidel <eric@webkit.org> | 4 2007 Eric Seidel <eric@webkit.org> |
| 5 | 5 |
| 6 This file is part of the KDE project | 6 This file is part of the KDE project |
| 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 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 152 { | 152 { |
| 153 if (!viewport().isEmpty() | 153 if (!viewport().isEmpty() |
| 154 && style()->overflowX() == OHIDDEN | 154 && style()->overflowX() == OHIDDEN |
| 155 && style()->overflowY() == OHIDDEN) { | 155 && style()->overflowY() == OHIDDEN) { |
| 156 // Check if we need to do anything at all. | 156 // Check if we need to do anything at all. |
| 157 IntRect overflowBox = IntRect(0, 0, width(), height()); | 157 IntRect overflowBox = IntRect(0, 0, width(), height()); |
| 158 overflowBox.move(_tx, _ty); | 158 overflowBox.move(_tx, _ty); |
| 159 TransformationMatrix ctm = RenderObject::absoluteTransform(); | 159 TransformationMatrix ctm = RenderObject::absoluteTransform(); |
| 160 ctm.translate(viewport().x(), viewport().y()); | 160 ctm.translate(viewport().x(), viewport().y()); |
| 161 double localX, localY; | 161 double localX, localY; |
| 162 ctm.inverse().map(_x - _tx, _y - _ty, &localX, &localY); | 162 ctm.inverse().map(_x - _tx, _y - _ty, localX, localY); |
| 163 if (!overflowBox.contains((int)localX, (int)localY)) | 163 if (!overflowBox.contains((int)localX, (int)localY)) |
| 164 return false; | 164 return false; |
| 165 } | 165 } |
| 166 | 166 |
| 167 int sx = 0; | 167 int sx = 0; |
| 168 int sy = 0; | 168 int sy = 0; |
| 169 | 169 |
| 170 // Respect parent translation offset for non-outermost <svg> elements. | 170 // Respect parent translation offset for non-outermost <svg> elements. |
| 171 // Outermost <svg> element is handled by RenderSVGRoot. | 171 // Outermost <svg> element is handled by RenderSVGRoot. |
| 172 if (element()->hasTagName(SVGNames::svgTag)) { | 172 if (element()->hasTagName(SVGNames::svgTag)) { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 184 // Spec: Only graphical elements can be targeted by the mouse, period. | 184 // Spec: Only graphical elements can be targeted by the mouse, period. |
| 185 // 16.4: "If there are no graphics elements whose relevant graphics content
is under the pointer (i.e., there is no target element), the event is not dispat
ched." | 185 // 16.4: "If there are no graphics elements whose relevant graphics content
is under the pointer (i.e., there is no target element), the event is not dispat
ched." |
| 186 return false; | 186 return false; |
| 187 } | 187 } |
| 188 | 188 |
| 189 } | 189 } |
| 190 | 190 |
| 191 #endif // ENABLE(SVG) | 191 #endif // ENABLE(SVG) |
| 192 | 192 |
| 193 // vim:ts=4:noet | 193 // vim:ts=4:noet |
| OLD | NEW |