Modified internal api for fault widget case
authortaeyoon0.lee <taeyoon0.lee@samsung.com>
Mon, 6 Mar 2017 10:24:52 +0000 (19:24 +0900)
committertaeyoon0.lee <taeyoon0.lee@samsung.com>
Thu, 1 Jun 2017 04:41:42 +0000 (13:41 +0900)
  - Modified work of missing callback and fault widget event callback

Change-Id: I6b502bc5301dbdb3ab1b2923345622cee10af281

internal/widget_view/widget_view_impl.cpp

index f4fa403..071838d 100644 (file)
@@ -457,11 +457,14 @@ void WidgetView::CreateWidgetImageView()
 
 void WidgetView::RemoveWidgetImage()
 {
-  mWidgetImageView.SetVisible( false );
-  mWidgetImageView.Reset();
+  if( mWidgetImageView )
+  {
+    mWidgetImageView.SetVisible( false );
+    mWidgetImageView.Reset();
 
-  Dali::WidgetView::WidgetView handle( GetOwner() );
-  mWidgetDeletedSignal.Emit( handle );
+    Dali::WidgetView::WidgetView handle( GetOwner() );
+    mWidgetDeletedSignal.Emit( handle );
+  }
 
   DALI_LOG_INFO( gWidgetViewLogging, Debug::Verbose, "WidgetView::RemoveWidgetImage: Widget image is removed.\n" );
 }
@@ -513,9 +516,10 @@ void WidgetView::SendWidgetEvent( int event )
     }
     case WIDGET_INSTANCE_EVENT_FAULT:
     {
-      mPid = -1;
       ShowRetryState( true );
       mWidgetFaultedSignal.Emit( handle );
+      CloseRemoteSurface();
+      RemoveWidgetImage();
       break;
     }
     default:
@@ -1062,9 +1066,9 @@ void WidgetView::CloseRemoteSurface()
   {
     screen_connector_toolkit_remove( mWatcherHandle );
     mWatcherHandle = NULL;
+    mRemoteSurface = NULL;
+    mPid = -1;
   }
-  mRemoteSurface = NULL;
-  mPid = -1;
 }
 
 void WidgetView::ShowLoadingState( bool show )