--- a/languageinterworkingfw/servicehandler/src/liwservicehandlerimpl.cpp Tue Aug 31 16:06:08 2010 +0300
+++ b/languageinterworkingfw/servicehandler/src/liwservicehandlerimpl.cpp Wed Sep 01 12:23:36 2010 +0100
@@ -37,7 +37,7 @@
#include "liwxmlhandler.h"
#include "liwservicedata.h"
-
+#include <e32property.h>
#include <rtsecmgrscriptsession.h>
// CONSTANTS
@@ -54,6 +54,10 @@
// The whole range that is reserved to all menu panes. Currently value is 170 000.
const TInt KMenuPaneCommandRange = (KMaxMenuResources + 1) * KIndividualMenuPaneIdRange;
+const TUid KMyPropertyCat = { 0x10282822 };
+
+enum TMyPropertyKeys { EMyPropertyState = 115, EMyPropertyFinalState = 116};
+
_LIT(KLiwResourceFile, "liwServiceHandler.rsc");
_LIT(KLiwZDrive, "z:");
_LIT8(KDataSeparator, "||");
@@ -427,6 +431,12 @@
return (this->AttachL(aInterest,NULL));
}
+TInt CLiwServiceHandlerImpl::AttachL(const RCriteriaArray& aInterest,CRTSecMgrScriptSession* aSecMgrScriptSession,TInt aWidgetId)
+ {
+ iWidgetId = aWidgetId;
+ return (this->AttachL(aInterest,aSecMgrScriptSession));
+ }
+
TInt CLiwServiceHandlerImpl::AttachL(const RCriteriaArray& aInterest ,CRTSecMgrScriptSession* aSecMgrScriptSession)
{
RCriteriaArray interest, filtered;
@@ -2857,11 +2867,17 @@
{
if(aScriptSession->PromptOption() == RTPROMPTUI_PROVIDER)
{
- GetProviderResourceFile(provResourcePath, pServiceData->GetMetaData());
- isAllowed = aScriptSession->IsAllowed(provCaps, pChosenImpl->ImplementationUid(), provResourcePath);
- }
+ GetProviderResourceFile(provResourcePath, pServiceData->GetMetaData());
+ RProperty::Set( KMyPropertyCat, EMyPropertyState , iWidgetId );
+ isAllowed = aScriptSession->IsAllowed(provCaps, pChosenImpl->ImplementationUid(), provResourcePath);
+ RProperty::Set( KMyPropertyCat, EMyPropertyFinalState , iWidgetId );
+ }
else
+ {
+ RProperty::Set( KMyPropertyCat, EMyPropertyState , iWidgetId );
isAllowed = aScriptSession->IsAllowed(provCaps);
+ RProperty::Set( KMyPropertyCat, EMyPropertyFinalState , iWidgetId );
+ }
}
if(KErrNone==isAllowed)