--- a/email/imum/Mtms/Src/SmtpMtmUiData.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/email/imum/Mtms/Src/SmtpMtmUiData.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -135,13 +135,10 @@
//
// --- Support depends on variation ---
case KUidMsvMtmQuerySupportEditor:
- aResponse = iFFEmailVariation ? EFalse : ETrue;
- // FALLTHROUGH
- case KUidMtmQueryCanCreateNewMsgValue:
- return iFFEmailVariation ? KErrNotSupported : KErrNone;
-
- //
+ aResponse = ETrue;
+ break;
// --- Supported non-valued capabilities ---
+ case KUidMtmQueryCanCreateNewMsgValue:
case KUidMtmQuerySupportAttachmentsValue:
case KUidMtmQueryCanSendMsgValue:
case KUidMsvMtmQueryMessageInfo:
--- a/email/imum/Utils/Inc/ImumConstants.h Thu Jan 07 12:45:05 2010 +0200
+++ b/email/imum/Utils/Inc/ImumConstants.h Mon Jan 18 20:16:40 2010 +0200
@@ -48,8 +48,8 @@
const TInt32 KImumMboxDefaultInboxUpdateLimit = 50;
const TInt32 KImumMboxDefaultFolderUpdateLimit = 30;
const TInt KImumMboxDefaultMailDeletion = TImumDaSettings::EValueDeletionAlwaysAsk;
-const TInt KImumMboxDefaultAutoNotifications = TImumDaSettings::EValueNotificationsOff;
-const TInt KImumMboxDefaultAutoRetrieval = TImumDaSettings::EValueAutoHomeNetwork;
+const TInt KImumMboxDefaultAutoNotifications = TImumDaSettings::EValueNotificationsHome;
+const TInt KImumMboxDefaultAutoRetrieval = TImumDaSettings::EValueAutoOff;
const TInt KImumMboxDefaultAutoRetrievalDays = TImumDaSettings::EFlagSetAllDays;
const TInt64 KImumMboxDefaultAutoRetrievalStartHour = 0;
const TInt64 KImumMboxDefaultAutoRetrievalEndHour = 0;
Binary file email/imum/conf/imum.confml has changed
--- a/email/imum/help/inc/mbxs.hlp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/email/imum/help/inc/mbxs.hlp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -1,10 +1,23 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
//
-// mbxs.hlp.hrh
-//
-
-//
-// File generated by CSXHelp Utilities on 2009-04-17
-//
+// mbxs.hlp.hrh generated by CSXHelp Utilities.
+//
#ifndef __MBXS_HLP_HRH__
#define __MBXS_HLP_HRH__
@@ -14,20 +27,14 @@
_LIT(KMBXS_HLP_SETT_MBX_IN, "MBXS_HLP_SETT_MBX_IN"); //
_LIT(KMBXS_HLP_SETT_MBX_IN_OUT, "MBXS_HLP_SETT_MBX_IN_OUT"); //
_LIT(KMBXS_HLP_SETT_MBX_OUT, "MBXS_HLP_SETT_MBX_OUT"); //
-_LIT(KMCE_HLP_MAILBOX_OFFLINE, "MCE_HLP_MAILBOX_OFFLINE"); //
-_LIT(KMCE_HLP_MAILBOX_ONLINE, "MCE_HLP_MAILBOX_ONLINE"); //
-_LIT(KMCE_HLP_MESS_SYNC, "MCE_HLP_MESS_SYNC"); //
-_LIT(KMCE_HLP_MESS_SYNCI, "MCE_HLP_MESS_SYNCI"); //
-_LIT(KMCE_HLP_MESS_SYNCO, "MCE_HLP_MESS_SYNCO"); //
-_LIT(KMCE_HLP_MESS_SYNCS, "MCE_HLP_MESS_SYNCS"); //
_LIT(KMCE_HLP_SETTINGS_EMAIL, "MCE_HLP_SETTINGS_EMAIL"); //
-_LIT(KMCE_HLP_SETTINGS_SYNCMAIL, "MCE_HLP_SETTINGS_SYNCMAIL"); //
_LIT(KMCE_HLP_SETT_EMAILMAIN, "MCE_HLP_SETT_EMAILMAIN"); //
_LIT(KMCE_HLP_SETT_MAILBLIST, "MCE_HLP_SETT_MAILBLIST"); //
_LIT(KMCE_HLP_SETT_MAILFOLDER_UPD, "MCE_HLP_SETT_MAILFOLDER_UPD"); //
_LIT(KMCE_HLP_SETT_MAIL_ONLI, "MCE_HLP_SETT_MAIL_ONLI"); //
_LIT(KMCE_HLP_SETT_MAIL_USER, "MCE_HLP_SETT_MAIL_USER"); //
-_LIT(KMCE_HLP_SETT_SMAILBLIST, "MCE_HLP_SETT_SMAILBLIST"); //
_LIT(KMCE_HLP_SETT_SMAILBOX, "MCE_HLP_SETT_SMAILBOX"); //
+_LIT(KMCE_HLP_MAILBOX_OFFLINE, "MCE_HLP_MAILBOX_OFFLINE"); //
+_LIT(KMCE_HLP_MAILBOX_ONLINE, "MCE_HLP_MAILBOX_ONLINE"); //
#endif
\ No newline at end of file
--- a/messagingappbase/mce/group/mce.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/group/mce.rss Mon Jan 18 20:16:40 2010 +0200
@@ -481,12 +481,14 @@
MENU_ITEM
{
command = EMceCmdMarkAsReadMsgs;
- txt = qtn_mce_rm_mark_read_messages;
+ txt = qtn_mce_rm_mark_read_messages;
+ flags = EEikMenuItemSpecific;
},
MENU_ITEM
{
command = EMceCmdMarkAsUnreadMsgs;
txt = qtn_mce_rm_mark_unread_messages;
+ flags = EEikMenuItemSpecific;
},
MENU_ITEM
{
--- a/messagingappbase/mce/help/inc/mce.hlp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/help/inc/mce.hlp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -2,9 +2,9 @@
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Symbian Foundation License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
-* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
--- a/messagingappbase/mce/inc/MceExtraItems.rh Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/inc/MceExtraItems.rh Mon Jan 18 20:16:40 2010 +0200
@@ -37,6 +37,7 @@
WORD index = -1;
WORD icon_index = -1;
LONG app_icon_index = -1; // if set, used to find application icon needed if wanted to skin this
+ LTEXT secondary_text = "";
}
// End of file
--- a/messagingappbase/mce/inc/MceListItem.h Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/inc/MceListItem.h Mon Jan 18 20:16:40 2010 +0200
@@ -41,6 +41,7 @@
TMsvId iMsvId;
TMcePrintableText iPrintableText;
TInt iIconIndex;
+ TMcePrintableText iSecondaryText;
#ifdef RD_MSG_NAVIPANE_IMPROVEMENT
TInt iMessageCount;
#endif // RD_MSG_NAVIPANE_IMPROVEMENT
@@ -55,6 +56,7 @@
TInt iApplicationUid;
TMcePrintableText iPrintableText;
TMcePrintableText iCommandText;
+ TMcePrintableText iSecondaryText;
};
typedef CArrayFixFlat<TMceMainViewExtraItem> CMceMainViewExtraItemArray;
--- a/messagingappbase/mce/src/MceIdleMtmLoader.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/src/MceIdleMtmLoader.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -208,6 +208,11 @@
canSend.iUid = KUidMtmQueryCanCreateNewMsgValue;
canSendResponse = uiData->QueryCapability( canSend, response );
}
+
+ if(cMailVal && aMtmType == KSenduiMtmSmtpUid)
+ {
+ canSendResponse = KErrNotSupported;
+ }
TBool foundPopup = EFalse;
TBool foundSubmenu = EFalse;
--- a/messagingappbase/mce/src/MceMainViewListItemArray.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/src/MceMainViewListItemArray.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -366,7 +366,7 @@
TUid aApplicationUid )
{
TMcePrintableText tempText = aNewItem.iPrintableText; // let's save string
-
+ TMcePrintableText secondarytxt = aNewItem.iSecondaryText;
aNewItem.iExtraItem = ETrue;
// make sure it will not be mixed with items in msgs
TMceBitmapListItem bitmapItem;
@@ -403,6 +403,8 @@
aNewItem.iPrintableText.AppendNum( index );
aNewItem.iPrintableText.Append( KColumnListSeparator );
aNewItem.iPrintableText.Append( tempText );
+ aNewItem.iPrintableText.Append( KColumnListSeparator );
+ aNewItem.iPrintableText.Append( secondarytxt );
InsertL( aIndex, aNewItem );
}
@@ -1086,7 +1088,18 @@
TUid applicationUid;
applicationUid.iUid = reader.ReadUint32();
extraItem.iApplicationUid = applicationUid.iUid;
-
+ // secondary text
+ txt = reader.ReadHBufCL(); //secondary text
+ if(txt)
+ {
+ extraItem.iSecondaryText.Copy( *txt );
+ delete txt;
+ txt = NULL;
+ }
+ else
+ {
+ extraItem.iSecondaryText.Copy(KNullDesC());
+ }
iExtraItemsArray->AppendL( extraItem );
extraItem.iCommandId++;
}
@@ -1130,6 +1143,7 @@
tempItem.iExtraItem = ETrue;
tempItem.iMsvId = extraItem.iCommandId;
tempItem.iPrintableText.Copy( extraItem.iPrintableText );
+ tempItem.iSecondaryText.Copy(extraItem.iSecondaryText);
TUid appUid;
appUid.iUid = extraItem.iApplicationUid;
AddExtraItemWithIconL( tempItem, Count(), extraItem.iIconIndex, appUid );
--- a/messagingappbase/mce/src/MceMainViewListView.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/src/MceMainViewListView.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -30,7 +30,7 @@
#include <eikmenub.h>
#include <msvids.h>
#include <featmgr.h>
-#include <SchemeHandler.h>
+#include <schemehandler.h>
#include <ConeResLoader.h>
#include <apgcli.h>
#include <msvstd.hrh>
@@ -809,8 +809,11 @@
iMsgListContainer->ListBox()->DrawDeferred();
}
}
-
- CheckMainViewBitmapL( changedFolderId );
+ // Coverty fix, Forward NULL
+ if ( iMsgListContainer )
+ {
+ CheckMainViewBitmapL( changedFolderId );
+ }
break;
}
--- a/messagingappbase/mce/src/MceMessageListView.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/src/MceMessageListView.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -228,6 +228,15 @@
// Reset the sort order
iFolderItemArray->Reset();
}
+ if ( iMsgListContainer &&
+ iCurrentListType != GetFolderListBoxType())
+ {
+ ListboxTypeChangedL();
+ }
+ else
+ {
+ CreateListboxL();
+ }
if ( iMsgListContainer )
{
iMsgListContainer->SetSortTypeL( iSortOrder, iOrdering );
@@ -276,15 +285,6 @@
iMceUi->SetDontExitOnNextOperationComplete();
}
- if ( iMsgListContainer &&
- iCurrentListType != GetFolderListBoxType())
- {
- ListboxTypeChangedL();
- }
- else
- {
- CreateListboxL();
- }
if ( iMsgListContainer && aPrevViewId == TDRVIEWID )
--- a/messagingappbase/mce/src/mceui.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mce/src/mceui.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -713,6 +713,17 @@
iUiRegistry=CMtmUiDataRegistry::NewL(*iSession);
+
+ iMceMainView->HandleMsgServerStartupL();
+
+ CMceDeliveryReportView* view3 = CMceDeliveryReportView::NewL( *iSessionHolder );
+ CleanupStack::PushL( view3 );
+ AddViewL( view3 ); // transfer ownership to CAknAppUi
+ CleanupStack::Pop( view3 );
+
+ iMceDeliveryView = view3;
+
+
CMceMessageListView* mceListView = CMceMessageListView::NewL(
iSession,
KMsvLocalServiceIndexEntryId,
@@ -725,8 +736,8 @@
iMceListView = mceListView;
- // should be called after creation of iUiRegistry
- iMceMainView->HandleMsgServerStartupL();
+
+
iAudioMsgEnabled = FeatureManager::FeatureSupported( KFeatureIdAudioMessaging ); // CR : 401-1806
iPostcardEnabled = FeatureManager::FeatureSupported( KFeatureIdMmsPostcard ) ; // CR : 401-1806
@@ -745,12 +756,7 @@
iMceListView = mceListView;*/
iMceListView->HandleMsgServerStartupL();
- CMceDeliveryReportView* view3 = CMceDeliveryReportView::NewL( *iSessionHolder );
- CleanupStack::PushL( view3 );
- AddViewL( view3 ); // transfer ownership to CAknAppUi
- CleanupStack::Pop( view3 );
-
- iMceDeliveryView = view3;
+
iMceMainView->ListContainer()->ListItems()->SetAlwaysOnline( iAlwaysOnline );
@@ -4100,6 +4106,7 @@
else if ( functionInfo.iFuncId == KMtmUiFunctionDeliveryStatus )
{
+ data.iFlags |= EEikMenuItemSpecific;
aMenuPane.AddMenuItemL( data, EMceCmdUndelete );
}
--- a/messagingappbase/mceextraitems/group/ExtraIconlist_Scalable.txt Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/mceextraitems/group/ExtraIconlist_Scalable.txt Mon Jan 18 20:16:40 2010 +0200
@@ -1,3 +1,4 @@
/c8,8 qgn_menu_mce.svg
/c8,8 qgn_menu_smsvo.svg
/c8,8 qgn_menu_wml.svg
+/c8,8 qgn_prop_im_ibox.svg
--- a/messagingappbase/msgeditor/appuisrc/MsgCheckNames.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/msgeditor/appuisrc/MsgCheckNames.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -242,8 +242,12 @@
{
PerformAdvancedMatchL( aText, fieldTypes );
}
-
- TInt contactAmount = iFoundContacts->Count();
+ // Coverty fix, Forward NULL , http://ousrv057/cov.cgi?cid=35690
+ TInt contactAmount;
+ if(iFoundContacts)
+ {
+ contactAmount = iFoundContacts->Count();
+ }
// Offer the user a list of matching contacts
if ( contactAmount > 1 )
--- a/messagingappbase/msgeditor/appuisrc/MsgEditorAppUi.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/msgeditor/appuisrc/MsgEditorAppUi.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -626,8 +626,6 @@
// to by-pass scanner warning about member variable being stored into
// cleanup stack blocker is first stored into temporary variable. Storing
// is allowed here as it is not owned.
- CAknInputBlock* blocker = CAknInputBlock::NewCancelHandlerLC( this );
- iInputBlocker = blocker;
CMuiuOperationWait* wait =
CMuiuOperationWait::NewLC( EActivePriorityWsEvents + 10 );
@@ -638,8 +636,7 @@
wait->Start();
- CleanupStack::PopAndDestroy( 3, iInputBlocker ); // absorber, wait, oper
- iInputBlocker = NULL;
+ CleanupStack::PopAndDestroy( 2 ); // absorber, wait, oper
}
// ---------------------------------------------------------
--- a/messagingappbase/msgeditor/appuisrc/MsgNaviPaneControl.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/msgeditor/appuisrc/MsgNaviPaneControl.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -248,7 +248,8 @@
{
iPreviouslyFocusedControl = leftArrowIndicator;
}
- else if ( iPreviouslyFocusedControl == leftArrowIndicator )
+ // Coverty fix , Forward NULL, http://ousrv057/cov.cgi?cid=35876
+ else if ( iObserver && iPreviouslyFocusedControl == leftArrowIndicator )
{
iObserver->HandleNavigationControlEventL(
MMsgNaviPaneControlObserver::EMsgNaviLeftArrowPressed );
@@ -370,11 +371,20 @@
{
TAknLayoutRect leftArrowTouchRect;
leftArrowTouchRect.LayoutRect( Rect(), AknLayoutScalable_Apps::aid_size_touch_mv_arrow_left(iVarientId) );
- iLeftArrowTouchRect = leftArrowTouchRect.Rect();
TAknLayoutRect rightArrowTouchRect;
rightArrowTouchRect.LayoutRect( Rect(), AknLayoutScalable_Apps::aid_size_touch_mv_arrow_right(iVarientId) );
- iRightArrowTouchRect = rightArrowTouchRect.Rect();
+ if ( AknLayoutUtils::LayoutMirrored() )
+ {
+ iLeftArrowTouchRect=rightArrowTouchRect.Rect();
+ iRightArrowTouchRect= leftArrowTouchRect.Rect();
+ }
+ else
+ {
+ iLeftArrowTouchRect=leftArrowTouchRect.Rect();
+ iRightArrowTouchRect= rightArrowTouchRect.Rect();
+ }
+
}
}
--- a/messagingappbase/ncnlist/group/bld.inf Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/ncnlist/group/bld.inf Mon Jan 18 20:16:40 2010 +0200
@@ -33,7 +33,7 @@
../conf/s60ncnlist.confml APP_LAYER_CONFML(s60ncnlist.confml)
../conf/s60ncnlist_101F87A8.crml APP_LAYER_CRML(s60ncnlist_101F87A8.crml)
../sis/ncnlist_stub.sis /epoc32/data/z/system/install/ncnlist_stub.sis
-../loc/ncn.loc APP_LAYER_LOC_EXPORT_PATH(Ncn.loc)
+../loc/ncn.loc APP_LAYER_LOC_EXPORT_PATH(ncn.loc)
PRJ_MMPFILES
../group/Ncnlist.mmp
--- a/messagingappbase/schemeplugin/inc/BaseHandler.h Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/schemeplugin/inc/BaseHandler.h Mon Jan 18 20:16:40 2010 +0200
@@ -23,7 +23,7 @@
// INCLUDES
-#include <SchemeHandler.h>
+#include <schemehandler.h>
#include <e32base.h>
// FORWARD DECLARATION
--- a/messagingappbase/smartmessaging/bva/src/BvaContainer.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/bva/src/BvaContainer.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -181,7 +181,7 @@
{
return iBioControl;
}
- else
+ else if( iScrollBar )
{
return iScrollBar->ComponentControl( aIndex );
}
--- a/messagingappbase/smartmessaging/ringbc/src/RingingToneBioControl.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/ringbc/src/RingingToneBioControl.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -71,6 +71,7 @@
const TInt KShowNotes = 1;
const TInt KFrameExpansion = 10;
+const TInt KMaxVolumeLevel = 10;
// MODULE DATA STRUCTURES
@@ -578,7 +579,8 @@
{
TInt ringingVol;
TInt ringingType;
-
+ TInt aMaxVolume;
+ aMaxVolume = iAudioControl->MaxVolume();
CRepository* repository = CRepository::NewLC( KCRUidProfileEngine );
User::LeaveIfError( repository->Get( KProEngActiveRingingVolume, ringingVol ));
@@ -595,8 +597,9 @@
}
else
{
+ TInt result( aMaxVolume * ringingVol / KMaxVolumeLevel );
RDebug::Print(_L("Ringing volume : %d"), ringingVol);
- iAudioControl->SetVolume(ringingVol);
+ iAudioControl->SetVolume(result);
}
#endif
}
--- a/messagingappbase/smartmessaging/vcalbc/src/VCalendarBioControl.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/vcalbc/src/VCalendarBioControl.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -44,7 +44,7 @@
#include <ecom/ecom.h>
#include <AknDef.h>
#include <AiwServiceHandler.h> // CAiwServiceHandler
-#include <smsviewer.rsg>
+#include <SmsViewer.rsg>
#include <bva.rsg>
#include <AiwCommon.hrh>
#include <data_caging_path_literals.hrh>
--- a/messagingappbase/smartmessaging/vcardbc/src/vcardvpbutil.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/vcardbc/src/vcardvpbutil.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -46,9 +46,9 @@
#include <MVPbkContactFieldDateTimeData.h>
#include <CVPbkFieldTypeSelector.h>
#include <CVPbkContactStoreUri.h>
-#include <stringloader.h> // StringLoader
-#include <AknNoteWrappers.h>
-#include <pbk2commonui.rsg>
+#include <StringLoader.h> // StringLoader
+#include <aknnotewrappers.h>
+#include <Pbk2CommonUi.rsg>
#include "VCardLog.h"
#include <s32file.h> // for RFileReadStream
#include <barsread.h> // for ResourceReader
--- a/messagingappbase/smartmessaging/wmlbc/inc/WmlBMSubItem30.h Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/wmlbc/inc/WmlBMSubItem30.h Mon Jan 18 20:16:40 2010 +0200
@@ -25,7 +25,7 @@
// INCLUDES
#include "WmlSubItemBase.h"
-#include <FavouritesDb.h>
+#include <favouritesdb.h>
// FORWARD DECLARATIONS
--- a/messagingappbase/smartmessaging/wmlbc/inc/WmlBMUtils30.h Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/wmlbc/inc/WmlBMUtils30.h Mon Jan 18 20:16:40 2010 +0200
@@ -23,7 +23,7 @@
#define WMLBMUTILS_H
// INCLUDES
-#include <FavouritesDb.h>
+#include <favouritesdb.h>
// DATA TYPES
--- a/messagingappbase/smartmessaging/wmlbc/src/WmlBMSubItem30.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/wmlbc/src/WmlBMSubItem30.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -27,7 +27,7 @@
#include "WmlBioControl.pan"
#include "WmlLog.h"
-#include <FavouritesItemList.h>
+#include <favouritesitemlist.h>
#include <WMLBC.rsg> // resource identifiers
#include <StringLoader.h> // StringLoader
#include <msgnamevalue.h> // CMsgNameValue
--- a/messagingappbase/smartmessaging/wmlbc/src/WmlBMUtils30.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smartmessaging/wmlbc/src/WmlBMUtils30.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -21,7 +21,7 @@
// INCLUDE FILES
#include "WmlBMUtils30.h"
-#include <FavouritesItemList.h> // CFavouritesItemList
+#include <favouritesitemlist.h> // CFavouritesItemList
// ================= MEMBER FUNCTIONS =======================
--- a/messagingappbase/smilengine/engine/core/smiltimelist.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/messagingappbase/smilengine/engine/core/smiltimelist.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -179,7 +179,7 @@
{
iFirst = aRem->Next();
}
- else
+ else if( aPrev )
{
aPrev->SetNext( aRem->Next() );
}
--- a/mmsengine/mmsmessage/src/mmsheaders.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mmsengine/mmsmessage/src/mmsheaders.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -351,14 +351,16 @@
stream.AssignLC( aStore, KUidMmsApplicationInfoStream ); // pushes 'stream' to the stack
length = ApplicId().Length();
stream.WriteInt32L( length );
- if ( length > 0 )
+ // Coverty fix, Forward NULL , http://ousrv057/cov.cgi?cid=35556
+ if ( length > 0 && iApplicationId )
{
stream << iApplicationId->Des();
}
length = ReplyApplicId().Length();
stream.WriteInt32L( length );
- if ( length > 0 )
+ // Coverty fix, Forward NULL , http://ousrv057/cov.cgi?cid=35559
+ if ( length > 0 && iReplyToApplicationId )
{
stream << iReplyToApplicationId->Des();
}
@@ -387,14 +389,16 @@
length = RecommendedRetrievalModeText().Length();
stream.WriteInt32L( length );
- if ( length > 0 )
+ // Coverty fix, Forward NULL , http://ousrv057/cov.cgi?cid=35557
+ if ( length > 0 && iRecommendedRetrievalModeText )
{
stream << iRecommendedRetrievalModeText->Des();
}
length = ReplaceCancelId().Length();
stream.WriteInt32L( length );
- if ( length > 0 )
+ // Coverty fix, Forward NULL , http://ousrv057/cov.cgi?cid=35558
+ if ( length > 0 && iReplaceCancelId )
{
stream << iReplaceCancelId->Des();
}
--- a/mmsengine/mmsmessage/src/mmsownnumber.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mmsengine/mmsmessage/src/mmsownnumber.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -521,9 +521,13 @@
{
iMatch = EFalse;
iState = EMmsOwnNumberSearching;
- iOperation = iContactManager->RetrieveContactL(
+ // Coverty fix, Forward NULL
+ if(iResultArray)
+ {
+ iOperation = iContactManager->RetrieveContactL(
iResultArray->At( iContactToMatch ),
*this);
+ }
iStatus = KRequestPending;
SetActive();
}
--- a/mobilemessaging/audiomsg/data/audiomessage.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/audiomsg/data/audiomessage.rss Mon Jan 18 20:16:40 2010 +0200
@@ -30,15 +30,15 @@
#include <avkon.mbg>
#include <audiomessage.mbg>
#include <avkon.loc>
-#include <DRMCommon.loc>
-#include <Messaging.loc>
+#include <drmcommon.loc>
+#include <messaging.loc>
#include <appinfo.rh>
#include <data_caging_paths_strings.hrh>
#include "audiomessage.hrh"
#include <muiu.mbg>
#include <aknsconstants.hrh>
#include <audiomessage.loc>
-#include <VoiceRecorder.loc>
+#include <voicerecorder.loc>
RESOURCE RSS_SIGNATURE { }
RESOURCE TBUF { buf = ""; }
--- a/mobilemessaging/audiomsg/data/audiomessagemtm.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/audiomsg/data/audiomessagemtm.rss Mon Jan 18 20:16:40 2010 +0200
@@ -28,7 +28,7 @@
#include <MtmExtendedCapabilities.hrh>
#include <avkon.loc>
#include <muiusettingsarray.rh>
-#include <Messaging.loc>
+#include <messaging.loc>
#include <audiomessage.loc>
--- a/mobilemessaging/audiomsg/src/audiomessageappui.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/audiomsg/src/audiomessageappui.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -2715,12 +2715,13 @@
}
iWaitDialog->SetCallback( this );
- iWaitDialog->SetTextL( *string );
- iWaitResId = aResourceId;
+ // Coverty fix, Forward NULL , http://ousrv057/cov.cgi?cid=35709
if (string)
{
+ iWaitDialog->SetTextL( *string );
CleanupStack::PopAndDestroy( string );
}
+ iWaitResId = aResourceId;
iWaitDialog->PrepareLC( waitNoteResource );
AMSLOGGER_WRITE( "CAudioMessageAppUi::ShowWaitNoteL <<" );
--- a/mobilemessaging/audiomsg/src/audiomessageprogressdialog.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/audiomsg/src/audiomessageprogressdialog.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -565,7 +565,9 @@
case R_AUDIOMESSAGE_PROGRESS_PAUSED:
tempBuf = iTextPaused;
break;
+ // Coverty fix, Forward NULL; http://ousrv057/cov.cgi?cid=35851
default:
+ tempBuf = iTextPlaying;
break;
}
--- a/mobilemessaging/mmsui/help/inc/mms.hlp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/mmsui/help/inc/mms.hlp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -2,9 +2,9 @@
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Symbian Foundation License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
-* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
--- a/mobilemessaging/mmsui/notmtmsrc/NotMtmUi.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/mmsui/notmtmsrc/NotMtmUi.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -1495,10 +1495,11 @@
if ( dialog && *dialog )
{
delete *dialog;
+ // Coverty fix, Forward NULL http://ousrv057/cov.cgi?cid=36247
+ *dialog = NULL;
+ dialog = NULL;
}
- *dialog = NULL;
- dialog = NULL;
- }
+ }
//--------------------------------
// DecodeProgress
--- a/mobilemessaging/mmsui/viewer/MmsViewer.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/mmsui/viewer/MmsViewer.rss Mon Jan 18 20:16:40 2010 +0200
@@ -40,6 +40,7 @@
#include <avkon.loc>
#include <drmcommon.loc>
#include <messaging.loc>
+#include <unieditor.loc>
#include <appinfo.rh>
#include <data_caging_paths_strings.hrh>
@@ -860,6 +861,16 @@
//----------------------------------------------------
//
RESOURCE TBUF r_mmsviewer_cannot_play_videocall_ongoing { buf = qtn_mms_info_video_call_ongoing_no_media ; }
-
-
+// ---------------------------------------------------------------------------
+// r_mmsviewer_embedded_object_stylus_menu
+// ---------------------------------------------------------------------------
+//
+RESOURCE STYLUS_POPUP_MENU r_mmsviewer_embedded_object_stylus_menu
+ {
+ items =
+ {
+ STYLUS_POPUP_MENU_ITEM { txt = qtn_mms_om_save;
+ command = EMmsViewerSaveObject; }
+ };
+ }
// End of File
--- a/mobilemessaging/mmsui/viewerinc/UniMmsViewerAppUi.h Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/mmsui/viewerinc/UniMmsViewerAppUi.h Mon Jan 18 20:16:40 2010 +0200
@@ -39,6 +39,7 @@
#include <uniobject.h>
#include <unidrminfo.h> // CUniDrmInfo
#include <AknNaviDecoratorObserver.h>
+#include <aknlongtapdetector.h> // for long tap
#include "MmsViewer.hrh" // enumerations
#include "MmsViewerOperation.h"
@@ -88,6 +89,7 @@
class CAknVolumeControl;
class CAknInputBlock;
class CAknToolbar;
+class CAknStylusPopUpMenu;
// CLASS DECLARATION
@@ -109,7 +111,8 @@
public MAknToolbarObserver, //toolbar
#endif
public MCoeControlObserver, // of CAknVolumeControl
- public MUniObjectObserver
+ public MUniObjectObserver,
+ public MAknLongTapDetectorCallBack
{
public: // Constructors and destructor
@@ -567,6 +570,13 @@
* This function handles the situation.
*/
void HandleImageNoRightsInLaunch( );
+ // From MAknLongTapDetectorCallBack
+ /**
+ * @see MAknLongTapDetectorCallBack
+ */
+ void HandleLongTapEventL(
+ const TPoint& aPenEventLocation,
+ const TPoint& aPenEventScreenLocation );
private: // Functions from base classes
@@ -1116,6 +1126,16 @@
TInt iMaxForwardSlideCount;
CAknTitlePane* iTitlePane;
CGulIcon* iAppIcon;
+ // Own: For long tap detecting
+ CAknLongTapDetector* iLongTapDetector;
+
+ // For long tap handling
+ TBool iTapConsumed;
+ /**
+ * Contact image selection stylus popup menu
+ * Own.
+ */
+ CAknStylusPopUpMenu* iEmbeddedObjectStylusPopup;
};
#endif // MMSVIEWERAPPUI_H
--- a/mobilemessaging/mmsui/viewersrc/UniMmsViewerAppUi.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/mmsui/viewersrc/UniMmsViewerAppUi.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -191,6 +191,7 @@
#include <MsgEditorSettingCacheUpdatePlugin.h>
#include <e32property.h>
#include <ctsydomainpskeys.h>
+#include <aknstyluspopupmenu.h>
// CONSTANTS
// following is minimum value for player
@@ -414,6 +415,10 @@
Document( )->PrepareToLaunchL( this );
}
LOGTEXT2(_L16("CMmsViewerAppUi::ConstructL read. iSupportedFeatures 0x%x"), iSupportedFeatures );
+ iLongTapDetector = CAknLongTapDetector::NewL( this );
+ iLongTapDetector->SetTimeDelayBeforeAnimation( KUniLongTapStartDelay );
+ iLongTapDetector->SetLongTapDelay( KUniLongTapTimeDelay );
+ iTapConsumed = EFalse;
}
// ---------------------------------------------------------
@@ -464,6 +469,15 @@
delete iSendReadReportOperation;
delete iIdle;
delete iAppIcon;
+ if(iLongTapDetector)
+ {
+ delete iLongTapDetector;
+ }
+ if(iEmbeddedObjectStylusPopup)
+ {
+ delete iEmbeddedObjectStylusPopup;
+ iEmbeddedObjectStylusPopup = NULL;
+ }
LOGTEXT(_L8("CMmsViewerAppUi::~CMmsViewerAppUi end") );
}
@@ -2804,18 +2818,23 @@
{
TPointerEvent* pointerEvent = static_cast<TPointerEvent*>( aArg2 );
CMsgBaseControl* baseControl = static_cast<CMsgBaseControl*>( aArg1 );
-
+ if(iLongTapDetector)
+ {
+ iLongTapDetector->EnableLongTapAnimation(ETrue);
+ iLongTapDetector->PointerEventL( *pointerEvent );
+ }
if ( pointerEvent
&& pointerEvent->iType == TPointerEvent::EButton1Down )
{
// We are looking for a valid tap (button down and up)
// on a focused object.
- iPointerTarget =
- baseControl && baseControl->IsFocused() ? baseControl : NULL;
+ iPointerTarget = baseControl;
+ iTapConsumed = EFalse;
}
- else if ( pointerEvent
- && pointerEvent->iType == TPointerEvent::EButton1Up )
+ else if ( (!iTapConsumed) && (pointerEvent
+ && pointerEvent->iType == TPointerEvent::EButton1Up) )
{
+ iTapConsumed = ETrue;
if ( baseControl && iPointerTarget == baseControl )
{
switch( iMskId )
@@ -3426,30 +3445,34 @@
__ASSERT_ALWAYS( ObjectByMediaControl( *iAudio ) || ObjectByMediaControl( *iAudio )->MediaInfo( ),
Panic( EMmsViewerNullPointer ) );
CUniObject* obj = ObjectByMediaControl( *iAudio );
- if ( iViewerFlags & EProhibitNonDrmMusic
+ // Coverty fix, Null pointer return, http://ousrv057/cov.cgi?cid=37099
+ if (obj)
+ {
+ if ( iViewerFlags & EProhibitNonDrmMusic
&& !( obj->MediaInfo( )->Protection( ) &
( EFileProtSuperDistributable | EFileProtForwardLocked ) ) )
- {
- // Prepare buffer for aMimeType
- HBufC* mimeBuffer = HBufC::NewLC( obj->MimeType().Length() + KMmsViewerSpace().Length() );
- TPtr mimeBufferPtr = mimeBuffer->Des();
- mimeBufferPtr.Copy( obj->MimeType() );
-
- // FindF() would find "audio/3gpp" in "audio/3gpp2" without
- // the added space.
- mimeBufferPtr.Append( KMmsViewerSpace );
-
- // If result is not KErrNotFound, this MIME-type is indeed on blocked list.
- if ( iProhibitMimeTypeBuffer->FindF( mimeBufferPtr ) >= 0 )
{
- ShowInformationNoteL( R_MMSVIEWER_PLAIN_MUSIC_PROHIBITED );
+ // Prepare buffer for aMimeType
+ HBufC* mimeBuffer = HBufC::NewLC( obj->MimeType().Length() + KMmsViewerSpace().Length() );
+ TPtr mimeBufferPtr = mimeBuffer->Des();
+ mimeBufferPtr.Copy( obj->MimeType() );
+
+ // FindF() would find "audio/3gpp" in "audio/3gpp2" without
+ // the added space.
+ mimeBufferPtr.Append( KMmsViewerSpace );
+
+ // If result is not KErrNotFound, this MIME-type is indeed on blocked list.
+ if ( iProhibitMimeTypeBuffer->FindF( mimeBufferPtr ) >= 0 )
+ {
+ ShowInformationNoteL( R_MMSVIEWER_PLAIN_MUSIC_PROHIBITED );
+ /* Allocated buffer must be destroyed and pop'd !!! */
+ CleanupStack::PopAndDestroy( mimeBuffer );
+ return;
+ }
/* Allocated buffer must be destroyed and pop'd !!! */
CleanupStack::PopAndDestroy( mimeBuffer );
- return;
}
- /* Allocated buffer must be destroyed and pop'd !!! */
- CleanupStack::PopAndDestroy( mimeBuffer );
- }
+ }
if ( IsSilenceL( )
&& !ShowConfirmationQueryL( R_QTN_MMS_OBEY_SILENT_MODE ) )
{
@@ -5450,6 +5473,43 @@
CleanupStack::Pop( bitmapMask );
CleanupStack::Pop( bitmap );
}
-
+// ---------------------------------------------------------
+// CMmsViewerAppUi::HandleLongTapEventL
+// Function for handling the long tap events
+// ---------------------------------------------------------
+//
+void CMmsViewerAppUi::HandleLongTapEventL(const TPoint& aPenEventLocation,
+ const TPoint& aPenEventScreenLocation )
+ {
+ CMsgBaseControl* ctrl = iView->FocusedControl(); // ctrl can be NULL.
+ if ( ctrl &&
+ ( ctrl->ControlId() == EMsgComponentIdAudio ||
+ ctrl->ControlId() == EMsgComponentIdImage ||
+ ctrl->ControlId() == EMsgComponentIdVideo ||
+ ctrl->ControlId() == EMsgComponentIdSvg )&&
+ ((Document()->SmilType()!=ETemplateSmil)&&(Document()->SmilType()!=E3GPPSmil) ))
+ {
+ TRect rect = ctrl->Rect();
+
+
+
+ if ((!iTapConsumed)&&rect.Contains(aPenEventLocation))
+ {
+ if (iEmbeddedObjectStylusPopup)
+ {
+ delete iEmbeddedObjectStylusPopup;
+ iEmbeddedObjectStylusPopup = NULL;
+ }
+ iEmbeddedObjectStylusPopup = CAknStylusPopUpMenu::NewL(this,aPenEventLocation);
+ TResourceReader reader;
+ iCoeEnv->CreateResourceReaderLC(reader,R_MMSVIEWER_EMBEDDED_OBJECT_STYLUS_MENU );
+ iEmbeddedObjectStylusPopup->ConstructFromResourceL(reader);
+ CleanupStack::PopAndDestroy();
+ iEmbeddedObjectStylusPopup->SetPosition(aPenEventLocation);
+ iEmbeddedObjectStylusPopup->ShowMenu();
+ iTapConsumed = ETrue;
+ }
+ }
+ }
// End of File
--- a/mobilemessaging/msgmedia/help/inc/msg.hlp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/msgmedia/help/inc/msg.hlp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -2,9 +2,9 @@
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Symbian Foundation License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
-* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
--- a/mobilemessaging/postcard/help/inc/postcard.hlp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/postcard/help/inc/postcard.hlp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -2,9 +2,9 @@
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Symbian Foundation License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
-* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
--- a/mobilemessaging/postcard/postcard/Postcard.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/postcard/postcard/Postcard.rss Mon Jan 18 20:16:40 2010 +0200
@@ -35,16 +35,16 @@
#include <appinfo.rh>
#include <data_caging_paths_strings.hrh>
//LOC Files
-#include <DRMCommon.loc>
-#include <Messaging.loc>
+#include <drmcommon.loc>
+#include <messaging.loc>
#include <avkon.loc>
#include <AiwCommon.rh>
#include <AiwGenericParam.hrh>
// Local ones
-#include <Postcard.loc>
-#include <Postcard_branded.loc>
+#include <postcard.loc>
+#include <postcard_branded.loc>
#include "Postcard.hrh"
// RESOURCE DEFINITIONS
--- a/mobilemessaging/postcard/postcardsrc/PostcardAppUi.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/postcard/postcardsrc/PostcardAppUi.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -1773,14 +1773,14 @@
// ---------------------------------------------------------
void CPostcardAppUi::DoDelayedExit( TInt aDelayTime )
{
- if ( !iIdle )
+ // Coverty fix , Forward NULL http://ousrv057/cov.cgi?cid=36248
+ if ( iIdle )
{
-
- }
- iIdle->Cancel();
- iIdle->Start( aDelayTime,
+ iIdle->Cancel();
+ iIdle->Start( aDelayTime,
aDelayTime,
TCallBack( DelayedExit, this ));
+ }
}
// ---------------------------------------------------------
--- a/mobilemessaging/postcard/postcardsrc/PostcardRecipientWrapper.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/postcard/postcardsrc/PostcardRecipientWrapper.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -184,8 +184,9 @@
TInt popupOk = popupList->ExecuteLD();
TInt itemIndex = listBox->CurrentItemIndex();
CleanupStack::PopAndDestroy( listBox ); // listBox;
-
- if ( popupOk )
+
+ // Coverty fix, Negative return; http://ousrv057/cov.cgi?cid=36961
+ if ( popupOk && itemIndex > 0)
{
location = foundLocations[ itemIndex ];
}
--- a/mobilemessaging/postcard/postcardui/PostcardUi.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/postcard/postcardui/PostcardUi.rss Mon Jan 18 20:16:40 2010 +0200
@@ -32,8 +32,8 @@
#include <avkon.loc>
#include <muiusettingsarray.rh>
-#include <Messaging.loc>
-#include <Postcard_branded.loc>
+#include <messaging.loc>
+#include <postcard_branded.loc>
// CONSTANTS
--- a/mobilemessaging/smilui/playersrc/SmilPlayerPresentationController.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/smilui/playersrc/SmilPlayerPresentationController.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -54,7 +54,7 @@
#include <aknnavi.h>
#include <aknnavide.h>
-#include <BrowserLauncher.h>
+#include <browserlauncher.h>
#include <txtetext.h> // for CPlainText
#include "SmilTextRenderer.h"
--- a/mobilemessaging/smsui/help/inc/sms.hlp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/smsui/help/inc/sms.hlp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -2,9 +2,9 @@
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Symbian Foundation License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
-* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
--- a/mobilemessaging/smsui/viewer/SmsViewer.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/smsui/viewer/SmsViewer.rss Mon Jan 18 20:16:40 2010 +0200
@@ -47,6 +47,7 @@
#include <MsgEditor.hrh>
#include <muiu.mbg> // title icon
+#include <aknsconstants.hrh>
// RESOURCES
RESOURCE RSS_SIGNATURE { }
@@ -109,6 +110,26 @@
//
//----------------------------------------------------
//
+// Needed by skinning. In toolbar resource definition skin support and bitmap methods are used, in case skin
+// does not support toolbar icons
+RESOURCE AVKON_BUTTON_STATE_EXTENSION r_smsviewer_reply_button_state_extension
+ {
+ bmbSkinIdMajor= EAknsMajorGeneric;
+ bmbSkinIdMinor= EAknsMinorGenericQgnIndiTbMsgReply;
+ }
+
+RESOURCE AVKON_BUTTON_STATE_EXTENSION r_smsviewer_forward_button_state_extension
+ {
+ bmbSkinIdMajor= EAknsMajorGeneric;
+ bmbSkinIdMinor= EAknsMinorGenericQgnIndiTbMsgForward;
+ }
+
+RESOURCE AVKON_BUTTON_STATE_EXTENSION r_smsviewer_delete_button_state_extension
+ {
+ bmbSkinIdMajor= EAknsMajorGeneric;
+ bmbSkinIdMinor= EAknsMinorGenericQgnIndiMgTbDelete;
+ }
+
RESOURCE AVKON_TOOLBAR r_smsviewer_app_toolbar
{
flags = KAknToolbarFixed;
@@ -129,6 +150,7 @@
bmpfile = BITMAP_DIR"\\muiu.mif";
bmpid = EMbmMuiuQgn_indi_tb_msg_reply;
bmpmask = EMbmMuiuQgn_indi_tb_msg_reply_mask;
+ extension = r_smsviewer_reply_button_state_extension;
}
};
};
@@ -148,7 +170,7 @@
bmpfile = BITMAP_DIR"\\muiu.mif";
bmpid = EMbmMuiuQgn_indi_tb_msg_forward;
bmpmask = EMbmMuiuQgn_indi_tb_msg_forward_mask;
-
+ extension = r_smsviewer_forward_button_state_extension;
}
};
};
@@ -168,6 +190,7 @@
bmpfile = BITMAP_DIR"\\muiu.mif";
bmpid = EMbmMuiuQgn_indi_mg_tb_delete;
bmpmask = EMbmMuiuQgn_indi_mg_tb_delete;
+ extension = r_smsviewer_delete_button_state_extension;
}
};
};
--- a/mobilemessaging/smsui/viewer/SmsViewer_reg.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/smsui/viewer/SmsViewer_reg.rss Mon Jan 18 20:16:40 2010 +0200
@@ -17,7 +17,7 @@
#include <appinfo.rh>
-#include <smsviewer.rsg>
+#include <SmsViewer.rsg>
#include <MuiuMsgEditorService.rh>
#include <MuiuMsgEditorServiceConst.h>
#include <data_caging_paths_strings.hrh>
--- a/mobilemessaging/smsui/viewersrc/MsgSmsViewerAppUi.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/smsui/viewersrc/MsgSmsViewerAppUi.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -955,7 +955,11 @@
break;
case R_FINDITEMMENU_MENU:
{
- iFindItemMenu->DisplayFindItemCascadeMenuL( *aMenuPane );
+ // Coverty fix , Forward NULL http://ousrv057/cov.cgi?cid=35945
+ if(iFindItemMenu)
+ {
+ iFindItemMenu->DisplayFindItemCascadeMenuL( *aMenuPane );
+ }
}
break;
case R_SMSV_OPTIONSMENUPANE_CLASS0:
@@ -970,7 +974,8 @@
{
aMenuPane->DeleteMenuItem( EFindItemMenuPlaceHolder );
}
- else
+ // Coverty fix , Forward NULL http://ousrv057/cov.cgi?cid=35945
+ else if(iFindItemMenu)
{
iFindItemMenu->AddItemFindMenuL(
IsBodyFocused() ? iView->ItemFinder() : 0,
--- a/mobilemessaging/unieditor/application/data/UniEditor.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/data/UniEditor.rss Mon Jan 18 20:16:40 2010 +0200
@@ -1770,5 +1770,16 @@
{
buf = qtn_info_popup_sms_size_below_limit;
}
-
+// ---------------------------------------------------------------------------
+// r_unieditor_embedded_object_stylus_menu
+// ---------------------------------------------------------------------------
+//
+RESOURCE STYLUS_POPUP_MENU r_unieditor_embedded_object_stylus_menu
+ {
+ items =
+ {
+ STYLUS_POPUP_MENU_ITEM { txt = qtn_mms_om_remove;
+ command = EUniCmdRemove; }
+ };
+ }
// End of File
--- a/mobilemessaging/unieditor/application/data/UniEditor_reg.rss Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/data/UniEditor_reg.rss Mon Jan 18 20:16:40 2010 +0200
@@ -18,7 +18,7 @@
#include <appinfo.rh>
#include <data_caging_paths_strings.hrh>
-#include <unieditor.rsg>
+#include <UniEditor.rsg>
#include <MuiuMsgEditorService.rh>
#include <MuiuMsgEditorServiceConst.h>
--- a/mobilemessaging/unieditor/application/inc/UniEditorApp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/inc/UniEditorApp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -93,7 +93,9 @@
// Settings dialog
EUniCmdSettingsChange,
- EUniCmdObjectsAttachment
+ EUniCmdObjectsAttachment,
+ //Stylus Menu
+ EUniCmdRemove
};
enum
--- a/mobilemessaging/unieditor/application/inc/UniEditorAppUi.h Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/inc/UniEditorAppUi.h Mon Jan 18 20:16:40 2010 +0200
@@ -44,6 +44,7 @@
#include <eikedwob.h> // for MEikEdwinObserver
+#include <aknlongtapdetector.h> // for long tap
// Needed by inline functions
#include "uniobjectlist.h"
#include "unidatamodel.h"
@@ -91,6 +92,7 @@
class CUniEditorVCardOperation;
class CUniEditorHeader;
class CAknToolbarExtension;
+class CAknStylusPopUpMenu;
// CLASS DECLARATION
@@ -110,7 +112,8 @@
public MEikEdwinObserver,
public MProgressDialogCallback,
public MPenUiActivationHandler,
- public MCenRepNotifyHandlerCallback
+ public MCenRepNotifyHandlerCallback,
+ public MAknLongTapDetectorCallBack
{
public: // Constructors and destructor
@@ -381,6 +384,13 @@
* 2nd phase constructor.
*/
void ConstructL();
+ // From MAknLongTapDetectorCallBack
+ /**
+ * @see MAknLongTapDetectorCallBack
+ */
+ void HandleLongTapEventL(
+ const TPoint& aPenEventLocation,
+ const TPoint& aPenEventScreenLocation );
private:
@@ -1351,6 +1361,17 @@
//Korean Req: 415-5434
HBufC* iPopupSmsSizeAboveLimitBuffer;
HBufC* iPopupSmsSizeBelowLimitBuffer;
+ TBool iFinalizeLaunchL;
+ // Own: For long tap detecting
+ CAknLongTapDetector* iLongTapDetector;
+
+ // For long tap handling
+ TBool iTapConsumed;
+ /**
+ * Contact image selection stylus popup menu
+ * Own.
+ */
+ CAknStylusPopUpMenu* iEmbeddedObjectStylusPopup;
};
#include "UniEditorAppUi.inl"
--- a/mobilemessaging/unieditor/application/src/UniEditorAppUi.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/src/UniEditorAppUi.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -183,6 +183,7 @@
#include "UniEditorLogging.h"
#include <gsmuelem.h> // Turkish SMS-PREQ2265 specific
+#include <aknstyluspopupmenu.h> //Added for displaying object specific stylus menus in editor
// ========== LOCAL CONSTANTS AND MACROS ===================
// SMS related
@@ -280,6 +281,7 @@
//
void CUniEditorAppUi::ConstructL()
{
+ iFinalizeLaunchL = EFalse;
// We don't have any app ui if launched from idle
if ( iEikonEnv->EikAppUi() )
{
@@ -444,6 +446,10 @@
iMsgLenToVKB = ETrue;
}
#endif
+ iLongTapDetector = CAknLongTapDetector::NewL( this );
+ iLongTapDetector->SetTimeDelayBeforeAnimation( KUniLongTapStartDelay );
+ iLongTapDetector->SetLongTapDelay( KUniLongTapTimeDelay );
+ iTapConsumed = EFalse;
}
@@ -574,6 +580,15 @@
delete iPopupSmsSizeAboveLimitBuffer;
delete iPopupSmsSizeBelowLimitBuffer;
+ if(iLongTapDetector)
+ {
+ delete iLongTapDetector;
+ }
+ if(iEmbeddedObjectStylusPopup)
+ {
+ delete iEmbeddedObjectStylusPopup;
+ iEmbeddedObjectStylusPopup = NULL;
+ }
}
@@ -651,6 +666,7 @@
//
void CUniEditorAppUi::FinalizeLaunchL()
{
+ iFinalizeLaunchL = ETrue;
iSmilModel = &Document()->DataModel()->SmilModel();
iHeader = iLaunchOperation->DetachHeader();
iSlideLoader = iLaunchOperation->DetachSlideLoader();
@@ -694,10 +710,6 @@
TMsgControlId focusedControlId = ResolveLaunchFocusedControlL();
- iView->ExecuteL( ClientRect(), focusedControlId );
-
- delete iScreenClearer;
- iScreenClearer = NULL;
CEikStatusPane* statusPane = StatusPane();
@@ -765,6 +777,11 @@
UpdateToolbarL();
iEditorFlags |= ELaunchSuccessful;
+
+ iView->ExecuteL( ClientRect(), focusedControlId );
+ delete iScreenClearer;
+ iScreenClearer = NULL;
+
}
// ---------------------------------------------------------
@@ -1544,6 +1561,33 @@
DoUserRemoveMediaL( EMsgComponentIdSvg, EUniRegionImage );
break;
}
+ case EUniCmdRemove:
+ {
+ CMsgBaseControl* ctrl = iView->FocusedControl(); // ctrl can be NULL.
+ if(ctrl)
+ {
+ TMsgControlId controlId = TMsgControlId(ctrl->ControlId());
+ if(controlId == EMsgComponentIdAudio)
+ {
+ DoUserRemoveMediaL( controlId, EUniRegionAudio );
+ }
+ else if ( controlId == EMsgComponentIdImage ||
+ controlId == EMsgComponentIdVideo ||
+ controlId == EMsgComponentIdSvg )
+ {
+ if( (Document()->DataModel()->SmilType() == ETemplateSmil) || (Document()->DataModel()->SmilType() == E3GPPSmil))
+ {
+ // focus is on SMIL presentation icon
+ RemoveTemplateL();
+ }
+ else
+ {
+ DoUserRemoveMediaL( controlId, EUniRegionImage );
+ }
+ }
+ }
+ break;
+ }
case EMsgDispSizeAutomatic:
case EMsgDispSizeLarge:
case EMsgDispSizeNormal:
@@ -1744,13 +1788,19 @@
{
TPointerEvent* event = static_cast<TPointerEvent*>( aArg2 );
CMsgBaseControl* control = static_cast<CMsgBaseControl*>( aArg1 );
-
+ if(iLongTapDetector)
+ {
+ iLongTapDetector->EnableLongTapAnimation(ETrue);
+ iLongTapDetector->PointerEventL( *event );
+ }
if ( event->iType == TPointerEvent::EButton1Down )
{
- iFocusedControl = control && control->IsFocused() ? control : NULL;
- }
- else if ( event->iType == TPointerEvent::EButton1Up )
- {
+ iFocusedControl = control;
+ iTapConsumed = EFalse;
+ }
+ else if ( (!iTapConsumed) && (event->iType == TPointerEvent::EButton1Up) )
+ {
+ iTapConsumed = ETrue;
if ( control &&
iFocusedControl == control &&
( control->ControlId() == EMsgComponentIdAudio ||
@@ -2070,9 +2120,13 @@
{
CUniObject* object = iSmilModel->GetObject( Document()->CurrentSlide(), region );
- if ( object->DrmInfo() )
- {
- object->DrmInfo()->FreezeRights();
+ // Coverty fix, Null pointer return, http://ousrv057/cov.cgi?cid=37172
+ if ( object )
+ {
+ if ( object->DrmInfo() )
+ {
+ object->DrmInfo()->FreezeRights();
+ }
}
TRAP_IGNORE( iSlideLoader->UpdateControlIconL(
@@ -4503,6 +4557,7 @@
User::LeaveIfError( bitmapMask->Duplicate( image->Mask()->Handle() ) );
iTitlePane->SetSmallPicture( bitmap, bitmapMask, ETrue );
+ if(!iFinalizeLaunchL)
iTitlePane->DrawNow();
CleanupStack::Pop( 2, bitmap );
@@ -5264,8 +5319,13 @@
iWaitDialog = new( ELeave ) CAknWaitDialog( reinterpret_cast<CEikDialog**>( &iWaitDialog ),
waitNoteDelayOff );
- iWaitDialog->SetTextL( *string );
- CleanupStack::PopAndDestroy( string );
+
+ // Coverty Fix, Forward Null, http://ousrv057/cov.cgi?cid=35691
+ if(string)
+ {
+ iWaitDialog->SetTextL( *string );
+ CleanupStack::PopAndDestroy( string );
+ }
iWaitDialog->SetCallback( this );
@@ -5579,6 +5639,9 @@
}
TInt index = EMsgAppendControl;
+ // Coverty fix: Forward NULL, http://ousrv057/cov.cgi?cid=35695
+ if(iView)
+ {
CMsgBaseControl* ctrl = iView->RemoveControlL( EMsgComponentIdBody ); // Does not leave
if ( ctrl )
@@ -5612,6 +5675,7 @@
iView->AddControlL( ctrl, EMsgComponentIdBody, index, EMsgBody );
}
+ }
if ( !( iHeader->IsAddressControl( focusedId ) ||
focusedId == EMsgComponentIdSubject ||
@@ -8378,12 +8442,14 @@
case EMsgComponentIdSvg:
{
CUniObject* obj = iSmilModel->GetObject( Document()->CurrentSlide(), region );
-
- if( obj->Corrupted() )
+ // Coverty fix, Null pointer return , http://ousrv057/cov.cgi?cid=37100
+ if(obj)
+ {
+ if( obj->Corrupted() )
{ // Object is corrupt -> just show note
ShowInformationNoteL( R_UNIEDITOR_CANNOT_OPEN_CORRUPT, EFalse );
}
- else
+ else
{
RFile file = CUniDataUtils::GetAttachmentFileL( Document()->DataModel()->Mtm(), obj->AttachmentId() );
CleanupClosePushL( file );
@@ -8413,6 +8479,7 @@
// DeactivateInputBlocker();
}
}
+ }
break;
}
default:
@@ -9716,5 +9783,40 @@
TRAP_IGNORE(ShowConfirmableInfoL( R_UNIEDITOR_NOT_ENOUGH_MEMORY));
Exit( EAknSoftkeyClose );
}
+// ---------------------------------------------------------
+// CUniEditorAppUi::HandleLongTapEventL
+// Function for handling the long tap events
+// ---------------------------------------------------------
+//
+void CUniEditorAppUi::HandleLongTapEventL(const TPoint& aPenEventLocation,
+ const TPoint& aPenEventScreenLocation )
+ {
+ CMsgBaseControl* ctrl = iView->FocusedControl(); // ctrl can be NULL.
+ if ( ctrl &&
+ ( ctrl->ControlId() == EMsgComponentIdAudio ||
+ ctrl->ControlId() == EMsgComponentIdImage ||
+ ctrl->ControlId() == EMsgComponentIdVideo ||
+ ctrl->ControlId() == EMsgComponentIdSvg ) )
+ {
+ TRect rect = ctrl->Rect();
+
+ if ((!iTapConsumed)&&rect.Contains(aPenEventLocation))
+ {
+ if (iEmbeddedObjectStylusPopup)
+ {
+ delete iEmbeddedObjectStylusPopup;
+ iEmbeddedObjectStylusPopup = NULL;
+ }
+ iEmbeddedObjectStylusPopup = CAknStylusPopUpMenu::NewL(this,aPenEventLocation);
+ TResourceReader reader;
+ iCoeEnv->CreateResourceReaderLC(reader,R_UNIEDITOR_EMBEDDED_OBJECT_STYLUS_MENU );
+ iEmbeddedObjectStylusPopup->ConstructFromResourceL(reader);
+ CleanupStack::PopAndDestroy();
+ iEmbeddedObjectStylusPopup->SetPosition(aPenEventLocation);
+ iEmbeddedObjectStylusPopup->ShowMenu();
+ iTapConsumed = ETrue;
+ }
+ }
+ }
// End of file
--- a/mobilemessaging/unieditor/application/src/UniEditorInsertOperation.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/src/UniEditorInsertOperation.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -145,13 +145,14 @@
else
{
iAddAsAttachment = aAddAsAttachment;
- }
-
- if ( aInfo->MediaType() == EMsgMediaImage )
+ }
+
+ //Coverty fix : Forward Null http://ousrv057/cov.cgi?cid=35696
+ if ( aInfo && aInfo->MediaType() == EMsgMediaImage )
{
iOperationState = EUniInsertCheckMode;
}
- else if ( aInfo->MimeType() == KMsgMimeVideoMp4 )
+ else if ( aInfo && aInfo->MimeType() == KMsgMimeVideoMp4 )
{
iOperationState = EUniInsertConvertVideo;
}
--- a/mobilemessaging/unieditor/application/src/UniEditorObjectsModelObserver.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/src/UniEditorObjectsModelObserver.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -105,8 +105,12 @@
{
iAppUi.ReleaseImage( ETrue );
}
-
- editorDoc->DeleteAttachmentL( objInfo->SlideNumber(), obj, EFalse );
+ //Coverty fix -- Forward NULL, http://ousrv057/cov.cgi?cid=36246
+ if(obj)
+ {
+ editorDoc->DeleteAttachmentL( objInfo->SlideNumber(), obj, EFalse );
+ }
+
// Only call AppUI to remove object if it is located on the
// current slide.
--- a/mobilemessaging/unieditor/application/src/UniEditorSaveOperation.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/application/src/UniEditorSaveOperation.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -383,20 +383,23 @@
iEditStore = iDocument.Mtm().Entry().EditStoreL();
if ( iComposeSmil )
{
- iDocument.DataModel()->SmilList().RemoveSmilL( *iEditStore );
- if ( iSaveType == ESendingSave )
- {
- iDocument.DataModel()->SmilModel().RemoveEmptySlides();
- }
+ if( !(iSaveType == ESendingSave && iDocument.UniState() == EUniSms) )
+ {
+ iDocument.DataModel()->SmilList().RemoveSmilL( *iEditStore );
+ if ( iSaveType == ESendingSave )
+ {
+ iDocument.DataModel()->SmilModel().RemoveEmptySlides();
+ }
- if ( iDocument.DataModel()->SmilModel().SlideCount() != 0 )
- {
- // Model is not empty -> Compose new SMIL
- iDom = iDocument.DataModel()->SmilModel().ComposeL();
- iDocument.DataModel()->SmilList().CreateSmilAttachmentL( *this, *iEditStore, iDom );
- SetPending();
- return;
- }
+ if ( iDocument.DataModel()->SmilModel().SlideCount() != 0 )
+ {
+ // Model is not empty -> Compose new SMIL
+ iDom = iDocument.DataModel()->SmilModel().ComposeL();
+ iDocument.DataModel()->SmilList().CreateSmilAttachmentL( *this, *iEditStore, iDom );
+ SetPending();
+ return;
+ }
+ }
}
iOperationState = EUniEditorSaveFinalize;
@@ -657,11 +660,9 @@
TBuf<KUniMaxDescription> description;
description.Zero();
- length = subject.Length();
- CMsgExpandableControl* header = static_cast<CMsgExpandableControl*>( iView.ControlById( EMsgComponentIdSubject ) );
-
+ length = subject.Length();
// Saving as pure text from the editor which may contain emoticons.
- HBufC *text = header->Editor().GetTextInHBufL();
+ HBufC *text = iHeader.SubjectControl()->Editor().GetTextInHBufL();
CleanupStack::PushL( text );
description.Copy( text->Ptr(), length );
CleanupStack::PopAndDestroy( text );
--- a/mobilemessaging/unieditor/help/inc/unif.hlp.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/help/inc/unif.hlp.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -2,9 +2,9 @@
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
-* under the terms of the License "Symbian Foundation License v1.0"
+* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
-* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
--- a/mobilemessaging/unieditor/smsplugin/inc/UniSmsPlugin.h Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/smsplugin/inc/UniSmsPlugin.h Mon Jan 18 20:16:40 2010 +0200
@@ -227,7 +227,11 @@
* Converts sms message to uni message format.
*/
TMsvId DoConvertFromL( TMsvId aId, TBool aIsForward );
-
+
+ /**
+ * returns attachment size.
+ */
+ TInt32 AttachmentsSizeL( CMsvStore& aStore );
private: // Data
@@ -268,6 +272,8 @@
TInt iCharSupportType;
TSmsEncoding iAlternativeEncodingType;
TBool iNLTFeatureSupport;
+
+ TBool iStoreChanged ;
};
inline void CUniSmsPlugin::SetUnicodeMode( TBool aUnicodeMode )
--- a/mobilemessaging/unieditor/smsplugin/src/UniSmsPlugin.cpp Thu Jan 07 12:45:05 2010 +0200
+++ b/mobilemessaging/unieditor/smsplugin/src/UniSmsPlugin.cpp Mon Jan 18 20:16:40 2010 +0200
@@ -191,6 +191,7 @@
}
FeatureManager::UnInitializeLib();
+ iStoreChanged = EFalse;
UNILOGGER_LEAVEFN("CUniSmsPlugin::ConstructL");
}
@@ -340,12 +341,15 @@
}
SmsMtmL()->Body().Reset();
-
SmsMtmL()->SaveMessageL();
TMsvEntry uniTEntry = iUniMtm.Entry().Entry();
+ CMsvStore* store = iUniMtm.Entry().EditStoreL();
+ CleanupStack::PushL( store );
- iUniMtm.SaveMessageL();
+ iUniMtm.SaveMessageL(*store, uniTEntry);
+ store->CommitL();
+ CleanupStack::PopAndDestroy(store);
// Lets convert the bits to Uni mode
TUniMsvEntry::SetForwardedMessage( uniTEntry, aIsForward );
@@ -356,6 +360,41 @@
return aId;
}
+TInt32 CUniSmsPlugin::AttachmentsSizeL( CMsvStore& aStore )
+ {
+ TInt32 size = 0;
+
+ MMsvAttachmentManager& attachMan = aStore.AttachmentManagerL();
+ TInt numAttachments = attachMan.AttachmentCount();
+
+ for ( TInt i = 0; i < numAttachments; i++ )
+ {
+ CMsvAttachment* attachmentInfo = attachMan.GetAttachmentInfoL( i );
+ CleanupStack::PushL( attachmentInfo );
+
+ CMsvMimeHeaders* mimeHeaders = CMsvMimeHeaders::NewL();
+ CleanupStack::PushL( mimeHeaders );
+
+ mimeHeaders->RestoreL( *attachmentInfo );
+
+ RFile attaFile = attachMan.GetAttachmentFileL( i );
+ CleanupClosePushL( attaFile );
+ TInt fileSize = 0;
+
+ // If we cannot access the file, we are in trouble
+ User::LeaveIfError( attaFile.Size( fileSize ) );
+
+ // This adds up mime header size + actual attachment binary data
+ size += mimeHeaders->Size() + fileSize;
+
+ CleanupStack::PopAndDestroy( &attaFile );
+ CleanupStack::PopAndDestroy( mimeHeaders );
+ CleanupStack::PopAndDestroy( attachmentInfo );
+ }
+
+ return size;
+ }
+
// -----------------------------------------------------------------------------
// ConvertToL
// -----------------------------------------------------------------------------
@@ -601,13 +640,17 @@
CleanupStack::PopAndDestroy( sendOptions );
- SmsMtmL()->Entry().ChangeL( tEntry );
+ SmsMtmL()->SaveMessageL(*store, tEntry);
store->CommitL();
+ tEntry.iSize = store->SizeL();
+ if( AttachmentsSizeL( *store ) > 0 )
+ {
+ tEntry.SetAttachment( ETrue );
+ }
CleanupStack::PopAndDestroy( store );
- iUniMtm.SaveMessageL();
- SmsMtmL()->SaveMessageL();
+ SmsMtmL()->Entry().ChangeL( tEntry );
UNILOGGER_LEAVEFN("CUniSmsPlugin::ConvertToL");
return aId;
}
@@ -831,6 +874,7 @@
// ----------------------------------------------------------------------------
void CUniSmsPlugin::MoveMessagesToOutboxL()
{
+ iStoreChanged = EFalse;
if ( !iRecipients || !iRecipients->Count() )
{
User::Leave( KErrGeneral );
@@ -915,6 +959,7 @@
SmsMtmL()->AddAddresseeL(
iEmailOverSmsC->Address( ) ,
KNullDesC( ) );
+ iStoreChanged = ETrue;
}
else
{
@@ -922,7 +967,10 @@
}
entry.ChangeL( msvEntry );
- SmsMtmL()->SaveMessageL();
+ if( iStoreChanged )
+ {
+ SmsMtmL()->SaveMessageL();
+ }
// Move it
copyId = MoveMessageEntryL( KMsvGlobalOutBoxIndexEntryId );
cantExit = EFalse;
@@ -951,6 +999,7 @@
msvEntry, *rcpt, SmsMtmL()->Body());
SmsMtmL()->RemoveAddressee( 0 );
+ iStoreChanged = ETrue;
}
//If hundreds of recipient, make sure viewserver
//timers are reseted
@@ -1380,6 +1429,7 @@
aText.InsertL( 1, subject );
aText.InsertL( writePosition-1, KUniSmsEndParenthesis );
}
+ iStoreChanged = ETrue;
}
// Clears the CSmsHeaders EmailFields for non Email addresses
@@ -1387,6 +1437,7 @@
CleanupStack::PushL( emailFields );
aHeader.SetEmailFieldsL( *emailFields );
CleanupStack::PopAndDestroy( emailFields );
+ iStoreChanged = ETrue;
}
// ----------------------------------------------------------------------------
--- a/msg_plat/internet_mail_mtm_ui_api/inc/impicmds.h Thu Jan 07 12:45:05 2010 +0200
+++ b/msg_plat/internet_mail_mtm_ui_api/inc/impicmds.h Mon Jan 18 20:16:40 2010 +0200
@@ -21,7 +21,7 @@
#if !defined (__IMPICMDS_H__)
#define __IMPICMDS_H__
-#include <mtmextendedcapabilities.hrh>
+#include <MtmExtendedCapabilities.hrh>
/**
* TIMAP4Cmds:
--- a/msg_plat/messaging_center_ui_utilities_api/inc/MtmExtendedCapabilities.hrh Thu Jan 07 12:45:05 2010 +0200
+++ b/msg_plat/messaging_center_ui_utilities_api/inc/MtmExtendedCapabilities.hrh Mon Jan 18 20:16:40 2010 +0200
@@ -25,7 +25,7 @@
#include <mtmuidef.hrh>
#endif // KMtmUiFunctionPrint
-#include <extendedmtmids.hrh>
+#include <ExtendedMTMIDS.hrh>
// Capabilties
#define KUidMsvMtmQueryMessageInfo 0x10005996 // response true/false
--- a/msg_plat/messaging_center_ui_utilities_api/inc/MuiuMsgEditorService.rh Thu Jan 07 12:45:05 2010 +0200
+++ b/msg_plat/messaging_center_ui_utilities_api/inc/MuiuMsgEditorService.rh Mon Jan 18 20:16:40 2010 +0200
@@ -21,7 +21,7 @@
// Set either KMsgServiceView or KMsgServiceEdit in type
// (defined in MuiuMsgEditorServiceConst.h)
-#include <muiumsgeditorserviceconst.h>
+#include <MuiuMsgEditorServiceConst.h>
STRUCT MSG_SERVICE_STRUCT
{
--- a/msg_plat/messaging_editor_api/inc/MsgEditor.rh Thu Jan 07 12:45:05 2010 +0200
+++ b/msg_plat/messaging_editor_api/inc/MsgEditor.rh Mon Jan 18 20:16:40 2010 +0200
@@ -16,7 +16,7 @@
-#include "msgeditor.hrh"
+#include "MsgEditor.hrh"
STRUCT MSG_EDITOR_EXPANDABLE_CONTROL
{
--- a/msg_plat/messaging_editor_api/inc/MsgEditorCommon.h Thu Jan 07 12:45:05 2010 +0200
+++ b/msg_plat/messaging_editor_api/inc/MsgEditorCommon.h Mon Jan 18 20:16:40 2010 +0200
@@ -30,6 +30,8 @@
const TText KArabicSemicolon = 0x061B;
const TText KSemicolon = 0x003B;
+const TInt KUniLongTapStartDelay( 500000 ); // 0.5s
+const TInt KUniLongTapTimeDelay( 1500000 ); // 1.5s
// ========== MACROS =======================================