Revision: 201003 RCL_3
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 19 Feb 2010 22:49:53 +0200
branchRCL_3
changeset 5 42814f902fe6
parent 0 f979ecb2b13e
child 6 5a04f2ceabfe
child 10 38571fd2a704
Revision: 201003 Kit: 201007
calendarui/application/data/Calendar.rss
calendarui/cenrep/CalendarInternalCRKeys.h
calendarui/commonutils/src/calenactionuiutils.cpp
calendarui/conf/calendarUI.confml
calendarui/conf/calendarUI_101F874B.crml
calendarui/controller/data/calencommonui.rss
calendarui/controller/inc/calenmultipledbui.h
calendarui/controller/src/calenattachmentui.cpp
calendarui/controller/src/calenbackgroundstate.cpp
calendarui/controller/src/calencmdlinelauncher.cpp
calendarui/controller/src/calencontextfwlistener.cpp
calendarui/controller/src/calenicons.cpp
calendarui/controller/src/calenmultidbeditor.cpp
calendarui/controller/src/calenmultipledbui.cpp
calendarui/controller/src/calennotifier.cpp
calendarui/editors/data/CalenDefaultEditorsData.rss
calendarui/editors/inc/CalenDescription.h
calendarui/editors/inc/calenunifiededitorcontrol.h
calendarui/editors/src/CalenDescription.cpp
calendarui/editors/src/calenunifiededitor.cpp
calendarui/editors/src/calenunifiededitorcontrol.cpp
calendarui/help/data/xhtml.zip
calendarui/help/inc/cale.hlp.hrh
calendarui/loc/calendar.loc
calendarui/organizerplugin/aiagendaplugin2/data/aicalendarplugin2.rss
calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2.h
calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2constantdata.h
calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2constants.hrh
calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2data.h
calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2.cpp
calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2constantdata.cpp
calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2data.cpp
calendarui/organizerplugin/aiagendapluginengine/src/CalenAsyncCommands.cpp
calendarui/organizerplugin/aiagendapluginengine/src/CalenEngine.cpp
calendarui/organizerplugin/data/qhd_tch/organizer_2001f481/loc/organizerconfiguration.loc
calendarui/regionalplugins/calenregionalutil/src/calenextrarowformatter.cpp
calendarui/regionalplugins/calenregionalutil/src/calenlunarlocalizer.cpp
calendarui/regionalplugins/lunarVietnamese/src/calenlunarvietnameseplugin.cpp
calendarui/server/CalenSvr/data/calensvrmissedalarmmanagerresource.rss
calendarui/server/CalenSvr/group/CalenSvr.mmp
calendarui/server/CalenSvr/inc/CalSvrSession.h
calendarui/server/CalenSvr/inc/CalenServer.h
calendarui/server/CalenSvr/inc/CalenSvrDBManager.h
calendarui/server/CalenSvr/src/CalSvrSession.cpp
calendarui/server/CalenSvr/src/CalenServer.cpp
calendarui/server/CalenSvr/src/CalenSvrDBManager.cpp
calendarui/views/inc/calentodoview.h
calendarui/views/src/caleneventviewcontainer.cpp
calendarui/views/src/calenmonthcontainer.cpp
calendarui/views/src/calennativeview.cpp
calendarui/views/src/calentodoview.cpp
clock2/clockui/uilayer/clkdatetimeview/src/clkdatetimeview.cpp
clock2/clockui/uilayer/clockmainview/src/clockmainview.cpp
clock2/clockui/uilayer/clockworldview/src/clockworldview.cpp
clock2/clockui/utilities/data/timezonegroups.rss
clock2/clockui/utilities/data/timezonegroups_jerusalem.rss
clock2/clockui/utilities/data/timezones.rss
clock2/clockui/utilities/data/timezones_tel_aviv.rss
clock2/help/data/xhtml.zip
clock2/help/inc/clk.hlp.hrh
organizer_plat/calendar_common_utils_api/inc/calenmulticaluids.hrh
organizer_plat/calendar_common_utils_api/tsrc/group/CalendarCommonUtilsTest_DoxyFile.txt
organizer_plat/calendar_common_utils_api/tsrc/group/rndcert.der
organizer_plat/calendar_common_utils_api/tsrc/group/rndcert.key
organizer_plat/meeting_request_mailbox_utilities_api/tsrc/stiff/group/rndcert.der
organizer_plat/meeting_request_mailbox_utilities_api/tsrc/stiff/group/rndcert.key
organizer_pub/calendar_interim_utils2_api/tsrc/stiff/group/CalenInterimUtils2Test_DoxyFile.txt
organizer_pub/notepad_library_api/tsrc/.cproject
organizer_pub/notepad_library_api/tsrc/.project
organizer_pub/notepad_library_api/tsrc/cproject
organizer_pub/notepad_library_api/tsrc/project
searchfw/coresearchfw/server/src/searchserversession.cpp
searchfw/plugins/contactsplugin/group/contactsplugin.mmp
searchfw/plugins/contactsplugin/src/contactssearcher.cpp
searchfw/plugins/filesplugin/src/filessearcher.cpp
searchui/searchapp/plugins/resultviewerplugin/src/srchuiresultview.cpp
--- a/calendarui/application/data/Calendar.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/application/data/Calendar.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -2705,12 +2705,12 @@
 
 RESOURCE TBUF r_cale_db_calendar
     {
-    buf = "Calendar"; 
+    buf = qtn_cale_db_calendar_name; 
     }
 
 RESOURCE TBUF r_cale_db_calendar_default_name
     {
-    buf = "Calendar(%U)";
+    buf = "Calendar(%U)"; //qtn_cale_db_calendar_default_name 
     }
 
 RESOURCE TBUF r_calen_illegal_characters
--- a/calendarui/cenrep/CalendarInternalCRKeys.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/cenrep/CalendarInternalCRKeys.h	Fri Feb 19 22:49:53 2010 +0200
@@ -123,26 +123,21 @@
 **/
 const TUint32 KCalendarStartupStatus = 0x0000000E;
 
-/**
-* Text string containing default calendar names separated by commas
-* Used for creating default calendars at the startup of the device
-* Default value: "Personal,Family,Friends"
-*/
-const TUint32 KCalendarDefaultCalendars = 0x0000000F;
+
 
 /**
 * Text string containing default calendar colors separated by commas
 * Used for creating default calendars at the startup of the device
 * Default value: "16711680,65280,255"
 */
-const TUint32 KCalendarDefaultColors = 0x00000010;
+const TUint32 KCalendarDefaultColors = 0x0000000F;
 
 /**
 * String value containing unique calendar value 
 * Used for identifying an entry by LUID + unique calendar value 
 * Default value:"0"
 */
-const TUint32 KCalendarAvailableValue = 0x00000011;
+const TUint32 KCalendarAvailableValue = 0x00000010;
 
 
 #endif  // CALENDARINTERNALCRKEYS_H
--- a/calendarui/commonutils/src/calenactionuiutils.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/commonutils/src/calenactionuiutils.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -419,7 +419,7 @@
     // match the LocalUid to the incorrect instance in a series.
     for ( TInt i=0; i < instances.Count() && !result; ++i )
         {
-        if( instances[i]->Entry().LocalUidL() == aId.iEntryLocalUid )
+        if( (instances[i]->InstanceIdL().iCollectionId == aId.iColId) && (instances[i]->Entry().LocalUidL() == aId.iEntryLocalUid )) // comparing the collection id and Local Uid 
             {
             // Check the instance time matches.
             if( instances[i]->StartTimeL().TimeLocalL() == aId.iInstanceTime )
Binary file calendarui/conf/calendarUI.confml has changed
Binary file calendarui/conf/calendarUI_101F874B.crml has changed
--- a/calendarui/controller/data/calencommonui.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/data/calencommonui.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -397,6 +397,33 @@
         }
     };
 }
+//----------------------------------------------------
+//
+// Button state extensions for toolbar and toolbar extension buttons.
+// These is required to support skinned graphics for the buttons.
+//
+//----------------------------------------------------
+//
+RESOURCE AVKON_BUTTON_STATE_EXTENSION r_calen_tb_ext_qgn_indi_cale_tb_repeat_add
+     {
+     bmbSkinIdMajor = EAknsMajorGeneric;
+     bmbSkinIdMinor = EAknsMinorGenericQgnIndiRepeatAdd;
+     //skin KAknsIIDQgnIndiRepeatAdd
+     } 
+
+RESOURCE AVKON_BUTTON_STATE_EXTENSION r_calen_tb_ext_qgn_indi_cale_tb_right
+     {
+     bmbSkinIdMajor = EAknsMajorGeneric;
+     bmbSkinIdMinor = EAknsMinorGenericQgnIndiCaleTbRight;
+     //skin KAknsIIDQgnIndiCaleTbRight
+     }
+
+RESOURCE AVKON_BUTTON_STATE_EXTENSION r_calen_tb_ext_qgn_indi_cale_tb_new_entry
+      {
+      bmbSkinIdMajor = EAknsMajorGeneric;
+      bmbSkinIdMinor = EAknsMinorGenericQgnIndiCaleTbNewEntry;
+      //skin KAknsIIDQgnIndiCaleTbNewEntry
+      }
 // ---------------------------------------------------------
 // r_calen_toolbar_extension
 // Resource for calendar toolbar
@@ -422,6 +449,7 @@
                         bmpfile = BITMAP_DIR"\\calendar.mif";
                         bmpid = EMbmCalendarQgn_indi_cale_tb_new_entry;
                         bmpmask = EMbmCalendarQgn_indi_cale_tb_new_entry_mask;
+                        extension = r_calen_tb_ext_qgn_indi_cale_tb_new_entry;
                         }
                     };
                 };
@@ -441,6 +469,7 @@
                         bmpfile = BITMAP_DIR"\\calendar.mif";
                         bmpid = EMbmCalendarQgn_indi_repeat_add;
                         bmpmask = EMbmCalendarQgn_indi_repeat_add_mask;
+                        extension = r_calen_tb_ext_qgn_indi_cale_tb_repeat_add;
                         }
                     };
                 };
@@ -455,6 +484,7 @@
                 bmpFile = BITMAP_DIR"\\calendar.mif";
                 bmpId = EMbmCalendarQgn_indi_cale_tb_right;
                 bmpMask = EMbmCalendarQgn_indi_cale_tb_right_mask ;
+                extension = r_calen_tb_ext_qgn_indi_cale_tb_right;
                 items =
                     {
                     TBAR_CTRL
@@ -472,6 +502,7 @@
                                     bmpfile = BITMAP_DIR"\\calendar.mif";
                                     bmpid = EMbmCalendarQgn_indi_cale_tb_right;
                                     bmpmask = EMbmCalendarQgn_indi_cale_tb_right_mask;
+                                    extension = r_calen_tb_ext_qgn_indi_cale_tb_right;
                                     }
                                 };
                             };
@@ -503,6 +534,7 @@
                 bmpFile = BITMAP_DIR"\\calendar.mif";
                 bmpId = EMbmCalendarQgn_indi_cale_tb_right;
                 bmpMask = EMbmCalendarQgn_indi_cale_tb_right_mask ;
+                extension = r_calen_tb_ext_qgn_indi_cale_tb_right;
                 items =
                     {
                     TBAR_CTRL
@@ -520,6 +552,7 @@
                                     bmpfile = BITMAP_DIR"\\calendar.mif";
                                     bmpid = EMbmCalendarQgn_indi_cale_tb_right;
                                     bmpmask = EMbmCalendarQgn_indi_cale_tb_right_mask;
+                                    extension = r_calen_tb_ext_qgn_indi_cale_tb_right;
                                     }
                                 };
                             };
@@ -542,6 +575,7 @@
                         bmpfile = BITMAP_DIR"\\calendar.mif";
                         bmpid = EMbmCalendarQgn_indi_repeat_add;
                         bmpmask = EMbmCalendarQgn_indi_repeat_add_mask;
+                        extension = r_calen_tb_ext_qgn_indi_cale_tb_repeat_add;
                         }
                     };
                 };
@@ -561,6 +595,7 @@
                         bmpfile = BITMAP_DIR"\\calendar.mif";
                         bmpid = EMbmCalendarQgn_indi_cale_tb_new_entry;
                         bmpmask = EMbmCalendarQgn_indi_cale_tb_new_entry_mask;
+                        extension = r_calen_tb_ext_qgn_indi_cale_tb_new_entry;
                         }
                     };
                 };
@@ -719,8 +754,7 @@
 //
 RESOURCE TBUF r_cale_multipledb_delete
     {
-    buf = "Delete calendar %U and all entries in it?";
-    //qtn_cale_db_delete_calendar_conf_query;
+    buf = qtn_cale_db_delete_calendar_conf_query;
     }
 
 // ---------------------------------------------------------
