46 #include <AknsUtils.h> |
46 #include <AknsUtils.h> |
47 #include <logs.mbg> // logs own icons |
47 #include <logs.mbg> // logs own icons |
48 #include <LogsApiConsts.h> //additional event uids |
48 #include <LogsApiConsts.h> //additional event uids |
49 #include <CPhCltEmergencyCall.h> |
49 #include <CPhCltEmergencyCall.h> |
50 |
50 |
51 #include <logs.rsg> |
51 #include <Logs.rsg> |
52 |
52 |
53 #include "LogsIcons.hrh" |
53 #include "LogsIcons.hrh" |
54 #include "LogsConsts.h" |
54 #include "LogsConsts.h" |
55 #include "LogsConstants.hrh" |
55 #include "LogsConstants.hrh" |
56 #include "LogsUID.h" |
56 #include "LogsUID.h" |
585 else if ( aNewlyActivatedViewId.iAppUid == TUid::Uid(KLogsAppUID3) && |
585 else if ( aNewlyActivatedViewId.iAppUid == TUid::Uid(KLogsAppUID3) && |
586 aNewlyActivatedViewId.iViewUid == this->Id() && |
586 aNewlyActivatedViewId.iViewUid == this->Id() && |
587 aViewIdToBeDeactivated.iAppUid != TUid::Uid(KLogsAppUID3) ) |
587 aViewIdToBeDeactivated.iAppUid != TUid::Uid(KLogsAppUID3) ) |
588 { |
588 { |
589 // Reset array, will call StateChangedL with state EStateArrayReseted and update the listbox. |
589 // Reset array, will call StateChangedL with state EStateArrayReseted and update the listbox. |
590 if ( (aNewlyActivatedViewId.iViewUid.iUid == EStmDialledListViewId )|| |
590 CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, |
591 (aNewlyActivatedViewId.iViewUid.iUid == EStmMissedListViewId )|| |
591 MLogsModel::EResetOnlyArray ); |
592 (aNewlyActivatedViewId.iViewUid.iUid == EStmReceivedListViewId )) |
|
593 { |
|
594 CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, |
|
595 MLogsModel::EKeepDBConnection ); |
|
596 } |
|
597 else |
|
598 { |
|
599 CurrentModel()->DoDeactivate( MLogsModel::ESkipClearing, |
|
600 MLogsModel::EResetOnlyArray ); |
|
601 } |
|
602 DrawComponents(); |
592 DrawComponents(); |
603 TRAP(err, CancelSaveToPbkL()); |
593 TRAP(err, CancelSaveToPbkL()); |
604 } |
594 } |
605 |
595 |
606 // If a leave happened, clear the call parameters here. |
596 // If a leave happened, clear the call parameters here. |
1713 const MLogsEventGetter* aEvent ) |
1703 const MLogsEventGetter* aEvent ) |
1714 { |
1704 { |
1715 TRACE_ENTRY_POINT; |
1705 TRACE_ENTRY_POINT; |
1716 CAiwGenericParamList& paramList = iServHandlerRef->InParamListL(); |
1706 CAiwGenericParamList& paramList = iServHandlerRef->InParamListL(); |
1717 |
1707 |
1718 // identify the call type to hide the matching call type from the menu |
|
1719 // The call items (voice, video and VoIP are located in the main level |
|
1720 // of the menu when the parameter EGenericParamHideCallSubmenu is passed |
|
1721 // to the aiw provider |
|
1722 if( !this-> OriginalCallMenuIsVisible() && ( NULL!= aEvent )&&( NULL!= aEvent->LogsEventData())) |
|
1723 { |
|
1724 TAiwVariant variant; |
|
1725 |
|
1726 // Video call |
|
1727 if ( aEvent->LogsEventData()->VT() ) |
|
1728 { |
|
1729 variant.Set( EGenericParamVideoCall ); |
|
1730 } |
|
1731 // VoIP call |
|
1732 else if ( aEvent->LogsEventData()->VoIP() ) |
|
1733 { |
|
1734 variant.Set( EGenericParamVoIPCall ); |
|
1735 } |
|
1736 // voice call |
|
1737 else |
|
1738 { |
|
1739 variant.Set( EGenericParamVoiceCall ); |
|
1740 } |
|
1741 TAiwGenericParam param( EGenericParamHideCallSubmenu, variant ); |
|
1742 paramList.AppendL( param ); |
|
1743 } |
|
1744 //Check do we provide only voice call (i.e. skip video call option) |
1708 //Check do we provide only voice call (i.e. skip video call option) |
1745 if ( !aVideo ) |
1709 if ( !aVideo ) |
1746 { |
1710 { |
1747 TAiwVariant variant; |
1711 TAiwVariant variant; |
1748 TAiwGenericParam param( EGenericParamPhoneNumber, variant ); |
1712 TAiwGenericParam param( EGenericParamPhoneNumber, variant ); |
1756 //So this would unnecessarily exclude voip calls in which both sip-uri and msisdn is available. |
1720 //So this would unnecessarily exclude voip calls in which both sip-uri and msisdn is available. |
1757 //if( aEvent && aEvent->LogsEventData()->VoIP() && SipUriAvailable( aEvent ) && !aEvent->Number() ) |
1721 //if( aEvent && aEvent->LogsEventData()->VoIP() && SipUriAvailable( aEvent ) && !aEvent->Number() ) |
1758 |
1722 |
1759 // Sawfish VoIP changes >>>> |
1723 // Sawfish VoIP changes >>>> |
1760 TPtrC8 tempPtr( KNullDesC8 ); |
1724 TPtrC8 tempPtr( KNullDesC8 ); |
1761 TInt result = KErrNotFound; |
1725 TInt result; |
1762 CLogsCntLinkChecker* contactCheckerPtr; |
1726 CLogsCntLinkChecker* contactCheckerPtr; |
1763 if (( NULL!= aEvent )&&( NULL!= aEvent->LogsEventData())) |
1727 result = aEvent->LogsEventData()->GetContactLink( tempPtr ); |
1764 { |
|
1765 result = aEvent->LogsEventData()->GetContactLink( tempPtr ); |
|
1766 } |
|
1767 |
1728 |
1768 if ( KErrNone == result ) |
1729 if ( KErrNone == result ) |
1769 { |
1730 { |
1770 contactCheckerPtr = Engine()->CntLinkCheckerL(); |
1731 contactCheckerPtr = Engine()->CntLinkCheckerL(); |
1771 contactCheckerPtr->SetObserver( this ); |
1732 contactCheckerPtr->SetObserver( this ); |
1809 //Add requested menu options to menu pane |
1770 //Add requested menu options to menu pane |
1810 iServHandlerRef->InitializeMenuPaneL( |
1771 iServHandlerRef->InitializeMenuPaneL( |
1811 *aMenuPane, //Handle of menu pane to initialise |
1772 *aMenuPane, //Handle of menu pane to initialise |
1812 aResourceId, //MenuResourceId |
1773 aResourceId, //MenuResourceId |
1813 KAiwCmdCall, //Base ID for the handler to generate menu IDs for placeholders |
1774 KAiwCmdCall, //Base ID for the handler to generate menu IDs for placeholders |
1814 paramList, //input parameter list for provider's parameters checking |
1775 paramList ); //input parameter list for provider's parameters checking |
1815 EFalse, //Not use submenu |
|
1816 ETrue ); |
|
1817 |
1776 |
1818 TRACE_EXIT_POINT; |
1777 TRACE_EXIT_POINT; |
1819 } |
1778 } |
1820 |
1779 |
1821 // -------------------------------------------------------------------------- |
1780 // -------------------------------------------------------------------------- |