[Tizen] Implement WebEngine::GetPlainTextAsynchronously 27/261927/1
authorJiyun Yang <ji.yang@samsung.com>
Thu, 22 Jul 2021 13:06:09 +0000 (22:06 +0900)
committerJiyun Yang <ji.yang@samsung.com>
Thu, 29 Jul 2021 00:41:52 +0000 (09:41 +0900)
Change-Id: Id85c001698789c9ac9e9f444ebdca3f067df7af6
Signed-off-by: Jiyun Yang <ji.yang@samsung.com>
dali/devel-api/adaptor-framework/web-engine-plugin.h
dali/devel-api/adaptor-framework/web-engine.cpp
dali/devel-api/adaptor-framework/web-engine.h
dali/internal/web-engine/common/web-engine-impl.cpp
dali/internal/web-engine/common/web-engine-impl.h

index 4401491061fc2c3b270d22103aaf069ee6b9bee4..9f8a16d94c67c13558ad7449b7e08a6bee1ed5bc 100755 (executable)
@@ -59,6 +59,11 @@ public:
    */
   typedef Signal< void( const ScrollEdge )> WebEngineScrollEdgeReachedSignalType;
 
+  /**
+   * @brief The callback to be called when the web engine received a plain text of current web page.
+   */
+  using PlainTextReceivedCallback = std::function<void(const std::string&)>;
+
   /**
    * @brief Enumeration for the scroll edge.
    */
@@ -333,6 +338,13 @@ public:
    * @return A signal object to connect with.
    */
   virtual WebEngineScrollEdgeReachedSignalType& ScrollEdgeReachedSignal() = 0;
+
+  /**
+   * @brief Get a plain text of current web page asynchronously.
+   *
+   * @param[in] callback The callback function called asynchronously.
+   */
+  virtual void GetPlainTextAsynchronously(PlainTextReceivedCallback callback) = 0;
 };
 
 } // namespace Dali
index 3acecebd47218246e78cdba78f787e64da089397..bc2c87fbdba1c0e9615a5188c03174ce822afbf5 100755 (executable)
@@ -279,4 +279,9 @@ Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType& WebEngine::ScrollEd
   return GetImplementation( *this ).ScrollEdgeReachedSignal();
 }
 
+void WebEngine::GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback)
+{
+  GetImplementation(*this).GetPlainTextAsynchronously(callback);
+}
+
 } // namespace Dali
index b4333fcd66e316904fa57bd852c476d593dbe03f..58ec2d9870de95da7c50520150070ab72847588e 100755 (executable)
@@ -339,6 +339,13 @@ public:
    */
   Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType& ScrollEdgeReachedSignal();
 
+  /**
+   * @brief Get a plain text of current web page asynchronously.
+   *
+   * @param[in] callback The callback function called asynchronously.
+   */
+  void GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback);
+
 private: // Not intended for application developers
   /**
    * @brief Internal constructor
index 8c08ebc86d61975e6dd1f8866cc8da8666319b77..17677919ce96c066ccfea891ad7af53b1cc229f0 100755 (executable)
@@ -378,6 +378,11 @@ Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType& WebEngine::ScrollEd
   return mPlugin->ScrollEdgeReachedSignal();
 }
 
+void WebEngine::GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback)
+{
+  mPlugin->GetPlainTextAsynchronously(callback);
+}
+
 } // namespace Adaptor;
 } // namespace Internal;
 } // namespace Dali;
index 609a15342532ed6d56818834066e821126f355e2..a27293bc8b0bafa311cd1ca4f1449f7542474705 100755 (executable)
@@ -268,6 +268,11 @@ public:
    */
   Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType& ScrollEdgeReachedSignal();
 
+  /**
+   * @copydoc Dali::WebEngine::GetPlainTextAsynchronously()
+   */
+  void GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback);
+
 private:
 
   /**