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

Side by Side Diff: webkit/plugins/ppapi/ppapi_plugin_instance.cc

Issue 11270042: Add non-member non-mutating methods for common gfx::Rect operations. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased Created 8 years, 1 month 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 | Annotate | Revision Log
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 "webkit/plugins/ppapi/ppapi_plugin_instance.h" 5 #include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/callback_helpers.h" 8 #include "base/callback_helpers.h"
9 #include "base/debug/trace_event.h" 9 #include "base/debug/trace_event.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 1156 matching lines...) Expand 10 before | Expand all | Expand 10 after
1167 return false; 1167 return false;
1168 1168
1169 gfx::Point plugin_origin = PP_ToGfxPoint(view_data_.rect.point); 1169 gfx::Point plugin_origin = PP_ToGfxPoint(view_data_.rect.point);
1170 // Convert |paint_bounds| to be relative to the left-top corner of the plugin. 1170 // Convert |paint_bounds| to be relative to the left-top corner of the plugin.
1171 gfx::Rect relative_paint_bounds(paint_bounds); 1171 gfx::Rect relative_paint_bounds(paint_bounds);
1172 relative_paint_bounds.Offset(-plugin_origin.x(), -plugin_origin.y()); 1172 relative_paint_bounds.Offset(-plugin_origin.x(), -plugin_origin.y());
1173 1173
1174 gfx::Rect pixel_plugin_backing_store_rect( 1174 gfx::Rect pixel_plugin_backing_store_rect(
1175 0, 0, image_data->width(), image_data->height()); 1175 0, 0, image_data->width(), image_data->height());
1176 float scale = GetBoundGraphics2D()->GetScale(); 1176 float scale = GetBoundGraphics2D()->GetScale();
1177 gfx::RectF scaled_backing_store_rect = pixel_plugin_backing_store_rect; 1177 gfx::Rect plugin_backing_store_rect = gfx::ToEnclosedRect(
1178 scaled_backing_store_rect.Scale(scale); 1178 gfx::ScaleRect(pixel_plugin_backing_store_rect, scale));
1179 gfx::Rect plugin_backing_store_rect =
1180 gfx::ToEnclosedRect(scaled_backing_store_rect);
1181 1179
1182 gfx::Rect clip_page = PP_ToGfxRect(view_data_.clip_rect); 1180 gfx::Rect clip_page = PP_ToGfxRect(view_data_.clip_rect);
1183 gfx::Rect plugin_paint_rect = plugin_backing_store_rect; 1181 gfx::Rect plugin_paint_rect =
1184 plugin_paint_rect.Intersect(clip_page); 1182 gfx::IntersectRects(plugin_backing_store_rect, clip_page);
1185 if (!plugin_paint_rect.Contains(relative_paint_bounds)) 1183 if (!plugin_paint_rect.Contains(relative_paint_bounds))
1186 return false; 1184 return false;
1187 1185
1188 // Don't do optimized painting if the area to paint intersects with the 1186 // Don't do optimized painting if the area to paint intersects with the
1189 // cut-out rects, otherwise we will paint over them. 1187 // cut-out rects, otherwise we will paint over them.
1190 for (std::vector<gfx::Rect>::const_iterator iter = cut_outs_rects_.begin(); 1188 for (std::vector<gfx::Rect>::const_iterator iter = cut_outs_rects_.begin();
1191 iter != cut_outs_rects_.end(); ++iter) { 1189 iter != cut_outs_rects_.end(); ++iter) {
1192 if (relative_paint_bounds.Intersects(*iter)) 1190 if (relative_paint_bounds.Intersects(*iter))
1193 return false; 1191 return false;
1194 } 1192 }
(...skipping 2033 matching lines...) Expand 10 before | Expand all | Expand 10 after
3228 screen_size_for_fullscreen_ = gfx::Size(); 3226 screen_size_for_fullscreen_ = gfx::Size();
3229 WebElement element = container_->element(); 3227 WebElement element = container_->element();
3230 element.setAttribute(WebString::fromUTF8(kWidth), width_before_fullscreen_); 3228 element.setAttribute(WebString::fromUTF8(kWidth), width_before_fullscreen_);
3231 element.setAttribute(WebString::fromUTF8(kHeight), height_before_fullscreen_); 3229 element.setAttribute(WebString::fromUTF8(kHeight), height_before_fullscreen_);
3232 element.setAttribute(WebString::fromUTF8(kBorder), border_before_fullscreen_); 3230 element.setAttribute(WebString::fromUTF8(kBorder), border_before_fullscreen_);
3233 element.setAttribute(WebString::fromUTF8(kStyle), style_before_fullscreen_); 3231 element.setAttribute(WebString::fromUTF8(kStyle), style_before_fullscreen_);
3234 } 3232 }
3235 3233
3236 } // namespace ppapi 3234 } // namespace ppapi
3237 } // namespace webkit 3235 } // namespace webkit
OLDNEW
« no previous file with comments | « webkit/plugins/npapi/webplugin_delegate_impl_gtk.cc ('k') | webkit/plugins/ppapi/ppb_graphics_2d_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698