Revert "Revert "KeyEvent class pimpling""
[platform/core/uifw/dali-adaptor.git] / dali / internal / adaptor / common / adaptor-impl.h
index e413529..ec5c645 100755 (executable)
@@ -20,7 +20,6 @@
 
 // EXTERNAL INCLUDES
 #include <dali/public-api/common/vector-wrapper.h>
-#include <dali/public-api/common/view-mode.h>
 #include <dali/public-api/math/rect.h>
 #include <dali/public-api/signals/callback.h>
 #include <dali/public-api/math/uint-16-pair.h>
@@ -54,6 +53,7 @@ namespace Integration
 class Core;
 class GlAbstraction;
 class Processor;
+class AddOnManager;
 }
 
 namespace Internal
@@ -76,6 +76,7 @@ class LifeCycleObserver;
 class ObjectProfiler;
 class SceneHolder;
 class ConfigurationManager;
+enum class ThreadMode;
 
 /**
  * Implementation of the Adaptor class.
@@ -211,12 +212,12 @@ public: // AdaptorInternalServices implementation
   /**
    * @copydoc Dali::EventFeeder::FeedWheelEvent()
    */
-  virtual void FeedWheelEvent( WheelEvent& wheelEvent );
+  virtual void FeedWheelEvent( Dali::WheelEvent& wheelEvent );
 
   /**
    * @copydoc Dali::EventFeeder::FeedKeyEvent()
    */
-  virtual void FeedKeyEvent( KeyEvent& keyEvent );
+  virtual void FeedKeyEvent( Dali::KeyEvent& keyEvent );
 
   /**
    * @copydoc Dali::Adaptor::ReplaceSurface()
@@ -248,14 +249,8 @@ public: // AdaptorInternalServices implementation
   /**
    * Adds a new Window instance to the Adaptor
    * @param[in]  childWindow The child window instance
-   * @param[in]  childWindowName The child window title/name
-   * @param[in]  childWindowClassName The class name that the child window belongs to
-   * @param[in]  childWindowMode The mode of the child window
    */
-  virtual bool AddWindow( Dali::Integration::SceneHolder childWindow,
-                          const std::string& childWindowName,
-                          const std::string& childWindowClassName,
-                          bool childWindowMode );
+  virtual bool AddWindow( Dali::Integration::SceneHolder childWindow );
 
   /**
    * Removes an existing Window instance from the Adaptor
@@ -276,6 +271,11 @@ public: // AdaptorInternalServices implementation
   virtual void RemoveIdle( CallbackBase* callback );
 
   /**
+   * @copydoc Dali::Adaptor::ProcessIdle()
+   */
+  virtual void ProcessIdle();
+
+  /**
    * Sets a pre-render callback.
    */
   void SetPreRenderCallback( CallbackBase* callback );
@@ -310,6 +310,11 @@ public: // AdaptorInternalServices implementation
    */
   Dali::SceneHolderList GetSceneHolders() const;
 
+  /**
+   * @copydoc Dali::Adaptor::GetObjectRegistry()
+   */
+  Dali::ObjectRegistry GetObjectRegistry() const;
+
 public:
 
   /**
@@ -491,6 +496,11 @@ public:  //AdaptorInternalServices
    */
   virtual TraceInterface& GetSystemTraceInterface();
 
+  /**
+   * copydoc Dali::Internal::Adaptor::AdaptorInternalServices::GetWindowContainerInterface()
+   */
+  virtual void GetWindowContainerInterface( WindowContainer& windows );
+
 public: // Signals
 
   /**
@@ -654,7 +664,7 @@ private: // Data
   Dali::Integration::Core*              mCore;                        ///< Dali Core
   ThreadController*                     mThreadController;            ///< Controls the threads
 
-  GraphicsInterface*                    mGraphics;                    ///< Graphics interface
+  std::unique_ptr< GraphicsInterface >  mGraphics;                    ///< Graphics interface
   Dali::DisplayConnection*              mDisplayConnection;           ///< Display connection
   WindowContainer                       mWindows;                     ///< A container of all the Windows that are currently created
 
@@ -675,8 +685,12 @@ private: // Data
   SystemTrace                           mSystemTracer;                ///< System tracer
   ObjectProfiler*                       mObjectProfiler;              ///< Tracks object lifetime for profiling
   SocketFactory                         mSocketFactory;               ///< Socket factory
+  ThreadMode                            mThreadMode;                  ///< The thread mode
   const bool                            mEnvironmentOptionsOwned:1;   ///< Whether we own the EnvironmentOptions (and thus, need to delete it)
   bool                                  mUseRemoteSurface:1;          ///< whether the remoteSurface is used or not
+  Dali::LayoutDirection::Type           mRootLayoutDirection;         ///< LayoutDirection of window
+
+  std::unique_ptr<Integration::AddOnManager> mAddOnManager;           ///< Pointer to the addon manager
 
 public:
   inline static Adaptor& GetImplementation(Dali::Adaptor& adaptor) { return *adaptor.mImpl; }