--- a/photosgallery/slideshow/engine/controlsrc/shwviewcontrol.cpp Tue May 25 12:42:31 2010 +0300
+++ b/photosgallery/slideshow/engine/controlsrc/shwviewcontrol.cpp Wed Jun 09 09:41:51 2010 +0300
@@ -36,6 +36,7 @@
iTransitionReadyReceived( EFalse ),
iReadyToAdvanceReceived( EFalse ),
iTimerReceived( EFalse ),
+ iHDMIDecoded(ETrue),
iUserNavigated( EFalse ),
iPaused( EFalse ),
iUserNavigatedWhilePaused( EFalse )
@@ -179,6 +180,25 @@
GLX_LOG_INFO( "CShwViewControl::NotifyL - TShwEventToggleControlUi" );
// Have to impliment if need comes
}
+ else if( dynamic_cast< TShwEventHDMIDisConnected* >( aEvent ) )
+ {
+ GLX_LOG_INFO( "CShwViewControl::NotifyL - TShwEventHDMIDisConnected" );
+ iHDMIDecoded = ETrue ;
+ // check if we are ok to go to start transition
+ CheckAndSendStartTransitionL();
+ }
+ else if( dynamic_cast< TShwEventHDMIImageDecodingStarted* >( aEvent ) )
+ {
+ GLX_LOG_INFO( "CShwViewControl::NotifyL - TShwEventHDMIImageDecodingStarted" );
+ iHDMIDecoded = EFalse ;
+ }
+ else if( dynamic_cast< TShwEventHDMIImageDecodingCompleted* >( aEvent ) )
+ {
+ GLX_LOG_INFO( "CShwViewControl::NotifyL - TShwEventHDMIImageDecodingCompleted" );
+ iHDMIDecoded = ETrue ;
+ // check if we are ok to go to start transition
+ CheckAndSendStartTransitionL();
+ }
}
// -----------------------------------------------------------------------------
@@ -190,8 +210,8 @@
GLX_LOG_INFO( "CShwViewControl::CheckAndSendStartTransitionL" );
// check if we got timer and ready to advance and
// we are not paused and there is more than one item
- if( iTimerReceived && iReadyToAdvanceReceived &&
- (!iPaused) && (iList.Count() > 1) )
+ if (iTimerReceived && iReadyToAdvanceReceived && iHDMIDecoded && (!iPaused)
+ && (iList.Count() > 1))
{
GLX_LOG_INFO( "CShwViewControl::Sending TShwEventStartTransition" );
// reset timer and viewready flags