Change the implementation of ewk_view_page_visibibility_set means
calling RenderWidgetHostImpl::WasShown or WasHidden functions.
These functions, among others, sends a message to the renderer.
The message handler calls the function OnWasHidden or the function
OnWasShown side renderer.
The current implementation does not differ from the implementation
ewk_view_visibility_set.
Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14555.
Reviewed by: Antonio Gomes, Janusz Majnert
Reviewed by: a1.gomes, j.majnert, sns.park
Change-Id: I89e84d92386ded7916b9f0671216b1adc6c99ad2
Signed-off-by: Andrzej Badowski <a.badowski@samsung.com
(cherry picked from commit
87f64fa1041d65d6b48036c5e07af406b56bff4c)
evas_object_hide(content_image_elm_host_);
}
+void RenderWidgetHostViewEfl::WasShown() {
+ host_->WasShown(ui::LatencyInfo());
+}
+
+void RenderWidgetHostViewEfl::WasHidden() {
+ host_->WasHidden();
+}
+
bool RenderWidgetHostViewEfl::IsShowing() {
return evas_object_visible_get(content_image_);
}
bool IsSurfaceAvailableForCopy() const override;
void Show() override;
void Hide() override;
+ void WasShown();
+ void WasHidden();
bool IsShowing() override;
gfx::Rect GetViewBounds() const override;
bool LockMouse() override;
web_contents_->WasHidden();
}
+void EWebView::WasShown() {
+ if (rwhv())
+ rwhv()->WasShown();
+}
+
+void EWebView::WasHidden() {
+ if (rwhv())
+ rwhv()->WasHidden();
+}
+
void EWebView::InvokeAuthCallback(LoginDelegateEfl* login_delegate,
const GURL& url,
const std::string& realm) {
void HandleTouchEvents(Ewk_Touch_Event_Type type, const Eina_List *points, const Evas_Modifier *modifiers);
void Show();
void Hide();
+ void WasShown();
+ void WasHidden();
bool ExecuteJavaScript(const char* script, Ewk_View_Script_Execute_Callback callback, void* userdata);
bool SetUserAgent(const char* userAgent);
bool SetUserAgentAppName(const char* application_name);
EWK_VIEW_IMPL_GET_OR_RETURN(ewkView, impl,false);
switch (page_visibility_state) {
case EWK_PAGE_VISIBILITY_STATE_VISIBLE :
- impl->Show();
+ impl->WasShown();
break;
case EWK_PAGE_VISIBILITY_STATE_HIDDEN :
- impl->Hide();
+ impl->WasHidden();
break;
default:
- break;
+ return EINA_FALSE;
}
- return true;
+ return EINA_TRUE;
}
Eina_Bool ewk_view_user_agent_set(Evas_Object* ewkView, const char* user_agent)