Index: content/browser/renderer_host/render_widget_host_view_gtk.cc |
diff --git a/content/browser/renderer_host/render_widget_host_view_gtk.cc b/content/browser/renderer_host/render_widget_host_view_gtk.cc |
index c68dfb14bb4cada34e1405262029ebf042eb2f62..dbe534d42a90b3bd3e08838e7f667df7442a73d0 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_gtk.cc |
+++ b/content/browser/renderer_host/render_widget_host_view_gtk.cc |
@@ -858,19 +858,20 @@ void RenderWidgetHostViewGtk::DidUpdateBackingStore( |
// be done using XCopyArea? Perhaps similar to |
// BackingStore::ScrollBackingStore? |
if (about_to_validate_and_paint_) |
- invalid_rect_ = invalid_rect_.Union(scroll_rect); |
+ invalid_rect_.Union(scroll_rect); |
else |
Paint(scroll_rect); |
for (size_t i = 0; i < copy_rects.size(); ++i) { |
// Avoid double painting. NOTE: This is only relevant given the call to |
// Paint(scroll_rect) above. |
- gfx::Rect rect = copy_rects[i].Subtract(scroll_rect); |
+ gfx::Rect rect = copy_rects[i]; |
+ rect.Subtract(scroll_rect); |
if (rect.IsEmpty()) |
continue; |
if (about_to_validate_and_paint_) |
- invalid_rect_ = invalid_rect_.Union(rect); |
+ invalid_rect_.Union(rect); |
else |
Paint(rect); |
} |
@@ -968,7 +969,9 @@ void RenderWidgetHostViewGtk::SelectionBoundsChanged( |
WebKit::WebTextDirection start_direction, |
const gfx::Rect& end_rect, |
WebKit::WebTextDirection end_direction) { |
- im_context_->UpdateCaretBounds(start_rect.Union(end_rect)); |
+ gfx::Rect combined_rect = start_rect; |
+ combined_rect.Union(end_rect); |
+ im_context_->UpdateCaretBounds(combined_rect); |
} |
GdkEventButton* RenderWidgetHostViewGtk::GetLastMouseDown() { |
@@ -1175,7 +1178,7 @@ void RenderWidgetHostViewGtk::Paint(const gfx::Rect& damage_rect) { |
about_to_validate_and_paint_ = false; |
gfx::Rect paint_rect = gfx::Rect(0, 0, kMaxWindowWidth, kMaxWindowHeight); |
- paint_rect = paint_rect.Intersect(invalid_rect_); |
+ paint_rect.Intersect(invalid_rect_); |
if (backing_store) { |
// Only render the widget if it is attached to a window; there's a short |