@@ -778,7 +812,7 @@
                     {
                     array_id = r_attachment_list_query_array;
                     };
-                heading = "Select:";
+                heading = qtn_cale_attachment_query_heading;
                 };
             }
         };
--- a/calendarui/controller/inc/calenmultipledbui.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/inc/calenmultipledbui.h	Fri Feb 19 22:49:53 2010 +0200
@@ -309,6 +309,7 @@
     TInt iAsyncExitCmd;
     CCalenMultiDBEditor* iDbEditor;//Not not owned
     TBool iConflictOccured;
+    TBool iIsDbEditorOpen ; 
     };
 
 
--- a/calendarui/controller/src/calenattachmentui.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calenattachmentui.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -108,7 +108,7 @@
     notificationArray.Append(ECalenNotifyInstanceDeleted);
     notificationArray.Append(ECalenNotifyMarkedEntryDeleted);
     notificationArray.Append(ECalenNotifyMultipleEntriesDeleted);
-    notificationArray.Append(ECalenNotifyDialogClosed);
+    //notificationArray.Append(ECalenNotifyDialogClosed);
     notificationArray.Append(ECalenNotifyAttachmentViewerClosed);
     iController.RegisterForNotificationsL( this, notificationArray );
     notificationArray.Reset();
@@ -161,12 +161,12 @@
                 {                                
                 iAttachmentModel->Reset();
                 iController.BroadcastNotification(ECalenNotifyAttachmentRemoved);
+                RemoveTemporaryFiles();
                 }                    
             else
                 {
                 iAttachmentModel->DeleteAttachment(0);
                 }
-            RemoveTemporaryFiles();
             attachmentInfoList.Close(); 
             }
             break;
@@ -231,7 +231,7 @@
         case ECalenNotifyEntryClosed:
         case ECalenNotifyMarkedEntryDeleted:
         case ECalenNotifyMultipleEntriesDeleted:
