| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2009, Google Inc. All rights reserved. | 2 * Copyright (c) 2009, Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 118 setNeedsTransformUpdate(); | 118 setNeedsTransformUpdate(); |
| 119 } | 119 } |
| 120 | 120 |
| 121 if (isBlendingAllowed()) { | 121 if (isBlendingAllowed()) { |
| 122 bool hasBlendModeChanged = | 122 bool hasBlendModeChanged = |
| 123 (oldStyle && oldStyle->hasBlendMode()) == !style()->hasBlendMode(); | 123 (oldStyle && oldStyle->hasBlendMode()) == !style()->hasBlendMode(); |
| 124 if (parent() && hasBlendModeChanged) | 124 if (parent() && hasBlendModeChanged) |
| 125 parent()->descendantIsolationRequirementsChanged( | 125 parent()->descendantIsolationRequirementsChanged( |
| 126 style()->hasBlendMode() ? DescendantIsolationRequired | 126 style()->hasBlendMode() ? DescendantIsolationRequired |
| 127 : DescendantIsolationNeedsUpdate); | 127 : DescendantIsolationNeedsUpdate); |
| 128 |
| 129 if (hasBlendModeChanged) |
| 130 setNeedsPaintPropertyUpdate(); |
| 128 } | 131 } |
| 129 | 132 |
| 130 LayoutObject::styleDidChange(diff, oldStyle); | 133 LayoutObject::styleDidChange(diff, oldStyle); |
| 131 SVGResourcesCache::clientStyleChanged(this, diff, styleRef()); | 134 SVGResourcesCache::clientStyleChanged(this, diff, styleRef()); |
| 132 } | 135 } |
| 133 | 136 |
| 134 bool LayoutSVGModelObject::nodeAtPoint(HitTestResult&, | 137 bool LayoutSVGModelObject::nodeAtPoint(HitTestResult&, |
| 135 const HitTestLocation&, | 138 const HitTestLocation&, |
| 136 const LayoutPoint&, | 139 const LayoutPoint&, |
| 137 HitTestAction) { | 140 HitTestAction) { |
| 138 ASSERT_NOT_REACHED(); | 141 ASSERT_NOT_REACHED(); |
| 139 return false; | 142 return false; |
| 140 } | 143 } |
| 141 | 144 |
| 142 // The SVG addOutlineRects() method adds rects in local coordinates so the | 145 // The SVG addOutlineRects() method adds rects in local coordinates so the |
| 143 // default absoluteElementBoundingBoxRect() returns incorrect values for SVG | 146 // default absoluteElementBoundingBoxRect() returns incorrect values for SVG |
| 144 // objects. Overriding this method provides access to the absolute bounds. | 147 // objects. Overriding this method provides access to the absolute bounds. |
| 145 IntRect LayoutSVGModelObject::absoluteElementBoundingBoxRect() const { | 148 IntRect LayoutSVGModelObject::absoluteElementBoundingBoxRect() const { |
| 146 return localToAbsoluteQuad(FloatQuad(visualRectInLocalSVGCoordinates())) | 149 return localToAbsoluteQuad(FloatQuad(visualRectInLocalSVGCoordinates())) |
| 147 .enclosingBoundingBox(); | 150 .enclosingBoundingBox(); |
| 148 } | 151 } |
| 149 | 152 |
| 150 } // namespace blink | 153 } // namespace blink |
| OLD | NEW |