equal
deleted
inserted
replaced
357 *node, |
357 *node, |
358 KConfigurationAttrState, |
358 KConfigurationAttrState, |
359 state ); |
359 state ); |
360 |
360 |
361 if ( state.Compare( KConfStateError ) == 0 ) |
361 if ( state.Compare( KConfStateError ) == 0 ) |
362 { |
362 { |
363 // Restore active application configuration |
|
364 TPtrC8 confUid; |
|
365 CHspsLiwUtilities::GetAttributeValueL( |
|
366 *node, |
|
367 KConfigurationAttrUid, |
|
368 confUid ); |
|
369 TInt appUid; |
363 TInt appUid; |
370 iHspsConfigurationService->GetAppUidL( appUid ); |
364 iHspsConfigurationService->GetAppUidL( appUid ); |
371 iHspsPersonalisationService->RestoreActiveAppConfL( |
365 iHspsPersonalisationService->RestoreActiveAppConfL( |
372 appUid, |
366 appUid ); |
373 confUid ); |
|
374 |
367 |
375 // Invalidate ODT. |
368 // Invalidate ODT. |
376 iHspsConfigurationService->InvalidateODT(); |
369 iHspsConfigurationService->InvalidateODT(); |
377 } |
370 } |
378 |
371 |
1198 CHspsPersonalisationService::TRestore operation( CHspsPersonalisationService::EDefault ); |
1191 CHspsPersonalisationService::TRestore operation( CHspsPersonalisationService::EDefault ); |
1199 if( restorePtr.CompareF( KHspsLiwRestoreDefault ) == 0 ) |
1192 if( restorePtr.CompareF( KHspsLiwRestoreDefault ) == 0 ) |
1200 { |
1193 { |
1201 operation = CHspsPersonalisationService::EDefault; |
1194 operation = CHspsPersonalisationService::EDefault; |
1202 } |
1195 } |
|
1196 else if( restorePtr.CompareF( KHspsLiwRestoreAll ) == 0 ) |
|
1197 { |
|
1198 operation = CHspsPersonalisationService::EAll; |
|
1199 } |
1203 else if( restorePtr.CompareF( KHspsLiwRestoreRom ) == 0 ) |
1200 else if( restorePtr.CompareF( KHspsLiwRestoreRom ) == 0 ) |
1204 { |
1201 { |
1205 operation = CHspsPersonalisationService::ERom; |
1202 operation = CHspsPersonalisationService::ERom; |
1206 } |
1203 } |
1207 else if( restorePtr.CompareF( KHspsLiwRestoreViews ) == 0 ) |
1204 else if( restorePtr.CompareF( KHspsLiwRestoreViews ) == 0 ) |
1214 } |
1211 } |
1215 |
1212 |
1216 // Get client application's uid |
1213 // Get client application's uid |
1217 TInt appUid; |
1214 TInt appUid; |
1218 iHspsConfigurationService->GetAppUidL( appUid ); |
1215 iHspsConfigurationService->GetAppUidL( appUid ); |
1219 |
1216 |
1220 iHspsPersonalisationService->RestoreConfigurationsL( appUid, operation ); |
1217 if( operation == CHspsPersonalisationService::EDefault ) |
|
1218 { |
|
1219 // Try to activate another application configuration which has a restorable status |
|
1220 iHspsPersonalisationService->RestoreActiveAppConfL( appUid ); |
|
1221 } |
|
1222 else |
|
1223 { |
|
1224 // Re-install or strip plugins |
|
1225 iHspsPersonalisationService->RestoreConfigurationsL( appUid, operation ); |
|
1226 } |
1221 |
1227 |
1222 // Invalidate ODT. |
1228 // Invalidate ODT. |
1223 iHspsConfigurationService->InvalidateODT(); |
1229 iHspsConfigurationService->InvalidateODT(); |
1224 |
1230 |
1225 // Create output parameters |
1231 // Create output parameters |