diff -r 32469d7d46ff -r 4bc7b118b3df contentstorage/srvsrc/castorageproxy.cpp --- a/contentstorage/srvsrc/castorageproxy.cpp Mon May 03 12:48:45 2010 +0300 +++ b/contentstorage/srvsrc/castorageproxy.cpp Fri May 14 16:10:06 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++ ) {