accessoryservices/pluggeddisplay/pluggeddisplayengine/src/hdmicablestateconnected.cpp
equal
deleted
inserted
replaced
99 if ( KCRUidTvoutSettings == aRepositoryId ) |
99 if ( KCRUidTvoutSettings == aRepositoryId ) |
100 { |
100 { |
101 if ( KSettingsTvoutVerticalOverscan == aId ) |
101 if ( KSettingsTvoutVerticalOverscan == aId ) |
102 { |
102 { |
103 INFO("Cenrep Value Changed"); |
103 INFO("Cenrep Value Changed"); |
104 iEDIDHandler.UpdateOverscanValues(); |
104 if( iEDIDHandler.UpdateOverscanValues() ) |
105 Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventKeyChanged ); |
105 { |
|
106 INFO( "There is a real change" ); |
|
107 Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventKeyChanged ); |
|
108 } |
106 } |
109 } |
107 else |
110 else |
108 { |
111 { |
109 INFO_1("Unexpected CR key ID, aId 0x%x", aId ); |
112 INFO_1("Unexpected CR key ID, aId 0x%x", aId ); |
110 } |
113 } |
151 // |
154 // |
152 void CHDMICableStateConnected::Enter( ) |
155 void CHDMICableStateConnected::Enter( ) |
153 { |
156 { |
154 FUNC_LOG; |
157 FUNC_LOG; |
155 TInt retVal( KErrNone ); |
158 TInt retVal( KErrNone ); |
156 iOverScanSettingsChanged = EFalse; |
159 |
157 |
|
158 // Get the current overscan value |
160 // Get the current overscan value |
159 iEDIDHandler.UpdateOverscanValues(); |
161 iEDIDHandler.UpdateOverscanValues(); |
160 iEDIDHandler.GetCurrentOverscanValue( iHOverscanValue, iVOverscanValue ); |
162 iEDIDHandler.GetCurrentOverscanValue( iHOverscanValue, iVOverscanValue ); |
161 |
163 |
162 iCopyProtectListenFailCounter.iCount = 0; |
164 iCopyProtectListenFailCounter.iCount = 0; |
524 } |
526 } |
525 else |
527 else |
526 { |
528 { |
527 iSubState = ESubStateConnected; |
529 iSubState = ESubStateConnected; |
528 |
530 |
529 if( !iOverScanSettingsChanged ) |
531 TRAPD( err, iHDMICableStatusFSM.SettingsChangedL() ); |
530 { |
532 if ( KErrNone != err ) |
531 TRAPD( err, iHDMICableStatusFSM.SettingsChangedL() ); |
533 { |
532 if ( KErrNone != err ) |
534 INFO_1( "iHDMICableStatusFSM.SettingsChangedL() failed, error code %i", err ); |
533 { |
535 } |
534 INFO_1( "iHDMICableStatusFSM.SettingsChangedL() failed, error code %i", err ); |
|
535 } |
|
536 } |
|
537 else |
|
538 { |
|
539 iOverScanSettingsChanged = EFalse; |
|
540 } |
|
541 ListenCopyProtectionStatusChanges(); |
536 ListenCopyProtectionStatusChanges(); |
542 iTVOutConfigForSettingChanges->ListenSettingsChanges(); |
537 iTVOutConfigForSettingChanges->ListenSettingsChanges(); |
543 iCRWatchForVOverScan->Watch(); |
538 iCRWatchForVOverScan->Watch(); |
544 } |
539 } |
545 } |
540 } |
581 if ( EIfTVOutConfigEventDisabled == aEvent ) |
576 if ( EIfTVOutConfigEventDisabled == aEvent ) |
582 { |
577 { |
583 INFO( "Event: EIfTVOutConfigEventDisabled" ); |
578 INFO( "Event: EIfTVOutConfigEventDisabled" ); |
584 iSubState = ESubStateIdlingDisconnectAccessory; |
579 iSubState = ESubStateIdlingDisconnectAccessory; |
585 iAccessoryControlIf.DisconnectAccessory(); |
580 iAccessoryControlIf.DisconnectAccessory(); |
|
581 ClearAvailableTvOutConfig(); |
586 } |
582 } |
587 else if ( EIfTVOutConfigEventDisableFailed == aEvent ) |
583 else if ( EIfTVOutConfigEventDisableFailed == aEvent ) |
588 { |
584 { |
589 INFO( "Event: EIfTVOutConfigEventDisableFailed" ); |
585 INFO( "Event: EIfTVOutConfigEventDisableFailed" ); |
590 iSubState = ESubStateIdlingDisconnectAccessory; |
586 iSubState = ESubStateIdlingDisconnectAccessory; |
591 iAccessoryControlIf.DisconnectAccessory(); |
587 iAccessoryControlIf.DisconnectAccessory(); |
|
588 ClearAvailableTvOutConfig(); |
592 } |
589 } |
593 else |
590 else |
594 { |
591 { |
595 INFO_1( "Unknown/unexpected Event Id: %i", aEvent ); |
592 INFO_1( "Unknown/unexpected Event Id: %i", aEvent ); |
596 } |
593 } |
961 { |
958 { |
962 iSubState = ESubStateResettingEnable; |
959 iSubState = ESubStateResettingEnable; |
963 iTVOutConfigForHDMI.Enable(); |
960 iTVOutConfigForHDMI.Enable(); |
964 } |
961 } |
965 } |
962 } |
966 else if ( EIfTVOutConfigEventSettingsChangesListenStarted ) |
963 else if ( EIfTVOutConfigEventSettingsChangesListenStarted == aEvent ) |
967 { |
964 { |
968 INFO( "Event: EIfTVOutConfigEventSettingsChangesListenStarted" ); |
965 INFO( "Event: EIfTVOutConfigEventSettingsChangesListenStarted" ); |
969 // Everything is OK. Stay in the same state. |
966 // Everything is OK. Stay in the same state. |
970 // Should not miss the cenrep value change |
967 // Should not miss the cenrep value change |
971 TInt newOverScanValue = 0; |
968 TInt newOverScanValue = 0; |
1005 |
1002 |
1006 iTVOutConfigForHDMI.GetTvOutConfig()->GetConfig( curConfig ); |
1003 iTVOutConfigForHDMI.GetTvOutConfig()->GetConfig( curConfig ); |
1007 |
1004 |
1008 if( (TTvSettings::EHDMI == curConfig.iConnector) && (!curConfig.iUnderscanEnabled) ) |
1005 if( (TTvSettings::EHDMI == curConfig.iConnector) && (!curConfig.iUnderscanEnabled) ) |
1009 { |
1006 { |
1010 // Clear the available config |
|
1011 ClearAvailableTvOutConfig(); |
|
1012 iCRWatchForVOverScan->Cancel(); |
|
1013 |
1007 |
1014 TInt retVal = iEDIDHandler.SetVideoParameters(); |
1008 TInt retVal = iEDIDHandler.SetVideoParameters(); |
1015 if ( KErrNone != retVal ) |
1009 if ( KErrNone != retVal ) |
1016 { |
1010 { |
1017 INFO( "Going to state <Rejected> since video parameter setting failed!" ); |
1011 INFO( "Going to state <Rejected> since video parameter setting failed!" ); |
1018 iTVOutConfigForSettingChanges->Cancel(); |
1012 iTVOutConfigForSettingChanges->Cancel(); |
1019 iCRWatchForVOverScan->Cancel(); |
1013 iCRWatchForVOverScan->Cancel(); |
1020 iHDMICableStatusFSM.Transit( EHDMICableStateRejected ); |
1014 iSubState = ESubStateIdlingDisable; |
|
1015 iTVOutConfigForHDMI.Disable(); |
1021 } |
1016 } |
1022 else |
1017 else |
1023 { |
1018 { |
1024 // Update the current overscan value |
1019 // Update the current overscan value |
1025 iEDIDHandler.GetCurrentOverscanValue( iHOverscanValue, iVOverscanValue ); |
1020 iEDIDHandler.GetCurrentOverscanValue( iHOverscanValue, iVOverscanValue ); |
1028 if ( EIfTVOutConfigEventCableDisconnected == event ) |
1023 if ( EIfTVOutConfigEventCableDisconnected == event ) |
1029 { |
1024 { |
1030 INFO( "Retreating back to <Idle> since cable was disconnected while not listening!" ); |
1025 INFO( "Retreating back to <Idle> since cable was disconnected while not listening!" ); |
1031 iTVOutConfigForSettingChanges->Cancel(); |
1026 iTVOutConfigForSettingChanges->Cancel(); |
1032 iCRWatchForVOverScan->Cancel(); |
1027 iCRWatchForVOverScan->Cancel(); |
1033 iHDMICableStatusFSM.Transit( EHDMICableStateIdle ); |
1028 iSubState = ESubStateIdlingDisable; |
1034 } |
1029 iTVOutConfigForHDMI.Disable(); |
1035 else |
|
1036 { |
|
1037 iOverScanSettingsChanged = ETrue; |
|
1038 iSubState = ESubStateWaitForSettingsChanged; |
|
1039 } |
1030 } |
1040 } |
1031 } |
1041 } |
1032 } |
1042 } |
1033 } |
1043 else |
1034 else |
1114 } |
1105 } |
1115 } |
1106 } |
1116 else if ( EIfTVOutConfigEventSettingsChanged == aEvent ) |
1107 else if ( EIfTVOutConfigEventSettingsChanged == aEvent ) |
1117 { |
1108 { |
1118 INFO( "Event: EIfTVOutConfigEventSettingsChanged" ); |
1109 INFO( "Event: EIfTVOutConfigEventSettingsChanged" ); |
1119 if( iOverScanSettingsChanged ) |
1110 iSubState = ESubStateEnable; |
1120 { |
1111 iTVOutConfigForHDMI.Enable(); |
1121 if ( iTVOutConfigForHDMI.GetTvOutConfig()->Enabled() ) |
|
1122 { |
|
1123 iSubState = ESubStateResettingDisable; |
|
1124 iTVOutConfigForHDMI.Disable(); |
|
1125 } |
|
1126 else |
|
1127 { |
|
1128 iSubState = ESubStateResettingEnable; |
|
1129 iTVOutConfigForHDMI.Enable(); |
|
1130 } |
|
1131 } |
|
1132 else |
|
1133 { |
|
1134 iSubState = ESubStateEnable; |
|
1135 iTVOutConfigForHDMI.Enable(); |
|
1136 } |
|
1137 } |
1112 } |
1138 else if ( EIfTVOutConfigEventSettingsChangesListenFailed == aEvent ) |
1113 else if ( EIfTVOutConfigEventSettingsChangesListenFailed == aEvent ) |
1139 { |
1114 { |
1140 INFO( "Event: EIfTVOutConfigEventSettingsChangesListenFailed" ); |
1115 INFO( "Event: EIfTVOutConfigEventSettingsChangesListenFailed" ); |
1141 INFO( "Going to state <Rejected> since setting changes listening failed!" ); |
1116 INFO( "Going to state <Rejected> since setting changes listening failed!" ); |