Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(53)

Side by Side Diff: content/plugin/webplugin_proxy.cc

Issue 11110004: Make gfx::Rect class operations consistently mutate the class they are called on. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: cc/ fixes Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/plugin/webplugin_proxy.h" 5 #include "content/plugin/webplugin_proxy.h"
6 6
7 #include "build/build_config.h" 7 #include "build/build_config.h"
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 // delegate. 169 // delegate.
170 if (!windowless_context()) { 170 if (!windowless_context()) {
171 delegate_->PluginDidInvalidate(); 171 delegate_->PluginDidInvalidate();
172 return; 172 return;
173 } 173 }
174 174
175 // Some plugins will send invalidates larger than their own rect when 175 // Some plugins will send invalidates larger than their own rect when
176 // offscreen, so constrain invalidates to the plugin rect. 176 // offscreen, so constrain invalidates to the plugin rect.
177 gfx::Rect plugin_rect = delegate_->GetRect(); 177 gfx::Rect plugin_rect = delegate_->GetRect();
178 plugin_rect.set_origin(gfx::Point(0, 0)); 178 plugin_rect.set_origin(gfx::Point(0, 0));
179 const gfx::Rect invalidate_rect(rect.Intersect(plugin_rect)); 179 plugin_rect.Intersect(rect);
180 const gfx::Rect invalidate_rect(plugin_rect);
180 #else 181 #else
181 const gfx::Rect invalidate_rect(rect); 182 const gfx::Rect invalidate_rect(rect);
182 #endif 183 #endif
183 damaged_rect_ = damaged_rect_.Union(invalidate_rect); 184 damaged_rect_.Union(invalidate_rect);
184 // Ignore NPN_InvalidateRect calls with empty rects. Also don't send an 185 // Ignore NPN_InvalidateRect calls with empty rects. Also don't send an
185 // invalidate if it's outside the clipping region, since if we did it won't 186 // invalidate if it's outside the clipping region, since if we did it won't
186 // lead to a paint and we'll be stuck waiting forever for a DidPaint response. 187 // lead to a paint and we'll be stuck waiting forever for a DidPaint response.
187 // 188 //
188 // TODO(piman): There is a race condition here, because this test assumes 189 // TODO(piman): There is a race condition here, because this test assumes
189 // that when the paint actually occurs, the clip rect will not have changed. 190 // that when the paint actually occurs, the clip rect will not have changed.
190 // This is not true because scrolling (or window resize) could occur and be 191 // This is not true because scrolling (or window resize) could occur and be
191 // handled by the renderer before it receives the InvalidateRect message, 192 // handled by the renderer before it receives the InvalidateRect message,
192 // changing the clip rect and then not painting. 193 // changing the clip rect and then not painting.
193 if (damaged_rect_.IsEmpty() || 194 if (damaged_rect_.IsEmpty() ||
(...skipping 588 matching lines...) Expand 10 before | Expand all | Expand 10 after
782 int input_type; 783 int input_type;
783 gfx::Rect caret_rect; 784 gfx::Rect caret_rect;
784 if (!delegate_->GetIMEStatus(&input_type, &caret_rect)) 785 if (!delegate_->GetIMEStatus(&input_type, &caret_rect))
785 return; 786 return;
786 787
787 Send(new PluginHostMsg_NotifyIMEStatus(route_id_, input_type, caret_rect)); 788 Send(new PluginHostMsg_NotifyIMEStatus(route_id_, input_type, caret_rect));
788 } 789 }
789 #endif 790 #endif
790 791
791 } // namespace content 792 } // namespace content
OLDNEW
« no previous file with comments | « content/common/gpu/image_transport_surface.cc ('k') | content/renderer/browser_plugin/browser_plugin_backing_store.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698