virtual void prepareView(WidgetModel *, const std::string &) = 0;
virtual void showWidget() = 0;
virtual void hideWidget() = 0;
+ virtual void changeViewVisibility(bool isVisible) = 0;
virtual void suspendWidget()= 0;
virtual void resumeWidget() = 0;
virtual void resetWidget() = 0;
m_ewkViewList.clear();
}
+void ViewLogic::changeViewVisibility(bool isVisible)
+{
+ Evas_Object* wkView = m_currentEwkView;
+ if (!wkView)
+ return;
+
+ if (isVisible) {
+ ewk_view_page_visibility_state_set(wkView,
+ EWK_PAGE_VISIBILITY_STATE_VISIBLE,
+ EINA_FALSE);
+ ewk_view_visibility_set(wkView, EINA_TRUE);
+ } else {
+ ewk_view_page_visibility_state_set(wkView,
+ EWK_PAGE_VISIBILITY_STATE_HIDDEN,
+ EINA_FALSE);
+ ewk_view_visibility_set(wkView, EINA_FALSE);
+ }
+}
+
void ViewLogic::suspendWidget()
{
LogInfo("Pausing widget");
// The followings are not implemeted yet by webkit2
// ewk_view_pause_or_resume_plugins(true);
// ewk_view_pause_or_resume_video_audio(true);
-
- // send visibility event to webpage
- ewk_view_page_visibility_state_set(wkView,
- EWK_PAGE_VISIBILITY_STATE_HIDDEN,
- EINA_FALSE);
ewk_view_suspend(wkView);
- ewk_view_visibility_set(wkView, EINA_FALSE);
+
return;
}