Chromium Code Reviews| Index: content/browser/renderer_host/render_widget_host_view_win.cc |
| diff --git a/content/browser/renderer_host/render_widget_host_view_win.cc b/content/browser/renderer_host/render_widget_host_view_win.cc |
| index 87866b23d3de8c63d0420f311d5423be091ffee7..80f6738c5d151e1227e3a207063872e443b11074 100644 |
| --- a/content/browser/renderer_host/render_widget_host_view_win.cc |
| +++ b/content/browser/renderer_host/render_widget_host_view_win.cc |
| @@ -53,6 +53,7 @@ |
| #include "ui/gfx/canvas_skia.h" |
| #include "ui/gfx/gdi_util.h" |
| #include "ui/gfx/rect.h" |
| +#include "ui/gfx/scoped_sk_region.h" |
| #include "ui/gfx/screen.h" |
| #include "webkit/glue/webaccessibility.h" |
| #include "webkit/glue/webcursor.h" |
| @@ -329,7 +330,8 @@ RenderWidgetHostViewWin::RenderWidgetHostViewWin(RenderWidgetHost* widget) |
| touch_state_(this), |
| pointer_down_context_(false), |
| focus_on_editable_field_(false), |
| - received_focus_change_after_pointer_down_(false) { |
| + received_focus_change_after_pointer_down_(false), |
| + transparent_region_(0) { |
| render_widget_host_->SetView(this); |
| registrar_.Add(this, |
| content::NOTIFICATION_RENDERER_PROCESS_TERMINATED, |
| @@ -1111,6 +1113,27 @@ void RenderWidgetHostViewWin::OnNCPaint(HRGN update_region) { |
| // otherwise draw for us. |
| } |
| +void RenderWidgetHostViewWin::SetTransparentRegion(SkRegion* region) { |
| + if (transparent_region_.Get()) { |
|
Ben Goodger (Google)
2012/01/26 23:03:45
no braces
|
| + transparent_region_.release(); |
| + } |
| + transparent_region_.Set(region); |
| +} |
| + |
| +LRESULT RenderWidgetHostViewWin::OnNCHitTest(const CPoint& point) { |
| + RECT rc; |
| + GetWindowRect(&rc); |
| + if (transparent_region_.Get() && |
| + transparent_region_.Get()->contains(point.x - rc.left, |
| + point.y - rc.top)) { |
| + SetMsgHandled(true); |
| + return HTTRANSPARENT; |
| + } else { |
| + SetMsgHandled(false); |
| + return 0; |
|
Ben Goodger (Google)
2012/01/26 23:03:45
no else after return
|
| + } |
| +} |
| + |
| LRESULT RenderWidgetHostViewWin::OnEraseBkgnd(HDC dc) { |
| return 1; |
| } |