messagingappbase/mce/src/MceMessageListView.cpp
branchRCL_3
changeset 25 fa1df4b99609
parent 24 696bfeff199e
equal deleted inserted replaced
24:696bfeff199e 25:fa1df4b99609
    90 
    90 
    91 // Mail technology type
    91 // Mail technology type
    92 const TUid KMailTechnologyTypeUid = { 0x10001671 };
    92 const TUid KMailTechnologyTypeUid = { 0x10001671 };
    93 
    93 
    94 // These are for opening the viewer in inbox. 
    94 // These are for opening the viewer in inbox. 
    95 // We need to wait possible opened editor to be closed before opening received message.
    95 // try to open viewer immediately if there is no other viewer is open
    96 const TInt KMceLaunchViewerStartTime = 1; // try to open viewer immediately
    96 const TInt KMceLaunchViewerStartTime = 1; 
       
    97 //0.3 sec delay is taken to ensure previously launched viewer is closed as to avoid the crashes and KErrCancel/KErrInUse errors due to launching of new viewer when currently running 
       
    98 //viewer is still in the process of exiting
       
    99 const TInt KMceLaunchViewerStartTimeWhenEditorOpen = 300000; 
    97 const TInt KMceLaunchViewerRetryTime = 500000; // wait 0.5 secs for the next trial
   100 const TInt KMceLaunchViewerRetryTime = 500000; // wait 0.5 secs for the next trial
    98 const TInt KMceLaunchViewerRetryCounter = 20; // so editors have approx 10 secs to save...
   101 const TInt KMceLaunchViewerRetryCounter = 20; // so editors have approx 10 secs to save...
    99 
   102 
   100 // This is the paramater used to set mark as read/unread options menu
   103 // This is the paramater used to set mark as read/unread options menu
   101 const TBool KIsEmail = ETrue;
   104 const TBool KIsEmail = ETrue;
  2451 // ----------------------------------------------------
  2454 // ----------------------------------------------------
  2452 // CMceMessageListView::FindUnreadMessageAndOpenItL
  2455 // CMceMessageListView::FindUnreadMessageAndOpenItL
  2453 // ----------------------------------------------------
  2456 // ----------------------------------------------------
  2454 TBool CMceMessageListView::FindUnreadMessageAndOpenItL( const TMsvId aId )
  2457 TBool CMceMessageListView::FindUnreadMessageAndOpenItL( const TMsvId aId )
  2455     {
  2458     {
       
  2459     TInt launchViewerStartTime = KMceLaunchViewerStartTime;
       
  2460     if(iMceUi->IsEditorOpen())
       
  2461         {
       
  2462         launchViewerStartTime = KMceLaunchViewerStartTimeWhenEditorOpen;
       
  2463         }
       
  2464     
  2456 // TODO: how to simplify this ?
  2465 // TODO: how to simplify this ?
  2457     TMsvId firstUnreadMessageId = KErrNotFound;
  2466     TMsvId firstUnreadMessageId = KErrNotFound;
  2458     TBool oneUnreadMessage = EFalse;
  2467     TBool oneUnreadMessage = EFalse;
  2459     if ( aId )
  2468     if ( aId )
  2460         {
  2469         {
  2502                 {
  2511                 {
  2503                 delete iLocalScreenClearer;
  2512                 delete iLocalScreenClearer;
  2504                 iLocalScreenClearer = NULL;
  2513                 iLocalScreenClearer = NULL;
  2505                 iLocalScreenClearer = CAknLocalScreenClearer::NewL( EFalse );
  2514                 iLocalScreenClearer = CAknLocalScreenClearer::NewL( EFalse );
  2506                 MCELOGGER_WRITE("FindUnreadMessageAndOpenItL: start viewer launcher");
  2515                 MCELOGGER_WRITE("FindUnreadMessageAndOpenItL: start viewer launcher");
  2507                 const TTimeIntervalMicroSeconds32 startTimeInterval = KMceLaunchViewerStartTime;
  2516                 TTimeIntervalMicroSeconds32 startTimeInterval = launchViewerStartTime;
  2508                 const TTimeIntervalMicroSeconds32 retryTimeInterval = KMceLaunchViewerRetryTime;
  2517                 const TTimeIntervalMicroSeconds32 retryTimeInterval = KMceLaunchViewerRetryTime;
  2509                 iLaunchViewerCounter = 0;
  2518                 iLaunchViewerCounter = 0;
  2510                 iMessageViewerLauncher->Start( 
  2519                 iMessageViewerLauncher->Start( 
  2511                     startTimeInterval, 
  2520                     startTimeInterval, 
  2512                     retryTimeInterval, 
  2521                     retryTimeInterval,