2 * Copyright (c) 2020 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include <dali-toolkit/devel-api/controls/web-view/web-view.h>
22 #include <dali-toolkit/internal/controls/web-view/web-view-impl.h>
23 #include <dali-toolkit/public-api/controls/image-view/image-view.h>
33 WebView::WebView(const WebView& WebView)
38 WebView& WebView::operator=(const WebView& view)
42 Control::operator=(view);
52 WebView WebView::New()
54 return Internal::WebView::New();
57 WebView WebView::New(const std::string& locale, const std::string& timezoneId)
59 return Internal::WebView::New(locale, timezoneId);
62 WebView WebView::New( int argc, char** argv )
64 return Internal::WebView::New( argc, argv );
67 WebView WebView::DownCast(BaseHandle handle)
69 return Control::DownCast<WebView, Internal::WebView>(handle);
72 Dali::Toolkit::WebSettings* WebView::GetSettings() const
74 return Dali::Toolkit::GetImpl( *this ).GetSettings();
77 Dali::Toolkit::WebContext* WebView::GetContext() const
79 return Dali::Toolkit::GetImpl( *this ).GetContext();
82 Dali::Toolkit::WebCookieManager* WebView::GetCookieManager() const
84 return Dali::Toolkit::GetImpl( *this ).GetCookieManager();
87 Dali::Toolkit::WebBackForwardList* WebView::GetBackForwardList() const
89 return Dali::Toolkit::GetImpl( *this ).GetBackForwardList();
92 Dali::WebEnginePlugin* WebView::GetPlugin() const
94 return Dali::Toolkit::GetImpl(*this).GetPlugin();
97 Dali::Toolkit::ImageView WebView::GetFavicon() const
99 return Dali::Toolkit::GetImpl( *this ).GetFavicon();
102 void WebView::LoadUrl(const std::string& url)
104 Dali::Toolkit::GetImpl(*this).LoadUrl(url);
107 void WebView::LoadHtmlString(const std::string& htmlString)
109 Dali::Toolkit::GetImpl(*this).LoadHtmlString(htmlString);
112 void WebView::Reload()
114 Dali::Toolkit::GetImpl(*this).Reload();
117 void WebView::StopLoading()
119 Dali::Toolkit::GetImpl(*this).StopLoading();
122 void WebView::Suspend()
124 Dali::Toolkit::GetImpl(*this).Suspend();
127 void WebView::Resume()
129 Dali::Toolkit::GetImpl(*this).Resume();
132 void WebView::ScrollBy( int deltaX, int deltaY )
134 Dali::Toolkit::GetImpl( *this ).ScrollBy( deltaX, deltaY );
137 bool WebView::CanGoForward()
139 return Dali::Toolkit::GetImpl(*this).CanGoForward();
142 void WebView::GoForward()
144 Dali::Toolkit::GetImpl(*this).GoForward();
147 bool WebView::CanGoBack()
149 return Dali::Toolkit::GetImpl(*this).CanGoBack();
152 void WebView::GoBack()
154 Dali::Toolkit::GetImpl(*this).GoBack();
157 void WebView::EvaluateJavaScript(const std::string& script, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback resultHandler)
159 Dali::Toolkit::GetImpl(*this).EvaluateJavaScript(script, resultHandler);
162 void WebView::EvaluateJavaScript(const std::string& script)
164 Dali::Toolkit::GetImpl(*this).EvaluateJavaScript(script, nullptr);
167 void WebView::AddJavaScriptMessageHandler(const std::string& exposedObjectName, Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback handler)
169 Dali::Toolkit::GetImpl(*this).AddJavaScriptMessageHandler(exposedObjectName, handler);
172 void WebView::ClearAllTilesResources()
174 Dali::Toolkit::GetImpl( *this ).ClearAllTilesResources();
177 void WebView::ClearHistory()
179 Dali::Toolkit::GetImpl(*this).ClearHistory();
182 void WebView::SetTtsFocus(bool focused)
184 Dali::Toolkit::GetImpl(*this).SetTtsFocus(focused);
187 void WebView::RegisterPageLoadStartedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
189 Dali::Toolkit::GetImpl(*this).RegisterPageLoadStartedCallback(callback);
192 void WebView::RegisterPageLoadFinishedCallback(Dali::WebEnginePlugin::WebEnginePageLoadCallback callback)
194 Dali::Toolkit::GetImpl(*this).RegisterPageLoadFinishedCallback(callback);
197 void WebView::RegisterPageLoadErrorCallback(Dali::WebEnginePlugin::WebEnginePageLoadErrorCallback callback)
199 Dali::Toolkit::GetImpl(*this).RegisterPageLoadErrorCallback(callback);
202 void WebView::RegisterScrollEdgeReachedCallback(Dali::WebEnginePlugin::WebEngineScrollEdgeReachedCallback callback)
204 Dali::Toolkit::GetImpl(*this).RegisterScrollEdgeReachedCallback(callback);
207 void WebView::RegisterUrlChangedCallback(Dali::WebEnginePlugin::WebEngineUrlChangedCallback callback)
209 Dali::Toolkit::GetImpl(*this).RegisterUrlChangedCallback(callback);
212 void WebView::RegisterNavigationPolicyDecidedCallback(Dali::WebEnginePlugin::WebEngineNavigationPolicyDecidedCallback callback)
214 Dali::Toolkit::GetImpl(*this).RegisterNavigationPolicyDecidedCallback(callback);
217 void WebView::RegisterNewWindowCreatedCallback(Dali::WebEnginePlugin::WebEngineNewWindowCreatedCallback callback)
219 Dali::Toolkit::GetImpl(*this).RegisterNewWindowCreatedCallback(callback);
222 void WebView::GetPlainTextAsynchronously(Dali::WebEnginePlugin::PlainTextReceivedCallback callback)
224 Dali::Toolkit::GetImpl(*this).GetPlainTextAsynchronously(callback);
227 WebView::WebView(Internal::WebView& implementation)
228 : Control(implementation)
232 WebView::WebView(Dali::Internal::CustomActor* internal)
235 VerifyCustomActorPointer<Internal::WebView>(internal);
238 } // namespace Toolkit