phoneapp/phoneuiutils/src/cphoneresourceresolverbase.cpp
branchRCL_3
changeset 26 8baf28733c3d
parent 25 5266b1f337bd
--- 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: