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

Side by Side Diff: mojo/services/view_manager/access_policy.h

Issue 1049993002: Get mojo_shell building inside chromium checkout. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix presubmit Created 5 years, 8 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
« no previous file with comments | « mojo/services/view_manager/DEPS ('k') | mojo/services/view_manager/access_policy_delegate.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #ifndef SERVICES_VIEW_MANAGER_ACCESS_POLICY_H_
6 #define SERVICES_VIEW_MANAGER_ACCESS_POLICY_H_
7
8 #include "mojo/services/view_manager/ids.h"
9 #include "third_party/mojo_services/src/view_manager/public/interfaces/view_mana ger_constants.mojom.h"
10
11 namespace view_manager {
12
13 class ServerView;
14
15 // AccessPolicy is used by ViewManagerServiceImpl to determine what a connection
16 // is allowed to do.
17 class AccessPolicy {
18 public:
19 virtual ~AccessPolicy() {}
20
21 // Unless otherwise mentioned all arguments have been validated. That is the
22 // |view| arguments are non-null unless otherwise stated (eg CanSetView() is
23 // allowed to take a NULL view).
24 virtual bool CanRemoveViewFromParent(const ServerView* view) const = 0;
25 virtual bool CanAddView(const ServerView* parent,
26 const ServerView* child) const = 0;
27 virtual bool CanReorderView(const ServerView* view,
28 const ServerView* relative_view,
29 mojo::OrderDirection direction) const = 0;
30 virtual bool CanDeleteView(const ServerView* view) const = 0;
31 virtual bool CanGetViewTree(const ServerView* view) const = 0;
32 // Used when building a view tree (GetViewTree()) to decide if we should
33 // descend into |view|.
34 virtual bool CanDescendIntoViewForViewTree(const ServerView* view) const = 0;
35 virtual bool CanEmbed(const ServerView* view) const = 0;
36 virtual bool CanChangeViewVisibility(const ServerView* view) const = 0;
37 virtual bool CanSetViewSurfaceId(const ServerView* view) const = 0;
38 virtual bool CanSetViewBounds(const ServerView* view) const = 0;
39 virtual bool CanSetViewProperties(const ServerView* view) const = 0;
40
41 // Returns whether the connection should notify on a hierarchy change.
42 // |new_parent| and |old_parent| are initially set to the new and old parents
43 // but may be altered so that the client only sees a certain set of views.
44 virtual bool ShouldNotifyOnHierarchyChange(
45 const ServerView* view,
46 const ServerView** new_parent,
47 const ServerView** old_parent) const = 0;
48 };
49
50 } // namespace view_manager
51
52 #endif // SERVICES_VIEW_MANAGER_ACCESS_POLICY_H_
OLDNEW
« no previous file with comments | « mojo/services/view_manager/DEPS ('k') | mojo/services/view_manager/access_policy_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698