# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1264499708 -7200 # Node ID e9eae96aa1172ee66f2859afb2f64dfe3ba98fc9 # Parent 1324afda5dee8589aaada8c2a63b822829ecdae8 Revision: 201001 Kit: 201004 diff -r 1324afda5dee -r e9eae96aa117 email/pop3andsmtpmtm/servermtmutils/test/group/IMSK.doc Binary file email/pop3andsmtpmtm/servermtmutils/test/group/IMSK.doc has changed diff -r 1324afda5dee -r e9eae96aa117 messagingappbase/mcesettings/inc/MceSettingsGeneralSettingsDialog.h --- a/messagingappbase/mcesettings/inc/MceSettingsGeneralSettingsDialog.h Fri Jan 22 09:42:17 2010 +0200 +++ b/messagingappbase/mcesettings/inc/MceSettingsGeneralSettingsDialog.h Tue Jan 26 11:55:08 2010 +0200 @@ -134,6 +134,17 @@ #else void ChangeMessageStoreL(); #endif //RD_MULTIPLE_DRIVE + + /** + * Function to check if the entry is email entry or not + * returns ETrue if email + */ + TBool IsEmailEntryL(TMsvEntry entry); + + /** + * This will return true if there is any third party mailbox. + */ + TBool IsThirdPartyMailBox(); protected: // Functions from base classes @@ -182,12 +193,15 @@ TFileName iTargetPath; TBool iMemoryInUse; TBool iNewMailIndicator; + //Variable added to know if drive is changed + TBool iChangeDrive; friend class CMceMoveProgress; #ifdef RD_MESSAGING_GENERAL_SETTINGS_RENOVATION RConeResourceLoader iResources; #endif // RD_MESSAGING_GENERAL_SETTINGS_RENOVATION MMceSettingsAccountManager* iAccountManager; - TInt iTransferError; + TInt iTransferError; + TBool iIsThirdPartyMail; }; #endif // MCESETTINGSGENERALSETTINGSDIALOG_H diff -r 1324afda5dee -r e9eae96aa117 messagingappbase/mcesettings/src/MceSettingsGeneralSettingsDialog.cpp --- a/messagingappbase/mcesettings/src/MceSettingsGeneralSettingsDialog.cpp Fri Jan 22 09:42:17 2010 +0200 +++ b/messagingappbase/mcesettings/src/MceSettingsGeneralSettingsDialog.cpp Tue Jan 26 11:55:08 2010 +0200 @@ -59,7 +59,10 @@ #include #include - +#include +#include +#include +#include // CONSTANTS #define KMceApplicationUidValue 0x100058C5 @@ -78,6 +81,8 @@ const TInt KMceListTypeTwoRow = 0; const TInt KMceListTypeOneRow = 1; +#define KUidMsgTypeCmailMtmVal 0x2001F406 + #ifdef _DEBUG _LIT( KPanicText, "MceSettings" ); const TInt KCRepositorySettingFailure = 1; @@ -95,6 +100,9 @@ EMceGeneralSettingsInboxListType, EMceGeneralSettingsMailListType }; +// These constants are added to handle "show e-mails in groups", when R_MCE_GENERAL_SETTINGS_ITEMS is used for MCESETTINGS. +const TInt MceGeneralSettingsInboxListType = 2; +const TInt MceGeneralSettingsMailListType = 3; #ifdef RD_MULTIPLE_DRIVE const TInt KSpaceDelimiter=' '; #endif //RD_MULTIPLE_DRIVE @@ -131,11 +139,14 @@ #ifdef RD_MESSAGING_GENERAL_SETTINGS_RENOVATION CMceSettingsTitlePaneHandlerDialog(), iSession( aSession ), iObserver( aObserver ), - iResources( *CCoeEnv::Static() ), iAccountManager( aManager ) + iResources( *CCoeEnv::Static() ), iAccountManager( aManager ), #else CMceSettingsTitlePaneHandlerDialog(), - iSession( aSession ), iObserver(aObserver ), iAccountManager( aManager ) + iSession( aSession ), iObserver(aObserver ), iAccountManager( aManager ), #endif + iChangeDrive(EFalse), + iIsThirdPartyMail( EFalse ) + { } @@ -150,6 +161,7 @@ iResources.OpenL( fileName ); #endif CMceSettingsTitlePaneHandlerDialog::ConstructL( aResource ); + iIsThirdPartyMail = IsThirdPartyMailBox(); } // ---------------------------------------------------- @@ -192,13 +204,33 @@ setValue = ( *iMceSettingsArray )[EMceGeneralSettingsSentItemsCount].iCurrentNumber; #endif - ret = repository->Set( KMuiuInboxMessageListType, - ( *iMceSettingsArray )[EMceGeneralSettingsInboxListType].iCurrentNumber ); + if ( iMemoryInUse ) + { + ret = repository->Set( KMuiuInboxMessageListType, + ( *iMceSettingsArray )[EMceGeneralSettingsInboxListType].iCurrentNumber ); + } + else + { + ret = repository->Set( KMuiuInboxMessageListType, + ( *iMceSettingsArray )[MceGeneralSettingsInboxListType].iCurrentNumber ); + } __ASSERT_DEBUG( !ret, User::Panic(KPanicText,KCRepositorySettingFailure) ); - ret = repository->Set( KMuiuMailMessageListType, - ( *iMceSettingsArray )[EMceGeneralSettingsMailListType].iCurrentNumber ); - __ASSERT_DEBUG( !ret, User::Panic(KPanicText,KCRepositorySettingFailure) ); + if ( iIsThirdPartyMail ) + { + if ( iMemoryInUse ) + { + ret = repository->Set( KMuiuMailMessageListType, + ( *iMceSettingsArray )[EMceGeneralSettingsMailListType].iCurrentNumber ); + } + else + { + ret = repository->Set( KMuiuMailMessageListType, + ( *iMceSettingsArray )[MceGeneralSettingsMailListType].iCurrentNumber ); + } + __ASSERT_DEBUG( !ret, User::Panic(KPanicText,KCRepositorySettingFailure) ); + } + } CleanupStack::Pop( repository ); delete repository; @@ -369,16 +401,46 @@ { i = KMceListTypeTwoRow; } - ( *iMceSettingsArray )[EMceGeneralSettingsInboxListType].iCurrentNumber = - i ? KMceListTypeOneRow : KMceListTypeTwoRow; - - // Get one/two row list type selection - if ( repository->Get( KMuiuMailMessageListType, i ) != KErrNone ) + if ( iMemoryInUse ) + { + ( *iMceSettingsArray )[EMceGeneralSettingsInboxListType].iCurrentNumber = + i ? KMceListTypeOneRow : KMceListTypeTwoRow; + } + else + { + ( *iMceSettingsArray )[MceGeneralSettingsInboxListType].iCurrentNumber = + i ? KMceListTypeOneRow : KMceListTypeTwoRow; + } + + if ( iIsThirdPartyMail ) { - i = KMceListTypeOneRow; + // Get one/two row list type selection + if ( repository->Get( KMuiuMailMessageListType, i ) != KErrNone ) + { + i = KMceListTypeOneRow; + } + if ( iMemoryInUse ) + { + ( *iMceSettingsArray )[EMceGeneralSettingsMailListType].iCurrentNumber = + i ? KMceListTypeOneRow : KMceListTypeTwoRow; + } + else + { + ( *iMceSettingsArray )[MceGeneralSettingsMailListType].iCurrentNumber = + i ? KMceListTypeOneRow : KMceListTypeTwoRow; + } } - ( *iMceSettingsArray )[EMceGeneralSettingsMailListType].iCurrentNumber = - i ? KMceListTypeOneRow : KMceListTypeTwoRow; + else + { + if ( iMemoryInUse ) + { + iMceSettingsArray->Delete(EMceGeneralSettingsMailListType); + } + else + { + iMceSettingsArray->Delete(MceGeneralSettingsMailListType); + } + } } if ( iMemoryInUse ) @@ -650,6 +712,11 @@ // User does not want to close open messages return; } + + if(iChangeDrive) + { + return; + } RFs& fs=iEikonEnv->FsSession(); @@ -739,7 +806,7 @@ { return; } - + CAknInputBlock* comAbs=CAknInputBlock::NewLC(); // change message store CMuiuOperationWait* waiter=CMuiuOperationWait::NewLC(); @@ -747,6 +814,7 @@ CMsvProgressReporterOperation::NewL( *iSession, waiter->iStatus ); CleanupStack::PushL( reportOp ); + reportOp->SetProgressVisibilityDelay(EFalse); HBufC* text = StringLoader::LoadLC( R_MCE_SETTINGS_SWITCHING_MESSAGE_STORE, iEikonEnv ); reportOp->SetTitleL( *text ); @@ -754,14 +822,15 @@ reportOp->SetCanCancelL( EFalse); CleanupStack::PopAndDestroy( text ); - + iChangeDrive = ETrue; CMsvOperation* changeOp=iSession->ChangeDriveL( selectedDrive, reportOp->RequestStatus() ); reportOp->SetOperationL( changeOp ); waiter->Start(); - + iChangeDrive = EFalse; CleanupStack::PopAndDestroy( reportOp ); CleanupStack::PopAndDestroy( waiter ); + CleanupStack::PopAndDestroy( comAbs ); //memory has been changed UpdateMemorySelectionL(); @@ -828,13 +897,14 @@ { User::Leave( KErrDiskFull ); } - + CAknInputBlock* comAbs=CAknInputBlock::NewLC(); CMuiuOperationWait* waiter=CMuiuOperationWait::NewLC(); CMsvProgressReporterOperation* reportOp = CMsvProgressReporterOperation::NewL( *iSession, waiter->iStatus ); CleanupStack::PushL( reportOp ); + reportOp->SetProgressVisibilityDelay(EFalse); HBufC* text = StringLoader::LoadLC( R_MCE_SETTINGS_SWITCHING_MESSAGE_STORE, iEikonEnv ); reportOp->SetTitleL( *text ); @@ -842,15 +912,16 @@ reportOp->SetCanCancelL( EFalse); CleanupStack::PopAndDestroy( text ); - + iChangeDrive = ETrue; CMsvOperation* changeOp=iSession->ChangeDriveL( selectedDrive, reportOp->RequestStatus() ); reportOp->SetOperationL( changeOp ); waiter->Start(); - + iChangeDrive = EFalse; CleanupStack::PopAndDestroy( reportOp ); CleanupStack::PopAndDestroy( waiter ); + CleanupStack::PopAndDestroy( comAbs ); UpdateMemorySelectionL(); } } @@ -1010,4 +1081,60 @@ } } #endif //RD_MULTIPLE_DRIVE + +// --------------------------------------------------------- +// CMceGeneralSettingsDialog::IsThirdPartyMailBox() +// +// --------------------------------------------------------- +// +TBool CMceGeneralSettingsDialog::IsThirdPartyMailBox() + { + CMsvEntry* entry = iSession->GetEntryL( KMsvRootIndexEntryId ); + CleanupStack::PushL( entry ); + TInt cnt = entry->Count(); + TBool isThirdPartyMail = EFalse; + for ( TInt i=0; i < cnt ; i++) + { + if ( (*entry)[i].iType.iUid == KUidMsvServiceEntryValue && + (*entry)[i].Id() != KMsvLocalServiceIndexEntryIdValue && + ( !( (*entry)[i].iMtm.iUid == KUidMsgTypeCmailMtmVal || + (*entry)[i].iMtm == KSenduiMtmImap4Uid || + (*entry)[i].iMtm == KSenduiMtmPop3Uid || + (*entry)[i].iMtm == KSenduiMtmSmtpUid )) && + IsEmailEntryL((*entry)[i])) + { + isThirdPartyMail = ETrue; + break; + } + } + CleanupStack::PopAndDestroy( entry ); + return isThirdPartyMail; + } + +// --------------------------------------------------------- +// CMceGeneralSettingsDialog::IsEmailEntryL +// +// --------------------------------------------------------- +// +TBool CMceGeneralSettingsDialog::IsEmailEntryL(TMsvEntry tentry) + { + TBool IsEmail = EFalse; + + CMtmUiDataRegistry* uiRegistry = + CMtmUiDataRegistry::NewL( *iSession ); + CleanupStack::PushL(uiRegistry); + if ( uiRegistry->IsPresent( tentry.iMtm ) && + uiRegistry->IsPresent( KUidMsgTypePOP3 ) ) + { + TUid mailMTMTechType = + uiRegistry->TechnologyTypeUid( KUidMsgTypePOP3 ); + if( uiRegistry->TechnologyTypeUid( tentry.iMtm ) == mailMTMTechType ) + { + IsEmail = ETrue; + } + } + CleanupStack::PopAndDestroy( uiRegistry ); + + return IsEmail; + } // End of File diff -r 1324afda5dee -r e9eae96aa117 messagingappbase/obexmtms/TObexMTM/User Manual.doc Binary file messagingappbase/obexmtms/TObexMTM/User Manual.doc has changed diff -r 1324afda5dee -r e9eae96aa117 messagingappbase/obexmtms/TObexMTM/obexstub/OBEX Messaging Test Stub - Description.doc Binary file messagingappbase/obexmtms/TObexMTM/obexstub/OBEX Messaging Test Stub - Description.doc has changed diff -r 1324afda5dee -r e9eae96aa117 messagingappbase/smilparser/Documents/SGL.GT0121.108_Rev1.0_Generic XML Parser Design.doc Binary file messagingappbase/smilparser/Documents/SGL.GT0121.108_Rev1.0_Generic XML Parser Design.doc has changed diff -r 1324afda5dee -r e9eae96aa117 messagingappbase/smilparser/Documents/SGL.GT0149.83_Rev1.0_How to use the GMXML component and SMIL DTD.doc Binary file messagingappbase/smilparser/Documents/SGL.GT0149.83_Rev1.0_How to use the GMXML component and SMIL DTD.doc has changed diff -r 1324afda5dee -r e9eae96aa117 messagingappbase/smilparser/Documents/SGL.GT147.063_Rev1.0_GMXML API.doc Binary file messagingappbase/smilparser/Documents/SGL.GT147.063_Rev1.0_GMXML API.doc has changed diff -r 1324afda5dee -r e9eae96aa117 mobilemessaging/audiomsg/data/audiomessage.rss --- a/mobilemessaging/audiomsg/data/audiomessage.rss Fri Jan 22 09:42:17 2010 +0200 +++ b/mobilemessaging/audiomsg/data/audiomessage.rss Tue Jan 26 11:55:08 2010 +0200 @@ -405,7 +405,7 @@ RESOURCE AVKON_BUTTON_STATE_EXTENSION r_amsviewer_delete_button_state_extension { bmbSkinIdMajor= EAknsMajorGeneric; - bmbSkinIdMinor= EAknsMinorGenericQgnIndiTbMsgDelete; + bmbSkinIdMinor= EAknsMinorGenericQgnIndiMgTbDelete; } RESOURCE AVKON_BUTTON_STATE_EXTENSION r_amsviewer_send_button_state_extension