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

Unified Diff: mojo/services/native_viewport/native_viewport_service.cc

Issue 380413003: Mojo: Use InterfaceFactory<Interface> for service registration (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: specify ownership in the Bind call Created 6 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: mojo/services/native_viewport/native_viewport_service.cc
diff --git a/mojo/services/native_viewport/native_viewport_service.cc b/mojo/services/native_viewport/native_viewport_service.cc
index b7c80524c78349e953c76582ee914b72f9eea57f..cb67386c0f0cd8b2916e6e6162927212312039bf 100644
--- a/mojo/services/native_viewport/native_viewport_service.cc
+++ b/mojo/services/native_viewport/native_viewport_service.cc
@@ -9,6 +9,7 @@
#include "base/message_loop/message_loop.h"
#include "base/time/time.h"
#include "mojo/public/cpp/application/application_delegate.h"
+#include "mojo/public/cpp/application/context_interface_provider.h"
#include "mojo/public/interfaces/service_provider/service_provider.mojom.h"
#include "mojo/services/gles2/command_buffer_impl.h"
#include "mojo/services/native_viewport/native_viewport.h"
@@ -29,12 +30,10 @@ bool IsRateLimitedEventType(ui::Event* event) {
} // namespace
-class NativeViewportImpl
- : public InterfaceImpl<mojo::NativeViewport>,
- public NativeViewportDelegate {
+class NativeViewportImpl : public InterfaceImpl<mojo::NativeViewport>,
+ public NativeViewportDelegate {
public:
- NativeViewportImpl(ApplicationConnection* connection,
- shell::Context* context)
+ explicit NativeViewportImpl(shell::Context* context)
: context_(context),
widget_(gfx::kNullAcceleratedWidget),
waiting_for_event_ack_(false),
@@ -155,19 +154,20 @@ class NativeViewportImpl
base::WeakPtrFactory<NativeViewportImpl> weak_factory_;
};
-class NVSDelegate : public ApplicationDelegate {
+class NVSDelegate : public ApplicationDelegate,
+ public ContextInterfaceProvider<NativeViewportImpl,
+ mojo::shell::Context> {
public:
- NVSDelegate(shell::Context* context) : context_(context) {}
+ explicit NVSDelegate(shell::Context* context)
+ : ContextInterfaceProvider(context) {}
virtual ~NVSDelegate() {}
+ // ApplicationDelegate implementation.
virtual bool ConfigureIncomingConnection(
- mojo::ApplicationConnection* connection) MOJO_OVERRIDE {
- connection->AddService<NativeViewportImpl>(context_);
+ ApplicationConnection* connection) OVERRIDE {
+ connection->AddServiceProvider(this);
return true;
}
-
- private:
- mojo::shell::Context* context_;
};
} // namespace services

Powered by Google App Engine
This is Rietveld 408576698