summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cc/blink/web_layer_impl_fixed_bounds.cc6
-rw-r--r--cc/blink/web_layer_impl_fixed_bounds.h3
2 files changed, 8 insertions, 1 deletions
diff --git a/cc/blink/web_layer_impl_fixed_bounds.cc b/cc/blink/web_layer_impl_fixed_bounds.cc
index 5ffb660..e9e11c1 100644
--- a/cc/blink/web_layer_impl_fixed_bounds.cc
+++ b/cc/blink/web_layer_impl_fixed_bounds.cc
@@ -29,6 +29,12 @@ void WebLayerImplFixedBounds::invalidateRect(const blink::WebFloatRect& rect) {
invalidate();
}
+void WebLayerImplFixedBounds::invalidateRect(const blink::WebRect& rect) {
+ // Partial invalidations seldom occur for such layers.
+ // Simply invalidate the whole layer to avoid transformation of coordinates.
+ invalidate();
+}
+
void WebLayerImplFixedBounds::setTransformOrigin(
const blink::WebFloatPoint3D& transform_origin) {
if (transform_origin != this->transformOrigin()) {
diff --git a/cc/blink/web_layer_impl_fixed_bounds.h b/cc/blink/web_layer_impl_fixed_bounds.h
index 07c461c..52f54cf 100644
--- a/cc/blink/web_layer_impl_fixed_bounds.h
+++ b/cc/blink/web_layer_impl_fixed_bounds.h
@@ -23,7 +23,8 @@ class WebLayerImplFixedBounds : public WebLayerImpl {
virtual ~WebLayerImplFixedBounds();
// WebLayerImpl overrides.
- virtual void invalidateRect(const blink::WebFloatRect& rect);
+ virtual void invalidateRect(const blink::WebFloatRect& rect) override;
+ virtual void invalidateRect(const blink::WebRect& rect) override;
virtual void setTransformOrigin(
const blink::WebFloatPoint3D& transform_origin);
virtual void setBounds(const blink::WebSize& bounds);