usbengines/usbwatcher/src/cusbactivepersonalityhandler.cpp
branchRCL_3
changeset 22 5b2a402e96ac
parent 10 f6533aee8b2b
child 23 25fce757be94
equal deleted inserted replaced
21:e9b96e674847 22:5b2a402e96ac
   184 // ----------------------------------------------------------------------------
   184 // ----------------------------------------------------------------------------
   185 // Start personality.
   185 // Start personality.
   186 // ----------------------------------------------------------------------------
   186 // ----------------------------------------------------------------------------
   187 //
   187 //
   188 void CUsbActivePersonalityHandler::StartPersonality( TInt& aPersonalityId,
   188 void CUsbActivePersonalityHandler::StartPersonality( TInt& aPersonalityId,
   189         TInt aAskOnConnectionSetting, TRequestStatus& aStatus )
   189         TRequestStatus& aStatus )
   190     {
   190     {
   191     LOG_FUNC
   191     LOG_FUNC
   192 
   192 
   193     LOG2( "PersonalityId = %d, AskOnConnectionSetting = %d", aPersonalityId,
   193     LOG1( "PersonalityId = %d ", aPersonalityId);
   194             aAskOnConnectionSetting );
       
   195 
   194 
   196     // Remove all notes.
   195     // Remove all notes.
   197     iPersonalityNotifier->CancelAll();
   196     iPersonalityNotifier->CancelAll();
   198      
   197      
   199 
   198 
   200     iPersonalityId = &aPersonalityId;
   199     iPersonalityId = &aPersonalityId;
   201     iAskOnConnectionSetting = aAskOnConnectionSetting;
       
   202     aStatus = KRequestPending;
   200     aStatus = KRequestPending;
   203     iRequestStatus = &aStatus;
   201     iRequestStatus = &aStatus;
   204 
   202 
   205     // prepare current personality for start and return
   203     // prepare current personality for start and return
   206     if( iCurrentPersonalityHandler )
   204     if( iCurrentPersonalityHandler )
   270     iDeviceState = aStateNew;        
   268     iDeviceState = aStateNew;        
   271     switch ( aStateNew )
   269     switch ( aStateNew )
   272         {
   270         {
   273         case EUsbDeviceStateAddress:
   271         case EUsbDeviceStateAddress:
   274             {
   272             {
   275             if( iAskOnConnectionSetting &&
   273             if ((aStateOld != EUsbDeviceStateSuspended) && (aStateOld
   276                     ( aStateOld != EUsbDeviceStateSuspended ) &&
   274                     != EUsbDeviceStateConfigured) && (ESwStateCharging
   277                     ( aStateOld != EUsbDeviceStateConfigured ) 
   275                     != CUsbGlobalSystemStateObserver::GlobalSystemState()))
   278                      )
       
   279                 {
   276                 {
   280                 iPersonalityParams->PersonalityNotifier().ShowQuery(
   277                 iPersonalityParams->PersonalityNotifier().ShowQuery(
   281                         KCableConnectedNotifierUid, iDummy,
   278                         KCableConnectedNotifierUid, iDummy,
   282                         iPersonalityPckgBuf);
   279                         iPersonalityPckgBuf);
   283                 }
   280                 }
   318             iQueryParams().iQuery = EUSBNotEnoughRam;
   315             iQueryParams().iQuery = EUSBNotEnoughRam;
   319             iPersonalityParams->PersonalityNotifier().ShowQuery(KQueriesNotifier, 
   316             iPersonalityParams->PersonalityNotifier().ShowQuery(KQueriesNotifier, 
   320     	                iQueryParams, iDummyBuf);
   317     	                iQueryParams, iDummyBuf);
   321             break;
   318             break;
   322         case KErrDiskFull:
   319         case KErrDiskFull:
   323             iQueryParams().iQuery = EUSBDiskFull;
   320             if (ESwStateCharging
   324             iPersonalityParams->PersonalityNotifier().ShowQuery(KQueriesNotifier, 
   321                     != CUsbGlobalSystemStateObserver::GlobalSystemState())
   325     	                iQueryParams, iDummyBuf);
   322                 {
       
   323                 iQueryParams().iQuery = EUSBDiskFull;
       
   324                 iPersonalityParams->PersonalityNotifier().ShowQuery(
       
   325                         KQueriesNotifier, iQueryParams, iDummyBuf);
       
   326                 }
   326             break;
   327             break;
   327         default:
   328         default:
   328         	LOG( "Ignored" );
   329         	LOG( "Ignored" );
   329         }
   330         }
   330 
   331 
   436             LOG( "EUsbPersonalityFinishStop" );
   437             LOG( "EUsbPersonalityFinishStop" );
   437 
   438 
   438             delete iCurrentPersonalityHandler;
   439             delete iCurrentPersonalityHandler;
   439             iCurrentPersonalityHandler = NULL;
   440             iCurrentPersonalityHandler = NULL;
   440 
   441 
   441             //iAskOnConnectionSetting may be have been set to off
       
   442             if ( iDeviceState == EUsbDeviceStateUndefined )
   442             if ( iDeviceState == EUsbDeviceStateUndefined )
   443                 {
   443                 {
   444 	            iPersonalityParams->PersonalityNotifier().CancelQuery(
   444 	            iPersonalityParams->PersonalityNotifier().CancelQuery(
   445 	                    KCableConnectedNotifierUid );
   445 	                    KCableConnectedNotifierUid );
   446                 }
   446                 }