Index: ui/gfx/compositor/compositor_win.cc |
diff --git a/ui/gfx/compositor/compositor_win.cc b/ui/gfx/compositor/compositor_win.cc |
index 3c0a2ff8663ec89b3ede2e7f4aeae47dd3e0509d..0b11918d5f04ce3d67708b7a566266094919272a 100644 |
--- a/ui/gfx/compositor/compositor_win.cc |
+++ b/ui/gfx/compositor/compositor_win.cc |
@@ -86,7 +86,8 @@ class ViewTexture : public Texture { |
// D3D 10 Compositor implementation. |
class CompositorWin : public Compositor { |
public: |
- CompositorWin(gfx::AcceleratedWidget widget, |
+ CompositorWin(CompositorDelegate* delegate, |
+ gfx::AcceleratedWidget widget, |
const gfx::Size& size); |
void Init(); |
@@ -321,9 +322,10 @@ void ViewTexture::CreateVertexBufferForRegion(const gfx::Rect& bounds) { |
vertex_buffer_.Receive())); |
} |
-CompositorWin::CompositorWin(gfx::AcceleratedWidget widget, |
+CompositorWin::CompositorWin(CompositorDelegate* delegate, |
+ gfx::AcceleratedWidget widget, |
const gfx::Size& size) |
- : Compositor(size), |
+ : Compositor(delegate, size), |
host_(widget), |
technique_(NULL) { |
} |
@@ -500,9 +502,7 @@ void CompositorWin::Blur(const gfx::Rect& bounds) { |
} |
void CompositorWin::SchedulePaint() { |
- RECT bounds; |
- GetClientRect(host_, &bounds); |
- InvalidateRect(host_, &bounds, FALSE); |
+ delegate()->ScheduleCompositorPaint(); |
sky
2011/09/06 20:12:36
Both implementations are the same. Promote it to C
sadrul
2011/09/06 21:50:11
Done. (I added the implementation in compositor.h
|
} |
void CompositorWin::OnWidgetSizeChanged() { |
@@ -796,9 +796,10 @@ ID3D10Buffer* CompositorWin::CreateVertexBufferForRegion( |
} // namespace |
// static |
-Compositor* Compositor::Create(gfx::AcceleratedWidget widget, |
+Compositor* Compositor::Create(CompositorDelegate* delegate, |
+ gfx::AcceleratedWidget widget, |
const gfx::Size& size) { |
- CompositorWin* compositor = new CompositorWin(widget, size); |
+ CompositorWin* compositor = new CompositorWin(delegate, widget, size); |
compositor->Init(); |
return compositor; |
} |