Index: services/ui/service.h |
diff --git a/services/ui/service.h b/services/ui/service.h |
index 92e5f6078282a3680bd217cbe7214221b5345007..9d88bfd0cfb05330635dcb99a8e1a7925891cb2a 100644 |
--- a/services/ui/service.h |
+++ b/services/ui/service.h |
@@ -83,6 +83,20 @@ class Service |
~Service() override; |
private: |
+ // How the ScreenManager is configured. |
+ enum ScreenManagerConfig { |
+ // Initial state. |
+ UNKNOWN, |
+ |
+ // ScreenManager runs locally. |
+ INTERNAL, |
+ |
+ // Used when the window manager supplies a value of false for |
+ // |automatically_create_display_roots|. In this config the ScreenManager |
+ // is configured to forward calls. |
+ FORWARDING, |
+ }; |
+ |
// Holds InterfaceRequests received before the first WindowTreeHost Display |
// has been established. |
struct PendingRequest; |
@@ -111,6 +125,8 @@ class Service |
void OnFirstDisplayReady() override; |
void OnNoMoreDisplays() override; |
bool IsTestConfig() const override; |
+ void OnWillCreateTreeForWindowManager( |
+ bool automatically_create_display_roots) override; |
// service_manager::InterfaceFactory<mojom::AccessibilityManager> |
// implementation. |
@@ -198,6 +214,10 @@ class Service |
service_manager::BinderRegistry registry_; |
+ // Set to true in StartDisplayInit(). |
+ bool is_gpu_ready_ = false; |
+ ScreenManagerConfig screen_manager_config_ = ScreenManagerConfig::UNKNOWN; |
+ |
DISALLOW_COPY_AND_ASSIGN(Service); |
}; |