-private:
- WebEnginePluginObject(const WebEnginePluginObject&) = delete;
- WebEnginePluginObject(WebEnginePluginObject&&) = delete;
- WebEnginePluginObject& operator=(const WebEnginePluginObject&) = delete;
- WebEnginePluginObject& operator=(WebEnginePluginObject&&) = delete;
-
-private:
- std::string mPluginName; ///< Name of web engine plugin
- /// Note: Dali WebView policy does not allow to use multiple web engines in an application.
- /// So once pluginName is set to non-empty string, it will not change.
-
-public:
- using CreateWebEngineFunction = Dali::WebEnginePlugin* (*)();
- using DestroyWebEngineFunction = void (*)(Dali::WebEnginePlugin* plugin);
-
- using GetWebEngineContext = Dali::WebEngineContext* (*)();
- using GetWebEngineCookieManager = Dali::WebEngineCookieManager* (*)();
-
- void* mHandle; ///< Handle for the loaded library
- CreateWebEngineFunction mCreateWebEnginePtr; ///< Function to create plugin instance
- DestroyWebEngineFunction mDestroyWebEnginePtr; ///< Function to destroy plugin instance
-
- GetWebEngineContext mGetWebEngineContextPtr; ///< Function to get WebEngineContext
- GetWebEngineCookieManager mGetWebEngineCookieManagerPtr; ///< Function to get WebEngineCookieManager
-};
-
-static WebEnginePluginObject gPluginHandle; // Keep this object as static, so Let we assume that library closed after all WebEngines are disposed.
-
-} // unnamed namespace
-
-WebEnginePtr WebEngine::New()
-{
- WebEngine* instance = new WebEngine();
- if(!instance->Initialize())