--- a/phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp Wed Sep 01 12:30:10 2010 +0100
+++ b/phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp Tue Sep 14 21:18:17 2010 +0300
@@ -22,6 +22,7 @@
#include <avkon.rsg>
#include <featmgr.h>
#include <telephonyvariant.hrh>
+#include <coreapplicationuisdomainpskeys.h>
#include "phoneui.pan"
#include "cphoneresourceresolverbase.h"
@@ -30,6 +31,7 @@
#include "phonerssbase.h"
#include "phonelogger.h"
#include "cphonecenrepproxy.h"
+#include "cphonepubsubproxy.h"
#include <phoneui.rsg>
#include <callhandlingui.rsg>
@@ -63,6 +65,11 @@
{
iVariationFlags |= EVideoCallMenu;
}
+
+ if ( FeatureManager::FeatureSupported( KFeatureIdFfEntryPointForVideoShare ) )
+ {
+ iVariationFlags |= EVideoShareEntryPoint;
+ }
}
// Destructor
@@ -119,6 +126,15 @@
{
return CPhoneCenRepProxy::Instance()->IsTelephonyFeatureSupported( aFeatureId );
}
+
+TBool CPhoneResourceResolverBase::ShowVideoShareButton() const
+ {
+ return ( iVariationFlags & EVideoShareEntryPoint ) &&
+ CPhonePubSubProxy::Instance()->Value
+ ( KPSUidCoreApplicationUIs, KCoreAppUIsVideoSharingIndicator )
+ == ECoreAppUIsVideoSharingIndicatorOn;
+ }
+
// -----------------------------------------------------------------------------
// CPhoneResourceResolverBase::ResolveResourceID
// Empty implementation, because there isn't common phoneapp.rss file.
@@ -1363,7 +1379,14 @@
break;
case EPhoneIncallButtons:
- retVal = R_PHONEUI_INCALL_BUTTONS;
+ if ( ShowVideoShareButton() )
+ {
+ retVal = R_PHONEUI_INCALL_VIDEO_SHARE_BUTTONS;
+ }
+ else
+ {
+ retVal = R_PHONEUI_INCALL_BUTTONS;
+ }
break;
case EPhoneIncallVideoShareButtons: