--- a/commondrm/drmrightsmanagerui/src/DRMRightsMgrAppUi.cpp Fri Feb 19 23:05:49 2010 +0200
+++ b/commondrm/drmrightsmanagerui/src/DRMRightsMgrAppUi.cpp Fri Mar 12 15:43:46 2010 +0200
@@ -231,7 +231,7 @@
{
case EDrmSchemeOmaDrm:
CheckOmaDrmRightsL( aContentURI, aLocalID, rights, status );
- if ( status )
+ if ( status < 0 )
{
rights = NULL;
}
@@ -331,6 +331,7 @@
const TBool aIsGroup )
{
CDcfCommon* dcf = NULL;
+ HBufC8* buffer( NULL );
TBool getName = ETrue;
TParse parse;
@@ -356,19 +357,52 @@
if ( err == KErrNotFound || itemNameBuf->Length() == 0 )
{
- if ( aIsGroup )
+ // Do not show name if group rights or forward lock
+ if ( !aIsGroup )
{
- aItemName = aFullName;
- }
- else
- {
- parse.Set( aFullName, NULL, NULL );
- aItemName = parse.NameAndExt();
+ if ( ( iRightsClient.ForwardLockURI( buffer ) ==
+ KErrNone ) && buffer )
+ {
+
+ // Not forward lock
+ if ( aID.Compare( *buffer ) != 0 )
+ {
+ parse.Set( aFullName, NULL, NULL );
+ aItemName = parse.NameAndExt();
+ }
+ delete buffer;
+ buffer = NULL;
+
+ }
+ else
+ {
+ parse.Set( aFullName, NULL, NULL );
+ aItemName = parse.NameAndExt();
+ }
}
}
else if ( err == KErrNone )
{
- aItemName = *itemNameBuf;
+ // Forward lock or combined delivery
+ // If forward lock, do not show name
+ if ( iRightsClient.ForwardLockURI( buffer ) == KErrNone &&
+ buffer )
+ {
+ if ( aID.Compare( *buffer ) != 0 )
+ {
+ // Combined delivery
+ aItemName = *itemNameBuf;
+ }
+ delete buffer;
+ }
+ else
+ {
+ // Do not show name if having group rights
+ if ( !aIsGroup )
+ {
+ aItemName = *itemNameBuf;
+ }
+ }
}
else
{
@@ -720,11 +754,21 @@
if ( entry )
{
fullName = entry->FileName();
- delete entry;
SetSelectedItemFullName( fullName );
TFileName itemName;
- GetItemNameL( fullName, itemName, aContentURI, EFalse );
+
+ if ( entry->GroupId().Length() > 0 )
+ {
+ GetItemNameL( fullName, itemName, aContentURI, ETrue );
+ }
+ else
+ {
+ GetItemNameL( fullName, itemName, aContentURI, EFalse );
+ }
+
+ delete entry;
+
SetSelectedItemName( itemName );
if ( GetItemDataL( fullName, aContentURI, listable,
@@ -738,6 +782,7 @@
{
SetSelectedItemFullName( KNullDesC );
TFileName itemName;
+ // Treat in GetItemNameL as if having group rights
GetItemNameL( KNullDesC, itemName, aContentURI, ETrue );
SetSelectedItemName( itemName );
@@ -753,15 +798,15 @@
{
aStatus = iDRMCommon->GetSingleRightsObject( aContentURI,
aLocalID, aRights );
+ if ( aStatus )
+ {
+ aRights = NULL;
+ }
}
- else
+ else
{
aStatus = iDRMCommon->GetActiveRights( aContentURI, 0, aRights );
}
- if ( aStatus )
- {
- aRights = NULL;
- }
CheckIndividualConstraint( aContentURI, individualConstraint, usageAllowed );
SetSelectedIndividualConstraint( individualConstraint );