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

Unified Diff: mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.h

Issue 713313002: Use Binding<> instead of InterfaceImpl in ViewManagerClientImpl (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 years, 1 month 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/public/cpp/view_manager/lib/view_manager_client_impl.h
diff --git a/mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.h b/mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.h
index 47f08cd8ebbe8356cac3f15a86be60d998456415..391b355d7e81864a3feb529cca448d2ce59d9039 100644
--- a/mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.h
+++ b/mojo/services/public/cpp/view_manager/lib/view_manager_client_impl.h
@@ -9,6 +9,7 @@
#include "base/callback.h"
#include "base/memory/scoped_vector.h"
#include "base/memory/weak_ptr.h"
+#include "mojo/public/cpp/bindings/strong_binding.h"
#include "mojo/services/public/cpp/view_manager/types.h"
#include "mojo/services/public/cpp/view_manager/view.h"
#include "mojo/services/public/cpp/view_manager/view_manager.h"
@@ -23,10 +24,14 @@ class ViewManagerTransaction;
// Manages the connection with the View Manager service.
class ViewManagerClientImpl : public ViewManager,
- public InterfaceImpl<ViewManagerClient>,
- public WindowManagerClient {
+ public ViewManagerClient,
+ public WindowManagerClient,
+ public ErrorHandler {
public:
- ViewManagerClientImpl(ViewManagerDelegate* delegate, Shell* shell);
+ ViewManagerClientImpl(ViewManagerDelegate* delegate,
+ Shell* shell,
+ ScopedMessagePipeHandle handle,
+ bool delete_on_error);
~ViewManagerClientImpl() override;
bool connected() const { return connected_; }
@@ -73,8 +78,6 @@ class ViewManagerClientImpl : public ViewManager,
void AddView(View* view);
void RemoveView(Id view_id);
- void OnConnectionEstablished();
-
private:
friend class RootObserver;
@@ -119,6 +122,9 @@ class ViewManagerClientImpl : public ViewManager,
void OnActiveWindowChanged(Id old_focused_window,
Id new_focused_window) override;
+ // ErrorHandler implementation.
+ void OnConnectionError() override;
+
void RemoveRoot(View* root);
void OnActionCompleted(bool success);
@@ -145,6 +151,9 @@ class ViewManagerClientImpl : public ViewManager,
WindowManagerPtr window_manager_;
+ Binding<ViewManagerClient> binding_;
+ bool delete_on_error_;
sky 2014/11/13 00:34:38 const
+
DISALLOW_COPY_AND_ASSIGN(ViewManagerClientImpl);
};

Powered by Google App Engine
This is Rietveld 408576698