| Index: mojo/examples/sample_app/sample_app.cc | 
| diff --git a/mojo/examples/sample_app/sample_app.cc b/mojo/examples/sample_app/sample_app.cc | 
| index 6524215c428049ac848f114949d6161f0f5d1225..6a07de355e1f2bc5d8990e681cb97d93bbb8220c 100644 | 
| --- a/mojo/examples/sample_app/sample_app.cc | 
| +++ b/mojo/examples/sample_app/sample_app.cc | 
| @@ -6,7 +6,6 @@ | 
| #include <string> | 
|  | 
| #include "mojo/examples/sample_app/gles2_client_impl.h" | 
| -#include "mojo/public/cpp/bindings/allocation_scope.h" | 
| #include "mojo/public/cpp/environment/environment.h" | 
| #include "mojo/public/cpp/gles2/gles2.h" | 
| #include "mojo/public/cpp/shell/application.h" | 
| @@ -35,18 +34,14 @@ class SampleApp : public Application, public NativeViewportClient { | 
| ConnectTo("mojo:mojo_native_viewport_service", &viewport_); | 
| viewport_.set_client(this); | 
|  | 
| -    AllocationScope scope; | 
| - | 
| -    Rect::Builder rect; | 
| -    Point::Builder point; | 
| -    point.set_x(10); | 
| -    point.set_y(10); | 
| -    rect.set_position(point.Finish()); | 
| -    Size::Builder size; | 
| -    size.set_width(800); | 
| -    size.set_height(600); | 
| -    rect.set_size(size.Finish()); | 
| -    viewport_->Create(rect.Finish()); | 
| +    RectPtr rect(Rect::New()); | 
| +    rect->position = Point::New(); | 
| +    rect->position->x = 10; | 
| +    rect->position->y = 10; | 
| +    rect->size = Size::New(); | 
| +    rect->size->width = 800; | 
| +    rect->size->height = 600; | 
| +    viewport_->Create(rect.Pass()); | 
| viewport_->Show(); | 
|  | 
| MessagePipe gles2_pipe; | 
| @@ -66,14 +61,17 @@ class SampleApp : public Application, public NativeViewportClient { | 
| RunLoop::current()->Quit(); | 
| } | 
|  | 
| -  virtual void OnBoundsChanged(const Rect& bounds) MOJO_OVERRIDE { | 
| -    gles2_client_->SetSize(bounds.size()); | 
| +  virtual void OnBoundsChanged(RectPtr bounds) MOJO_OVERRIDE { | 
| +    assert(bounds); | 
| +    assert(bounds->size); | 
| +    gles2_client_->SetSize(*bounds->size); | 
| } | 
|  | 
| -  virtual void OnEvent(const Event& event, | 
| +  virtual void OnEvent(EventPtr event, | 
| const Callback<void()>& callback) MOJO_OVERRIDE { | 
| -    if (!event.location().is_null()) | 
| -      gles2_client_->HandleInputEvent(event); | 
| +    assert(event); | 
| +    if (event->location) | 
| +      gles2_client_->HandleInputEvent(*event); | 
| callback.Run(); | 
| } | 
|  | 
|  |