| Index: content/browser/renderer_host/compositor_impl_android.cc
 | 
| diff --git a/content/browser/renderer_host/compositor_impl_android.cc b/content/browser/renderer_host/compositor_impl_android.cc
 | 
| index 86acf38893b8afe0fd2eaf38a2c51fda43352c4a..4fd7036a5b0ce113af7bfb29a6f550687950939e 100644
 | 
| --- a/content/browser/renderer_host/compositor_impl_android.cc
 | 
| +++ b/content/browser/renderer_host/compositor_impl_android.cc
 | 
| @@ -38,6 +38,7 @@
 | 
|  #include "third_party/WebKit/public/platform/WebGraphicsContext3D.h"
 | 
|  #include "third_party/khronos/GLES2/gl2.h"
 | 
|  #include "third_party/khronos/GLES2/gl2ext.h"
 | 
| +#include "ui/base/android/window_android.h"
 | 
|  #include "ui/gfx/android/device_display_info.h"
 | 
|  #include "ui/gfx/android/java_bitmap.h"
 | 
|  #include "ui/gfx/frame_time.h"
 | 
| @@ -103,8 +104,9 @@ static base::LazyInstance<SurfaceMap>
 | 
|  static base::LazyInstance<base::Lock> g_surface_map_lock;
 | 
|  
 | 
|  // static
 | 
| -Compositor* Compositor::Create(CompositorClient* client) {
 | 
| -  return client ? new CompositorImpl(client) : NULL;
 | 
| +Compositor* Compositor::Create(CompositorClient* client,
 | 
| +                               gfx::NativeWindow root_window) {
 | 
| +  return client ? new CompositorImpl(client, root_window) : NULL;
 | 
|  }
 | 
|  
 | 
|  // static
 | 
| @@ -129,17 +131,22 @@ jobject CompositorImpl::GetSurface(int surface_id) {
 | 
|    return jsurface;
 | 
|  }
 | 
|  
 | 
| -CompositorImpl::CompositorImpl(CompositorClient* client)
 | 
| +CompositorImpl::CompositorImpl(CompositorClient* client,
 | 
| +                               gfx::NativeWindow root_window)
 | 
|      : root_layer_(cc::Layer::Create()),
 | 
|        has_transparent_background_(false),
 | 
|        window_(NULL),
 | 
|        surface_id_(0),
 | 
| -      client_(client) {
 | 
| +      client_(client),
 | 
| +      root_window_(root_window) {
 | 
|    DCHECK(client);
 | 
| +  DCHECK(root_window);
 | 
|    ImageTransportFactoryAndroid::AddObserver(this);
 | 
| +  root_window->AttachCompositor();
 | 
|  }
 | 
|  
 | 
|  CompositorImpl::~CompositorImpl() {
 | 
| +  root_window_->DetachCompositor();
 | 
|    ImageTransportFactoryAndroid::RemoveObserver(this);
 | 
|    // Clean-up any surface references.
 | 
|    SetSurface(NULL);
 | 
| @@ -481,4 +488,8 @@ blink::WGC3Denum CompositorImpl::GetGLTypeForBitmap(gfx::JavaBitmap& bitmap) {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +void CompositorImpl::DidCommit() {
 | 
| +  root_window_->OnCompositingDidCommit();
 | 
| +}
 | 
| +
 | 
|  } // namespace content
 | 
| 
 |