diff -r f7f0874bfe7d -r 6b87b143d312 photosgallery/viewframework/tvout/src/glxhdmicontroller.cpp --- a/photosgallery/viewframework/tvout/src/glxhdmicontroller.cpp Tue Feb 02 10:12:14 2010 +0200 +++ b/photosgallery/viewframework/tvout/src/glxhdmicontroller.cpp Fri Feb 19 22:51:01 2010 +0200 @@ -71,7 +71,6 @@ if (iGlxTvOut->IsHDMIConnected()) { - iIsHDMIconnected = ETrue; if(aImageDimensions.iHeight<=KHdTvHeight && aImageDimensions.iWidth<= KHdTvWidth && aFrameCount > 0) { @@ -144,6 +143,31 @@ iSurfaceUpdater->DeactivateZoom(); } } + +// ----------------------------------------------------------------------------- +// ShiftToCloningMode +// ----------------------------------------------------------------------------- +EXPORT_C void CGlxHdmiController::ShiftToCloningMode() + { + TRACER("CGlxHdmiController::ShiftToCloningMode()"); + if (iGlxTvOut->IsHDMIConnected() && iSurfaceUpdater) + { + iSurfaceUpdater->ShiftToCloningMode(); + } + } + +// ----------------------------------------------------------------------------- +// ShiftToPostingMode +// ----------------------------------------------------------------------------- +EXPORT_C void CGlxHdmiController::ShiftToPostingMode() + { + TRACER("CGlxHdmiController::ShiftToPostingMode()"); + if (iGlxTvOut->IsHDMIConnected() && iSurfaceUpdater) + { + iSurfaceUpdater->ShiftToPostingMode(); + } + } + // ----------------------------------------------------------------------------- // Constructor // ----------------------------------------------------------------------------- @@ -161,8 +185,6 @@ { TRACER("CGlxHdmiController::ConstructL()"); iGlxTvOut = CGlxTv::NewL(*this); - iIsHDMIconnected = EFalse; - iIsHDMIdisConnected = EFalse; } // ----------------------------------------------------------------------------- @@ -239,27 +261,18 @@ void CGlxHdmiController::HandleTvStatusChangedL( TTvChangeType aChangeType ) { TRACER("CGlxHdmiController::HandleTvStatusChangedL()"); - if(iIsHDMIdisConnected) - { - iIsHDMIdisConnected = EFalse; - } - else if ( aChangeType == ETvConnectionChanged ) + if ( aChangeType == ETvConnectionChanged ) { if ( iGlxTvOut->IsHDMIConnected() ) { GLX_LOG_INFO("CGlxHdmiController::HandleTvStatusChangedL() - HDMI Connected"); // Calling SetImageL() with appropriate parameters - if(!iIsHDMIconnected) - { - SetImageL(iStoredImagePath->Des(), iImageDimensions, iFrameCount, EFalse); - } + SetImageL(iStoredImagePath->Des(), iImageDimensions, iFrameCount, EFalse); } else { // if it gets disconnected, destroy the surface GLX_LOG_INFO("CGlxHdmiController::HandleTvStatusChangedL() - HDMI Not Connected"); - iIsHDMIconnected = EFalse; - iIsHDMIdisConnected = ETrue; DestroySurfaceUpdater(); } }