diff -r 61516c5786af -r 00076e39386f accessoryservices/pluggeddisplay/pluggeddisplayengine/src/compositecablestateconnected.cpp --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/compositecablestateconnected.cpp Wed Jun 23 22:58:50 2010 +0100 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/compositecablestateconnected.cpp Thu Jul 22 16:45:41 2010 +0100 @@ -80,6 +80,11 @@ iCRWatchForTvSystem->Cancel(); delete iCRWatchForTvSystem; } + if ( iCRWatchForVOverScan ) + { + iCRWatchForVOverScan->Cancel(); + delete iCRWatchForVOverScan; + } if ( iTVOutConfigForSettingChanges ) { iTVOutConfigForSettingChanges->Cancel(); @@ -95,7 +100,8 @@ void CCompositeCableStateConnected::Enter( ) { FUNC_LOG; - + + iTVOutConfigForComposite.UpdateOverscanValues(); ClearAvailableTvOutConfig(); iTVOutConfigForSettingChanges->ListenSettingsChanges(); @@ -187,6 +193,7 @@ TUint32 aId ) { FUNC_LOG; + INFO("Cenrep Value Changed"); if ( KCRUidTvoutSettings == aRepositoryId ) { if ( ( KSettingsTvAspectRatio == aId ) || @@ -195,7 +202,15 @@ { Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventKeyChanged ); } - else + else if( KSettingsTvoutVerticalOverscan == aId ) + { + if( iTVOutConfigForComposite.UpdateOverscanValues() ) + { + INFO( "There is a real overscan change" ); + Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventOverscanKeyChanged ); + } + } + else { INFO_1("Unexpected CR key ID, aId 0x%x", aId ); } @@ -286,6 +301,7 @@ iCRWatchForFlickerFilter->Watch(); iCRWatchForAspectRatio->Watch(); iCRWatchForTvSystem->Watch(); + iCRWatchForVOverScan->Watch(); iSubState = ESubStateEnabled; } else @@ -343,6 +359,7 @@ iCRWatchForFlickerFilter->Cancel(); iCRWatchForAspectRatio->Cancel(); iCRWatchForTvSystem->Cancel(); + iCRWatchForVOverScan->Cancel(); ClearAvailableTvOutConfig(); iTVOutConfigForComposite.Disable(); iSubState = ESubStateDisabling; @@ -362,17 +379,43 @@ iCRWatchForFlickerFilter->Cancel(); iCRWatchForAspectRatio->Cancel(); iCRWatchForTvSystem->Cancel(); + iCRWatchForVOverScan->Cancel(); ClearAvailableTvOutConfig(); - iTVOutConfigForComposite.Disable(); iResettingInput = ETrue; Enter(); } + else if ( EPDEIfCentralRepositoryWatchEventOverscanKeyChanged == aEvent ) + { + INFO( "Event: EPDEIfCentralRepositoryWatchEventOverscanKeyChanged" ); + iTVOutConfigForComposite.SetConfig( ETrue ); + } else { INFO_1( "Unknown Event Id: %i", aEvent ); } break; } + case EPDEIfTVOutConfig: + { + INFO( "Interface: EPDEIfTVOutConfig" ); + if ( EIfTVOutConfigEventSet == aEvent ) + { + INFO( "Event: EIfTVOutConfigEventSet" ); + // Stay on the same state + } + else if ( EIfTVOutConfigEventSetFailed == aEvent ) + { + INFO( "Event: EIfTVOutConfigEventSetFailed" ); + iCRWatchForFlickerFilter->Cancel(); + iCRWatchForAspectRatio->Cancel(); + iCRWatchForTvSystem->Cancel(); + iCRWatchForVOverScan->Cancel(); + ClearAvailableTvOutConfig(); + iTVOutConfigForComposite.Disable(); + iSubState = ESubStateDisabling; + } + break; + } default: { INFO_2( "Event from unexpected interface. if Id, event id: %i", aInterfaceId, aEvent ); @@ -582,6 +625,7 @@ iCRWatchForFlickerFilter->Cancel(); iCRWatchForAspectRatio->Cancel(); iCRWatchForTvSystem->Cancel(); + iCRWatchForVOverScan->Cancel(); iResettingInput = EFalse; } @@ -599,6 +643,7 @@ iCRWatchForFlickerFilter->Cancel(); iCRWatchForAspectRatio->Cancel(); iCRWatchForTvSystem->Cancel(); + iCRWatchForVOverScan->Cancel(); iResettingInput = EFalse; } @@ -765,6 +810,7 @@ iCRWatchForFlickerFilter->Cancel(); iCRWatchForAspectRatio->Cancel(); iCRWatchForTvSystem->Cancel(); + iCRWatchForVOverScan->Cancel(); } else if ( EIfTVOutConfigEventSetFailed == aEvent ) { @@ -848,6 +894,7 @@ iCRWatchForAspectRatio = CCentralRepositoryWatch::NewL(*this, KCRUidTvoutSettings, KSettingsTvAspectRatio ); iCRWatchForFlickerFilter = CCentralRepositoryWatch::NewL(*this, KCRUidTvoutSettings, KSettingsTvoutFlickerFilter ); iCRWatchForTvSystem = CCentralRepositoryWatch::NewL(*this, KCRUidTvoutSettings, KSettingsTvSystemInfo ); + iCRWatchForVOverScan = CCentralRepositoryWatch::NewL(*this, KCRUidTvoutSettings, KSettingsTvoutVerticalOverscan ); iTVOutConfigForSettingChanges = CTVOutConfigForComposite::NewL(iCompositeCableStatusFSM); iResettingInput = EFalse; }