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

Side by Side Diff: examples/surfaces_app/surfaces_app.cc

Issue 1168993002: Update the native_viewport interface to allow specification of the surface configuration, currently… (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Final cleanups Created 5 years, 6 months 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/macros.h" 6 #include "base/macros.h"
7 #include "base/memory/weak_ptr.h" 7 #include "base/memory/weak_ptr.h"
8 #include "base/message_loop/message_loop.h" 8 #include "base/message_loop/message_loop.h"
9 #include "cc/surfaces/surface_id_allocator.h" 9 #include "cc/surfaces/surface_id_allocator.h"
10 #include "examples/surfaces_app/child.mojom.h" 10 #include "examples/surfaces_app/child.mojom.h"
(...skipping 21 matching lines...) Expand all
32 SurfacesApp() : app_impl_(nullptr), id_namespace_(0u), weak_factory_(this) {} 32 SurfacesApp() : app_impl_(nullptr), id_namespace_(0u), weak_factory_(this) {}
33 ~SurfacesApp() override {} 33 ~SurfacesApp() override {}
34 34
35 // ApplicationDelegate implementation 35 // ApplicationDelegate implementation
36 void Initialize(ApplicationImpl* app) override { 36 void Initialize(ApplicationImpl* app) override {
37 app_impl_ = app; 37 app_impl_ = app;
38 size_ = gfx::Size(800, 600); 38 size_ = gfx::Size(800, 600);
39 39
40 // Connect to the native viewport service and create a viewport. 40 // Connect to the native viewport service and create a viewport.
41 app_impl_->ConnectToService("mojo:native_viewport_service", &viewport_); 41 app_impl_->ConnectToService("mojo:native_viewport_service", &viewport_);
42 viewport_->Create(Size::From(size_), [](ViewportMetricsPtr metrics) {}); 42 viewport_->Create(Size::From(size_), SurfaceConfiguration::New(),
43 [](ViewportMetricsPtr metrics) {});
43 viewport_->Show(); 44 viewport_->Show();
44 45
45 // Grab a ContextProvider associated with the viewport. 46 // Grab a ContextProvider associated with the viewport.
46 ContextProviderPtr onscreen_context_provider; 47 ContextProviderPtr onscreen_context_provider;
47 viewport_->GetContextProvider(GetProxy(&onscreen_context_provider)); 48 viewport_->GetContextProvider(GetProxy(&onscreen_context_provider));
48 49
49 // Create a surfaces Display bound to the viewport's context provider. 50 // Create a surfaces Display bound to the viewport's context provider.
50 DisplayFactoryPtr display_factory; 51 DisplayFactoryPtr display_factory;
51 app_impl_->ConnectToService("mojo:surfaces_service", &display_factory); 52 app_impl_->ConnectToService("mojo:surfaces_service", &display_factory);
52 display_factory->Create(onscreen_context_provider.Pass(), 53 display_factory->Create(onscreen_context_provider.Pass(),
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 DISALLOW_COPY_AND_ASSIGN(SurfacesApp); 119 DISALLOW_COPY_AND_ASSIGN(SurfacesApp);
119 }; 120 };
120 121
121 } // namespace examples 122 } // namespace examples
122 } // namespace mojo 123 } // namespace mojo
123 124
124 MojoResult MojoMain(MojoHandle application_request) { 125 MojoResult MojoMain(MojoHandle application_request) {
125 mojo::ApplicationRunnerChromium runner(new mojo::examples::SurfacesApp); 126 mojo::ApplicationRunnerChromium runner(new mojo::examples::SurfacesApp);
126 return runner.Run(application_request); 127 return runner.Run(application_request);
127 } 128 }
OLDNEW
« no previous file with comments | « examples/spinning_cube/spinning_cube_app.cc ('k') | gpu/command_buffer/service/async_pixel_transfer_manager_egl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698