Make sure that global variables are initialized lazily.
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / web-view / web-view-impl.h
index cfbb31e..61834a2 100755 (executable)
@@ -25,7 +25,6 @@
 #include <dali/public-api/images/image-operations.h>
 #include <dali/public-api/object/property-notification.h>
 #include <memory>
-#include <unordered_map>
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/controls/control-accessible.h>
@@ -99,6 +98,11 @@ public:
   Dali::Toolkit::WebBackForwardList* GetBackForwardList() const;
 
   /**
+   * @copydoc Dali::Toolkit::WebView::GetPlugin()
+   */
+  Dali::WebEnginePlugin* GetPlugin() const;
+
+  /**
    * @copydoc Dali::Toolkit::WebView::GetFavicon()
    */
   Dali::Toolkit::ImageView GetFavicon() const;
@@ -374,6 +378,11 @@ public:
   void RegisterNavigationPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNavigationPolicyDecidedCallback callback);
 
   /**
+   * @copydoc Dali::Toolkit::WebView::RegisterNewWindowCreatedCallback()
+   */
+  void RegisterNewWindowCreatedCallback(Dali::WebEnginePlugin::WebEngineNewWindowCreatedCallback callback);
+
+  /**
    * @copydoc Dali::Toolkit::WebView::RegisterCertificateConfirmedCallback()
    */
   void RegisterCertificateConfirmedCallback(Dali::WebEnginePlugin::WebEngineCertificateCallback callback);
@@ -465,11 +474,6 @@ private:
   WebView& operator=(const WebView& webView);
 
   /**
-   * @brief Gets web engine plugin.
-   */
-  Dali::WebEnginePlugin* GetPlugin() const;
-
-  /**
    * @brief Set an absolute scroll of the given view.
    * @param[in] x The coordinate x of scroll
    * @param[in] y The coordinate y of scroll
@@ -593,12 +597,6 @@ private:
   bool SetVisibility(bool visible);
 
   /**
-   * @brief Update display area of web view.
-   * @param[in] source The soource triggers Notification.
-   */
-  void UpdateDisplayArea(Dali::PropertyNotification& source);
-
-  /**
    * @brief Enable/Disable video hole for video playing.
    * @param[in] enabled True if video hole is enabled, false otherwise.
    */
@@ -661,9 +659,10 @@ private:
   void OnFrameRendered();
 
   /**
-   * @brief Callback function to be called when frame is rendered. This is to check initial buffer is ready.
+   * @brief Callback for updating display area of web view.
+   * @param[in] source The soource triggers Notification.
    */
-  void OnInitialFrameRendered();
+  void OnDisplayAreaUpdated(Dali::PropertyNotification& source);
 
   /**
    * @brief Callback function to be called when visibility is changed.
@@ -725,8 +724,6 @@ private:
 
   Dali::Toolkit::WebView::WebViewScreenshotCapturedCallback mScreenshotCapturedCallback;
   Dali::WebEnginePlugin::WebEngineFrameRenderedCallback     mFrameRenderedCallback;
-
-  static std::unordered_map<Dali::WebEnginePlugin*, Dali::WeakHandle<Toolkit::WebView>> mPluginWebViewMap;
 };
 
 } // namespace Internal