summaryrefslogtreecommitdiffstats
path: root/components/mus/ws/window_server_delegate.h
diff options
context:
space:
mode:
Diffstat (limited to 'components/mus/ws/window_server_delegate.h')
-rw-r--r--components/mus/ws/window_server_delegate.h24
1 files changed, 15 insertions, 9 deletions
diff --git a/components/mus/ws/window_server_delegate.h b/components/mus/ws/window_server_delegate.h
index e7ca4a2..05e32a0 100644
--- a/components/mus/ws/window_server_delegate.h
+++ b/components/mus/ws/window_server_delegate.h
@@ -32,22 +32,28 @@ class WindowTreeBinding;
class WindowServerDelegate {
public:
+ enum BindingType {
+ EMBED,
+ WINDOW_MANAGER,
+ };
+
+ // Called if no Displays have been created, but a WindowManagerFactory has
+ // been set.
+ virtual void CreateDefaultDisplays() = 0;
+
// Called once when the AcceleratedWidget of a Display is available.
virtual void OnFirstDisplayReady();
virtual void OnNoMoreDisplays() = 0;
- // Creates a WindowTreeBinding in response to Embed() calls on the
- // WindowServer.
- virtual scoped_ptr<WindowTreeBinding> CreateWindowTreeBindingForEmbedAtWindow(
+ // Creates a WindowTreeBinding. Default implementation returns null, which
+ // creates DefaultBinding.
+ virtual scoped_ptr<WindowTreeBinding> CreateWindowTreeBinding(
+ BindingType type,
ws::WindowServer* window_server,
ws::WindowTree* tree,
- mojom::WindowTreeRequest tree_request,
- mojom::WindowTreeClientPtr client) = 0;
-
- // Called if no Displays have been created, but a WindowManagerFactory has
- // been set.
- virtual void CreateDefaultDisplays() = 0;
+ mojom::WindowTreeRequest* tree_request,
+ mojom::WindowTreeClientPtr* client);
protected:
virtual ~WindowServerDelegate() {}