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

Side by Side Diff: mojo/services/ui/views/interfaces/view_trees.mojom

Issue 1552043002: Make Mozart view manager use the new compositor. (Closed) Base URL: git@github.com:domokit/mojo.git@moz-12
Patch Set: Created 4 years, 11 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 [DartPackage="mojo_services"] 5 [DartPackage="mojo_services"]
6 module mojo.ui; 6 module mojo.ui;
7 7
8 import "mojo/public/interfaces/application/service_provider.mojom";
8 import "mojo/services/ui/views/interfaces/layouts.mojom"; 9 import "mojo/services/ui/views/interfaces/layouts.mojom";
9 import "mojo/services/ui/views/interfaces/views.mojom"; 10 import "mojo/services/ui/views/interfaces/views.mojom";
10 11
12 // A view tree token is an opaque transferable reference to a view tree.
13 //
14 // The ViewManager provides each view tree with a unique view tree token when
15 // it is registered. The token can subsequently be passed to other
16 // applications and used as a way to refer to the tree.
17 //
18 // View tree tokens should be kept secret and should only be shared with
19 // trusted services.
20 //
21 // TODO(jeffbrown): This implementation is a temporary placeholder until
22 // we extend Mojo to provide a way to create tokens which cannot be forged.
23 struct ViewTreeToken {
24 uint32 value;
25 };
26
11 // A view tree is a top-level container for a hierarchy of views. 27 // A view tree is a top-level container for a hierarchy of views.
12 // 28 //
13 // A view tree must registered with the view manager before it can be shown. 29 // A view tree must registered with the view manager before it can be shown.
14 interface ViewTree { 30 interface ViewTree {
15 // Called when the tree needs to update its layout. 31 // Called when the tree needs to update its layout.
16 // 32 //
17 // This method may be called for one or more of the following reasons: 33 // This method may be called for one or more of the following reasons:
18 // 34 //
19 // 1. The root was just set. 35 // 1. The root was just set.
20 // 2. The root produced different layout information during its last 36 // 2. The root produced different layout information during its last
(...skipping 18 matching lines...) Expand all
39 OnRootUnavailable(uint32 root_key) => (); 55 OnRootUnavailable(uint32 root_key) => ();
40 }; 56 };
41 57
42 // The view tree host provides an interface for a view tree to configure itself 58 // The view tree host provides an interface for a view tree to configure itself
43 // and interact with its views. 59 // and interact with its views.
44 // 60 //
45 // Each view tree obtains its own view tree host when registered with the 61 // Each view tree obtains its own view tree host when registered with the
46 // ViewManager. To unregister the view tree, close its view tree 62 // ViewManager. To unregister the view tree, close its view tree
47 // and/or view tree host message pipes. 63 // and/or view tree host message pipes.
48 interface ViewTreeHost { 64 interface ViewTreeHost {
65 // Gets a service provider to access services which are associated with
66 // the view tree such as input, accessibility and editing capabilities.
67 // The view tree service provider is private to the view tree and should
68 // not be shared with anyone else.
69 //
70 // See |mojo.ui.InputDispatcher|.
71 GetServiceProvider(mojo.ServiceProvider& service_provider);
72
49 // Requests that the view tree's OnLayout() method be called to compute a 73 // Requests that the view tree's OnLayout() method be called to compute a
50 // new layout due to a change in the view tree's layout information. 74 // new layout due to a change in the view tree's layout information.
51 RequestLayout(); 75 RequestLayout();
52 76
53 // Sets the root of the view tree and assigns it the provided |root_key| 77 // Sets the root of the view tree and assigns it the provided |root_key|
54 // to distinguish it from any other roots this view tree has had. 78 // to distinguish it from any other roots this view tree has had.
55 // 79 //
56 // It is a good idea to provide a distinct |root_key| each time a new root 80 // It is a good idea to provide a distinct |root_key| each time a new root
57 // is set so that callbacks related to the root can be clearly distinguished 81 // is set so that callbacks related to the root can be clearly distinguished
58 // across these changes. 82 // across these changes.
(...skipping 24 matching lines...) Expand all
83 // or because the root has become unavailable. 107 // or because the root has become unavailable.
84 // 108 //
85 // It is an error to call this function if the view tree does not currently 109 // It is an error to call this function if the view tree does not currently
86 // have a root; the connection will be closed. 110 // have a root; the connection will be closed.
87 // 111 //
88 // It is an error to specify malformed |root_layout_params| such 112 // It is an error to specify malformed |root_layout_params| such
89 // as invalid size constraints; the connection will be closed. 113 // as invalid size constraints; the connection will be closed.
90 LayoutRoot(mojo.ui.ViewLayoutParams root_layout_params) => 114 LayoutRoot(mojo.ui.ViewLayoutParams root_layout_params) =>
91 (mojo.ui.ViewLayoutInfo? info); 115 (mojo.ui.ViewLayoutInfo? info);
92 }; 116 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698