-        case ECalenNotifyDialogClosed:
+        //case ECalenNotifyDialogClosed:
             {
             if(!(iAddAttachmentFromViewer) && !(iAttachmentAlreadyExists))
                 {
@@ -245,12 +245,13 @@
             {
             if(iAddAttachmentFromViewer)
                 {
-                // add attachments to the entry being viewed in event viewer
-                AddAttachmentsToEntryL();
+                
                 
                 // Do not reset the model if the attachment list has been opened from the editor.
                 if(!iController.IsEditorActive())
                     {
+                    // add attachments to the entry being viewed in event viewer
+                    AddAttachmentsToEntryL();
                     // clear calendar editor's folder
                     RemoveTemporaryFiles();
                     
@@ -693,9 +694,7 @@
                         
             attachmentInfoList.Close();
             
-            // If user is adding it from editors, then dont save it now as there is a chance that user discards these
-            // changes. If user saves it, then editors will save these newly added attachments.
-            if(iController.IsEditorActive())
+            if(!iController.IsEditorActive())
                 {
                     CCalEntryView* entryView = iController.Services().EntryViewL(context.InstanceId().iColId);
                     CCalenInterimUtils2::StoreL( *entryView, *entry, ETrue );
--- a/calendarui/controller/src/calenbackgroundstate.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calenbackgroundstate.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -165,7 +165,14 @@
         {
         case ECalenNotifyAppForegrounded:
         	{
-        	SetCurrentState( aStateMachine, iPreviousState );
+        	if( iPreviousState == CCalenStateMachine::ECalenSendingState )
+        	    {
+        	    SetCurrentState( aStateMachine, CCalenStateMachine::ECalenIdleState );
+        	    }
+        	else
+        	    {
+                SetCurrentState( aStateMachine, iPreviousState );
+        	    }
         	// We set iOutstandingNotifications for two reasons.
         	// 1. The new state i.e. the state we are moving back can have notification info.
         	// 2. When we move to newstate we broadcast all notification from iOutstandingNotifications
--- a/calendarui/controller/src/calencmdlinelauncher.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calencmdlinelauncher.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -191,7 +191,7 @@
     TCalTime focusTime;
     if( focusOnTime )
         {
-        focusTime.SetTimeUtcL( iCmdParameters.iTime );
+        focusTime.SetTimeLocalL( iCmdParameters.iTime );
         }
     else
         {
--- a/calendarui/controller/src/calencontextfwlistener.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calencontextfwlistener.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -72,43 +72,57 @@
     TRACE_ENTRY_POINT;
     const CCFContextObject& co = aChangedContext.Context();
 
+#ifdef _DEBUG
     RDebug::Print( _L("----- CalendarUI - context indication:") );
     RDebug::RawPrint( co.Source() );
     RDebug::RawPrint( co.Type() );
     RDebug::RawPrint( co.Value() );
+#endif
 
     // exit alarm mode as soon as alarm is snoozed or stopped
     if( co.Source() == KAlarmUISource() && co.Type() == KAlarmUISourceResult() )
         {
+#ifdef _DEBUG
         RDebug::Print( _L("### source OK!") );
+#endif
         if( co.Value() == TPtrC( KAlarmUISourceResultValues[EResultAlarmStopped] ) )
             {
+#ifdef _DEBUG
             RDebug::Print( _L("### EResultAlarmStopped") );
+#endif
             // should close the Event view open
             iAlarmManager.StopAlarmContextListener();
             }
         else if( co.Value() == TPtrC( KAlarmUISourceResultValues[EResultAlarmSnoozed] ) )
             {
+#ifdef _DEBUG
             RDebug::Print( _L("### EResultAlarmSnoozed") );
+#endif
             // should leave the Event view
              iAlarmManager.StopAlarmContextListener(ETrue);             
             }
             //should close the event view in case of power on/off and missed alarm.
         else if( co.Value() == TPtrC( KAlarmUISourceResultValues[EResultAlarmStoppedAndExit] ) )
             {
+#ifdef _DEBUG
             RDebug::Print( _L("### EResultAlarmMissed") );
+#endif
             // should leave the Event view
              //iAlarmManager.StopAlarmContextListener(ETrue);    
             iAlarmManager.StopContextListenerForAutoSnooze(); 
             }    
         else
             {
+#ifdef _DEBUG
             RDebug::Print( _L("### value didn't match!") );
+#endif
             }
         }
     else
         {
+#ifdef _DEBUG
         RDebug::Print( _L("### source didn't match!") );
+#endif
         }
     UnsubscribeContexts();    
     CloseCFClient();
@@ -123,8 +137,10 @@
 void CCalenContextFWListener::ActionIndicationL(const CCFActionIndication& aActionToExecute)
     {
     TRACE_ENTRY_POINT;
+#ifdef _DEBUG
     RDebug::Print( _L("----- CalendarUI - action:") );
     RDebug::RawPrint( aActionToExecute.Identifier() );
+#endif
     TRACE_EXIT_POINT;
     }
 
@@ -139,11 +155,13 @@
     {
     TRACE_ENTRY_POINT;
     // no implementation
+#ifdef _DEBUG
     RDebug::Print( _L("----- CalendarUI - CF error:") );
     RDebug::Print( _L("aError: %d"), aError );
     RDebug::RawPrint( aSource );
     RDebug::RawPrint( aType );
     RDebug::Print( _L("-----------------------------") );
+#endif
     ASSERT( !aError );
     TRACE_EXIT_POINT;
     }
@@ -201,7 +219,9 @@
 
     const TInt err = iCFClient->PublishContext( *co );
     CleanupStack::PopAndDestroy( co );
+#ifdef _DEBUG
     RDebug::Print( _L("### PublishContext - err: %d"), err );
+#endif
     User::LeaveIfError( err );
     TRACE_EXIT_POINT;
     }
@@ -313,7 +333,9 @@
         for( TInt i(0); i < arr.Count(); i++ )
             {
             CCFContextObject* obj = arr[i];
+#ifdef _DEBUG
             RDebug::Print( _L("### found alarm context: %S"), &(obj->Value()) );
+#endif
 
             if( obj->Value() == TPtrC( KAlarmUISourceStateValues[EStateCalendarAlarm] ) )
                 {
--- a/calendarui/controller/src/calenicons.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calenicons.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -574,7 +574,7 @@
         	break;
         case MCalenServices::ECalenMeetingIconMissed:
             {
-            icon = CreateBitmapSkinnedIconL( KAknsIIDQgnIndiCdrMeeting, 
+            icon = CreateBitmapSkinnedIconL( KAknsIIDQgnIndiCdrMeetingMissedNew,
                                                           iIconFile, 
                                                           EMbmCalendarQgn_indi_cdr_meeting_missed_new, 
                                                           EMbmCalendarQgn_indi_cdr_meeting_missed_new_mask );
@@ -582,7 +582,7 @@
             break;     
         case MCalenServices::ECalenBirthdayIconMissed:
             {
-            icon = CreateBitmapSkinnedIconL( KAknsIIDQgnIndiCdrBirthday, 
+            icon = CreateBitmapSkinnedIconL(KAknsIIDQgnIndiCdrBirthdayMissedNew, 
                                                           iIconFile, 
                                                           EMbmCalendarQgn_indi_cdr_birthday_missed_new, 
                                                           EMbmCalendarQgn_indi_cdr_birthday_missed_new_mask );
@@ -590,7 +590,7 @@
             break;     
         case MCalenServices::ECalenDaynoteIconMissed:
             {
-            icon = CreateBitmapSkinnedIconL( KAknsIIDQgnIndiCdrReminder, 
+            icon = CreateBitmapSkinnedIconL( KAknsIIDQgnIndiCdrReminderMissedNew,
                                                           iIconFile, 
                                                           EMbmCalendarQgn_indi_cdr_reminder_missed_new, 
                                                           EMbmCalendarQgn_indi_cdr_reminder_missed_new_mask );
@@ -598,7 +598,7 @@
             break;     
         case MCalenServices::ECalenToDoIconMissed:
             {
-            icon = CreateBitmapSkinnedIconL( KAknsIIDQgnIndiCdrTodo, 
+            icon = CreateBitmapSkinnedIconL( KAknsIIDQgnIndiCdrTodoUndoneMissedNew, 
                                                           iIconFile, 
                                                           EMbmCalendarQgn_indi_cdr_todo_undone_missed_new, 
                                                           EMbmCalendarQgn_indi_cdr_todo_undone_missed_new_mask );
--- a/calendarui/controller/src/calenmultidbeditor.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calenmultidbeditor.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -430,6 +430,26 @@
     {
     TRACE_ENTRY_POINT;
     
+    if(iEditFlag)
+        {
+        TBuf8<KBuffLength> keyBuff;    
+        keyBuff.AppendNum(ESyncConfigEnabled);
+        TBool syncConfigEnabled = EFalse;
+        TPckgC<TBool> pkgSyncConfigEnabled(syncConfigEnabled);
+        
+        TRAPD(err,pkgSyncConfigEnabled.Set(iCalendarInfo.PropertyValueL(keyBuff)));
+        syncConfigEnabled = pkgSyncConfigEnabled();
+        
+        //If this sync property(ESyncConfigEnabled) is set and enabled , 
+        //then sync on/off should not be shown be to the user.
+        //This behaviour is only for certain calendars created 
+        //from device sync with this property set.
+        if(err == KErrNone && syncConfigEnabled)
+            {
+            DeleteLine(ECalenMultiDbSyncStatus);
+            }
+        }
+    
     // Set data to controls in the editor.
     SetDataToFormL();
     
@@ -742,12 +762,15 @@
     		}
 
         //Filling the sync value into metadata
-        TBuf8<KBuffLength> keyBuff;
-        keyBuff.Zero();
-        keyBuff.AppendNum(ESyncStatus);
+       	if(ControlOrNull(ECalenMultiDbSyncStatus))
+       	    {
+            TBuf8<KBuffLength> keyBuff;
+            keyBuff.Zero();
+            keyBuff.AppendNum(ESyncStatus);
 
-        TPckgC<TBool> pkgSyncStatus(iSyncStatus);
-        iCalendarInfo.SetPropertyL(keyBuff, pkgSyncStatus);
+            TPckgC<TBool> pkgSyncStatus(iSyncStatus);
+            iCalendarInfo.SetPropertyL(keyBuff, pkgSyncStatus);
+       	    }
 
         if( IsVisiblityFieldEditedL( iCalendarStatus ) )
             {
@@ -1128,6 +1151,12 @@
 void CCalenMultiDBEditor::SetSyncFieldL( TBool aSyncVal )
     {
     TRACE_ENTRY_POINT;
+    
+    if(!ControlOrNull(ECalenMultiDbSyncStatus))
+        {
+        return;
+        }
+    
     HBufC* syncString( NULL );
     CEikEdwin* syncFieldText =( CEikEdwin* )Control( ECalenMultiDbSyncStatus );
     if( EFalse == aSyncVal )
--- a/calendarui/controller/src/calenmultipledbui.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calenmultipledbui.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -1347,9 +1347,11 @@
             aEventType == EEventItemSingleClicked )
            {
            const TInt index(iListBox->CurrentItemIndex());
-           if ( index != KErrNotFound )
+           if ( index != KErrNotFound && !iIsDbEditorOpen )
                {
+               iIsDbEditorOpen = ETrue ;
                ProcessCommandL( ECalenCmdEdit );
+               iIsDbEditorOpen = EFalse ;
                }
            }
        }
--- a/calendarui/controller/src/calennotifier.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/controller/src/calennotifier.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -80,6 +80,8 @@
     // Release the global data
     if( iGlobalData )
         {
+        // stop listening for calendar file change notifications
+        iGlobalData->CalSessionL().StopFileChangeNotification();
         iGlobalData->Release();
         }
 
@@ -109,8 +111,7 @@
     iHandlers.Reset();
     iBroadcastQueue.Reset();
 
-	// stop listening for calendar file change notifications
-	iGlobalData->CalSessionL().StopFileChangeNotification();
+	
 	
 	iAsyncCallback->Cancel();
 	delete iAsyncCallback;
--- a/calendarui/editors/data/CalenDefaultEditorsData.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/editors/data/CalenDefaultEditorsData.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -1656,42 +1656,4 @@
         };
     }
 
-// ---------------------------------------------------------
-// Description list query
-// List query for the description types
-// ---------------------------------------------------------
-RESOURCE AVKON_MULTISELECTION_LIST_QUERY r_description_list_query
-    {
-    flags = EGeneralQueryFlags;
-    softkeys = R_AVKON_SOFTKEYS_SELECT_CANCEL__SELECT;
-    items =
-        {
-        AVKON_MULTISELECTION_LIST_QUERY_DLG_LINE
-            {
-            control = AVKON_LIST_QUERY_CONTROL
-                {
-                listtype = EAknCtSinglePopupMenuListBox;
-                listbox = AVKON_LIST_QUERY_LIST
-                    {
-                    array_id = r_description_list_query_array;
-                    };
-                heading = text_softkey_select;
-                };
-            }
-        };
-    }
-
-// ---------------------------------------------------------
-// Description list query array
-// List of the description types
-// ---------------------------------------------------------
-RESOURCE ARRAY r_description_list_query_array
-    {
-    items=
-        {
-        LBUF { txt = qtn_cale_om_descript_new; },
-        LBUF { txt = qtn_cale_om_descript_exist; }
-        };
-    }
-
 // End of File
--- a/calendarui/editors/inc/CalenDescription.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/editors/inc/CalenDescription.h	Fri Feb 19 22:49:53 2010 +0200
@@ -181,11 +181,7 @@
      */
     HBufC* ExecTextViewerL(TInt& aStatus, const TDesC& aDescription);
     
-    /**
-     * Handles ECalenCmdAddDescription command 
-     */
-    TBool HandleAddDescriptionL();
-    
+        
 private:
     
     /**
--- a/calendarui/editors/inc/calenunifiededitorcontrol.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/editors/inc/calenunifiededitorcontrol.h	Fri Feb 19 22:49:53 2010 +0200
@@ -270,6 +270,12 @@
         
         const TDesC& GetCalendarNameForEntryL();
         
+        /**
+         * @brief Handle error codes related to the editor fields.
+         * @param aError
+         */
+        void HandleErrorL( const TInt& aError );
+        
     private:
         
         /**
--- a/calendarui/editors/src/CalenDescription.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/editors/src/CalenDescription.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -16,7 +16,6 @@
 */
 
 // system includes
-#include <aknlistquerydialog.h>
 #include <aknnotewrappers.h>
 #include <AknQueryDialog.h>
 #include <calentry.h>
@@ -193,17 +192,24 @@
     TBool processed = EFalse;
     switch( aCommandId )
         {
-        case ECalenCmdAddDescription:
-            {
-            processed = HandleAddDescriptionL();
-            break;
-            }
         case ECalenCmdShowDescription:
             {
             ShowL();
             processed = ETrue;
             break;
             }
+        case ECalenCmdAddDescriptionNew:
+            {
+            AddNewL();
+            processed = ETrue;
+            break;
+            }
+        case ECalenCmdAddDescriptionExisting:
+            {
+            AddMemoL();
+            processed = ETrue;
+            break;
+            }
         case ECalenCmdRemoveDescription:
             {
             RemoveL();
@@ -577,45 +583,4 @@
     TRACE_EXIT_POINT;
     return desc;
     }
-
-// ----------------------------------------------------------------------------
-// CCalenDescription::HandleAddDescriptionL
-// Handles the command ECalenAddDescription
-// ----------------------------------------------------------------------------
-// 
-TBool CCalenDescription::HandleAddDescriptionL()
-    {
-    TRACE_ENTRY_POINT;
-    
-    TBool processed = EFalse;
-    TInt selectedIndex(0);
-    CAknListQueryDialog* dlg = new (ELeave) CAknListQueryDialog(&selectedIndex);
-    dlg->PrepareLC( R_DESCRIPTION_LIST_QUERY );
-    
-    if(dlg->RunLD())
-        {
-        switch(selectedIndex)
-            {
-            case 0:             //ECalenCmdAddDescriptionNew
-                {
-                AddNewL();
-                processed = ETrue;
-                break;
-                }
-            case 1:             //ECalenCmdAddDescriptionExisting
-                {
-                AddMemoL();
-                processed = ETrue;
-                break;
-                }
-            default:
-                break;
-            }
-        }
-	
-	TRACE_EXIT_POINT;
-	
-    return processed;
-    
-    }
 //  End of File
--- a/calendarui/editors/src/calenunifiededitor.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/editors/src/calenunifiededitor.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -1242,19 +1242,7 @@
                             }
                         break;
                         }
-                    case ECalenEditorDescription:
-                        {
-                        CEikEdwin* edwin = static_cast<CEikEdwin*>( Control( focusControl ) );  
-                        if ( edwin && edwin->Text()->DocumentLength() == 0 )
-                            {
-                                ProcessCommandL( ECalenCmdAddDescription );
-                            }
-                        else
-                            {
-                                ProcessCommandL( ECalenCmdShowDescription );
-                            }
-                        break;
-                        }
+
                     default:
                         {
                         break;
@@ -2185,7 +2173,7 @@
         {
         // If save error occurs, display error message.
         DisplayErrorMsgL( error );
-       // HandleErrorL(error);
+        iUnifiedEditorControl->HandleErrorL(error);
         TRACE_EXIT_POINT;
         return EFalse;
         }
@@ -2248,7 +2236,7 @@
             }
 		}
     
-    if(!IsCreatingNewEntry())
+    if(!IsCreatingNewEntry() && !iEditorDataHandler->IsCalendarEditedL())
         {
         iServices->EntryViewL(iEditorDataHandler->PreviousDbCollectionId())
                                                 ->DeleteL(*iOriginalCalEntry);
@@ -2278,7 +2266,11 @@
                    newInstanceEndDate,
                    iUnifiedEditorControl->GetCalendarNameForEntryL() ) );
         }
-
+    if(!IsCreatingNewEntry() && iEditorDataHandler->IsCalendarEditedL())
+        {
+        iServices->EntryViewL(iEditorDataHandler->PreviousDbCollectionId())
+                                                ->DeleteL(*iOriginalCalEntry);
+        }
     iEntryUiOutParams.iSpare = (TUint32) entry->LocalUidL();
 
     CleanupStack::PopAndDestroy(entry);
@@ -2314,7 +2306,6 @@
 
         CCalenEditorDataHandler::TAction action =
             EditorDataHandler().ShouldSaveOrDeleteOrDoNothingL();
-        
         if( iHasChosenRepeatType && iRepeatType == CalCommon::EThisAndAll ) 
         {
         // Check for the errors, with the entered data
--- a/calendarui/editors/src/calenunifiededitorcontrol.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/editors/src/calenunifiededitorcontrol.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -1478,5 +1478,48 @@
     
     TRACE_EXIT_POINT;
     }
+// -----------------------------------------------------------------------------
+// CCalenUnifiedEditorControl::HandleErrorL()
+// Handles errors. This function may be called on saving note.
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CCalenUnifiedEditorControl::HandleErrorL(const TInt& aError)
+    {
+    TRACE_ENTRY_POINT;
+    if( aError == CCalenEditorDataHandler::EFormErrDurationGreaterThanRepeatInterval )
+        {
+        iUnifiedEditor.TryChangeFocusToL(ECalenEditorRepeat);
+        }
+    else if( aError == CCalenEditorDataHandler::EFormErrOutOfSequence )
+        {
+        iUnifiedEditor.TryChangeFocusToL(ECalenEditorStartDate);
+        }
+    else if( aError == CCalenEditorDataHandler::EFormErrOverlapsExistingInstance )
+        {
+        iUnifiedEditor.TryChangeFocusToL(ECalenEditorStartDate);
+        }
+    else
+        {
+        if( aError == CCalenEditorDataHandler::EFormErrInstanceAlreadyExistsOnThisDay )
+            {   
+            iUnifiedEditor.TryChangeFocusToL(ECalenEditorStartDate);
+            }    
+        }
 
+    if (iReminderField->HandleErrorL(aError) )
+        {
+        TRACE_EXIT_POINT;
+        return;
+        }
+    if ( iRepeatField->HandleErrorL(aError) )
+        {
+        TRACE_EXIT_POINT;
+        return;
+        }
+
+    TRACE_EXIT_POINT;
+    }
 // End of file
+
+
Binary file calendarui/help/data/xhtml.zip has changed
--- a/calendarui/help/inc/cale.hlp.hrh	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/help/inc/cale.hlp.hrh	Fri Feb 19 22:49:53 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2010 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"
--- a/calendarui/loc/calendar.loc	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/loc/calendar.loc	Fri Feb 19 22:49:53 2010 +0200
@@ -2593,5 +2593,35 @@
 //w:
 //r: 9.2
 #define qtn_options_mark_undone "Not Done"
+
+//d: Default calendar name.
+//l: list_double_pane_t1
+//w:
+//r: 9.2
+#define qtn_cale_db_calendar_name "Calendar"
+
+//d: Default calendar name with Calendar(01), Calendar(02) etc..
+//l: list_double_pane_t1
+//w:
+//r: 9.2
+#define qtn_cale_db_calendar_default_name "Calendar(%U)"
+
+//d: Name for personal calendar.
+//l: list_double_pane_t1
+//w:
+//r: 9.2
+#define qtn_cale_db_personal "Personal"
+
+//d: name for family calendar.
+//l: list_double_pane_t1
+//w:
+//r: 9.2
+#define qtn_cale_db_family "Family"
+
+//d: name for friends calendar.
+//l: list_double_pane_t1
+//w:
+//r: 9.2
+#define qtn_cale_db_friends "Friends"
         
 // End of File
--- a/calendarui/organizerplugin/aiagendaplugin2/data/aicalendarplugin2.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/data/aicalendarplugin2.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -18,7 +18,7 @@
 
 // INCLUDES
 #include "aicalendarplugin2uids.hrh"
-#include <aicontentpublisheruid.hrh>
+#include <hscontentpublisheruid.hrh>
 #include <ecom/registryinfov2.rh>
 
 // RESOURCE DEFINITIONS 
@@ -40,7 +40,7 @@
         INTERFACE_INFO
         {
             // UID of the implemented interface
-            interface_uid = AI_UID_ECOM_INTERFACE_CONTENTPUBLISHER;
+            interface_uid = HS_UID_ECOM_INTERFACE_CONTENTPUBLISHER;
 
             implementations = 
             {
--- a/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2.h	Fri Feb 19 22:49:53 2010 +0200
@@ -21,9 +21,7 @@
 
 #include <AknsDrawUtils.h>
 #include <AknUtils.h> 
-#include <aicontentpublisher.h>
-#include <aipropertyextension.h>
-#include <aieventhandlerextension.h>
+#include <hscontentpublisher.h>
 #include "PluginDataChangeObserver.h"
 
 class CAIAgendaPluginEngineIf;
@@ -40,9 +38,7 @@
  *  @lib aicalendarplugin2
  *  @since S60 3.2
  */
-NONSHARABLE_CLASS( CAICalendarPlugin2 ): public CAiContentPublisher,
-                                         public MAiPropertyExtension,
-                                         public MAiEventHandlerExtension,
+NONSHARABLE_CLASS( CAICalendarPlugin2 ): public CHsContentPublisher,
                                          public MPluginDataChangeObserver
 {
     public:
@@ -53,30 +49,48 @@
 
         ~CAICalendarPlugin2();
 
-    // From CAiContentPublisher
+    // From CHsContentPublisher
 
-        void Resume( TAiTransitionReason aReason );
+        /**
+         * @see CHsContentPublisher
+         */
+        void Start( TStartReason aReason );
+
+        /**
+         * @see CHsContentPublisher
+         */
+        void Stop( TStopReason aReason );
 
-        void Suspend( TAiTransitionReason aReason );
+        /**
+         * @see CHsContentPublisher
+         */    
+        void Resume( TResumeReason aReason );
 
-        void Stop( TAiTransitionReason aReason );
+        /**
+         * @see CHsContentPublisher
+         */    
+        void Suspend( TSuspendReason aReason );
 
+        /**
+         * @see CHsContentPublisher
+         */    
         void SubscribeL( MAiContentObserver& aObserver );
 
+        /**
+         * @see CHsContentPublisher
+         */    
         void ConfigureL( RAiSettingsItemArray& aSettings );
 
-        TAny* Extension( TUid aUid );
-
-    // from MAiPropertyExtension
-
-        TAny* GetPropertyL( TInt aProperty );
+        /**
+         * @see CHsContentPublisher
+         */    
+        TAny* GetProperty( TProperty aProperty );
 
-        void SetPropertyL( TInt aProperty, TAny* aValue );
-
-    // from MAiEventHandlerExtension
-
+        /**
+         * @see CHsContentPublisher
+         */   
         void HandleEvent( TInt aEvent, const TDesC& aParam );
-
+        
     // From MPluginDataChangeObserver
 
         void PluginDataChanged( const RPointerArray<CCalInstance>& aEntryArray,
@@ -92,7 +106,7 @@
 
     // New methods
     
-        void DoResumeL( TAiTransitionReason aReason );
+        void DoResumeL( TResumeReason aReason );
         
         void CreateIconsL();
         
--- a/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2constantdata.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2constantdata.h	Fri Feb 19 22:49:53 2010 +0200
@@ -21,11 +21,12 @@
 
 // INCLUDES
 #include <e32base.h>
-#include <aipropertyextension.h>
+#include <hscontentpublisher.h>
 
 // FORWARD DECLARATIONS
 class MAiContentItemIterator;
 
+
 /**
  *  Constant data container.
  *  Active Idle Calendar plug-in 2 constant data container.
@@ -51,9 +52,7 @@
 
         const TDesC& MakeEventOnL( const TTime& aTime );
         
-        TAny* GetPropertyL( TInt aProperty );
-        
-        void SetPropertyL( TInt aProperty, TAny* aValue );
+        TAny* GetPropertyL( CHsContentPublisher::TProperty aProperty );
 
         /**
          * Tell if we need to append end time to "not today timed" events.
@@ -114,12 +113,6 @@
         HBufC*                              iDateFormatWithoutYearWithZero;
 
         /**
-         * This plugins publisher info.
-         * Own.
-         */
-        TAiPublisherInfo                    iInfo;
-
-        /**
          * Plugin content iterator.
          * Own.
          */
--- a/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2constants.hrh	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2constants.hrh	Fri Feb 19 22:49:53 2010 +0200
@@ -89,21 +89,21 @@
 const TInt KAICal2DefaultBufferLen = 35;
 
 _LIT( KAICal2WesternSummaryLocationSeparator, ", " );
-_LIT( KAICal2ArabicSummaryLocationSeparator, " /x060c" );
+_LIT( KAICal2ArabicSummaryLocationSeparator, " \x060c" );
 /**
  * KReplaceWhitespaceChars contains some characters that should be replaced by space
  * in Calendar popup, day view etc. 
  * Following characters are replaced with space
- * /x0009 horizontal tab
- * /x000a new line
- * /x000b line tabulation (vertical
- * /x000c form feed
- * /x000d carriage return
- * /x2028 line separator
- * /x2029 paragraph separator
+ * \x0009 horizontal tab
+ * \x000a new line
+ * \x000b line tabulation (vertical
+ * \x000c form feed
+ * \x000d carriage return
+ * \x2028 line separator
+ * \x2029 paragraph separator
  */
 _LIT( KAICal2ReplaceWhitespaceChars,
-"/x0009/x000A/x000B/x000C/x000D/x2028/x2029" );
+"\x0009\x000A\x000B\x000C\x000D\x2028\x2029" );
 
 _LIT16( KAICal2CmdTODAY, "TODAY" ); // Calendar command parameter
 _LIT16( KAICal2CmdDAY, "DAY " ); // Calendar command parameter
--- a/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2data.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/inc/aicalendarplugin2data.h	Fri Feb 19 22:49:53 2010 +0200
@@ -21,7 +21,6 @@
 
 // INCLUDES
 #include <e32base.h>
-#include <aipropertyextension.h>
 #include <aicontentobserver.h>
 #include "aicalendarplugin2eventitem.h"
 
--- a/calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -320,23 +320,15 @@
     iMasks.Compress();
     }    
 
-void CAICalendarPlugin2::Resume( TAiTransitionReason aReason )
+void CAICalendarPlugin2::Resume( TResumeReason aReason )
     {
     TRAP_IGNORE( DoResumeL( aReason ) );
     }
 
-void CAICalendarPlugin2::DoResumeL( TAiTransitionReason aReason )
+void CAICalendarPlugin2::DoResumeL( TResumeReason aReason )
     {
-    if( aReason == EAiIdleForeground ||
-        aReason == EAiBacklightOn ||
-        aReason == EAiSystemStartup ||
-        aReason == EAiGeneralThemeChanged )
+    if( aReason == EForeground )
         {
-        if( aReason == EAiGeneralThemeChanged )
-            {
-            // Reset for republishing. Especially icons!
-            iPublishedDataStore.Reset();
-            }
         if( !iEngine )
             {
             iEngine = CAIAgendaPluginEngineIf::NewL( *this, ECalendarAndTodoObserver );
@@ -348,13 +340,20 @@
         }
     }
 
-void CAICalendarPlugin2::Suspend( TAiTransitionReason /*aReason*/ )
+void CAICalendarPlugin2::Suspend( TSuspendReason aReason )
     {
-    delete iEngine;
-    iEngine = NULL;
+    if ( aReason == EGeneralThemeChange )
+        {
+        // Reset for republishing. Especially icons!
+        iPublishedDataStore.Reset();
+        }
+    }
+	
+void CAICalendarPlugin2::Start( TStartReason /*aReason*/ )
+    {    
     }
 
-void CAICalendarPlugin2::Stop( TAiTransitionReason /*aReason*/ )
+void CAICalendarPlugin2::Stop( TStopReason /*aReason*/ )
     {
     delete iEngine;
     iEngine = NULL;
@@ -462,31 +461,15 @@
     aSettings.ResetAndDestroy();
     }
 
-TAny* CAICalendarPlugin2::Extension( TUid aUid )
+TAny* CAICalendarPlugin2::GetProperty( TProperty aProperty )
     {
-    if (aUid == KExtensionUidProperty)
-        {
-        return static_cast<MAiPropertyExtension*>(this);
-        }
-    else if (aUid == KExtensionUidEventHandler)
-        {
-        return static_cast<MAiEventHandlerExtension*>(this);
-        }
-    return NULL;
+    TAny* result( NULL );
+	
+    TRAP_IGNORE( result = iConstantData->GetPropertyL( aProperty ) );
+    
+	return result;
     }
 
-TAny* CAICalendarPlugin2::GetPropertyL( TInt aProperty )
-    {
-    return iConstantData->GetPropertyL( aProperty );
-    }
-
-void CAICalendarPlugin2::SetPropertyL( TInt aProperty, TAny* aValue )
-    {
-    if( aValue )
-        {
-        iConstantData->SetPropertyL( aProperty, aValue );
-        }
-    }
 
 void CAICalendarPlugin2::HandleEvent( TInt aEvent, const TDesC& aParam )
     {
--- a/calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2constantdata.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2constantdata.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -22,7 +22,6 @@
 #include <StringLoader.h>
 #include <aicontentmodel.h>
 #include <aiutility.h>
-#include <aipropertyextension.h>
 #include <AknUtils.h>
 
 // CONSTANTS
@@ -136,38 +135,25 @@
     return *iNextEventOnCombined;
     }
 
-void CAICalendarPlugin2ConstantData::SetPropertyL( TInt aProperty, TAny* aValue )
-    {
-    if( aProperty == EAiPublisherInfo )
-        {
-        ASSERT( aValue );
-        
-        const TAiPublisherInfo* info( 
-                static_cast<const TAiPublisherInfo*>( aValue ) );
-                
-        iInfo = *info;
-        }        
-    }
-
-TAny* CAICalendarPlugin2ConstantData::GetPropertyL( TInt aProperty )
+TAny* CAICalendarPlugin2ConstantData::GetPropertyL( CHsContentPublisher::TProperty aProperty )
     {
-    switch( aProperty )
-    {
-    case EAiPublisherInfo:
-        return &iInfo;
-
-    case EAiPublisherContent:
+    if( aProperty == CHsContentPublisher::EPublisherContent )
+        {
         return iContent;
-
-    case EAiPublisherResources:
+        }
+    else if( aProperty == CHsContentPublisher::EPublisherResources )
+        {
         return iResources;
-
-    case EAiPublisherEvents:
+        }
+    else if( aProperty == CHsContentPublisher::EPublisherEvents )
+        {
         return iEvents;
-
-    case EAiPluginName:
+        }
+    else if( aProperty == CHsContentPublisher::EPluginName )
+        {
         return StringLoader::LoadL( R_QTN_AI_CALE_PLUGIN_NAME );
-    }
+        }
+		
     return NULL;
     }
 
--- a/calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2data.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendaplugin2/src/aicalendarplugin2data.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -19,7 +19,6 @@
 #include "aicalendarplugin2contentmodel.h"
 #include "aicalendarplugin2constants.hrh"
 #include <aicontentmodel.h>
-#include <aipropertyextension.h>
 #include <e32cmn.h>
 
 // Helper for sort method
--- a/calendarui/organizerplugin/aiagendapluginengine/src/CalenAsyncCommands.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendapluginengine/src/CalenAsyncCommands.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -195,6 +195,11 @@
                 {
                 iEngine.iInstanceView = CCalInstanceView::NewL( sessionArray, *this );
                 }
+            else
+                {
+                iState = ESignalCaller;
+                CompleteSelf();
+                }
             }
             break;
 
@@ -366,8 +371,8 @@
             {
             if( !iEngine.iInstanceView )
                 {
-                // open command / instance view creation failed
-                User::Leave( KErrNotFound );
+                iState = EFinalize;
+                CompleteSelf();
                 }
             else
                 {
@@ -551,8 +556,15 @@
         {
         case EFetch:
             {
-            // create date range and fetch entries
-
+            if( !iEngine.iInstanceView )
+                {
+                iState = EFinalize;
+                CompleteSelf();
+                }
+            else
+                {
+                // create date range and fetch entries
+    
                 CalCommon::TCalViewFilter filter = CalCommon::EIncludeAppts    | 
                                                    CalCommon::EIncludeReminder;
 
@@ -562,6 +574,7 @@
 
                 iState = EFinalize;
                 CompleteSelf();
+                }
             }
             break;
 
@@ -726,9 +739,11 @@
 
             if( !iEngine.iInstanceView )
                 {
-                User::Leave( KErrBadHandle ); // we have a null pointer
+                iState = ESignalCaller;
+                CompleteSelf();
                 }
-
+            else
+                {
                 iEngine.iInstanceView->FindInstanceL( iInstanceArray, 
                                                       CalCommon::EIncludeIncompletedTodos |
                                                       // only fetch the first instance for repeating to-dos!
@@ -737,6 +752,7 @@
 
                 iState = ESignalCaller;
                 CompleteSelf();
+                }
             }
             break;
 
@@ -878,8 +894,8 @@
             {
             if( !iEngine.iInstanceView )
                 {
-                // open command / instance view creation failed
-                User::Leave( KErrNotFound );
+                iState = EFinalize;
+                CompleteSelf();
                 }
             else
                 {
--- a/calendarui/organizerplugin/aiagendapluginengine/src/CalenEngine.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/aiagendapluginengine/src/CalenEngine.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -143,8 +143,9 @@
     for (TInt index = 0; index < iCalInfoArray.Count(); index++)
         {
         TPtrC calFileName = iCalInfoArray[index].iFileName;
-        
+#ifdef _DEBUG
         RDebug::Print(calFileName);
+#endif
         if (!calFileName.CompareF(defaultSession->DefaultFileNameL()))
             {
             CleanupStack::PushL(defaultSession);
--- a/calendarui/organizerplugin/data/qhd_tch/organizer_2001f481/loc/organizerconfiguration.loc	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/organizerplugin/data/qhd_tch/organizer_2001f481/loc/organizerconfiguration.loc	Fri Feb 19 22:49:53 2010 +0200
@@ -25,4 +25,4 @@
 // l: listrow_wgtman_pane_t2
 // w:
 // r: TB9.2
-#define qtn_organizer_widget_description  "Organizer Widget"
\ No newline at end of file
+#define qtn_organizer_widget_description  "Informs you of calendar events. Provides quick access to calendar."
--- a/calendarui/regionalplugins/calenregionalutil/src/calenextrarowformatter.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/regionalplugins/calenregionalutil/src/calenextrarowformatter.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -210,30 +210,40 @@
             TInt subIx = subLabels.Find( field );
             // Replace 
             subs->Delete(subIx);
-            RDebug::Print( _L("A sub count  %d"), subs->Count() );                       
+#ifdef _DEBUG
+            RDebug::Print( _L("A sub count  %d"), subs->Count() );         
+#endif
             subs->InsertL(subIx, TPtrC( aLocInfo.GetField( field ) ) );
+#ifdef _DEBUG
             RDebug::Print( _L("B sub count %d"), subs->Count() );                       
-            RDebug::Print( _L("B field %S"), &(subs->At(subIx)) );                       
+            RDebug::Print( _L("B field %S"), &(subs->At(subIx)) );
+#endif
             
             }
         
         // Format all fields to extra row     
         HBufC* extraRowFmt = StringLoader::LoadLC( R_CALE_EXTRA_ROW_LUNAR );
         
+#ifdef _DEBUG
         RDebug::RawPrint( *extraRowFmt );
+#endif
         
         TBuf<1000> fmt = *extraRowFmt;
         for (TInt i=0; i < subLabels.Count(); i++)
             {
+#ifdef _DEBUG
             RDebug::Print( _L("Before Format") );
             RDebug::RawPrint( fmt );
+#endif
             StringLoader::Format( iText, 
                                   fmt,
                                   i + 1, // %0U is a separator 
                                   subs->At( i ) );
             fmt = iText;
+#ifdef _DEBUG
             RDebug::Print( _L("After Format") );
             RDebug::RawPrint( fmt );
+#endif
             }
         
         // Now we have something like "Year of Dog%0U%0U6/11%0U%0U" 
@@ -241,15 +251,19 @@
         _LIT(KSeparatorFmt, "%0U");
         
         CollapseDuplicatesL( iText, 0, KSeparatorFmt );
+#ifdef _DEBUG
         RDebug::Print( _L("After collapse") );
         RDebug::RawPrint( iText );
+#endif
 
         // Remove leading and trailing %0U
         // By now, we are sure that there is max 1 %0U in the beginning
         // and in the end of string.
         RemoveLeadingAndTrailingL( iText, KSeparatorFmt );
+#ifdef _DEBUG
         RDebug::Print( _L("After leading and trailing removal") );
         RDebug::RawPrint( iText );
+#endif
         
 
         // If there are now separators anymore, then do not fill them
@@ -266,8 +280,10 @@
                                   0, // %0U is a separator 
                                   *separator );
         
+#ifdef _DEBUG
             RDebug::Print( _L("After separator insert") );
             RDebug::RawPrint( iText );
+#endif
             CleanupStack::PopAndDestroy( separator );
             }
 
--- a/calendarui/regionalplugins/calenregionalutil/src/calenlunarlocalizer.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/regionalplugins/calenregionalutil/src/calenlunarlocalizer.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -180,13 +180,17 @@
     yearSubs->AppendL( iTerrestialBranchNames->MdcaPoint( aInfo.iTerrestialBranch ) );
 
     HBufC* tmp = StringLoader::LoadLC( R_CALE_LUNAR_YEAR, *yearSubs, iEikEnv );
+#ifdef _DEBUG
     RDebug::Print( *tmp );
+#endif
     localized->iLunarYear = *tmp;
     CleanupStack::PopAndDestroy( tmp );
     CleanupStack::PopAndDestroy( yearSubs );
 
+#ifdef _DEBUG
     RDebug::Print(     localized->iLunarYear  );
-
+#endif
+    
     LocalizeMonthAndDayL(localized, aInfo);
     
     // Full lunar date
--- a/calendarui/regionalplugins/lunarVietnamese/src/calenlunarvietnameseplugin.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/regionalplugins/lunarVietnamese/src/calenlunarvietnameseplugin.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -380,8 +380,7 @@
 												CEikMenuPane* aMenuPane )
 	{
 	TRACE_ENTRY_POINT;
-	HBufC* itemText =  HBufC::NewLC(100);//= StringLoader::LoadLC(R_CALENDAR_SHOW_LUNAR_DATA);
-	itemText->Des().Append(_L("Viet No Settings"));
+	HBufC* itemText = StringLoader::LoadLC(R_CALENDAR_SHOW_LUNAR_DATA);
     
     CEikMenuPaneItem::SData menuItem;
     menuItem.iCommandId = iStart; 
--- a/calendarui/server/CalenSvr/data/calensvrmissedalarmmanagerresource.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/data/calensvrmissedalarmmanagerresource.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -28,6 +28,7 @@
 #include <AvkonIcons.hrh>
 #include <avkon.mbg>
 #include <calensvrmissedalarmmanager.loc>
+#include <calendar.loc>
 
 RESOURCE RSS_SIGNATURE
     { 
@@ -66,4 +67,20 @@
 	plural_label   = r_missed_alarm_ungroup_plural;
 	}
 
+RESOURCE TBUF r_cale_db_personal
+    {
+    buf = qtn_cale_db_personal; 
+    }
+
+RESOURCE TBUF r_cale_db_family
+    {
+    buf = qtn_cale_db_family; 
+    }
+
+RESOURCE TBUF r_cale_db_friends
+    {
+    buf = qtn_cale_db_friends; 
+    }
+
+
 // End of File
--- a/calendarui/server/CalenSvr/group/CalenSvr.mmp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/group/CalenSvr.mmp	Fri Feb 19 22:49:53 2010 +0200
@@ -68,6 +68,8 @@
 LIBRARY         missedalarmstore.lib
 LIBRARY         calencommonutils.lib
 LIBRARY         caleninterimutils2.lib
+LIBRARY         efsrv.lib
+LIBRARY         PlatformEnv.lib
 
 
 sourcepath      ../data
--- a/calendarui/server/CalenSvr/inc/CalSvrSession.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/inc/CalSvrSession.h	Fri Feb 19 22:49:53 2010 +0200
@@ -44,6 +44,7 @@
 public: // From MCalenEngineOpenCallback
     void DatabaseOpened();
     void DatabaseTemporarilyClosed();
+    void HandleError();  
 
 private:
     CCalenServer* Server() const;
--- a/calendarui/server/CalenSvr/inc/CalenServer.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/inc/CalenServer.h	Fri Feb 19 22:49:53 2010 +0200
@@ -92,7 +92,7 @@
      * 
      * @param aCalendarNames a reference to the calendar names list
      */
-    void ReadCalendarNamesFromCenrepL(CDesC16ArrayFlat& aCalendarNames);
+    void ReadCalendarNamesFromResourceL(CDesC16ArrayFlat& aCalendarNames);
     
     /**
      * @brief read calendar colors from central repository
@@ -102,15 +102,6 @@
     void ReadCalendarColorsFromCenrepL(RArray<TInt>& aCalendarColors);
     
     /**
-     * @brief populate calendar names list from central repository buffer
-     * 
-     * @param aRepositoryBuffer a reference to central repository buffer
-     * @param aCalendarNames a reference to calendar names list
-     */
-    void PopulateCalendarNamesListL( const TDesC& aRepositoryBuffer ,
-            CDesC16ArrayFlat& aCalendarNames );
-    
-    /**
      * @brief populate calendar colors list from central repository buffer
      * 
      * @param aRepositoryBuffer a reference to central repository buffer
--- a/calendarui/server/CalenSvr/inc/CalenSvrDBManager.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/inc/CalenSvrDBManager.h	Fri Feb 19 22:49:53 2010 +0200
@@ -53,6 +53,7 @@
     public:
         virtual void DatabaseOpened() = 0;
         virtual void DatabaseTemporarilyClosed() = 0;
+    	virtual void HandleError() = 0;  
         };
 
 public: // Construction and destruction
@@ -84,7 +85,7 @@
     void Progress(TInt aPercentageCompleted);
 
 private:
-    void OpenDatabaseCompletedL();
+    void OpenDatabaseCompletedL(TInt aErrorVal = KErrNone);
 
 private: // Timer handling
     void StartClosingTimer();
@@ -103,7 +104,7 @@
     /**
      *
      **/
-    void NotifyUsersL();
+    void NotifyUsersL(TInt aErrorVal = KErrNone);
 
 private:
     enum TState 
--- a/calendarui/server/CalenSvr/src/CalSvrSession.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/src/CalSvrSession.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -165,12 +165,16 @@
         TRACE_EXIT_POINT;
         return;
         }
-
-    Server()->UnregisterUserL(*this);
-    iRegistered = EFalse;
-
-    iInitMessage.Complete(KErrCancel);
-    iInitActive = EFalse;
+	if(iRegistered)
+    	{
+    	Server()->UnregisterUserL(*this);
+		iRegistered = EFalse;
+    	}
+	if(!iInitMessage.IsNull() )
+		{
+		iInitMessage.Complete(KErrCancel);
+        iInitActive = EFalse;
+		}
     
     TRACE_EXIT_POINT;
     }
@@ -231,6 +235,25 @@
     TRACE_EXIT_POINT;
     }
 
+
+// -----------------------------------------------------------------------------
+// ?classname::?member_function
+// ?implementation_description
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//srinath
+void CCalSvrSession::HandleError()
+	{
+	TRACE_ENTRY_POINT;
+	
+	if(!iInitMessage.IsNull() )
+		{
+		iInitMessage.Complete(KErrNone);
+		}
+	
+	TRACE_EXIT_POINT;
+	}
+
 // -----------------------------------------------------------------------------
 // ?classname::?member_function
 // ?implementation_description
--- a/calendarui/server/CalenSvr/src/CalenServer.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/src/CalenServer.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -22,6 +22,10 @@
 #include <calcalendarinfo.h>
 #include <calenmulticalutil.h>
 #include <CalenInterimUtils2.h>
+#include <calensvrmissedalarmmanagerresource.rsg>
+#include <data_caging_path_literals.hrh>
+#include <bautils.h>
+#include <pathinfo.h>
 
 //debug
 #include "calendarui_debug.h"
@@ -35,14 +39,17 @@
 #include "CalenSvrBootManager.h"
 #include "CalenSvrDBManager.h"
 #include "calensvrmissedalarmmanager.h"
+#include "calenmissedalarmconstants.h"
 
 // LOCAL CONSTANTS AND MACROS
+
 const TInt KCalenServerPriority(CActive::EPriorityStandard);
 _LIT( KCalendarDatabaseFilePath, "c:calendar" );
 const TInt KBufferStartingSize( 128 ); 
 const TInt KBufferSizeIncrement( 64 );
 const TInt KBuffLength = 128;
 
+
 const TInt KComma( ',' );
 
 // ================= MEMBER FUNCTIONS =======================
@@ -302,7 +309,7 @@
     CDesC16ArrayFlat* calendarNamesList = new (ELeave) CDesC16ArrayFlat(2);
     CleanupStack::PushL(calendarNamesList);
     // read calendar names from central repository
-    ReadCalendarNamesFromCenrepL(*calendarNamesList);
+    ReadCalendarNamesFromResourceL(*calendarNamesList);
     
     RArray<TInt> calendarColors;
     // read calendar colors from central repository
@@ -357,40 +364,50 @@
 // Read calendar names from central repository
 // -----------------------------------------------------------------------------
 //
-void CCalenServer::ReadCalendarNamesFromCenrepL(CDesC16ArrayFlat& aCalendarNames)
+void CCalenServer::ReadCalendarNamesFromResourceL(CDesC16ArrayFlat& aCalendarNames)
     {
     TRACE_ENTRY_POINT;
     
-    CRepository* repository = CRepository::NewL( KCRUidCalendar );
-    CleanupStack::PushL( repository );
+    RFs fsSession;
+    CleanupClosePushL( fsSession );
+    RResourceFile resourceFile;
+    CleanupClosePushL( resourceFile );
+    User::LeaveIfError( fsSession.Connect() );
+    TFileName resourceFileName( KMissedAlarmResourceFile );
+    
+    BaflUtils::NearestLanguageFile( fsSession, resourceFileName );
     
-    TInt bufSize( KBufferStartingSize );
-    TBool wasRead( EFalse );
-    do
-        {
-        RBuf buf;
-        CleanupClosePushL(buf);
-        buf.CreateL(bufSize);
-        // read default calendars information from cenrep
-        TInt err = repository->Get(KCalendarDefaultCalendars, buf);
-        if (err == KErrNone)
-            {
-            wasRead = ETrue;
-            PopulateCalendarNamesListL(buf, aCalendarNames);
-            }
-        else if (err == KErrOverflow)
-            {
-            bufSize += KBufferSizeIncrement;
-            }
-        else
-            {
-            User::Leave(err);
-            }
-        CleanupStack::PopAndDestroy(&buf);
-        }
-    while (!wasRead);
+   // __PRINT(" resourcefileName : %s" , resourceFileName );
 
-    CleanupStack::PopAndDestroy(repository);
+    resourceFile.OpenL(fsSession, resourceFileName );
+    resourceFile.ConfirmSignatureL( 0 );
+    // personal
+        HBufC8* personalBuffer = resourceFile.AllocReadLC( R_CALE_DB_PERSONAL );    
+       const TPtrC16 ptrPBuffer(( TText16*) personalBuffer->Ptr(),
+                                         ( personalBuffer->Length()+1 )>>1 );    
+       HBufC *personalCalendar = ptrPBuffer.AllocL();    
+       aCalendarNames.AppendL( personalCalendar->Des() );    
+       CleanupStack::PopAndDestroy( personalBuffer );
+       
+    // famliy
+       HBufC8* familyBuffer=resourceFile.AllocReadLC( R_CALE_DB_FAMILY );
+       const TPtrC16 ptrFBuffer(( TText16*) familyBuffer->Ptr(),
+               ( familyBuffer->Length()+1 )>>1 );
+       HBufC *familyCalendar = ptrFBuffer.AllocL();
+       aCalendarNames.AppendL( familyCalendar->Des() );
+       CleanupStack::PopAndDestroy( familyBuffer );
+       
+    //friends
+       HBufC8* friendsBuffer = resourceFile.AllocReadLC( R_CALE_DB_FRIENDS );
+       const TPtrC16 ptrFrBuffer(( TText16*) friendsBuffer->Ptr(),
+               ( friendsBuffer->Length()+1 )>>1 );
+       HBufC *friendsCalendar = ptrFrBuffer.AllocL();
+       aCalendarNames.AppendL( friendsCalendar->Des() );
+       CleanupStack::PopAndDestroy( friendsBuffer );
+   
+    CleanupStack::PopAndDestroy(&resourceFile);
+    CleanupStack::PopAndDestroy(&fsSession);
+    
     TRACE_EXIT_POINT;
     }
 
@@ -437,33 +454,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// CCalenServer::PopulateCalendarNamesListL
-// Populate calendar names list from central repository buffer
-// -----------------------------------------------------------------------------
-//
-void CCalenServer::PopulateCalendarNamesListL( const TDesC& aRepositoryBuffer,
-                    CDesC16ArrayFlat& aCalendarNames)
-    {
-    TRACE_ENTRY_POINT;
-    
-    TPtrC marker = aRepositoryBuffer;
-    TInt calendarNameOffset;
-    while ((calendarNameOffset = marker.Locate(TChar(KComma)))
-            != KErrNotFound)
-        {
-        // append calendar name to list
-        aCalendarNames.AppendL(marker.Left(calendarNameOffset));
-        marker.Set(marker.Mid(calendarNameOffset + 1));
-
-        if (marker.Locate(TChar(KComma)) == KErrNotFound)
-            {
-            aCalendarNames.AppendL(marker.Left(marker.Length()));
-            }
-        }
-    TRACE_EXIT_POINT;
-    }
-
-// -----------------------------------------------------------------------------
 // CCalenServer::PopulateCalendarColorListL
 // Populate calendar colors list from central repository buffer
 // -----------------------------------------------------------------------------
--- a/calendarui/server/CalenSvr/src/CalenSvrDBManager.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/server/CalenSvr/src/CalenSvrDBManager.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -260,6 +260,8 @@
 
         case EStateDBClosed:
             iState = EStateOpeningDB;
+            //Chances of leave due to file corruption or no memory.
+            TRAPD(err,
             if( !iGlobalData )
                 {
                 iGlobalData = CCalenGlobalData::Instance();
@@ -270,7 +272,8 @@
                     }
                 }
             iGlobalData->InstanceViewL();
-            OpenDatabaseCompletedL();
+				  );
+			OpenDatabaseCompletedL(err);
             break;
 
         default:
@@ -359,7 +362,7 @@
 // (other items were commented in a header).
 // -----------------------------------------------------------------------------
 //
-void CCalenSvrDBManager::OpenDatabaseCompletedL()
+void CCalenSvrDBManager::OpenDatabaseCompletedL(TInt aErrorVal)
     {
     TRACE_ENTRY_POINT;
     switch(iState)
@@ -368,7 +371,7 @@
             {
             if (iUsers.Count() > 0)
                 {
-                NotifyUsersL();
+                NotifyUsersL(aErrorVal);
                 iState = EStateDBOpen;
                 }
             else
@@ -581,7 +584,7 @@
 // (other items were commented in a header).
 // -----------------------------------------------------------------------------
 //
-void CCalenSvrDBManager::NotifyUsersL(void)
+void CCalenSvrDBManager::NotifyUsersL(TInt aErrorVal)
     {
     TRACE_ENTRY_POINT;
 
@@ -595,7 +598,14 @@
 
     for( TInt i(0); i < users.Count(); ++i )
         {
-        users[i]->DatabaseOpened();
+        if(aErrorVal != KErrNone)
+        	{
+        	users[i]->HandleError();
+        	}
+         else
+         	{
+         	users[i]->DatabaseOpened();
+         	}
         }
 
     CleanupStack::PopAndDestroy( &users );
--- a/calendarui/views/inc/calentodoview.h	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/views/inc/calentodoview.h	Fri Feb 19 22:49:53 2010 +0200
@@ -280,6 +280,7 @@
         TInt iHighlightedRowNumber;     // The row number highlighted.
         TInt iFirstEntryOnScreenIndex;  // The offset of the topmost item on screen to the first entry.
         CListBoxView::CSelectionIndexArray* iMarkedTodoItems;
+        TBool iEventViewCommandHandled ;
     };
 
 #endif //  TODOVIEW_H
--- a/calendarui/views/src/caleneventviewcontainer.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/views/src/caleneventviewcontainer.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -81,7 +81,7 @@
 #include "calendar.hrh"
 #include "calenentryutil.h"
 #include "CalenUid.h"   // KUidCalendar
-#include "calenlocationutil.h"
+#include <calenlocationutil.h>
 #include "CalendarPrivateCRKeys.h"
 #include "calenattachmentutils.h"
 #include "calenglobaldata.h"
@@ -561,17 +561,20 @@
     			iTextEditor->SetFocus(ETrue);
     			
     			// TODO: Uncomment this when enabling attachment support
-    			
-    			if(iEventViewData->AttachmentCount())
+    			if(iEventViewData)
     			    {
-                    CTextView *textView = iTextEditor->TextView();
+    		
+    			    if(iEventViewData->AttachmentCount())
+    			        {
+    			        CTextView *textView = iTextEditor->TextView();
                     
-                    TTmPosInfo2 *posInfo = new(ELeave) TTmPosInfo2;
-                    textView->FindXyPosL(aPointerEvent.iPosition,*posInfo);
+    			        TTmPosInfo2 *posInfo = new(ELeave) TTmPosInfo2;
+    			        textView->FindXyPosL(aPointerEvent.iPosition,*posInfo);
                     
-                    // Check if it is tapped on any attachment name, if yes then open that attachment
-                    CheckAndOpenTappedAttachment(posInfo);
-                    delete posInfo;
+    			        // Check if it is tapped on any attachment name, if yes then open that attachment
+    			        CheckAndOpenTappedAttachment(posInfo);
+    			        delete posInfo;
+    			        }
     			    }
     			break;
     			}
@@ -2741,7 +2744,7 @@
     
     // Get the file handler
     RFile file = iServices.GetAttachmentData()->GetAttachmentFileL( attachmentToBeOpened );
-    
+    CleanupClosePushL(file);
     // Hide the toolbar before opening the attachment
     MCalenToolbar* toolbar = iServices.ToolbarOrNull();
     if(toolbar && toolbar->IsVisible())
@@ -2751,6 +2754,8 @@
     
     //open the attachment
     OpenAttachmentViewerL(file, *this);
+    CleanupStack::PopAndDestroy(&file);
+
     
     // Unhide the toolbar after coming back
     if(toolbar)
@@ -2923,49 +2928,31 @@
 // Opens a particular attachment
 // -----------------------------------------------------------------------------
 //
-void CCalenEventViewContainer::OpenAttachmentViewerL(RFile& file, MAknServerAppExitObserver& /*aExitObserver*/)
+void CCalenEventViewContainer::OpenAttachmentViewerL(RFile& aFile, MAknServerAppExitObserver& /*aExitObserver*/)
     {
     TRACE_ENTRY_POINT;
     
     TBuf<250> fileName;
-    file.FullName(fileName);
-    TDataType datatype( CCalenAttachmentUtils::GetMimeTypeL(fileName) );
-    
+    aFile.FullName(fileName);
+    TDataType datatype( CCalenAttachmentUtils::GetMimeType(aFile) );
+
     TInt ret = KErrNone;
     
-    file.Close();
-    RFs& fs = CEikonEnv::Static()->FsSession();
-                    
-    //open the file, before giving it to Notepad.
-    TInt err1 = file.Open( fs, fileName, EFileRead | EFileShareReadersOnly );
-    CleanupClosePushL( file );        
-    
     if(datatype == KNotePadTextDataType())
         {
         const TDesC& notepadTitle = _L("NotePad");
-        // file handle ownership transferred.
-        
-        // 1.File handle from arg has problem for notes since junk chars are reported in file.
-        // so we use another file handle exclusively open with filename an pass to note viewer.   
-        // 
-        // 2.Pass ETrue to 4th param  ExecFileViewerL , to guess encoding.
-        RFile fileForNotes;
-        TInt err = fileForNotes.Open( fs, fileName, EFileRead | EFileShareReadersOnly );
-        CleanupClosePushL( fileForNotes );
-        ret = CNotepadApi::ExecFileViewerL( fileForNotes, 
+        ret = CNotepadApi::ExecFileViewerL( aFile, 
                                            &notepadTitle,
                                            ETrue,
                                            ETrue,
                                            KCharacterSetIdentifierIso88591 );
         
-        CleanupStack::PopAndDestroy(&fileForNotes);
         }
     else
         {
         //doc handler will open the other files (other than text file).
-        TRAP( ret, iDocHandler->OpenFileEmbeddedL( file, datatype ) );
+        TRAP( ret, iDocHandler->OpenFileEmbeddedL( aFile, datatype ) );
         }
-    CleanupStack::PopAndDestroy(&file);
     
     switch(ret)
         {
--- a/calendarui/views/src/calenmonthcontainer.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/views/src/calenmonthcontainer.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -1683,8 +1683,10 @@
             /* Handle pointer event in months day area */
             {
 
+#ifdef _DEBUG
             RDebug::Print( _L("pointerEvent.iModifiers = 0x%08x"),
                     aPointerEvent.iModifiers );
+#endif
             // Event modifiers are ignored for now because
             // those are not needed but cause problems
             TPointerEvent pointerEvent( aPointerEvent );
--- a/calendarui/views/src/calennativeview.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/views/src/calennativeview.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -409,11 +409,9 @@
             break;
 
         // The context should remain the same for these actions.
-        case ECalenEventView:
         case ECalenForwardsToDayView:
         case ECalenNextView:
         case ECalenPrevView:
-        case ECalenSwitchView:
         case ECalenViewCurrentEntry:
         case ECalenEditCurrentEntry: 
         case ECalenCompleteTodo:
@@ -422,14 +420,15 @@
         case ECalenDeleteCurrentEntry:
         case ECalenDeleteEntriesBeforeDate:
         //case ECalenGlobalSendAsCmdId:
-        case ECalenSend:
+        
             
-            if( aCommand != ECalenSwitchView )
-                {
-                // Mark the flag telling that the command is being handled
                 SetCommandHandlingInProgress( ETrue );
-                }
-
+                iServices.IssueCommandL( aCommand );
+            break;
+            
+        case ECalenEventView:
+        case ECalenSwitchView:  
+		case ECalenSend:
             iServices.IssueCommandL( aCommand );
             break;
 
--- a/calendarui/views/src/calentodoview.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/calendarui/views/src/calentodoview.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -288,11 +288,13 @@
         case ECalenViewCurrentEntry:
         case EAknSoftkeyOpen:
             SaveCurrentItemIndexL();
-           if(!Container()->IsEmptyView())
+          
+           if(!Container()->IsEmptyView() && !iEventViewCommandHandled)
                {
                if(!Container()->MarkedCount())
                    {
                    CCalenNativeView::HandleCommandL(ECalenEventView);
+                   iEventViewCommandHandled = ETrue;
                    break;
                    }
                
@@ -731,6 +733,7 @@
         // dim clear and clear all toolbar buttons
         toolbar.SetItemDimmed(ECalenGotoToday,ETrue,ETrue);
         }
+    iEventViewCommandHandled = EFalse;
     
     TRACE_EXIT_POINT;
     }
--- a/clock2/clockui/uilayer/clkdatetimeview/src/clkdatetimeview.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/clockui/uilayer/clkdatetimeview/src/clkdatetimeview.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -3310,8 +3310,7 @@
                 default:
                     break;
                 }
-
-            if( KHoursInDay > Abs( hourDifference.Int() ) )
+            if( ( KHoursInDay > Abs( hourDifference.Int() ) ) && tzHandle.IsDaylightSavingOnL( *timeZoneId,actualisedRule.iTimeOfChange ) )
                 {
                 // If there is a match, save the index and break.
                 // We've got the rule and there's no need to continue with other rules.
--- a/clock2/clockui/uilayer/clockmainview/src/clockmainview.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/clockui/uilayer/clockmainview/src/clockmainview.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -488,11 +488,10 @@
     // Re-initialize the alarm id array.
     iAlarmArray->InitIdList();
     
-    if( ( KClockAppMainViewId == aCustomMessageId ) && iContainer )
+    // To update the scroll bar when opened from indicator pane.
+    if( iContainer )
         {
-        AppUi()->RemoveFromStack( iContainer );
-        delete iContainer;
-        iContainer = NULL;
+        iContainer->ListBox()->SetCurrentItemIndexAndDraw( KZerothIndex );
         }
     
     CClockAppUi* clockAppUi( static_cast< CClockAppUi* > ( AppUi() ) );
--- a/clock2/clockui/uilayer/clockworldview/src/clockworldview.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/clockui/uilayer/clockworldview/src/clockworldview.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -952,21 +952,13 @@
         // Update the world array.
         iWorldArray->RemoveCity( currentListItem );
                                     
-        if( currentListItem >= iWorldArray->MdcaCount() )
-            {
-            currentListItem = iWorldArray->MdcaCount() - 1;
-            }
-        if( KNoCities <= currentListItem )
-            {
-            // Make the list to display the previous item.
-            iContainer->ListBox()->SetCurrentItemIndex( currentListItem );
-            }
+       
 
         // Update the document.
         CClockDocument* clockDocument = static_cast< CClockDocument* > ( AppUi()->Document() );
         clockDocument->StoreDataL();
         // Update the container.
-        iContainer->ListBox()->HandleItemRemovalL();
+       
         // If there are no more cities present, update the empty list text.
         if( KNoCities == iWorldArray->MdcaCount() )
             {
--- a/clock2/clockui/utilities/data/timezonegroups.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/clockui/utilities/data/timezonegroups.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -1710,15 +1710,9 @@
 	}
 
 
-RESOURCE TIMEZONE_CITY_GROUP r_group_country_western_sahara
+RESOURCE TIMEZONE_CITY_GROUP r_group_region_macau
 	{
 	city_group_id = 241;
-	city_group_name = qtn_clk_country_western_sahara;
-	}
-
-RESOURCE TIMEZONE_CITY_GROUP r_group_region_macau
-	{
-	city_group_id = 242;
 	city_group_name = qtn_clk_region_macau;
 	}
 
--- a/clock2/clockui/utilities/data/timezonegroups_jerusalem.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/clockui/utilities/data/timezonegroups_jerusalem.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -1710,15 +1710,9 @@
 	}
 
 
-RESOURCE TIMEZONE_CITY_GROUP r_group_country_western_sahara
+RESOURCE TIMEZONE_CITY_GROUP r_group_region_macau
 	{
 	city_group_id = 241;
-	city_group_name = qtn_clk_country_western_sahara;
-	}
-
-RESOURCE TIMEZONE_CITY_GROUP r_group_region_macau
-	{
-	city_group_id = 242;
 	city_group_name = qtn_clk_region_macau;
 	}
 
--- a/clock2/clockui/utilities/data/timezones.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/clockui/utilities/data/timezones.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -5650,21 +5650,7 @@
 		};  }
 		
 	
-RESOURCE LOCALIZED_TIMEZONE r_tz_west_sahara_el_aaiun
-	{
-	time_zone_id = 256;
-	standard_name = "default";
-	daylight_name = "";
-	short_standard_name = "";
-	short_daylight_name = "";
-	cities = 
-		{
-		TIMEZONE_CITY
-			{
-			city_group_id = 241;
-			city_name = qtn_clk_city_west_sahara_el_aaiun;
-			}
-		};  }
+
 		
 		
 RESOURCE LOCALIZED_TIMEZONE r_tz_zambia_lusaka
@@ -5712,7 +5698,7 @@
 		{
 		TIMEZONE_CITY
 			{
-			city_group_id = 242;
+			city_group_id = 241;
 			city_name = qtn_clk_city_macau;
 			}
 		};  }
@@ -5729,7 +5715,7 @@
 		{		
 		TIMEZONE_CITY
 			{
-			city_group_id = 243;
+			city_group_id = 242;
 			city_name = qtn_clk_city_usa_louisville;
 			}
 		};	}
--- a/clock2/clockui/utilities/data/timezones_tel_aviv.rss	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/clockui/utilities/data/timezones_tel_aviv.rss	Fri Feb 19 22:49:53 2010 +0200
@@ -5654,21 +5654,6 @@
 		};  }
 		
 	
-RESOURCE LOCALIZED_TIMEZONE r_tz_west_sahara_el_aaiun
-	{
-	time_zone_id = 256;
-	standard_name = "default";
-	daylight_name = "";
-	short_standard_name = "";
-	short_daylight_name = "";
-	cities = 
-		{
-		TIMEZONE_CITY
-			{
-			city_group_id = 241;
-			city_name = qtn_clk_city_west_sahara_el_aaiun;
-			}
-		};  }
 		
 		
 RESOURCE LOCALIZED_TIMEZONE r_tz_zambia_lusaka
@@ -5716,7 +5701,7 @@
 		{
 		TIMEZONE_CITY
 			{
-			city_group_id = 242;
+			city_group_id = 241;
 			city_name = qtn_clk_city_macau;
 			}
 		};  }
@@ -5732,7 +5717,7 @@
 		{		
 		TIMEZONE_CITY
 			{
-			city_group_id = 243;
+			city_group_id = 242;
 			city_name = qtn_clk_city_usa_louisville;
 			}
 		};	}
Binary file clock2/help/data/xhtml.zip has changed
--- a/clock2/help/inc/clk.hlp.hrh	Tue Feb 02 10:12:19 2010 +0200
+++ b/clock2/help/inc/clk.hlp.hrh	Fri Feb 19 22:49:53 2010 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2010 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"
--- a/organizer_plat/calendar_common_utils_api/inc/calenmulticaluids.hrh	Tue Feb 02 10:12:19 2010 +0200
+++ b/organizer_plat/calendar_common_utils_api/inc/calenmulticaluids.hrh	Fri Feb 19 22:49:53 2010 +0200
@@ -30,7 +30,8 @@
 	EDeviceSyncServiceOwner,
 	EOwnerName,
 	EMarkAsDelete,
-	EDeviceSyncProfileID
+	EDeviceSyncProfileID,
+	ESyncConfigEnabled
 	};
 
 #endif /* CALENMULTICALUIDS_HRH_ */
--- a/organizer_plat/calendar_common_utils_api/tsrc/group/CalendarCommonUtilsTest_DoxyFile.txt	Tue Feb 02 10:12:19 2010 +0200
+++ b/organizer_plat/calendar_common_utils_api/tsrc/group/CalendarCommonUtilsTest_DoxyFile.txt	Fri Feb 19 22:49:53 2010 +0200
@@ -2,7 +2,7 @@
 # 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"
+# under the terms of the License "Eclipse Public License v1.0"
 # which accompanies this distribution, and is available
 # at the URL "http://www.eclipse.org/legal/epl-v10.html".
 #
Binary file organizer_plat/calendar_common_utils_api/tsrc/group/rndcert.der has changed
--- a/organizer_plat/calendar_common_utils_api/tsrc/group/rndcert.key	Tue Feb 02 10:12:19 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIICXQIBAAKBgQC/TDP7KKIaf5+uW4OD2iVZuUMC2a+SeQTjf6srlKcOm+CpPNXn
-uLNm/8fdEnyOIuRXPRKmqhs1n0JkxEGHynELWMTuKXbQx9SRAGUXzyneGn+IJNnO
-vOKHWgKCouX2hfI8rtkdqJpqmO460gGsMgw+lsbeyWyW9lnfLxq+ZC7sqQIDAQAB
-AoGBALmUWZE8GBaQ3P4u9WUCSd3DJkkrmXIFSULSZeH/chlwCwDjbbhArHothVzo
-REE3hEFFlERvHbplZ+mNouzy7boduvgUzbksGrbGMLJ2qO1GzWWVwV+GzOWKd3ss
-/98Gwoy5R8pjnkqUE2wP1iJFw0FjvUTKcYv/z6t3LLJ0CsoBAkEA+c7ixvsviQ3J
-s0INytCKU2bf8fqFQJi1VI82ukxNsujGTQ9upVSjuvqPvWyDvvTdrUBHqO+3qPut
-sEh01Q8aiQJBAMQKDJPVRu4ud3mwUfEavzL5EjqwG1k9VCNGYsT4FwtrHcxu1oP/
-pk6M3rIZukqomoEEnHWPMwhrK3fhBqi0OSECQQDr40VXege4FnH5OI2Hj4afHMyp
-VdQQXGMWFyopnzXblFz0lXb43cTCIiorR9XcMqNFHybLypkWE5o+lRzlt55pAkBQ
-P/zeF5Sts//cpL0mgdh7OVKpC6ZmZaCnwAx2rUhhuDu+kDDoYCLoTOps5fNI1LRK
-1GRoC3LMo3Jr5IYhUYWBAkBpCpN6k4JU/mszq98EojHerQNxk8sPqvQKUzTutohT
-1gLX9yepGayB/TtT2EEJDkWOlnTy/dvN6W3vzbJYz97x
------END RSA PRIVATE KEY-----
Binary file organizer_plat/meeting_request_mailbox_utilities_api/tsrc/stiff/group/rndcert.der has changed
--- a/organizer_plat/meeting_request_mailbox_utilities_api/tsrc/stiff/group/rndcert.key	Tue Feb 02 10:12:19 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIICXQIBAAKBgQC/TDP7KKIaf5+uW4OD2iVZuUMC2a+SeQTjf6srlKcOm+CpPNXn
-uLNm/8fdEnyOIuRXPRKmqhs1n0JkxEGHynELWMTuKXbQx9SRAGUXzyneGn+IJNnO
-vOKHWgKCouX2hfI8rtkdqJpqmO460gGsMgw+lsbeyWyW9lnfLxq+ZC7sqQIDAQAB
-AoGBALmUWZE8GBaQ3P4u9WUCSd3DJkkrmXIFSULSZeH/chlwCwDjbbhArHothVzo
-REE3hEFFlERvHbplZ+mNouzy7boduvgUzbksGrbGMLJ2qO1GzWWVwV+GzOWKd3ss
-/98Gwoy5R8pjnkqUE2wP1iJFw0FjvUTKcYv/z6t3LLJ0CsoBAkEA+c7ixvsviQ3J
-s0INytCKU2bf8fqFQJi1VI82ukxNsujGTQ9upVSjuvqPvWyDvvTdrUBHqO+3qPut
-sEh01Q8aiQJBAMQKDJPVRu4ud3mwUfEavzL5EjqwG1k9VCNGYsT4FwtrHcxu1oP/
-pk6M3rIZukqomoEEnHWPMwhrK3fhBqi0OSECQQDr40VXege4FnH5OI2Hj4afHMyp
-VdQQXGMWFyopnzXblFz0lXb43cTCIiorR9XcMqNFHybLypkWE5o+lRzlt55pAkBQ
-P/zeF5Sts//cpL0mgdh7OVKpC6ZmZaCnwAx2rUhhuDu+kDDoYCLoTOps5fNI1LRK
-1GRoC3LMo3Jr5IYhUYWBAkBpCpN6k4JU/mszq98EojHerQNxk8sPqvQKUzTutohT
-1gLX9yepGayB/TtT2EEJDkWOlnTy/dvN6W3vzbJYz97x
------END RSA PRIVATE KEY-----
--- a/organizer_pub/calendar_interim_utils2_api/tsrc/stiff/group/CalenInterimUtils2Test_DoxyFile.txt	Tue Feb 02 10:12:19 2010 +0200
+++ b/organizer_pub/calendar_interim_utils2_api/tsrc/stiff/group/CalenInterimUtils2Test_DoxyFile.txt	Fri Feb 19 22:49:53 2010 +0200
@@ -2,7 +2,7 @@
 # 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"
+# under the terms of the License "Eclipse Public License v1.0"
 # which accompanies this distribution, and is available
 # at the URL "http://www.eclipse.org/legal/epl-v10.html".
 #
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/organizer_pub/notepad_library_api/tsrc/.cproject	Fri Feb 19 22:49:53 2010 +0200
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?fileVersion 4.0.0?>
+
+<cproject>
+<storageModule buildFromInf="true" buildingTestComps="true" cleanLevel="0" concurrentBuildJobs="4" defaultMMPChangedAction="0" infBuildComponents="" infFileLocation="group\Bld.inf" macrosFile="" manageDependencies="true" moduleId="com.nokia.carbide.cdt.builder.carbideCPPBuilder" overrideWorkspaceSettings="false" promptForMMPChangedAction="true" useConcurrentBuilding="true" useIncrementalBuilder="false" useMMPMacros="true"/>
+<storageModule moduleId="org.eclipse.cdt.core.settings">
+<cconfiguration id="Emulator Debug (WINSCW) [wk34]">
+<storageModule buildSystemId="com.nokia.carbide.cdt.builder.CarbideConfigurationDataProvider" id="Emulator Debug (WINSCW) [wk34]" moduleId="org.eclipse.cdt.core.settings" name="Emulator Debug (WINSCW) [wk34]">
+<externalSettings/>
+<extensions>
+<extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>
+<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+<extension id="com.nokia.cdt.debug.cw.symbian.SymbianE32" point="org.eclipse.cdt.core.BinaryParser"/>
+<extension id="com.nokia.carbide.cdt.builder.MakeDefErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="com.nokia.carbide.cdt.builder.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="com.nokia.carbide.cdt.builder.MWLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="com.nokia.carbide.cdt.builder.CarbideMakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="com.nokia.carbide.cdt.builder.RCOMPErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="com.nokia.carbide.cdt.builder.MakmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+</extensions>
+</storageModule>
+<storageModule moduleId="CarbideConfigurationDataProvider">
+<ENV_VAR_DATA_ID/>
+<ARGUMENTS_DATA_ID ABLDFREEZEARGSSTORAGE="-r"/>
+</storageModule>
+<storageModule filesCache="R:\s60\app\organizer\organizer_sdk\notepad_library_api\tsrc\group\TestNpdApi.mmp;R:\s60\app\organizer\organizer_sdk\notepad_library_api\tsrc\group\Bld.inf;R:\epoc32\include\domain\osextensions\platform_paths.hrh;" includesCache="R:/s60/app/organizer/organizer_sdk/notepad_library_api/tsrc/inc[LOCAL];r:/epoc32/include;r:/epoc32/include/oem;r:/epoc32/include/osextensions;r:/epoc32/include/domain/osextensions;r:/epoc32/include/domain/osextensions/loc;r:/epoc32/include/domain/osextensions/loc/sc;r:/epoc32/include/applications;R:/epoc32/include/oem;" macrosCache="__WINSCW__;__SUPPORT_CPP_EXCEPTIONS__;__SYMBIAN32__;_UNICODE;__SERIES60_5x__;_DEBUG;__DLL__;__WINS__;__CW32__;__SERIES60_50__;" moduleId="configDataCache" sourcesCache="/TestNpdApi/inc;/TestNpdApi/src;" timestampCache="1220696835953" useMmpMacrosCache="true"/>
+<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+</cconfiguration>
+</storageModule>
+</cproject>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/organizer_pub/notepad_library_api/tsrc/.project	Fri Feb 19 22:49:53 2010 +0200
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>TestNpdApi</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>com.nokia.carbide.cdt.builder.carbideCPPBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>com.nokia.carbide.cdt.rombuilder.carbideRomBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>com.nokia.s60tools.pclint.pclintAuditor</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.cdt.core.cnature</nature>
+		<nature>org.eclipse.cdt.core.ccnature</nature>
+		<nature>com.nokia.carbide.cdt.builder.carbideCPPBuilderNature</nature>
+		<nature>com.nokia.carbide.cdt.rombuilder.carbideRomBuildNature</nature>
+		<nature>com.nokia.s60tools.pclint.pclintNature</nature>
+	</natures>
+</projectDescription>
--- a/organizer_pub/notepad_library_api/tsrc/cproject	Tue Feb 02 10:12:19 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?fileVersion 4.0.0?>
-
-<cproject>
-<storageModule buildFromInf="true" buildingTestComps="true" cleanLevel="0" concurrentBuildJobs="4" defaultMMPChangedAction="0" infBuildComponents="" infFileLocation="group\Bld.inf" macrosFile="" manageDependencies="true" moduleId="com.nokia.carbide.cdt.builder.carbideCPPBuilder" overrideWorkspaceSettings="false" promptForMMPChangedAction="true" useConcurrentBuilding="true" useIncrementalBuilder="false" useMMPMacros="true"/>
-<storageModule moduleId="org.eclipse.cdt.core.settings">
-<cconfiguration id="Emulator Debug (WINSCW) [wk34]">
-<storageModule buildSystemId="com.nokia.carbide.cdt.builder.CarbideConfigurationDataProvider" id="Emulator Debug (WINSCW) [wk34]" moduleId="org.eclipse.cdt.core.settings" name="Emulator Debug (WINSCW) [wk34]">
-<externalSettings/>
-<extensions>
-<extension id="org.eclipse.cdt.core.PE" point="org.eclipse.cdt.core.BinaryParser"/>
-<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
-<extension id="com.nokia.cdt.debug.cw.symbian.SymbianE32" point="org.eclipse.cdt.core.BinaryParser"/>
-<extension id="com.nokia.carbide.cdt.builder.MakeDefErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-<extension id="com.nokia.carbide.cdt.builder.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-<extension id="com.nokia.carbide.cdt.builder.MWLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-<extension id="com.nokia.carbide.cdt.builder.CarbideMakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-<extension id="com.nokia.carbide.cdt.builder.RCOMPErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-<extension id="com.nokia.carbide.cdt.builder.MakmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-</extensions>
-</storageModule>
-<storageModule moduleId="CarbideConfigurationDataProvider">
-<ENV_VAR_DATA_ID/>
-<ARGUMENTS_DATA_ID ABLDFREEZEARGSSTORAGE="-r"/>
-</storageModule>
-<storageModule filesCache="R:\s60\app\organizer\organizer_sdk\notepad_library_api\tsrc\group\TestNpdApi.mmp;R:\s60\app\organizer\organizer_sdk\notepad_library_api\tsrc\group\Bld.inf;R:\epoc32\include\domain\osextensions\platform_paths.hrh;" includesCache="R:/s60/app/organizer/organizer_sdk/notepad_library_api/tsrc/inc[LOCAL];r:/epoc32/include;r:/epoc32/include/oem;r:/epoc32/include/osextensions;r:/epoc32/include/domain/osextensions;r:/epoc32/include/domain/osextensions/loc;r:/epoc32/include/domain/osextensions/loc/sc;r:/epoc32/include/applications;R:/epoc32/include/oem;" macrosCache="__WINSCW__;__SUPPORT_CPP_EXCEPTIONS__;__SYMBIAN32__;_UNICODE;__SERIES60_5x__;_DEBUG;__DLL__;__WINS__;__CW32__;__SERIES60_50__;" moduleId="configDataCache" sourcesCache="/TestNpdApi/inc;/TestNpdApi/src;" timestampCache="1220696835953" useMmpMacrosCache="true"/>
-<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
-</cconfiguration>
-</storageModule>
-</cproject>
--- a/organizer_pub/notepad_library_api/tsrc/project	Tue Feb 02 10:12:19 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>TestNpdApi</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>com.nokia.carbide.cdt.builder.carbideCPPBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>com.nokia.carbide.cdt.rombuilder.carbideRomBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>com.nokia.s60tools.pclint.pclintAuditor</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.cdt.core.cnature</nature>
-		<nature>org.eclipse.cdt.core.ccnature</nature>
-		<nature>com.nokia.carbide.cdt.builder.carbideCPPBuilderNature</nature>
-		<nature>com.nokia.carbide.cdt.rombuilder.carbideRomBuildNature</nature>
-		<nature>com.nokia.s60tools.pclint.pclintNature</nature>
-	</natures>
-</projectDescription>
--- a/searchfw/coresearchfw/server/src/searchserversession.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/searchfw/coresearchfw/server/src/searchserversession.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -855,13 +855,20 @@
     CleanupClosePushL( readStream );
     readStream.Open( searchContentDesPtr );
     CSearchDocumentId* documentId = CSearchDocumentId::NewL(readStream);
-    TPtr8 launchInfoPtr  = iSearchManager->GetLaunchInfoL( *documentId )->Des();
-    aMessage.WriteL( 1, launchInfoPtr );
     HBufC8* launchInfo = iSearchManager->GetLaunchInfoL( *documentId );
-    delete launchInfo ;
-    launchInfo = NULL;
-    delete documentId;
-    documentId = NULL;
+    if( launchInfo )
+        {
+        TPtr8 launchInfoPtr=launchInfo->Des(); 
+        aMessage.WriteL( 1, launchInfoPtr );
+		
+        delete launchInfo ;
+        launchInfo = NULL;
+        }
+    if( documentId )
+        {
+        delete documentId;
+        documentId = NULL;
+        }
     CleanupStack::PopAndDestroy( &readStream );
     CleanupStack::PopAndDestroy( searchContentDes );
 	}
--- a/searchfw/plugins/contactsplugin/group/contactsplugin.mmp	Tue Feb 02 10:12:19 2010 +0200
+++ b/searchfw/plugins/contactsplugin/group/contactsplugin.mmp	Fri Feb 19 22:49:53 2010 +0200
@@ -68,4 +68,4 @@
 LIBRARY       eikctl.lib
 LIBRARY       flogger.lib
 LIBRARY       featmgr.lib
-
+LIBRARY       Pbk2Presentation.lib
--- a/searchfw/plugins/contactsplugin/src/contactssearcher.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/searchfw/plugins/contactsplugin/src/contactssearcher.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -51,6 +51,7 @@
 #include <CVPbkContactViewDefinition.h>
 #include <CVPbkSortOrder.h>
 #include <MVPbkContactViewFiltering.h>
+#include <CPbk2SortOrderManager.h>
 #include <barsc.h>
 #include <barsread.h>
 #include <contactssearchresource.rsg>
@@ -391,7 +392,7 @@
 	       
            else
         	   {
-               User::Leave( KErrNotFound );
+        	   return NULL;
         	   }
          
          }
@@ -750,8 +751,8 @@
     // in the contact store. Once we get the links, we extract data from them 
     // to be searched, and then pass the same to the text searcher
     
-    CVPbkSortOrder* sortOrder = CVPbkSortOrder::NewL( iContactManager->FieldTypes() );
-    CleanupStack::PushL( sortOrder );
+	CPbk2SortOrderManager* sortOrderManager = CPbk2SortOrderManager::NewL( iContactManager->FieldTypes() );
+	CleanupStack::PushL( sortOrderManager );
         
     CVPbkContactViewDefinition* viewDef = CVPbkContactViewDefinition::NewL();
     CleanupStack::PushL( viewDef );
@@ -781,11 +782,11 @@
         SetActive();
         }
     iContactViewBase = iContactManager->CreateContactViewLC( 
-                   *this, *viewDef, *sortOrder );
+                   *this, *viewDef, sortOrderManager->SortOrder() );
                 
     CleanupStack::Pop(); // CreateContactViewLC
     CleanupStack::PopAndDestroy( viewDef );
-    CleanupStack::PopAndDestroy( sortOrder );
+    CleanupStack::PopAndDestroy( sortOrderManager );
     }
     
 
--- a/searchfw/plugins/filesplugin/src/filessearcher.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/searchfw/plugins/filesplugin/src/filessearcher.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -340,7 +340,7 @@
 	//Set the content class Id as KSearchCClassFilenamesUid
 	searchResult->SetContentClassId( KSearchCClassFilenamesUid );
 	//If file is found from memory card
-	_LIT( KMemCard, "E:" );
+	_LIT( KMemCard, "F:" );
 	TInt found = path->Find( KMemCard );
 	if ( !found )
 	    {
--- a/searchui/searchapp/plugins/resultviewerplugin/src/srchuiresultview.cpp	Tue Feb 02 10:12:19 2010 +0200
+++ b/searchui/searchapp/plugins/resultviewerplugin/src/srchuiresultview.cpp	Fri Feb 19 22:49:53 2010 +0200
@@ -823,7 +823,10 @@
 //
 void CSrchUiResultView::LaunchContactApplicationL( const TDesC8& aLaunchInfo )
 	{
-
+	if( aLaunchInfo.Length() <= 0 )
+	    {
+	    return ;
+	    }
 	MCCAParameter* parameter = TCCAFactory::NewParameterL();
 	CleanupClosePushL( *parameter );