| OLD | NEW | 
|    1 // Copyright 2014 The Chromium Authors. All rights reserved. |    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 |    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 #ifndef UI_OZONE_PUBLIC_OZONE_PLATFORM_H_ |    5 #ifndef UI_OZONE_PUBLIC_OZONE_PLATFORM_H_ | 
|    6 #define UI_OZONE_PUBLIC_OZONE_PLATFORM_H_ |    6 #define UI_OZONE_PUBLIC_OZONE_PLATFORM_H_ | 
|    7  |    7  | 
|    8 #include <memory> |    8 #include <memory> | 
|    9  |    9  | 
|   10 #include "base/macros.h" |   10 #include "base/macros.h" | 
|   11 #include "base/message_loop/message_loop.h" |   11 #include "base/message_loop/message_loop.h" | 
|   12 #include "ui/ozone/ozone_export.h" |   12 #include "ui/ozone/ozone_export.h" | 
|   13  |   13  | 
|   14 namespace display { |   14 namespace display { | 
|   15 class NativeDisplayDelegate; |   15 class NativeDisplayDelegate; | 
|   16 } |   16 } | 
|   17  |   17  | 
|   18 namespace gfx { |   18 namespace gfx { | 
|   19 class Rect; |   19 class Rect; | 
|   20 } |   20 } | 
|   21  |   21  | 
|   22 namespace IPC { |   22 namespace IPC { | 
|   23 class MessageFilter; |   23 class MessageFilter; | 
|   24 } |   24 } | 
|   25  |   25  | 
|   26 namespace service_manager { |   26 namespace service_manager { | 
 |   27 class BinderRegistry; | 
|   27 class Connector; |   28 class Connector; | 
|   28 class InterfaceRegistry; |  | 
|   29 } |   29 } | 
|   30  |   30  | 
|   31 namespace ui { |   31 namespace ui { | 
|   32  |   32  | 
|   33 class CursorFactoryOzone; |   33 class CursorFactoryOzone; | 
|   34 class InputController; |   34 class InputController; | 
|   35 class GpuPlatformSupportHost; |   35 class GpuPlatformSupportHost; | 
|   36 class OverlayManagerOzone; |   36 class OverlayManagerOzone; | 
|   37 class PlatformWindow; |   37 class PlatformWindow; | 
|   38 class PlatformWindowDelegate; |   38 class PlatformWindowDelegate; | 
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  111   virtual std::unique_ptr<display::NativeDisplayDelegate> |  111   virtual std::unique_ptr<display::NativeDisplayDelegate> | 
|  112   CreateNativeDisplayDelegate() = 0; |  112   CreateNativeDisplayDelegate() = 0; | 
|  113  |  113  | 
|  114   // Returns the message loop type required for OzonePlatform instance that |  114   // Returns the message loop type required for OzonePlatform instance that | 
|  115   // will be initialized for the GPU process. |  115   // will be initialized for the GPU process. | 
|  116   virtual base::MessageLoop::Type GetMessageLoopTypeForGpu(); |  116   virtual base::MessageLoop::Type GetMessageLoopTypeForGpu(); | 
|  117  |  117  | 
|  118   // Ozone platform implementations may also choose to expose mojo interfaces to |  118   // Ozone platform implementations may also choose to expose mojo interfaces to | 
|  119   // internal functionality. Embedders wishing to take advantage of ozone mojo |  119   // internal functionality. Embedders wishing to take advantage of ozone mojo | 
|  120   // implementations must invoke AddInterfaces with a valid |  120   // implementations must invoke AddInterfaces with a valid | 
|  121   // service_manager::InterfaceRegistry* pointer to export all Mojo interfaces |  121   // service_manager::BinderRegistry* pointer to export all Mojo interfaces | 
|  122   // defined within Ozone. |  122   // defined within Ozone. | 
|  123   // |  123   // | 
|  124   // A default do-nothing implementation is provided to permit platform |  124   // A default do-nothing implementation is provided to permit platform | 
|  125   // implementations to opt out of implementing any Mojo interfaces. |  125   // implementations to opt out of implementing any Mojo interfaces. | 
|  126   virtual void AddInterfaces(service_manager::InterfaceRegistry* registry); |  126   virtual void AddInterfaces(service_manager::BinderRegistry* registry); | 
|  127  |  127  | 
|  128  private: |  128  private: | 
|  129   virtual void InitializeUI(const InitParams& params) = 0; |  129   virtual void InitializeUI(const InitParams& params) = 0; | 
|  130   virtual void InitializeGPU(const InitParams& params) = 0; |  130   virtual void InitializeGPU(const InitParams& params) = 0; | 
|  131  |  131  | 
|  132   static OzonePlatform* instance_; |  132   static OzonePlatform* instance_; | 
|  133  |  133  | 
|  134   DISALLOW_COPY_AND_ASSIGN(OzonePlatform); |  134   DISALLOW_COPY_AND_ASSIGN(OzonePlatform); | 
|  135 }; |  135 }; | 
|  136  |  136  | 
|  137 }  // namespace ui |  137 }  // namespace ui | 
|  138  |  138  | 
|  139 #endif  // UI_OZONE_PUBLIC_OZONE_PLATFORM_H_ |  139 #endif  // UI_OZONE_PUBLIC_OZONE_PLATFORM_H_ | 
| OLD | NEW |