diff -r 782e3408c2ab -r 82b66994846c contentstorage/srvsrc/castorageproxy.cpp --- a/contentstorage/srvsrc/castorageproxy.cpp Fri Apr 16 14:45:49 2010 +0300 +++ b/contentstorage/srvsrc/castorageproxy.cpp Fri Apr 30 15:22:08 2010 +0300 @@ -22,7 +22,6 @@ #include "cainnerquery.h" #include "caarraycleanup.inl" #include "calocalizationentry.h" -#include "cadef.h" #include "casrvsession.h" @@ -101,11 +100,14 @@ // // --------------------------------------------------------------------------- // -EXPORT_C void CCaStorageProxy::AddL( CCaInnerEntry* aEntry, TBool aUpdate ) +EXPORT_C void CCaStorageProxy::AddL( CCaInnerEntry* aEntry, + TBool aUpdate, + TItemAppearance aItemAppearanceChange ) { TChangeType changeType = EAddChangeType; RArray parentArray; CleanupClosePushL( parentArray ); + if( aEntry->GetId() > 0 ) { changeType = EUpdateChangeType; @@ -115,6 +117,16 @@ iStorage->GetParentsIdsL( id, parentArray ); CleanupStack::PopAndDestroy( &id ); } + + if( aItemAppearanceChange==EItemDisappeared ) + { + changeType = ERemoveChangeType; + } + else if( aItemAppearanceChange==EItemAppeared ) + { + changeType = EAddChangeType; + } + iStorage->AddL( aEntry, aUpdate ); for( TInt i = 0; i < iHandlerNotifier.Count(); i++ ) {