--- a/photosgallery/collectionframework/plugins/tagcollectionplugin/src/glxcollectionplugintags.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/collectionframework/plugins/tagcollectionplugin/src/glxcollectionplugintags.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -340,10 +340,8 @@
case KGlxCollectionRootLevel:
case KGlxCollectionTagLevel:
{
- filterProperties.iMinCount = 1;
filterProperties.iSortOrder = EGlxFilterSortOrderAlphabetical;
filterProperties.iItemType = EGlxFilterTag;
-
break;
}
case KGlxCollectionTagContentsLevel:
--- a/photosgallery/common/group/bld.inf Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/common/group/bld.inf Wed Apr 14 15:57:24 2010 +0300
@@ -10,6 +10,7 @@
* Nokia Corporation - initial contribution.
*
* Contributors:
+* NTT DOCOMO, INC - BUG 2361
*
* Description: Project definition file for project glxdatasourcemanager.
*
@@ -31,10 +32,7 @@
// flags for setting the orientation
- // for device
- ../cenrep/200009EE.txt /epoc32/data/z/private/10202be9/200009ee.txt
- // for emulator
- ../cenrep/200009EE.txt /epoc32/release/winscw/udeb/z/private/10202be9/200009ee.txt
+../cenrep/200009EE.txt z:/private/10202be9/200009ee.txt
// Generic configuration interface for component cenrep settings
../../conf/gallery.confml CONFML_EXPORT_PATH(gallery.confml,customsw)
--- a/photosgallery/controllers/fetcher/inc/glxfetcherdialog.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/controllers/fetcher/inc/glxfetcherdialog.h Wed Apr 14 15:57:24 2010 +0300
@@ -28,6 +28,7 @@
#include <alf/alfscreenbuffer.h>
#include "mglxeventobserver.h"
+#include "glxmmcnotifier.h"
// Forward Declerations
class CGlxFetcherContainer;
@@ -39,7 +40,8 @@
// INTERNAL INCLUDES
NONSHARABLE_CLASS (CGlxFetcherDialog) : public CAknDialog ,
- public MGlxEventObserver
+ public MGlxEventObserver,
+ public MStorageNotifierObserver
{
public: // Constructors and destructor
/**
@@ -134,6 +136,15 @@
public:// to exit the fetcher dialog
void CallCancelFetcherL(TInt aCommandId);
+ /**
+ * handle MMC insertion
+ */
+ void HandleMMCInsertionL(){};
+ /**
+ * handle MMC removal
+ */
+ void HandleMMCRemovalL();
+
private:
CGlxFetcherContainer* iFetcherContainer ; //Container Object
@@ -157,6 +168,9 @@
TBool iMarkStarted;
TBool iFetchUri; // This is to check if uri is being fetcher or not
+
+ //mmc notifier
+ CGlxMMCNotifier* iMMCNotifier;
};
#endif /*GLXFETCHERDIALOG_H_*/
--- a/photosgallery/controllers/fetcher/src/glxfetchercontainer.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/controllers/fetcher/src/glxfetchercontainer.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -256,16 +256,26 @@
iUiUtility->GetGridIconSize().iHeight -(2*KPadding));
TFileName resFile(KDC_APP_BITMAP_DIR);
resFile.Append(KGlxIconsFilename);
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_notcreated);
- AknIconUtils::SetSize(bitmap, iconSize);
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_notcreated,
+ EMbmGlxiconsQgn_prop_image_notcreated_mask);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
// Create Hg grid object
- iHgGrid = CHgGrid::NewL (
- rect,
- iMediaList->Count(),
- CGulIcon::NewL(bitmap) );
+ iHgGrid = CHgGrid::NewL(rect, iMediaList->Count(), CGulIcon::NewL(
+ bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
+
iHgGrid->SetSelectedIndex(iMediaList->FocusIndex());
// Setting to MopParent to update background skin
iHgGrid->SetMopParent(this);
@@ -310,21 +320,20 @@
TInt mediaCount = iMediaList->Count();
aRequestStart = (aRequestStart<0 ? 0 : aRequestStart) ;
- aRequestEnd = (aRequestEnd>=mediaCount? mediaCount : aRequestEnd);
+ aRequestEnd = (aRequestEnd>=mediaCount? (mediaCount -1): aRequestEnd);
if (aRequestEnd - aRequestStart)
{
TInt visIndex = iHgGrid->FirstIndexOnScreen();
- if (visIndex < 0)
+ if(visIndex >= mediaCount )
+ {
+ visIndex = mediaCount-1;
+ }
+ if(visIndex<0 || mediaCount<=0)
{
visIndex = 0;
}
-
- else if (visIndex >= mediaCount)
- {
- visIndex = mediaCount-1;
- }
-
+
GLX_LOG_INFO1("CGlxGridViewImp::Request - SetVisibleWindowIndex "
"visIndex(%d)", visIndex);
iMediaList->SetVisibleWindowIndexL(visIndex);
@@ -370,19 +379,46 @@
else if (item.GetIconInfo(icon))
{
GLX_LOG_INFO1("CGlxGridViewImp::Request - icon(%d)", aIndex);
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(icon.bmpfile, icon.bitmapId);
- AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize());
- iHgGrid->ItemL(aIndex).SetIcon(CGulIcon::NewL(bitmap));
- GLX_LOG_INFO1("### CGlxGridViewImp::Request GetIconInfo-Index is %d",aIndex);
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, icon.bmpfile, icon.bitmapId, icon.maskId);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iHgGrid->ItemL(aIndex).SetIcon(CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
+ GLX_LOG_INFO1("### CGlxGridViewImp::Request GetIconInfo-Index is %d",
+ aIndex);
}
- else if ( KErrNone != tnError && KErrNotSupported != tnError )
+ else if (KErrNone != tnError && KErrNotSupported != tnError)
{
- GLX_LOG_INFO2("CGlxGridViewImp::Request - image_corrupted tnError(%d), "
- "i(%d)", tnError, aIndex);
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_corrupted);
- AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize());
- iHgGrid->ItemL(aIndex).SetIcon(CGulIcon::NewL(bitmap));
+ GLX_LOG_INFO2(
+ "CGlxGridViewImp::Request - image_corrupted tnError(%d), "
+ "i(%d)", tnError, aIndex);
+
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_corrupted,
+ EMbmGlxiconsQgn_prop_image_corrupted_mask);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iHgGrid->ItemL(aIndex).SetIcon(CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
if (item.IsDrmProtected())
--- a/photosgallery/controllers/fetcher/src/glxfetcherdialog.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/controllers/fetcher/src/glxfetcherdialog.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -88,6 +88,11 @@
CGlxFetcherDialog::~CGlxFetcherDialog()
{
TRACER("CGlxFetcherDialog::~CGlxFetcherDialog");
+ if(iMMCNotifier)
+ {
+ delete iMMCNotifier;
+ iMMCNotifier = NULL;
+ }
if(iFetcherContainer)
{
// Restore the Toolbar as it was in the Calling application
@@ -123,6 +128,7 @@
iUiUtility = CGlxUiUtility::UtilityL();
iEnv = iUiUtility->Env();
iFetchUri = EFalse;
+ iMMCNotifier = CGlxMMCNotifier::NewL(*this);
}
//-----------------------------------------------------------------------------
@@ -449,4 +455,20 @@
TRACER("CGlxFetcherDialog::CallCancelFetcherL");
TryExitL(aCommandId);
}
+
+//-----------------------------------------------------------------------------
+// CGlxFetcherDialog::HandleMMCRemovalL
+// This function will be called when MMC is removed
+// This will ensure exit of fetcher dialog.
+//-----------------------------------------------------------------------------
+void CGlxFetcherDialog::HandleMMCRemovalL()
+ {
+ TRACER("CGlxFetcherDialog::HandleMMCRemovalL");
+ /*
+ * need to delay the destruction of dialog.
+ */
+ Extension()->iPublicFlags.Set(CEikDialogExtension::EDelayedExit);
+ ProcessCommandL(EAknSoftkeyCancel);
+ Extension()->iPublicFlags.Clear(CEikDialogExtension::EDelayedExit);
+ }
// End of File
--- a/photosgallery/gallery/inc/glxappui.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/gallery/inc/glxappui.h Wed Apr 14 15:57:24 2010 +0300
@@ -212,6 +212,11 @@
*Timer to check for IAD updates 30 seconds after application startup.
*/
CPeriodic* iPeriodic ;
+
+ /**
+ * Flag to filter any spurious EPathChanged event from MPX Collection f/w.
+ */
+ TBool iStateChangeRequested;
} ;
--- a/photosgallery/gallery/src/glxappui.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/gallery/src/glxappui.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -121,6 +121,7 @@
// publish zoom context, no zoom keys for now
NGlxZoomStatePublisher::PublishStateL( EFalse );
iEndKeyPressed = EFalse;
+ iStateChangeRequested = EFalse;
}
// -----------------------------------------------------------------------------
@@ -241,6 +242,7 @@
CMPXCollectionPath* newState = CMPXCollectionPath::NewL();
CleanupStack::PushL( newState );
iNavigationalState->NavigateToL( *newState );
+ iStateChangeRequested = ETrue;
CleanupStack::PopAndDestroy( newState );
}
@@ -272,11 +274,12 @@
TApaTaskList taskList( iCoeEnv->WsSession() );
TApaTask task = taskList.FindApp( TUid::Uid( KGlxGalleryApplicationUid ) );
TApaTask taskForeGround = taskList.FindByPos(0); // get fopreground app
- if ( task.Exists() && task.ThreadId() != taskForeGround.ThreadId() )
- {
- GLX_LOG_INFO("CGlxAppUi::HandleNavigationalStateChanged: Return ");
- return;
- }
+ if (!iStateChangeRequested && task.Exists() && task.ThreadId()
+ != taskForeGround.ThreadId())
+ {
+ GLX_LOG_INFO("* CGlxAppUi::HandleNavigationalStateChanged:Return *");
+ return;
+ }
HBufC* activationParam = iActivationParam;
iActivationParam = NULL; // release ownership
CleanupStack::PushL( activationParam );
@@ -305,6 +308,7 @@
}
CleanupStack::PopAndDestroy( activationParam );
+ iStateChangeRequested = EFalse;
}
// ---------------------------------------------------------------------------
@@ -319,42 +323,32 @@
// get current navigational state
CMPXCollectionPath* naviState = iNavigationalState->StateLC();
-
- // no if check in needed here ,it makes the aapui aware of the list view depth
- // to be removed.added by gopa
- if ( naviState->Levels() >= 1)
+ if (naviState->Levels() >= 1)
{
- if (iNavigationalState->ViewingMode() == NGlxNavigationalState::EBrowse)
+ if (iNavigationalState->ViewingMode()
+ == NGlxNavigationalState::EBrowse)
{
- // For image viewer collection, goto view mode
- if (naviState->Id() == TMPXItemId(KGlxCollectionPluginImageViewerImplementationUid))
- {
- aIds.AppendL( TUid::Uid( KGlxViewingModeView ) );
- }
- else
- {
- aIds.AppendL( TUid::Uid( KGlxViewingModeBrowse ) );
- }
- }
- else
+ aIds.AppendL(TUid::Uid(KGlxViewingModeBrowse));
+ }
+ else
{
- aIds.AppendL( TUid::Uid( KGlxViewingModeView ) );
- }
+ aIds.AppendL(TUid::Uid(KGlxViewingModeView));
+ }
}
- if( TUid::Null() != GetViewScoringIdForCollectionPlugin( *naviState ) )
+ if (TUid::Null() != GetViewScoringIdForCollectionPlugin(*naviState))
{
// add scoring id for collection plugin
- aIds.AppendL( GetViewScoringIdForCollectionPlugin( *naviState ) );
+ aIds.AppendL(GetViewScoringIdForCollectionPlugin(*naviState));
}
-
- if( TUid::Null() != ViewScoringIdForNaviStateDepth( *naviState ) )
+
+ if (TUid::Null() != ViewScoringIdForNaviStateDepth(*naviState))
{
- // add scoring id for depth in the ui hierarchy
- aIds.AppendL( ViewScoringIdForNaviStateDepth( *naviState ) );
+ // add scoring id for depth in the ui hierarchy
+ aIds.AppendL(ViewScoringIdForNaviStateDepth(*naviState));
}
-
- CleanupStack::PopAndDestroy( naviState );
+
+ CleanupStack::PopAndDestroy(naviState);
}
// ---------------------------------------------------------------------------
// Handles the foreground events
@@ -428,38 +422,32 @@
// HandleActivationMessageL
// ---------------------------------------------------------------------------
//
-void CGlxAppUi::HandleActivationMessageL(const TApaCommand& aCommand,
- const TFileName& aDocumentName, const TDesC8& aData)
+void CGlxAppUi::HandleActivationMessageL(const TApaCommand& /*aCommand*/,
+ const TFileName& /*aDocumentName*/, const TDesC8& aData)
{
- TRACER("void CGlxAppUi::HandleActivationMessageL(const TApaCommand& aCommand, const TFileName& aDocumentName, const TDesC8& aData)");
- GLX_LOG_INFO1("Glx-HandleActivationMessageL() aCommand=%d", aCommand);
- GLX_LOG_INFO1("Glx-HandleActivationMessageL() aDocumentName length=%d",
- aDocumentName.Length());
+ TRACER("void CGlxAppUi::HandleActivationMessageL("
+ "const TApaCommand& aCommand, const TFileName& aDocumentName, "
+ "const TDesC8& aData)");
+ GLX_LOG_INFO1("Glx-HandleActivationMessageL() aData length=%d",
+ aData.Length());
delete iActivationParam;
iActivationParam = NULL;
- if (aDocumentName.Length() > 0 && 0 == aData.CompareC(KNullDesC8) )
+ if (aData.Length() == 0 )
{
- GLX_LOG_INFO("CGlxAppUi::HandleActivationMessageL() Image Viewer!");
- CMPXCollectionPath* path = CMPXCollectionPath::NewL();
- CleanupStack::PushL(path);
- iNavigationalState->SetBackExitStatus( EFalse );
- path->AppendL( KGlxCollectionPluginImageViewerImplementationUid );
- iNavigationalState->NavigateToL( *path );
- CleanupStack::PopAndDestroy( path );
+ // Open navigational state at root level
+ CMPXCollectionPath* newState = CMPXCollectionPath::NewL();
+ CleanupStack::PushL(newState);
+ iNavigationalState->NavigateToL(*newState);
+ iStateChangeRequested = ETrue;
+ CleanupStack::PopAndDestroy(newState);
}
else
{
GLX_LOG_INFO("CGlxAppUi::HandleActivationMessageL(aData)");
HandleActivationMessageL( aData );
}
-
- // Introduced to fix bug EMJN-78GH6N.
- if (0 != iEikonEnv->RootWin().OrdinalPosition())
- {
- iEikonEnv->RootWin().SetOrdinalPosition(0);
- }
}
// ---------------------------------------------------------------------------
@@ -514,6 +502,7 @@
CleanupStack::PopAndDestroy(&stream);
iNavigationalState->SetStartingLevel(path->Levels());
iNavigationalState->NavigateToL( *path );
+ iStateChangeRequested = ETrue;
CleanupStack::PopAndDestroy(path);
// Introduced to fix bug EMJN-78GH6N.
--- a/photosgallery/slideshow/engine/effectsrc/shwdefaulteffectmanager.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/slideshow/engine/effectsrc/shwdefaulteffectmanager.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -196,7 +196,13 @@
/// are cloned as needed
MShwEffect* clone = effect->CloneLC();
iAvailableEffects.AppendL( clone );
- CleanupStack::Pop( clone );
+
+ // This will cause a code scanner warning, but it is not possible to do
+ // CleanupStack::Pop(clone) because the pointer pushed
+ // onto the cleanup stack was either of class CShwZoomAndPanEffect
+ // or a CShwCrossFadeEffect and the object 'clone' is of
+ // class MShwEffect
+ CleanupStack::Pop(); //clone
iEffects.Append( effect );
iEffects.Append( clone );
--- a/photosgallery/slideshow/engine/group/bld.inf Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/slideshow/engine/group/bld.inf Wed Apr 14 15:57:24 2010 +0300
@@ -10,6 +10,7 @@
* Nokia Corporation - initial contribution.
*
* Contributors:
+* NTT DOCOMO, INC - BUG 2361
*
* Description: Slideshow INF component
*
@@ -41,8 +42,7 @@
* -rd S:/mgallery/slideshow/engine/cenrep\
*
*/
-../cenrep/200071D3.txt /epoc32/data/z/private/10202be9/200071d3.txt
-../cenrep/200071D3.txt /epoc32/release/winscw/udeb/z/private/10202be9/200071d3.txt
+../cenrep/200071D3.txt z:/private/10202be9/200071d3.txt
// Generic configuration interface for component cenrep settings
../../../conf/slideshow.confml CONFML_EXPORT_PATH(slideshow.confml,customsw)
--- a/photosgallery/slideshow/engine/tsrc/t_cshweventrouter/t_cshweventrouter.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/slideshow/engine/tsrc/t_cshweventrouter/t_cshweventrouter.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -204,13 +204,13 @@
observers.AppendL( this );
// add the array of observers
iRouter->AddObserversL( observers.Array() );
- CleanupStack::PopAndDestroy( observers );
+ CleanupStack::PopAndDestroy( &observers );
// add us as publisher
RPointerArray<MShwEventPublisher> publisher;
CleanupClosePushL( publisher );
publisher.AppendL( this );
iRouter->AddProducers( publisher.Array() );
- CleanupStack::PopAndDestroy( publisher );
+ CleanupStack::PopAndDestroy( &publisher );
T_TestEvent testEvent;
// set the event object pointer so that the notify can verify the event object
--- a/photosgallery/viewframework/commandhandlers/commandhandlermarking/src/glxcommandhandlermarking.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/commandhandlers/commandhandlermarking/src/glxcommandhandlermarking.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -488,9 +488,13 @@
// HandleItemAddedL
// ---------------------------------------------------------------------------
void CGlxCommandHandlerMarking::HandleItemAddedL(TInt /*aStartIndex*/,
- TInt /*aEndIndex*/, MGlxMediaList* /*aList*/)
+ TInt /*aEndIndex*/, MGlxMediaList* aList)
{
- // No Implementation
+ if (aList->Count() > 0 && iUiUtility->GetGridToolBar())
+ {
+ iUiUtility->GetGridToolBar()->SetItemDimmed(
+ EGlxCmdStartMultipleMarking, EFalse, ETrue);
+ }
}
@@ -507,9 +511,13 @@
// HandleItemRemoved
// ---------------------------------------------------------------------------
void CGlxCommandHandlerMarking::HandleItemRemovedL(TInt /*aStartIndex*/,
- TInt /*aEndIndex*/, MGlxMediaList* /*aList*/)
+ TInt /*aEndIndex*/, MGlxMediaList* aList)
{
- //Do nothing
+ if (aList->Count() == 0 && iUiUtility->GetGridToolBar())
+ {
+ iUiUtility->GetGridToolBar()->SetItemDimmed(
+ EGlxCmdStartMultipleMarking, ETrue, ETrue);
+ }
}
// ---------------------------------------------------------------------------
--- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandlerslideshow.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandlerslideshow.h Wed Apr 14 15:57:24 2010 +0300
@@ -84,6 +84,7 @@
TInt aOldIndex, MGlxMediaList* aList);
void HandleItemSelectedL(TInt aIndex, TBool aSelected, MGlxMediaList* aList);
void HandleMessageL(const CMPXMessage& aMessage, MGlxMediaList* aList);
+ void HandlePopulatedL( MGlxMediaList* aList );
private:
/** Second phase constructor */
--- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandlerupload.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandlerupload.h Wed Apr 14 15:57:24 2010 +0300
@@ -252,6 +252,9 @@
CAknToolbar* iToolbar;
TThumbnailRequestId iTnmRequestID;
+
+ //To check if we are in fullscreen
+ TBool iIsFullScreenView;
};
#endif //__GLXCOMMANDHANDLERUPLOAD_H__
--- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -234,8 +234,6 @@
enableMultipleSelection = ETrue;
enablePopup = ETrue;
targetCollection->AppendL(KGlxTagCollectionPluginImplementationUid);
- filter = TGlxFilterFactory::CreateIncludeEmptyContainersFilterL();
- CleanupStack::PushL(filter);
break;
}
}
--- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerslideshow.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerslideshow.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -339,10 +339,14 @@
// ----------------------------------------------------------------------------
void CGlxCommandHandlerSlideshow::HandleFocusChangedL(
NGlxListDefs::TFocusChangeType /*aType*/,
- TInt /*aNewIndex*/, TInt /*aOldIndex*/, MGlxMediaList* /*aList*/ )
+ TInt /*aNewIndex*/, TInt /*aOldIndex*/, MGlxMediaList* aList)
{
TRACER("CGlxCommandHandlerSlideshow::HandleFocusChangedL");
-
+ if (aList->Count() <= 0 && iUiUtility->GetGridToolBar())
+ {
+ iUiUtility->GetGridToolBar()->SetItemDimmed(
+ EGlxCmdStartMultipleMarking, ETrue, ETrue);
+ }
}
// ---------------------------------------------------------------------------
@@ -350,8 +354,13 @@
// ---------------------------------------------------------------------------
//
void CGlxCommandHandlerSlideshow::HandleItemAddedL(TInt /*aStartIndex*/,
- TInt /*aEndIndex*/, MGlxMediaList* /*aList*/)
+ TInt /*aEndIndex*/, MGlxMediaList* aList)
{
+ if (aList->Count() > 0 && iUiUtility->GetGridToolBar())
+ {
+ iUiUtility->GetGridToolBar()->SetItemDimmed(EGlxCmdSlideshowPlay,
+ EFalse, ETrue);
+ }
}
// ---------------------------------------------------------------------------
@@ -368,8 +377,13 @@
// ---------------------------------------------------------------------------
//
void CGlxCommandHandlerSlideshow::HandleItemRemovedL(TInt /*aStartIndex*/,
- TInt /*aEndIndex*/, MGlxMediaList* /*aList*/)
+ TInt /*aEndIndex*/, MGlxMediaList* aList)
{
+ if (aList->Count() <= 0 && iUiUtility->GetGridToolBar())
+ {
+ iUiUtility->GetGridToolBar()->SetItemDimmed(EGlxCmdSlideshowPlay,
+ ETrue, ETrue);
+ }
}
// ---------------------------------------------------------------------------
@@ -509,6 +523,19 @@
EGlxCmdSlideshowPlay, visible );
}
+// ----------------------------------------------------------------------------
+// HandlePopulatedL
+// ----------------------------------------------------------------------------
+//
+void CGlxCommandHandlerSlideshow::HandlePopulatedL( MGlxMediaList* aList )
+ {
+ TRACER("CGlxCommandHandlerSlideshow::HandlePopulatedL()");
+ if (aList->Count() == 0 && iUiUtility->GetGridToolBar())
+ {
+ iUiUtility->GetGridToolBar()->SetItemDimmed(
+ EGlxCmdSlideshowPlay, ETrue, ETrue);
+ }
+ }
// ---------------------------------------------------------------------------
// PopulateToolbar
@@ -517,7 +544,8 @@
void CGlxCommandHandlerSlideshow::PopulateToolbarL()
{
TRACER("CGlxCommandHandlerSlideshow::PopulateToolbarL");
- iUiUtility->ScreenFurniture()->SetTooltipL( EGlxCmdSlideshowPlay, CAknButton::EPositionLeft );
+ iUiUtility->ScreenFurniture()->SetTooltipL(EGlxCmdSlideshowPlay,
+ CAknButton::EPositionLeft);
}
// End of File
--- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerupload.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerupload.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -118,8 +118,10 @@
iCurrentCenRepMonitor = EMonitorNone;
iTnmRequestID = KErrNotFound;
+ iIsFullScreenView = IsFullScreenViewL();
+
//Check for fullscreen here since we dont get the activate call in FS.
- if(IsFullScreenViewL())
+ if(iIsFullScreenView)
{
//Giving the viewid as zero, since its not used anywhere.
iToolbar = iAvkonAppUi->CurrentFixedToolbar();
@@ -271,7 +273,7 @@
//Get the grid toolbar here as it wont be created yet in
//constructor
- if(!IsFullScreenViewL())
+ if(!iIsFullScreenView)
{
iToolbar = iUiUtility->GetGridToolBar();
}
@@ -368,7 +370,7 @@
//When the Upload is not supported or if we are in grid view
//and none of the item is selected Dim the Upload icon
- if(!iUploadSupported || (!IsFullScreenViewL() &&
+ if(!iUploadSupported || (!iIsFullScreenView &&
(MediaList().SelectionCount()== 0)))
{
DisableUploadToolbarItem(ETrue);
@@ -529,7 +531,7 @@
{
TRACER("CGlxCommandHandlerUpload::HandleFocusChangedL");
//In Fullscreen change the icons based on current focused icon
- if(iUploadSupported && IsFullScreenViewL())
+ if(iUploadSupported && iIsFullScreenView)
{
UpdateFSUploadIconL();
}
@@ -545,7 +547,7 @@
TRACER("CGlxCommandHandlerUpload::HandleItemSelectedL");
//In grid if an item is selected update the toolbar icon based on
//the mime types of items
- if(iUploadSupported && !IsFullScreenViewL())
+ if(iUploadSupported && !iIsFullScreenView)
{
if(aList->SelectionCount() >= 1 )
{
@@ -556,7 +558,11 @@
{
DecodeIconL(uploadIconFileName);
}
- DisableUploadToolbarItem(EFalse);
+ //Enable the toolbar only once to avoid performance prb
+ if(aList->SelectionCount() == 1 )
+ {
+ DisableUploadToolbarItem(EFalse);
+ }
}
else
{
@@ -589,7 +595,7 @@
{
if(aList && aList->Count() > 0)
{
- if(!iUploadSupported || !IsFullScreenViewL())
+ if(!iUploadSupported || !iIsFullScreenView)
{
DisableUploadToolbarItem(ETrue);
}
--- a/photosgallery/viewframework/commandhandlers/tsrc/ut_commandhandlerdrm/src/t_glxdummydrmutility.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/commandhandlers/tsrc/ut_commandhandlerdrm/src/t_glxdummydrmutility.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -48,7 +48,7 @@
return ETrue;
}
-TBool CGlxDRMUtility::CanShowInfoOnlineL(TDesC& aUri)
+TBool CGlxDRMUtility::CanShowInfoOnlineL(const TDesC& aUri)
{
TBool hasInfo = EFalse;
@@ -60,7 +60,7 @@
return hasInfo;
}
-void CGlxDRMUtility::ShowInfoOnlineL(TDesC& /*aUri*/)
+void CGlxDRMUtility::ShowInfoOnlineL(const TDesC& /*aUri*/)
{
}
--- a/photosgallery/viewframework/medialists/src/glxcachemanager.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/medialists/src/glxcachemanager.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -330,22 +330,19 @@
RPointerArray< MGlxMediaUser > users;
CleanupClosePushL( users );
- // Record the error on all requested attributes
TInt idCount = iRequestedItemIds.Count();
-
- for( TInt idIndex = 0; idIndex < idCount; idIndex++ )
- {
- CGlxMedia* item = MediaForceCreateL(aIdSpaceId, iRequestedItemIds[idIndex]);
- GlxErrorManager::SetAttributeErrorL(item, iRequestedAttrs, aError);
-
- // Keep track of media lists to notify later
- TInt userCount = item->UserCount();
- for ( TInt userIndex = 0; userIndex < userCount; userIndex++ )
- {
- users.InsertInAddressOrder( &item->User( userIndex ) );
- }
- }
-
+ if(idCount)
+ {
+ CGlxMedia* item = MediaForceCreateL(aIdSpaceId, iRequestedItemIds[0]);
+ GlxErrorManager::SetAttributeErrorL(item, iRequestedAttrs, aError);
+
+ // Keep track of media lists to notify later
+ TInt userCount = item->UserCount();
+ for ( TInt userIndex = 0; userIndex < userCount; userIndex++ )
+ {
+ users.InsertInAddressOrder( &item->User( userIndex ) );
+ }
+ }
// Notify all affected users of error
TInt userCount = users.Count();
for ( TInt i = 0; i < userCount; i++ )
--- a/photosgallery/viewframework/medialists/tsrc/ut_cglxattributecontext/ut_cglxattributecontext.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/medialists/tsrc/ut_cglxattributecontext/ut_cglxattributecontext.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -199,13 +199,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop( attributes );
+ CleanupStack::Pop( &attributes );
attributes.Close();
- CleanupStack::Pop( itemIndices );
+ CleanupStack::Pop( &itemIndices );
itemIndices.Close();
- CleanupStack::PopAndDestroy( mediaList );
+ CleanupStack::PopAndDestroy( &mediaList );
}
void UT_CGlxAttributeContext::FetchOneItem_IndexZeroL()
@@ -240,13 +240,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchOneItem_IndexOneL()
@@ -281,13 +281,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchOneItem_IndexTwoL()
@@ -322,13 +322,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchOneItem_IndexThreeL()
@@ -363,13 +363,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchOneItem_IndexFourL()
@@ -404,13 +404,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchItems_GranularityLessThanRange_IndexZeroL()
@@ -445,13 +445,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchItems_GranularityLessThanRange_IndexOneL()
@@ -486,13 +486,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemindices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchItems_GranularityLessThanRange_IndexTwoL()
@@ -527,13 +527,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchItems_GranularityLessThanRange_IndexThreeL()
@@ -568,13 +568,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchItems_GranularityLessThanRange_IndexFourL()
@@ -609,13 +609,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchItems_GranularityLessThanRange_IndexFiveL()
@@ -650,13 +650,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
void UT_CGlxAttributeContext::FetchItems_GranularityGreaterThanRangeL()
@@ -691,13 +691,13 @@
delete attributeSpecs;
attributeSpecs = NULL;
- CleanupStack::Pop(attributes);
+ CleanupStack::Pop(&attributes);
attributes.Close();
- CleanupStack::Pop(itemIndices);
+ CleanupStack::Pop(&itemIndices);
itemIndices.Close();
- CleanupStack::PopAndDestroy(mediaList);
+ CleanupStack::PopAndDestroy(&mediaList);
}
TBool UT_CGlxAttributeContext::FindAttribute(RArray<TMPXAttribute>& aAttributes, const TMPXAttribute& aAttribute)
--- a/photosgallery/viewframework/medialists/tsrc/ut_cglxattributecontext/ut_cglxattributecontext.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/medialists/tsrc/ut_cglxattributecontext/ut_cglxattributecontext.h Wed Apr 14 15:57:24 2010 +0300
@@ -149,7 +149,7 @@
virtual void SetFocusInitialPosition(NGlxListDefs::TFocusInitialPosition /*aFocusInitialPosition*/) { };
virtual void ResetFocus(){ };
virtual void SetVisibleWindowIndexL( TInt /*aIndex*/) { };
- virtual TInt VisibleWindowIndex() const { };
+ virtual TInt VisibleWindowIndex() const { return iFocusIndex;};
virtual void CancelPreviousRequests() {};
private:
CGlxMediaListTest();
--- a/photosgallery/viewframework/tvout/group/glxtvout.mmp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/tvout/group/glxtvout.mmp Wed Apr 14 15:57:24 2010 +0300
@@ -73,6 +73,7 @@
LIBRARY surfacemanager.lib // surface manager
LIBRARY imageconversion.lib // ICL
LIBRARY efsrv.lib
+LIBRARY glxuiutilities.lib // for GlxGeneralUiUtilities
// Other Dependency Libraries
#ifdef __MARM
LIBRARY GSServerEngine.lib // FOr AspectRatio
--- a/photosgallery/viewframework/tvout/inc/glxhdmisurfaceupdater.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/tvout/inc/glxhdmisurfaceupdater.h Wed Apr 14 15:57:24 2010 +0300
@@ -174,6 +174,7 @@
TBool iBitmapReady;
TBool iAutoZoomOut;
TBool iSurfSessionConnected;
+ TBool iShiftToCloning;
#ifdef _DEBUG
TTime iStartTime;
TTime iStopTime;
--- a/photosgallery/viewframework/tvout/src/glxhdmisurfaceupdater.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/tvout/src/glxhdmisurfaceupdater.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -24,6 +24,7 @@
#include <fbs.h>
#include <glxtracer.h>
#include <glxlog.h>
+#include <glxgeneraluiutilities.h>
#include "glxactivecallback.h"
#include "glxhdmisurfaceupdater.h"
@@ -64,7 +65,7 @@
{
iWindow->RemoveBackgroundSurface(ETrue);
}
- if(iTimer->IsActive())
+ if(iTimer && iTimer->IsActive()) // Check for a CPeriodic Instance
{
iTimer->Cancel();
}
@@ -154,22 +155,25 @@
User::LeaveIfError(error);
iBitmapReady = EFalse;
+ iShiftToCloning = EFalse;
// Create the active object
iGlxDecoderAO = CGlxHdmiDecoderAO::NewL(this);
CreateImageDecoderL(iImagePath);
CreateBitmapL();
- CreateHdmiL();
- error = iSurfUpdateSession.Connect();
- GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::ConstructL() Surface update Session Connect error = %d", error);
- User::LeaveIfError(error);
- iSurfSessionConnected = ETrue;
-
+ TRAP_IGNORE(CreateHdmiL());
+ if(iSurfManager)
+ {
+ error = iSurfUpdateSession.Connect();
+ GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::ConstructL() Surface update Session Connect error = %d", error);
+ User::LeaveIfError(error);
+ iSurfSessionConnected = ETrue;
+
#ifdef _DEBUG
- iStartTime.HomeTime();
+ iStartTime.HomeTime();
#endif
- //start decoding the image
- iGlxDecoderAO->ConvertImageL(*iDecodedBitmap,iImageDecoder);
-
+ //start decoding the image
+ iGlxDecoderAO->ConvertImageL(*iDecodedBitmap,iImageDecoder);
+ }
iLeftCornerForZoom.iX = 0;
iLeftCornerForZoom.iY = 0;
iTimer = CPeriodic::NewL( CActive::EPriorityStandard );
@@ -195,12 +199,22 @@
ReleaseContent();
CreateImageDecoderL(aImageFile);
CreateBitmapL();
- CreateHdmiL(EFalse);
+ if(iSurfManager)
+ {
+ CreateHdmiL(EFalse);
+ }
+ else
+ {
+ TRAP_IGNORE(CreateHdmiL(ETrue));
+ }
#ifdef _DEBUG
iStartTime.HomeTime();
#endif
- //start decoding the image
- iGlxDecoderAO->ConvertImageL(*iDecodedBitmap,iImageDecoder);
+ if(iSurfManager)
+ {
+ //start decoding the image
+ iGlxDecoderAO->ConvertImageL(*iDecodedBitmap,iImageDecoder);
+ }
}
// -----------------------------------------------------------------------------
@@ -249,6 +263,19 @@
error = iSurfManager->CreateSurface(attributes, iSurfId);
GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::CreateSurfaceL, Creating surface error : %d",error);
+ if(error == KErrNoMemory)
+ {
+ GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::CreateSurfaceL(). iSurfManager->Close()");
+ iSurfManager->Close();
+ delete iSurfManager;
+ iSurfManager = NULL;
+ if(iShiftToCloning == EFalse)
+ {
+ GlxGeneralUiUtilities::ShowErrorNoteL(error); // Show Low Memory Popup Once before shifting to Cloning Mode
+ iShiftToCloning = ETrue;
+ }
+ ShiftToCloningMode(); // Shift from Posting Mode to Cloning Mode
+ }
User::LeaveIfError(error);
//Map the surface and stride the surface info
@@ -397,7 +424,7 @@
GLX_LOG_INFO("HandleRunL - Convert failed");
ShiftToCloningMode();
}
- else
+ else if(iSurfManager)
{
iZoomRectSz = iDecodedBitmap->SizeInPixels();
if (iSurfBufferAO->iStatus != KRequestPending
@@ -593,14 +620,18 @@
void CGlxHdmiSurfaceUpdater::ShiftToPostingMode()
{
TRACER("CGlxHdmiSurfaceUpdater::ShiftToPostingMode()");
+ if(iSurfManager)
+ {
#ifdef _DEBUG
- TRect ex, vp;
- iConfig.GetExtent(ex);
- iConfig.GetViewport(vp);
- GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - vp - TL=%d, %d",vp.iTl.iX,vp.iTl.iY);
- GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - vp - BR=%d, %d",vp.iBr.iX,vp.iBr.iY);
- GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - ex - TL=%d, %d",ex.iTl.iX,ex.iTl.iY);
- GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - ex - BR=%d, %d",ex.iBr.iX,ex.iBr.iY);
+ TRect ex, vp;
+ iConfig.GetExtent(ex);
+ iConfig.GetViewport(vp);
+ GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - vp - TL=%d, %d",vp.iTl.iX,vp.iTl.iY);
+ GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - vp - BR=%d, %d",vp.iBr.iX,vp.iBr.iY);
+ GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - ex - TL=%d, %d",ex.iTl.iX,ex.iTl.iY);
+ GLX_LOG_INFO2("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() - ex - BR=%d, %d",ex.iBr.iX,ex.iBr.iY);
#endif
- iWindow->SetBackgroundSurface(iConfig, ETrue);
+ iWindow->SetBackgroundSurface(iConfig, ETrue);
+ iShiftToCloning = EFalse;
+ }
}
--- a/photosgallery/viewframework/uiutilities/bwins/glxuiutilitiesu.def Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/uiutilities/bwins/glxuiutilitiesu.def Wed Apr 14 15:57:24 2010 +0300
@@ -2,65 +2,66 @@
?VisibleItemsInPageGranularityL@CGlxUiUtility@@QAEHXZ @ 1 NONAME ; int CGlxUiUtility::VisibleItemsInPageGranularityL(void)
?ViewNavigationDirection@CGlxUiUtility@@QAE?AW4TGlxNavigationDirection@@XZ @ 2 NONAME ; enum TGlxNavigationDirection CGlxUiUtility::ViewNavigationDirection(void)
?SetRotatedImageSize@CGlxUiUtility@@QAEXVTSize@@@Z @ 3 NONAME ; void CGlxUiUtility::SetRotatedImageSize(class TSize)
- ?NewL@CGlxScreenFurniture@@SAPAV1@AAVCGlxUiUtility@@@Z @ 4 NONAME ; class CGlxScreenFurniture * CGlxScreenFurniture::NewL(class CGlxUiUtility &)
- ?SetExitingState@CGlxUiUtility@@QAEXH@Z @ 5 NONAME ; void CGlxUiUtility::SetExitingState(int)
- ?GlxTextureManager@CGlxUiUtility@@QAEAAVCGlxTextureManager@@XZ @ 6 NONAME ; class CGlxTextureManager & CGlxUiUtility::GlxTextureManager(void)
- ?ExecuteLD@CGlxTextEntryPopup@@QAEHXZ @ 7 NONAME ; int CGlxTextEntryPopup::ExecuteLD(void)
- ?ShowErrorNoteL@GlxGeneralUiUtilities@@SAXH@Z @ 8 NONAME ; void GlxGeneralUiUtilities::ShowErrorNoteL(int)
- ?RegisterActiveMediaList@CGlxActiveMediaListRegistry@@QAEXPAVMGlxMediaList@@@Z @ 9 NONAME ; void CGlxActiveMediaListRegistry::RegisterActiveMediaList(class MGlxMediaList *)
- ?FormatString@GlxGeneralUiUtilities@@SAXAAVTDes16@@ABVTDesC16@@HHH@Z @ 10 NONAME ; void GlxGeneralUiUtilities::FormatString(class TDes16 &, class TDesC16 const &, int, int, int)
- ?AppOrientation@CGlxUiUtility@@QBE?AW4TGlxOrientation@@XZ @ 11 NONAME ; enum TGlxOrientation CGlxUiUtility::AppOrientation(void) const
- ?NewLC@CGlxScreenFurniture@@SAPAV1@AAVCGlxUiUtility@@@Z @ 12 NONAME ; class CGlxScreenFurniture * CGlxScreenFurniture::NewLC(class CGlxUiUtility &)
- ?ShowAlfDisplayL@CGlxUiUtility@@SAXXZ @ 13 NONAME ; void CGlxUiUtility::ShowAlfDisplayL(void)
- ?LayoutIsMirrored@GlxGeneralUiUtilities@@SAHXZ @ 14 NONAME ; int GlxGeneralUiUtilities::LayoutIsMirrored(void)
- ?IsLandscape@GlxGeneralUiUtilities@@SAHXZ @ 15 NONAME ; int GlxGeneralUiUtilities::IsLandscape(void)
- ?SetToolbarPosition@CGlxScreenFurniture@@QAEXXZ @ 16 NONAME ; void CGlxScreenFurniture::SetToolbarPosition(void)
- ?HandleTvStatusChangedL@CGlxUiUtility@@UAEXW4TTvChangeType@@@Z @ 17 NONAME ; void CGlxUiUtility::HandleTvStatusChangedL(enum TTvChangeType)
- ?ModifySoftkeyIdL@CGlxScreenFurniture@@QAEXW4TCommandPosition@CEikButtonGroupContainer@@HHABVTDesC16@@@Z @ 18 NONAME ; void CGlxScreenFurniture::ModifySoftkeyIdL(enum CEikButtonGroupContainer::TCommandPosition, int, int, class TDesC16 const &)
- ?Close@CGlxUiUtility@@QAEXXZ @ 19 NONAME ; void CGlxUiUtility::Close(void)
- ?ViewDeactivated@CGlxScreenFurniture@@QAEXH@Z @ 20 NONAME ; void CGlxScreenFurniture::ViewDeactivated(int)
- ?CreateViewAnimationL@GlxAnimationFactory@@SAPAVMGlxAnimation@@W4TGlxViewswitchAnimation@@W4TGlxNavigationDirection@@AAV?$RPointerArray@VCAlfControlGroup@@@@@Z @ 21 NONAME ; class MGlxAnimation * GlxAnimationFactory::CreateViewAnimationL(enum TGlxViewswitchAnimation, enum TGlxNavigationDirection, class RPointerArray<class CAlfControlGroup> &)
- ?AppState@GlxSetAppState@@SA?AW4TGlxAppState@@XZ @ 22 NONAME ; enum TGlxAppState GlxSetAppState::AppState(void)
- ?ShowInfoNoteL@GlxGeneralUiUtilities@@SAXABVTDesC16@@H@Z @ 23 NONAME ; void GlxGeneralUiUtilities::ShowInfoNoteL(class TDesC16 const &, int)
- ?RemoveSkinChangeObserver@CGlxUiUtility@@QAEXAAVMGlxSkinChangeObserver@@@Z @ 24 NONAME ; void CGlxUiUtility::RemoveSkinChangeObserver(class MGlxSkinChangeObserver &)
- ?UtilityL@CGlxUiUtility@@SAPAV1@XZ @ 25 NONAME ; class CGlxUiUtility * CGlxUiUtility::UtilityL(void)
- ?HideAlfDisplayL@CGlxUiUtility@@SAXXZ @ 26 NONAME ; void CGlxUiUtility::HideAlfDisplayL(void)
- ?DisplaySize@CGlxUiUtility@@QBE?AVTSize@@XZ @ 27 NONAME ; class TSize CGlxUiUtility::DisplaySize(void) const
- ?ShowErrorNoteL@GlxGeneralUiUtilities@@SAXABVTDesC16@@H@Z @ 28 NONAME ; void GlxGeneralUiUtilities::ShowErrorNoteL(class TDesC16 const &, int)
- ?SetActiveView@CGlxScreenFurniture@@QAEXH@Z @ 29 NONAME ; void CGlxScreenFurniture::SetActiveView(int)
- ?SetState@GlxSetAppState@@SAXW4TGlxAppState@@@Z @ 30 NONAME ; void GlxSetAppState::SetState(enum TGlxAppState)
- ?SetLeftSoftKeyL@CGlxTextEntryPopup@@QAEXH@Z @ 31 NONAME ; void CGlxTextEntryPopup::SetLeftSoftKeyL(int)
- ?SetToolbarItemVisibility@CGlxScreenFurniture@@QAEXHH@Z @ 32 NONAME ; void CGlxScreenFurniture::SetToolbarItemVisibility(int, int)
- ?AddSkinChangeObserverL@CGlxUiUtility@@QAEXAAVMGlxSkinChangeObserver@@@Z @ 33 NONAME ; void CGlxUiUtility::AddSkinChangeObserverL(class MGlxSkinChangeObserver &)
- ?SetTooltipL@CGlxScreenFurniture@@QAEXHW4TTooltipPosition@CAknButton@@ABVTDesC16@@@Z @ 34 NONAME ; void CGlxScreenFurniture::SetTooltipL(int, enum CAknButton::TTooltipPosition, class TDesC16 const &)
- ?GetRotatedImageSize@CGlxUiUtility@@QAE?AVTSize@@XZ @ 35 NONAME ; class TSize CGlxUiUtility::GetRotatedImageSize(void)
- ?SetToolbarVisibility@CGlxScreenFurniture@@QAEXH@Z @ 36 NONAME ; void CGlxScreenFurniture::SetToolbarVisibility(int)
- ?IsPenSupported@CGlxUiUtility@@QAEHXZ @ 37 NONAME ; int CGlxUiUtility::IsPenSupported(void)
- ?IsExitingState@CGlxUiUtility@@QAEHXZ @ 38 NONAME ; int CGlxUiUtility::IsExitingState(void)
- ?RetrieveL@GlxAttributeRetriever@@SAHABVMGlxFetchContext@@AAVMGlxMediaList@@H@Z @ 39 NONAME ; int GlxAttributeRetriever::RetrieveL(class MGlxFetchContext const &, class MGlxMediaList &, int)
- ?TextStyleIdL@CGlxUiUtility@@QAEHHH@Z @ 40 NONAME ; int CGlxUiUtility::TextStyleIdL(int, int)
- ?InstanceL@CGlxActiveMediaListRegistry@@SAPAV1@PAVMGlxActiveMediaListChangeObserver@@@Z @ 41 NONAME ; class CGlxActiveMediaListRegistry * CGlxActiveMediaListRegistry::InstanceL(class MGlxActiveMediaListChangeObserver *)
- ?DeregisterActiveMediaList@CGlxActiveMediaListRegistry@@QAEXPAVMGlxMediaList@@@Z @ 42 NONAME ; void CGlxActiveMediaListRegistry::DeregisterActiveMediaList(class MGlxMediaList *)
- ?CreateImageLoadingAnimationL@GlxAnimationFactory@@SAPAVMGlxAnimation@@AAVCAlfVisual@@AAVCAlfTexture@@@Z @ 43 NONAME ; class MGlxAnimation * GlxAnimationFactory::CreateImageLoadingAnimationL(class CAlfVisual &, class CAlfTexture &)
- ?SetAppOrientationL@CGlxUiUtility@@QAEXW4TGlxOrientation@@@Z @ 44 NONAME ; void CGlxUiUtility::SetAppOrientationL(enum TGlxOrientation)
- ?ConfirmQueryL@GlxGeneralUiUtilities@@SAHABVTDesC16@@@Z @ 45 NONAME ; int GlxGeneralUiUtilities::ConfirmQueryL(class TDesC16 const &)
- ?SetToolbarItemDimmed@CGlxScreenFurniture@@QAEXHH@Z @ 46 NONAME ; void CGlxScreenFurniture::SetToolbarItemDimmed(int, int)
- ?NewL@CGlxTextEntryPopup@@SAPAV1@ABVTDesC16@@AAVTDes16@@@Z @ 47 NONAME ; class CGlxTextEntryPopup * CGlxTextEntryPopup::NewL(class TDesC16 const &, class TDes16 &)
- ?Display@CGlxUiUtility@@QBEPAVCAlfDisplay@@XZ @ 48 NONAME ; class CAlfDisplay * CGlxUiUtility::Display(void) const
- ?CreateViewAnimationL@GlxAnimationFactory@@SAPAVMGlxAnimation@@W4TGlxViewswitchAnimation@@W4TGlxNavigationDirection@@PAVCAlfControlGroup@@@Z @ 49 NONAME ; class MGlxAnimation * GlxAnimationFactory::CreateViewAnimationL(enum TGlxViewswitchAnimation, enum TGlxNavigationDirection, class CAlfControlGroup *)
- ?Env@CGlxUiUtility@@QBEPAVCAlfEnv@@XZ @ 50 NONAME ; class CAlfEnv * CGlxUiUtility::Env(void) const
- ?SetViewNavigationDirection@CGlxUiUtility@@QAEXW4TGlxNavigationDirection@@@Z @ 51 NONAME ; void CGlxUiUtility::SetViewNavigationDirection(enum TGlxNavigationDirection)
- ?ShowConfirmationNoteL@GlxGeneralUiUtilities@@SAXABVTDesC16@@H@Z @ 52 NONAME ; void GlxGeneralUiUtilities::ShowConfirmationNoteL(class TDesC16 const &, int)
- ?ScreenFurniture@CGlxUiUtility@@QAEPAVCGlxScreenFurniture@@XZ @ 53 NONAME ; class CGlxScreenFurniture * CGlxUiUtility::ScreenFurniture(void)
- ?ConfirmQueryL@GlxGeneralUiUtilities@@SAHHABVTDesC16@@@Z @ 54 NONAME ; int GlxGeneralUiUtilities::ConfirmQueryL(int, class TDesC16 const &)
- ?SetFocusL@CGlxScreenFurniture@@QAEXH@Z @ 55 NONAME ; void CGlxScreenFurniture::SetFocusL(int)
- ?GetGridIconSize@CGlxUiUtility@@QAE?AVTSize@@XZ @ 56 NONAME ; class TSize CGlxUiUtility::GetGridIconSize(void)
- ?InstanceL@MGlxActiveMediaListResolver@@SAPAV1@PAVMGlxActiveMediaListChangeObserver@@@Z @ 57 NONAME ; class MGlxActiveMediaListResolver * MGlxActiveMediaListResolver::InstanceL(class MGlxActiveMediaListChangeObserver *)
- ?GetItemsLeftCountL@CGlxUiUtility@@QAEHXZ @ 58 NONAME ; int CGlxUiUtility::GetItemsLeftCountL(void)
- ?StartTNMDaemonL@CGlxUiUtility@@QAEXXZ @ 59 NONAME ; void CGlxUiUtility::StartTNMDaemonL(void)
- ?NewL@CGlxProgressIndicator@@SAPAV1@AAVMDialogDismisedObserver@@@Z @ 60 NONAME ; class CGlxProgressIndicator * CGlxProgressIndicator::NewL(class MDialogDismisedObserver &)
- ?StopTNMDaemonL@CGlxUiUtility@@QAEXXZ @ 61 NONAME ; void CGlxUiUtility::StopTNMDaemonL(void)
- ?NewL@CGlxMMCNotifier@@SAPAV1@AAVMStorageNotifierObserver@@@Z @ 62 NONAME ; class CGlxMMCNotifier * CGlxMMCNotifier::NewL(class MStorageNotifierObserver &)
- ?SetGridToolBar@CGlxUiUtility@@QAEXPAVCAknToolbar@@@Z @ 63 NONAME ; void CGlxUiUtility::SetGridToolBar(class CAknToolbar *)
- ?GetGridToolBar@CGlxUiUtility@@QAEPAVCAknToolbar@@XZ @ 64 NONAME ; class CAknToolbar * CGlxUiUtility::GetGridToolBar(void)
+ ?NewL@CGlxMMCNotifier@@SAPAV1@AAVMStorageNotifierObserver@@@Z @ 4 NONAME ; class CGlxMMCNotifier * CGlxMMCNotifier::NewL(class MStorageNotifierObserver &)
+ ?NewL@CGlxScreenFurniture@@SAPAV1@AAVCGlxUiUtility@@@Z @ 5 NONAME ; class CGlxScreenFurniture * CGlxScreenFurniture::NewL(class CGlxUiUtility &)
+ ?SetExitingState@CGlxUiUtility@@QAEXH@Z @ 6 NONAME ; void CGlxUiUtility::SetExitingState(int)
+ ?GlxTextureManager@CGlxUiUtility@@QAEAAVCGlxTextureManager@@XZ @ 7 NONAME ; class CGlxTextureManager & CGlxUiUtility::GlxTextureManager(void)
+ ?ExecuteLD@CGlxTextEntryPopup@@QAEHXZ @ 8 NONAME ; int CGlxTextEntryPopup::ExecuteLD(void)
+ ?ShowErrorNoteL@GlxGeneralUiUtilities@@SAXH@Z @ 9 NONAME ; void GlxGeneralUiUtilities::ShowErrorNoteL(int)
+ ?RegisterActiveMediaList@CGlxActiveMediaListRegistry@@QAEXPAVMGlxMediaList@@@Z @ 10 NONAME ; void CGlxActiveMediaListRegistry::RegisterActiveMediaList(class MGlxMediaList *)
+ ?FormatString@GlxGeneralUiUtilities@@SAXAAVTDes16@@ABVTDesC16@@HHH@Z @ 11 NONAME ; void GlxGeneralUiUtilities::FormatString(class TDes16 &, class TDesC16 const &, int, int, int)
+ ?AppOrientation@CGlxUiUtility@@QBE?AW4TGlxOrientation@@XZ @ 12 NONAME ; enum TGlxOrientation CGlxUiUtility::AppOrientation(void) const
+ ?StopTNMDaemon@CGlxUiUtility@@QAEHXZ @ 13 NONAME ; int CGlxUiUtility::StopTNMDaemon(void)
+ ?NewLC@CGlxScreenFurniture@@SAPAV1@AAVCGlxUiUtility@@@Z @ 14 NONAME ; class CGlxScreenFurniture * CGlxScreenFurniture::NewLC(class CGlxUiUtility &)
+ ?ShowAlfDisplayL@CGlxUiUtility@@SAXXZ @ 15 NONAME ; void CGlxUiUtility::ShowAlfDisplayL(void)
+ ?LayoutIsMirrored@GlxGeneralUiUtilities@@SAHXZ @ 16 NONAME ; int GlxGeneralUiUtilities::LayoutIsMirrored(void)
+ ?IsLandscape@GlxGeneralUiUtilities@@SAHXZ @ 17 NONAME ; int GlxGeneralUiUtilities::IsLandscape(void)
+ ?SetToolbarPosition@CGlxScreenFurniture@@QAEXXZ @ 18 NONAME ; void CGlxScreenFurniture::SetToolbarPosition(void)
+ ?HandleTvStatusChangedL@CGlxUiUtility@@UAEXW4TTvChangeType@@@Z @ 19 NONAME ; void CGlxUiUtility::HandleTvStatusChangedL(enum TTvChangeType)
+ ?ModifySoftkeyIdL@CGlxScreenFurniture@@QAEXW4TCommandPosition@CEikButtonGroupContainer@@HHABVTDesC16@@@Z @ 20 NONAME ; void CGlxScreenFurniture::ModifySoftkeyIdL(enum CEikButtonGroupContainer::TCommandPosition, int, int, class TDesC16 const &)
+ ?Close@CGlxUiUtility@@QAEXXZ @ 21 NONAME ; void CGlxUiUtility::Close(void)
+ ?ViewDeactivated@CGlxScreenFurniture@@QAEXH@Z @ 22 NONAME ; void CGlxScreenFurniture::ViewDeactivated(int)
+ ?GetItemsLeftCount@CGlxUiUtility@@QAEHXZ @ 23 NONAME ; int CGlxUiUtility::GetItemsLeftCount(void)
+ ?CreateViewAnimationL@GlxAnimationFactory@@SAPAVMGlxAnimation@@W4TGlxViewswitchAnimation@@W4TGlxNavigationDirection@@AAV?$RPointerArray@VCAlfControlGroup@@@@@Z @ 24 NONAME ; class MGlxAnimation * GlxAnimationFactory::CreateViewAnimationL(enum TGlxViewswitchAnimation, enum TGlxNavigationDirection, class RPointerArray<class CAlfControlGroup> &)
+ ?ShowProgressbarL@CGlxProgressIndicator@@QAEXXZ @ 25 NONAME ; void CGlxProgressIndicator::ShowProgressbarL(void)
+ ?SetGridToolBar@CGlxUiUtility@@QAEXPAVCAknToolbar@@@Z @ 26 NONAME ; void CGlxUiUtility::SetGridToolBar(class CAknToolbar *)
+ ?AppState@GlxSetAppState@@SA?AW4TGlxAppState@@XZ @ 27 NONAME ; enum TGlxAppState GlxSetAppState::AppState(void)
+ ?ShowInfoNoteL@GlxGeneralUiUtilities@@SAXABVTDesC16@@H@Z @ 28 NONAME ; void GlxGeneralUiUtilities::ShowInfoNoteL(class TDesC16 const &, int)
+ ?RemoveSkinChangeObserver@CGlxUiUtility@@QAEXAAVMGlxSkinChangeObserver@@@Z @ 29 NONAME ; void CGlxUiUtility::RemoveSkinChangeObserver(class MGlxSkinChangeObserver &)
+ ?UtilityL@CGlxUiUtility@@SAPAV1@XZ @ 30 NONAME ; class CGlxUiUtility * CGlxUiUtility::UtilityL(void)
+ ?StartTNMDaemon@CGlxUiUtility@@QAEHXZ @ 31 NONAME ; int CGlxUiUtility::StartTNMDaemon(void)
+ ?HideAlfDisplayL@CGlxUiUtility@@SAXXZ @ 32 NONAME ; void CGlxUiUtility::HideAlfDisplayL(void)
+ ?DisplaySize@CGlxUiUtility@@QBE?AVTSize@@XZ @ 33 NONAME ; class TSize CGlxUiUtility::DisplaySize(void) const
+ ?ShowErrorNoteL@GlxGeneralUiUtilities@@SAXABVTDesC16@@H@Z @ 34 NONAME ; void GlxGeneralUiUtilities::ShowErrorNoteL(class TDesC16 const &, int)
+ ?SetActiveView@CGlxScreenFurniture@@QAEXH@Z @ 35 NONAME ; void CGlxScreenFurniture::SetActiveView(int)
+ ?SetState@GlxSetAppState@@SAXW4TGlxAppState@@@Z @ 36 NONAME ; void GlxSetAppState::SetState(enum TGlxAppState)
+ ?SetLeftSoftKeyL@CGlxTextEntryPopup@@QAEXH@Z @ 37 NONAME ; void CGlxTextEntryPopup::SetLeftSoftKeyL(int)
+ ?GetGridToolBar@CGlxUiUtility@@QAEPAVCAknToolbar@@XZ @ 38 NONAME ; class CAknToolbar * CGlxUiUtility::GetGridToolBar(void)
+ ?SetToolbarItemVisibility@CGlxScreenFurniture@@QAEXHH@Z @ 39 NONAME ; void CGlxScreenFurniture::SetToolbarItemVisibility(int, int)
+ ?AddSkinChangeObserverL@CGlxUiUtility@@QAEXAAVMGlxSkinChangeObserver@@@Z @ 40 NONAME ; void CGlxUiUtility::AddSkinChangeObserverL(class MGlxSkinChangeObserver &)
+ ?SetTooltipL@CGlxScreenFurniture@@QAEXHW4TTooltipPosition@CAknButton@@ABVTDesC16@@@Z @ 41 NONAME ; void CGlxScreenFurniture::SetTooltipL(int, enum CAknButton::TTooltipPosition, class TDesC16 const &)
+ ?GetRotatedImageSize@CGlxUiUtility@@QAE?AVTSize@@XZ @ 42 NONAME ; class TSize CGlxUiUtility::GetRotatedImageSize(void)
+ ?SetToolbarVisibility@CGlxScreenFurniture@@QAEXH@Z @ 43 NONAME ; void CGlxScreenFurniture::SetToolbarVisibility(int)
+ ?IsPenSupported@CGlxUiUtility@@QAEHXZ @ 44 NONAME ; int CGlxUiUtility::IsPenSupported(void)
+ ?IsExitingState@CGlxUiUtility@@QAEHXZ @ 45 NONAME ; int CGlxUiUtility::IsExitingState(void)
+ ?RetrieveL@GlxAttributeRetriever@@SAHABVMGlxFetchContext@@AAVMGlxMediaList@@H@Z @ 46 NONAME ; int GlxAttributeRetriever::RetrieveL(class MGlxFetchContext const &, class MGlxMediaList &, int)
+ ?TextStyleIdL@CGlxUiUtility@@QAEHHH@Z @ 47 NONAME ; int CGlxUiUtility::TextStyleIdL(int, int)
+ ?InstanceL@CGlxActiveMediaListRegistry@@SAPAV1@PAVMGlxActiveMediaListChangeObserver@@@Z @ 48 NONAME ; class CGlxActiveMediaListRegistry * CGlxActiveMediaListRegistry::InstanceL(class MGlxActiveMediaListChangeObserver *)
+ ?DeregisterActiveMediaList@CGlxActiveMediaListRegistry@@QAEXPAVMGlxMediaList@@@Z @ 49 NONAME ; void CGlxActiveMediaListRegistry::DeregisterActiveMediaList(class MGlxMediaList *)
+ ?CreateImageLoadingAnimationL@GlxAnimationFactory@@SAPAVMGlxAnimation@@AAVCAlfVisual@@AAVCAlfTexture@@@Z @ 50 NONAME ; class MGlxAnimation * GlxAnimationFactory::CreateImageLoadingAnimationL(class CAlfVisual &, class CAlfTexture &)
+ ?SetAppOrientationL@CGlxUiUtility@@QAEXW4TGlxOrientation@@@Z @ 51 NONAME ; void CGlxUiUtility::SetAppOrientationL(enum TGlxOrientation)
+ ?ConfirmQueryL@GlxGeneralUiUtilities@@SAHABVTDesC16@@@Z @ 52 NONAME ; int GlxGeneralUiUtilities::ConfirmQueryL(class TDesC16 const &)
+ ?SetToolbarItemDimmed@CGlxScreenFurniture@@QAEXHH@Z @ 53 NONAME ; void CGlxScreenFurniture::SetToolbarItemDimmed(int, int)
+ ?NewL@CGlxTextEntryPopup@@SAPAV1@ABVTDesC16@@AAVTDes16@@@Z @ 54 NONAME ; class CGlxTextEntryPopup * CGlxTextEntryPopup::NewL(class TDesC16 const &, class TDes16 &)
+ ?Display@CGlxUiUtility@@QBEPAVCAlfDisplay@@XZ @ 55 NONAME ; class CAlfDisplay * CGlxUiUtility::Display(void) const
+ ?CreateViewAnimationL@GlxAnimationFactory@@SAPAVMGlxAnimation@@W4TGlxViewswitchAnimation@@W4TGlxNavigationDirection@@PAVCAlfControlGroup@@@Z @ 56 NONAME ; class MGlxAnimation * GlxAnimationFactory::CreateViewAnimationL(enum TGlxViewswitchAnimation, enum TGlxNavigationDirection, class CAlfControlGroup *)
+ ?Env@CGlxUiUtility@@QBEPAVCAlfEnv@@XZ @ 57 NONAME ; class CAlfEnv * CGlxUiUtility::Env(void) const
+ ?NewL@CGlxProgressIndicator@@SAPAV1@AAVMDialogDismisedObserver@@@Z @ 58 NONAME ; class CGlxProgressIndicator * CGlxProgressIndicator::NewL(class MDialogDismisedObserver &)
+ ?SetViewNavigationDirection@CGlxUiUtility@@QAEXW4TGlxNavigationDirection@@@Z @ 59 NONAME ; void CGlxUiUtility::SetViewNavigationDirection(enum TGlxNavigationDirection)
+ ?ShowConfirmationNoteL@GlxGeneralUiUtilities@@SAXABVTDesC16@@H@Z @ 60 NONAME ; void GlxGeneralUiUtilities::ShowConfirmationNoteL(class TDesC16 const &, int)
+ ?ScreenFurniture@CGlxUiUtility@@QAEPAVCGlxScreenFurniture@@XZ @ 61 NONAME ; class CGlxScreenFurniture * CGlxUiUtility::ScreenFurniture(void)
+ ?ConfirmQueryL@GlxGeneralUiUtilities@@SAHHABVTDesC16@@@Z @ 62 NONAME ; int GlxGeneralUiUtilities::ConfirmQueryL(int, class TDesC16 const &)
+ ?SetFocusL@CGlxScreenFurniture@@QAEXH@Z @ 63 NONAME ; void CGlxScreenFurniture::SetFocusL(int)
+ ?GetGridIconSize@CGlxUiUtility@@QAE?AVTSize@@XZ @ 64 NONAME ; class TSize CGlxUiUtility::GetGridIconSize(void)
+ ?InstanceL@MGlxActiveMediaListResolver@@SAPAV1@PAVMGlxActiveMediaListChangeObserver@@@Z @ 65 NONAME ; class MGlxActiveMediaListResolver * MGlxActiveMediaListResolver::InstanceL(class MGlxActiveMediaListChangeObserver *)
--- a/photosgallery/viewframework/uiutilities/eabi/glxuiutilitiesu.def Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/uiutilities/eabi/glxuiutilitiesu.def Wed Apr 14 15:57:24 2010 +0300
@@ -1,87 +1,88 @@
EXPORTS
_ZN13CGlxUiUtility12TextStyleIdLEii @ 1 NONAME
- _ZN13CGlxUiUtility14IsExitingStateEv @ 2 NONAME
- _ZN13CGlxUiUtility14IsPenSupportedEv @ 3 NONAME
- _ZN13CGlxUiUtility15GetGridIconSizeEv @ 4 NONAME
- _ZN13CGlxUiUtility15HideAlfDisplayLEv @ 5 NONAME
- _ZN13CGlxUiUtility15ScreenFurnitureEv @ 6 NONAME
- _ZN13CGlxUiUtility15SetExitingStateEi @ 7 NONAME
- _ZN13CGlxUiUtility15ShowAlfDisplayLEv @ 8 NONAME
- _ZN13CGlxUiUtility17GlxTextureManagerEv @ 9 NONAME
- _ZN13CGlxUiUtility18SetAppOrientationLE15TGlxOrientation @ 10 NONAME
- _ZN13CGlxUiUtility19GetRotatedImageSizeEv @ 11 NONAME
- _ZN13CGlxUiUtility19SetRotatedImageSizeE5TSize @ 12 NONAME
- _ZN13CGlxUiUtility22AddSkinChangeObserverLER22MGlxSkinChangeObserver @ 13 NONAME
- _ZN13CGlxUiUtility22HandleTvStatusChangedLE13TTvChangeType @ 14 NONAME
- _ZN13CGlxUiUtility23ViewNavigationDirectionEv @ 15 NONAME
- _ZN13CGlxUiUtility24RemoveSkinChangeObserverER22MGlxSkinChangeObserver @ 16 NONAME
- _ZN13CGlxUiUtility26SetViewNavigationDirectionE23TGlxNavigationDirection @ 17 NONAME
- _ZN13CGlxUiUtility30VisibleItemsInPageGranularityLEv @ 18 NONAME
- _ZN13CGlxUiUtility5CloseEv @ 19 NONAME
- _ZN13CGlxUiUtility8UtilityLEv @ 20 NONAME
- _ZN14GlxSetAppState8AppStateEv @ 21 NONAME
- _ZN14GlxSetAppState8SetStateE12TGlxAppState @ 22 NONAME
- _ZN18CGlxTextEntryPopup15SetLeftSoftKeyLEi @ 23 NONAME
- _ZN18CGlxTextEntryPopup4NewLERK7TDesC16R6TDes16 @ 24 NONAME
- _ZN18CGlxTextEntryPopup9ExecuteLDEv @ 25 NONAME
- _ZN19CGlxScreenFurniture11SetTooltipLEiN10CAknButton16TTooltipPositionERK7TDesC16 @ 26 NONAME
- _ZN19CGlxScreenFurniture13SetActiveViewEi @ 27 NONAME
- _ZN19CGlxScreenFurniture15ViewDeactivatedEi @ 28 NONAME
- _ZN19CGlxScreenFurniture16ModifySoftkeyIdLEN24CEikButtonGroupContainer16TCommandPositionEiiRK7TDesC16 @ 29 NONAME
- _ZN19CGlxScreenFurniture18SetToolbarPositionEv @ 30 NONAME
- _ZN19CGlxScreenFurniture20SetToolbarItemDimmedEii @ 31 NONAME
- _ZN19CGlxScreenFurniture20SetToolbarVisibilityEi @ 32 NONAME
- _ZN19CGlxScreenFurniture24SetToolbarItemVisibilityEii @ 33 NONAME
- _ZN19CGlxScreenFurniture4NewLER13CGlxUiUtility @ 34 NONAME
- _ZN19CGlxScreenFurniture5NewLCER13CGlxUiUtility @ 35 NONAME
- _ZN19CGlxScreenFurniture9SetFocusLEi @ 36 NONAME
- _ZN19GlxAnimationFactory20CreateViewAnimationLE23TGlxViewswitchAnimation23TGlxNavigationDirectionP16CAlfControlGroup @ 37 NONAME
- _ZN19GlxAnimationFactory20CreateViewAnimationLE23TGlxViewswitchAnimation23TGlxNavigationDirectionR13RPointerArrayI16CAlfControlGroupE @ 38 NONAME
- _ZN19GlxAnimationFactory28CreateImageLoadingAnimationLER10CAlfVisualR11CAlfTexture @ 39 NONAME
- _ZN21GlxAttributeRetriever9RetrieveLERK16MGlxFetchContextR13MGlxMediaListi @ 40 NONAME
- _ZN21GlxGeneralUiUtilities11IsLandscapeEv @ 41 NONAME
- _ZN21GlxGeneralUiUtilities12FormatStringER6TDes16RK7TDesC16iii @ 42 NONAME
- _ZN21GlxGeneralUiUtilities13ConfirmQueryLERK7TDesC16 @ 43 NONAME
- _ZN21GlxGeneralUiUtilities13ConfirmQueryLEiRK7TDesC16 @ 44 NONAME
- _ZN21GlxGeneralUiUtilities13ShowInfoNoteLERK7TDesC16i @ 45 NONAME
- _ZN21GlxGeneralUiUtilities14ShowErrorNoteLERK7TDesC16i @ 46 NONAME
- _ZN21GlxGeneralUiUtilities14ShowErrorNoteLEi @ 47 NONAME
- _ZN21GlxGeneralUiUtilities16LayoutIsMirroredEv @ 48 NONAME
- _ZN21GlxGeneralUiUtilities21ShowConfirmationNoteLERK7TDesC16i @ 49 NONAME
- _ZN27CGlxActiveMediaListRegistry23RegisterActiveMediaListEP13MGlxMediaList @ 50 NONAME
- _ZN27CGlxActiveMediaListRegistry25DeregisterActiveMediaListEP13MGlxMediaList @ 51 NONAME
- _ZN27CGlxActiveMediaListRegistry9InstanceLEP33MGlxActiveMediaListChangeObserver @ 52 NONAME
- _ZN27MGlxActiveMediaListResolver9InstanceLEP33MGlxActiveMediaListChangeObserver @ 53 NONAME
- _ZNK13CGlxUiUtility11DisplaySizeEv @ 54 NONAME
- _ZNK13CGlxUiUtility14AppOrientationEv @ 55 NONAME
- _ZNK13CGlxUiUtility3EnvEv @ 56 NONAME
- _ZNK13CGlxUiUtility7DisplayEv @ 57 NONAME
- _ZTI13CGlxUiUtility @ 58 NONAME
- _ZTI17CGlxAnimationView @ 59 NONAME
- _ZTI18CGlxAnimationTimed @ 60 NONAME
- _ZTI18CGlxTextEntryPopup @ 61 NONAME
- _ZTI21CGlxSkinChangeMonitor @ 62 NONAME
- _ZTI25CGlxAnimationImageLoading @ 63 NONAME
- _ZTI32CGlxWaitDialogAttributeRetriever @ 64 NONAME
- _ZTI33CGlxSynchronousAttributeRetriever @ 65 NONAME
- _ZTV13CGlxUiUtility @ 66 NONAME
- _ZTV17CGlxAnimationView @ 67 NONAME
- _ZTV18CGlxAnimationTimed @ 68 NONAME
- _ZTV18CGlxTextEntryPopup @ 69 NONAME
- _ZTV21CGlxSkinChangeMonitor @ 70 NONAME
- _ZTV25CGlxAnimationImageLoading @ 71 NONAME
- _ZTV32CGlxWaitDialogAttributeRetriever @ 72 NONAME
- _ZTV33CGlxSynchronousAttributeRetriever @ 73 NONAME
- _ZThn4_N13CGlxUiUtility22HandleTvStatusChangedLE13TTvChangeType @ 74 NONAME
- _ZN13CGlxUiUtility15StartTNMDaemonLEv @ 75 NONAME
- _ZN13CGlxUiUtility18GetItemsLeftCountLEv @ 76 NONAME
- _ZN21CGlxProgressIndicator4NewLER23MDialogDismisedObserver @ 77 NONAME
- _ZTI21CGlxProgressIndicator @ 78 NONAME
- _ZTV21CGlxProgressIndicator @ 79 NONAME
- _ZN13CGlxUiUtility14StopTNMDaemonLEv @ 80 NONAME
- _ZN15CGlxMMCNotifier4NewLER24MStorageNotifierObserver @ 81 NONAME
- _ZTI15CGlxMMCNotifier @ 82 NONAME
- _ZTV15CGlxMMCNotifier @ 83 NONAME
- _ZN13CGlxUiUtility14GetGridToolBarEv @ 84 NONAME
- _ZN13CGlxUiUtility14SetGridToolBarEP11CAknToolbar @ 85 NONAME
+ _ZN13CGlxUiUtility13StopTNMDaemonEv @ 2 NONAME
+ _ZN13CGlxUiUtility14GetGridToolBarEv @ 3 NONAME
+ _ZN13CGlxUiUtility14IsExitingStateEv @ 4 NONAME
+ _ZN13CGlxUiUtility14IsPenSupportedEv @ 5 NONAME
+ _ZN13CGlxUiUtility14SetGridToolBarEP11CAknToolbar @ 6 NONAME
+ _ZN13CGlxUiUtility14StartTNMDaemonEv @ 7 NONAME
+ _ZN13CGlxUiUtility15GetGridIconSizeEv @ 8 NONAME
+ _ZN13CGlxUiUtility15HideAlfDisplayLEv @ 9 NONAME
+ _ZN13CGlxUiUtility15ScreenFurnitureEv @ 10 NONAME
+ _ZN13CGlxUiUtility15SetExitingStateEi @ 11 NONAME
+ _ZN13CGlxUiUtility15ShowAlfDisplayLEv @ 12 NONAME
+ _ZN13CGlxUiUtility17GetItemsLeftCountEv @ 13 NONAME
+ _ZN13CGlxUiUtility17GlxTextureManagerEv @ 14 NONAME
+ _ZN13CGlxUiUtility18SetAppOrientationLE15TGlxOrientation @ 15 NONAME
+ _ZN13CGlxUiUtility19GetRotatedImageSizeEv @ 16 NONAME
+ _ZN13CGlxUiUtility19SetRotatedImageSizeE5TSize @ 17 NONAME
+ _ZN13CGlxUiUtility22AddSkinChangeObserverLER22MGlxSkinChangeObserver @ 18 NONAME
+ _ZN13CGlxUiUtility22HandleTvStatusChangedLE13TTvChangeType @ 19 NONAME
+ _ZN13CGlxUiUtility23ViewNavigationDirectionEv @ 20 NONAME
+ _ZN13CGlxUiUtility24RemoveSkinChangeObserverER22MGlxSkinChangeObserver @ 21 NONAME
+ _ZN13CGlxUiUtility26SetViewNavigationDirectionE23TGlxNavigationDirection @ 22 NONAME
+ _ZN13CGlxUiUtility30VisibleItemsInPageGranularityLEv @ 23 NONAME
+ _ZN13CGlxUiUtility5CloseEv @ 24 NONAME
+ _ZN13CGlxUiUtility8UtilityLEv @ 25 NONAME
+ _ZN14GlxSetAppState8AppStateEv @ 26 NONAME
+ _ZN14GlxSetAppState8SetStateE12TGlxAppState @ 27 NONAME
+ _ZN15CGlxMMCNotifier4NewLER24MStorageNotifierObserver @ 28 NONAME
+ _ZN18CGlxTextEntryPopup15SetLeftSoftKeyLEi @ 29 NONAME
+ _ZN18CGlxTextEntryPopup4NewLERK7TDesC16R6TDes16 @ 30 NONAME
+ _ZN18CGlxTextEntryPopup9ExecuteLDEv @ 31 NONAME
+ _ZN19CGlxScreenFurniture11SetTooltipLEiN10CAknButton16TTooltipPositionERK7TDesC16 @ 32 NONAME
+ _ZN19CGlxScreenFurniture13SetActiveViewEi @ 33 NONAME
+ _ZN19CGlxScreenFurniture15ViewDeactivatedEi @ 34 NONAME
+ _ZN19CGlxScreenFurniture16ModifySoftkeyIdLEN24CEikButtonGroupContainer16TCommandPositionEiiRK7TDesC16 @ 35 NONAME
+ _ZN19CGlxScreenFurniture18SetToolbarPositionEv @ 36 NONAME
+ _ZN19CGlxScreenFurniture20SetToolbarItemDimmedEii @ 37 NONAME
+ _ZN19CGlxScreenFurniture20SetToolbarVisibilityEi @ 38 NONAME
+ _ZN19CGlxScreenFurniture24SetToolbarItemVisibilityEii @ 39 NONAME
+ _ZN19CGlxScreenFurniture4NewLER13CGlxUiUtility @ 40 NONAME
+ _ZN19CGlxScreenFurniture5NewLCER13CGlxUiUtility @ 41 NONAME
+ _ZN19CGlxScreenFurniture9SetFocusLEi @ 42 NONAME
+ _ZN19GlxAnimationFactory20CreateViewAnimationLE23TGlxViewswitchAnimation23TGlxNavigationDirectionP16CAlfControlGroup @ 43 NONAME
+ _ZN19GlxAnimationFactory20CreateViewAnimationLE23TGlxViewswitchAnimation23TGlxNavigationDirectionR13RPointerArrayI16CAlfControlGroupE @ 44 NONAME
+ _ZN19GlxAnimationFactory28CreateImageLoadingAnimationLER10CAlfVisualR11CAlfTexture @ 45 NONAME
+ _ZN21CGlxProgressIndicator16ShowProgressbarLEv @ 46 NONAME
+ _ZN21CGlxProgressIndicator4NewLER23MDialogDismisedObserver @ 47 NONAME
+ _ZN21GlxAttributeRetriever9RetrieveLERK16MGlxFetchContextR13MGlxMediaListi @ 48 NONAME
+ _ZN21GlxGeneralUiUtilities11IsLandscapeEv @ 49 NONAME
+ _ZN21GlxGeneralUiUtilities12FormatStringER6TDes16RK7TDesC16iii @ 50 NONAME
+ _ZN21GlxGeneralUiUtilities13ConfirmQueryLERK7TDesC16 @ 51 NONAME
+ _ZN21GlxGeneralUiUtilities13ConfirmQueryLEiRK7TDesC16 @ 52 NONAME
+ _ZN21GlxGeneralUiUtilities13ShowInfoNoteLERK7TDesC16i @ 53 NONAME
+ _ZN21GlxGeneralUiUtilities14ShowErrorNoteLERK7TDesC16i @ 54 NONAME
+ _ZN21GlxGeneralUiUtilities14ShowErrorNoteLEi @ 55 NONAME
+ _ZN21GlxGeneralUiUtilities16LayoutIsMirroredEv @ 56 NONAME
+ _ZN21GlxGeneralUiUtilities21ShowConfirmationNoteLERK7TDesC16i @ 57 NONAME
+ _ZN27CGlxActiveMediaListRegistry23RegisterActiveMediaListEP13MGlxMediaList @ 58 NONAME
+ _ZN27CGlxActiveMediaListRegistry25DeregisterActiveMediaListEP13MGlxMediaList @ 59 NONAME
+ _ZN27CGlxActiveMediaListRegistry9InstanceLEP33MGlxActiveMediaListChangeObserver @ 60 NONAME
+ _ZN27MGlxActiveMediaListResolver9InstanceLEP33MGlxActiveMediaListChangeObserver @ 61 NONAME
+ _ZNK13CGlxUiUtility11DisplaySizeEv @ 62 NONAME
+ _ZNK13CGlxUiUtility14AppOrientationEv @ 63 NONAME
+ _ZNK13CGlxUiUtility3EnvEv @ 64 NONAME
+ _ZNK13CGlxUiUtility7DisplayEv @ 65 NONAME
+ _ZTI13CGlxUiUtility @ 66 NONAME
+ _ZTI15CGlxMMCNotifier @ 67 NONAME
+ _ZTI17CGlxAnimationView @ 68 NONAME
+ _ZTI18CGlxAnimationTimed @ 69 NONAME
+ _ZTI18CGlxTextEntryPopup @ 70 NONAME
+ _ZTI21CGlxProgressIndicator @ 71 NONAME
+ _ZTI21CGlxSkinChangeMonitor @ 72 NONAME
+ _ZTI25CGlxAnimationImageLoading @ 73 NONAME
+ _ZTI32CGlxWaitDialogAttributeRetriever @ 74 NONAME
+ _ZTI33CGlxSynchronousAttributeRetriever @ 75 NONAME
+ _ZTV13CGlxUiUtility @ 76 NONAME
+ _ZTV15CGlxMMCNotifier @ 77 NONAME
+ _ZTV17CGlxAnimationView @ 78 NONAME
+ _ZTV18CGlxAnimationTimed @ 79 NONAME
+ _ZTV18CGlxTextEntryPopup @ 80 NONAME
+ _ZTV21CGlxProgressIndicator @ 81 NONAME
+ _ZTV21CGlxSkinChangeMonitor @ 82 NONAME
+ _ZTV25CGlxAnimationImageLoading @ 83 NONAME
+ _ZTV32CGlxWaitDialogAttributeRetriever @ 84 NONAME
+ _ZTV33CGlxSynchronousAttributeRetriever @ 85 NONAME
+ _ZThn4_N13CGlxUiUtility22HandleTvStatusChangedLE13TTvChangeType @ 86 NONAME
--- a/photosgallery/viewframework/uiutilities/inc/glxprogressindicator.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/uiutilities/inc/glxprogressindicator.h Wed Apr 14 15:57:24 2010 +0300
@@ -19,10 +19,11 @@
#define GLXPROGRESSINDICATOR_H_
#include <e32base.h>
-#include <aknwaitdialog.h>
+#include <AknWaitDialog.h>
class CAknProgressDialog;
class CEikProgressInfo;
+class CGlxUiUtility;
class MDialogDismisedObserver
{
@@ -57,13 +58,17 @@
* calculates how much increment to be done in progress bar
* @return increment value
*/
- TInt CalculateDisplayBarIncrementL();
+ TInt CalculateDisplayBarIncrement();
public:
// Callback for periodic timer, static,
static TInt PeriodicCallbackL( TAny* aPtr );
//nonstatic func called from periodic timer
void DisplayProgressBarL();
+
+ //show progress bar
+ IMPORT_C void ShowProgressbarL();
+
protected://MProgressDialogCallback
void DialogDismissedL (TInt aButtonId);
@@ -80,6 +85,7 @@
//final count to set in progress bar
TInt iFinalCount;
MDialogDismisedObserver& iGlxGridViewNotifyObserver;
+ CGlxUiUtility* iUiUtility;
};
#endif /* GLXPROGRESSINDICATOR_H_ */
--- a/photosgallery/viewframework/uiutilities/inc/glxuiutility.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/uiutilities/inc/glxuiutility.h Wed Apr 14 15:57:24 2010 +0300
@@ -199,22 +199,22 @@
/**
* Forcibly start the Thumbnail Manager daemon process
* @param none
- * @return none
+ * @return TInt
*/
- IMPORT_C void StartTNMDaemonL();
+ IMPORT_C TInt StartTNMDaemon();
/**
* To stop the Thumbnail Manager daemon process so as to stop force generation of thumbnails
* @param none
- * @return none
+ * @return TInt
*/
- IMPORT_C void StopTNMDaemonL();
+ IMPORT_C TInt StopTNMDaemon();
/**
* Get the number of items left for Thumbnail generation
* @return TInt number of items left for TN generation
*/
- IMPORT_C TInt GetItemsLeftCountL();
+ IMPORT_C TInt GetItemsLeftCount();
/**
* Returns Visible items granularity based on feature
* layout (i.e., qHD, VGA)
--- a/photosgallery/viewframework/uiutilities/src/glxprogressindicator.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/uiutilities/src/glxprogressindicator.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -72,7 +72,7 @@
CGlxProgressIndicator::~CGlxProgressIndicator()
{
TRACER("CGlxProgressIndicator::~CGlxProgressIndicator()");
- if (iProgressbarTicker && iProgressbarTicker->IsActive())
+ if (iProgressbarTicker)
{
iProgressbarTicker->Cancel();
delete iProgressbarTicker;
@@ -83,13 +83,11 @@
}
// Stop force generation of thumbnails when progress dialog is dismissed
- CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
- CleanupClosePushL(*uiUtility);
- if ( uiUtility )
- {
- uiUtility->StopTNMDaemonL();
- }
- CleanupStack::PopAndDestroy(uiUtility);
+ if (iUiUtility)
+ {
+ iUiUtility->StopTNMDaemon();
+ iUiUtility->Close();
+ }
}
// ---------------------------------------------------------
@@ -99,39 +97,16 @@
void CGlxProgressIndicator::ConstructL()
{
TRACER("CGlxProgressIndicator::ConstructL()");
- CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
- CleanupClosePushL(*uiUtility);
- TRAPD(err,uiUtility->StartTNMDaemonL());
+ iUiUtility->StartTNMDaemon();
- if(err != KErrNone)
- {
- GLX_LOG_INFO1("CGlxProgressIndicator RProperty::Set errorcode %d",err);
- //need to check what to do in fail cases
- }
if(!iProgressbarTicker)
{
iProgressbarTicker = CPeriodic::NewL(CActive::EPriorityStandard);
}
- iFinalCount = uiUtility->GetItemsLeftCountL();
+ iFinalCount = iUiUtility->GetItemsLeftCount();
GLX_LOG_INFO1("final count in viewactivate = %d",iFinalCount);
-
- if(iFinalCount)
- {
- StartProgressNoteL(iFinalCount,ETrue);
- if ( !iProgressbarTicker->IsActive())
- {
- iProgressbarTicker->Start( KPeriodicStartDelay, KPeriodicStartDelay, TCallBack(
- &PeriodicCallbackL, static_cast<TAny*>( this ) ) );
- }
- }
- else
- {
- GLX_LOG_INFO("Reset the RProperty flag to EFalse");
- uiUtility->StopTNMDaemonL();
- }
- CleanupStack::PopAndDestroy(uiUtility);
}
@@ -153,16 +128,10 @@
inline void CGlxProgressIndicator::DisplayProgressBarL()
{
TRACER("CGlxProgressIndicator::DisplayProgressBarL");
- CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
- CleanupClosePushL(*uiUtility);
- TInt itemsLeft = uiUtility->GetItemsLeftCountL();
- CleanupStack::PopAndDestroy(uiUtility);
+ TInt itemsLeft = iUiUtility->GetItemsLeftCount();
GLX_LOG_INFO1("itemsLeft in DisplayProgressBarL = %d",iFinalCount);
- if(itemsLeft)
- {
- UpdateProgressBar();
- }
- else
+ UpdateProgressBar();
+ if(!itemsLeft)
{
if(iProgressbarTicker->IsActive())
{
@@ -179,12 +148,14 @@
void CGlxProgressIndicator::StartProgressNoteL(TInt aFinalValue,TBool aShow)
{
TRACER("CGlxProgressIndicator::StartProgressNoteL()");
-
+ TInt itemsLeft = iUiUtility->GetItemsLeftCount();
if(aShow)
{
if(!iProgressDialog)
{
- iProgressDialog = new (ELeave)CAknProgressDialog((reinterpret_cast<CEikDialog**> (&iProgressDialog)),ETrue);
+ iProgressDialog = new (ELeave) CAknProgressDialog(
+ (reinterpret_cast<CEikDialog**> (&iProgressDialog)),
+ ETrue);
}
iProgressDialog->PrepareLC(R_PROGRESS_NOTE);
@@ -197,7 +168,7 @@
iProgressDialog->SetTextL(*processingInfo);
CleanupStack::PopAndDestroy(processingInfo );
iProgressInfo->SetFinalValue(aFinalValue);
-
+ iProgressInfo->SetAndDraw(iFinalCount-itemsLeft);
iProgressDialog->RunLD();
}
else
@@ -229,7 +200,7 @@
* GlxGeneralUiUtilities::FormatString(text,*processingInfo,-1,count,ETrue);
* CleanupStack::PopAndDestroy(processingInfo);
*/
- iProgressInfo->SetAndDraw(CalculateDisplayBarIncrementL());
+ iProgressInfo->SetAndDraw(CalculateDisplayBarIncrement());
}
}
@@ -240,10 +211,6 @@
void CGlxProgressIndicator::DialogDismissedL(TInt aButtonId)
{
TRACER("CGlxProgressIndicator::DialogDismissedL()");
- CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
- CleanupClosePushL(*uiUtility);
- uiUtility->StopTNMDaemonL();
- CleanupStack::PopAndDestroy(uiUtility);
if(iProgressbarTicker)
{
iProgressbarTicker->Cancel();
@@ -254,27 +221,65 @@
{
iProgressDialog = NULL;
iProgressInfo = NULL;
- }
+ }
+ }
+
+// -----------------------------------------------------------------------------
+// CalculateDisplayBarIncrement
+// -----------------------------------------------------------------------------
+//
+TInt CGlxProgressIndicator::CalculateDisplayBarIncrement()
+ {
+ TRACER("CGlxProgressIndicator::CalculateDisplayBarIncrement()");
+
+ TInt itemsLeft = iUiUtility->GetItemsLeftCount();
+
+ if (iFinalCount < itemsLeft)
+ {
+ iProgressInfo->SetFinalValue(itemsLeft);
+ iFinalCount = itemsLeft;
+ }
+
+ GLX_LOG_INFO1("CalculateDisplayBarIncrement = %d ",(iFinalCount - itemsLeft));
+ return (iFinalCount - itemsLeft);
}
// -----------------------------------------------------------------------------
-// CalculateDisplayBarIncrementL
+// ShowProgressbar
// -----------------------------------------------------------------------------
-//
-TInt CGlxProgressIndicator::CalculateDisplayBarIncrementL()
+//
+void EXPORT_C CGlxProgressIndicator::ShowProgressbarL()
{
- TRACER("CGlxProgressIndicator::CalculateDisplayBarIncrement()");
- CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
- CleanupClosePushL(*uiUtility);
- TInt itemsLeft = uiUtility->GetItemsLeftCountL();
- CleanupStack::PopAndDestroy(uiUtility);
- GLX_LOG_INFO1("CalculateDisplayBarIncrement = %d ",(iFinalCount - itemsLeft));
-
- if(iFinalCount < itemsLeft)
+ TRACER("CGlxProgressIndicator::ShowProgressbarL");
+ iUiUtility->StartTNMDaemon();
+ TInt itemsLeft = iUiUtility->GetItemsLeftCount();
+
+ GLX_LOG_INFO1("ShowProgressbar itemsLeft = %d ",itemsLeft);
+ GLX_LOG_INFO1("ShowProgressbar iFinalCount = %d ",iFinalCount);
+ if (iFinalCount < itemsLeft)
{
- iProgressInfo->SetFinalValue( itemsLeft );
+ /*
+ *if user is in List view and inserts the MMC,update the total count
+ */
iFinalCount = itemsLeft;
}
-
- return (iFinalCount - itemsLeft);
+ if (iFinalCount)
+ {
+ StartProgressNoteL(iFinalCount, ETrue);
+ if (!iProgressbarTicker)
+ {
+ iProgressbarTicker = CPeriodic::NewL(CActive::EPriorityStandard);
+ }
+ if (!iProgressbarTicker->IsActive())
+ {
+ iProgressbarTicker->Start(KPeriodicStartDelay,
+ KPeriodicStartDelay, TCallBack(&PeriodicCallbackL,
+ static_cast<TAny*> (this)));
+ }
+ }
+ else
+ {
+ GLX_LOG_INFO("Reset the RProperty flag to EFalse");
+ iUiUtility->StopTNMDaemon();
+ }
}
--- a/photosgallery/viewframework/uiutilities/src/glxuiutility.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/uiutilities/src/glxuiutility.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -239,8 +239,9 @@
// make it visible as well
CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
- CCoeControl* contl = (CCoeControl*)uiUtility->Display()->ObjectProvider();
- contl->MakeVisible (ETrue);
+ CCoeControl* contl =
+ (CCoeControl*) uiUtility->Display()->ObjectProvider();
+ contl->MakeVisible(ETrue);
uiUtility->Close();
// no need to do anything else, the coecontrol handles the visibility
@@ -255,13 +256,14 @@
// make it invisible as well (this might be all that is needed)
CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
- CCoeControl* contl = (CCoeControl*)uiUtility->Display()->ObjectProvider();
+ CCoeControl* contl =
+ (CCoeControl*) uiUtility->Display()->ObjectProvider();
contl->MakeVisible (EFalse);
uiUtility->Close();
// no need to do anything else, the coecontrol handles the visibility
}
-
+
// -----------------------------------------------------------------------------
// GlxTextureManager
// -----------------------------------------------------------------------------
@@ -282,13 +284,13 @@
TRACER("CGlxUiUtility::ViewNavigationDirection()");
return iNavigationDirection;
}
-
// -----------------------------------------------------------------------------
// SetViewNavigationDirection
// -----------------------------------------------------------------------------
//
-EXPORT_C void CGlxUiUtility::SetViewNavigationDirection(TGlxNavigationDirection aDirection)
+EXPORT_C void CGlxUiUtility::SetViewNavigationDirection(
+ TGlxNavigationDirection aDirection)
{
TRACER("CGlxUiUtility::SetViewNavigationDirection()");
iNavigationDirection = aDirection;
@@ -458,20 +460,20 @@
{
TRACER("CGlxUiUtility::HandleTvStatusChangedL()");
- if ( aChangeType == ETvDisplayNotVisible ) // Visibility event
+ if (aChangeType == ETvDisplayNotVisible) // Visibility event
{
iEnv->Release();
return; // don't redraw the display
}
- else if ( aChangeType == ETvDisplayIsVisible ) // Visibility event
+ else if (aChangeType == ETvDisplayIsVisible) // Visibility event
{
iEnv->RestoreL();
}
- else // TV Connection event
+ else // TV Connection event
{
- GLX_ASSERT_DEBUG( (aChangeType == ETvConnectionChanged),
- Panic( EGlxPanicLogicError ),
- "Expected TV Connection Changed" );
+ GLX_ASSERT_DEBUG( (aChangeType == ETvConnectionChanged),
+ Panic( EGlxPanicLogicError ),
+ "Expected TV Connection Changed" );
if ( iGlxTvOut->IsConnected() )
{
@@ -523,7 +525,7 @@
{
// The primary (phone) display has changed orientation
DestroyTvOutDisplay();
- CreateTvOutDisplayL(); //@ will generate false positive in codescanner
+ CreateTvOutDisplayL(); //@ will generate false positive in codescanner
}
else
{
@@ -548,7 +550,8 @@
iEnv->PauseRefresh();
// Disable Primary Window Visibility events
- CCoeControl* contl = (CCoeControl*)iEnv->PrimaryDisplay().ObjectProvider();
+ CCoeControl* contl =
+ (CCoeControl*) iEnv->PrimaryDisplay().ObjectProvider();
contl->DrawableWindow()->DisableVisibilityChangeEvents();
}
}
@@ -584,18 +587,20 @@
// AddSkinChangeObserverL
// -----------------------------------------------------------------------------
//
-EXPORT_C void CGlxUiUtility::AddSkinChangeObserverL(MGlxSkinChangeObserver& aObserver)
+EXPORT_C void CGlxUiUtility::AddSkinChangeObserverL(
+ MGlxSkinChangeObserver& aObserver)
{
TRACER("CGlxUiUtility::AddSkinChangeObserverL()");
iGlxSkinChangeMonitor->AddSkinChangeObserverL( aObserver );
}
-
+
// -----------------------------------------------------------------------------
// RemoveSkinChangeObserver
// -----------------------------------------------------------------------------
//
-EXPORT_C void CGlxUiUtility::RemoveSkinChangeObserver(MGlxSkinChangeObserver& aObserver)
- {
+EXPORT_C void CGlxUiUtility::RemoveSkinChangeObserver(
+ MGlxSkinChangeObserver& aObserver)
+ {
TRACER("CGlxUiUtility::RemoveSkinChangeObserver()");
iGlxSkinChangeMonitor->RemoveSkinChangeObserver( aObserver );
}
@@ -634,27 +639,30 @@
// -----------------------------------------------------------------------------
//
void CGlxUiUtility::GridIconSizeL()
- {
- TRACER("CGlxUiUtility::GridIconSize()");
- // Sets up TLS, must be done before FeatureManager is used.
- FeatureManager::InitializeLibL();
-
- if(FeatureManager::FeatureSupported( KFeatureIdLayout640_360_Touch ) || FeatureManager::FeatureSupported( KFeatureIdLayout360_640_Touch ))
- {
- iGridIconSize = TSize(111,83);
- }
- else if(FeatureManager::FeatureSupported(KFeatureIdLayout640_480_Touch) || FeatureManager::FeatureSupported(KFeatureIdLayout480_640_Touch) ||
- FeatureManager::FeatureSupported(KFeatureIdLayout640_480) || FeatureManager::FeatureSupported(KFeatureIdLayout480_640))
- {
- iGridIconSize = TSize(146,110);
- }
- else
- {
- iGridIconSize = TSize(146,110);
- }
- // Frees the TLS. Must be done after FeatureManager is used.
- FeatureManager::UnInitializeLib();
- }
+ {
+ TRACER("CGlxUiUtility::GridIconSize()");
+ // Sets up TLS, must be done before FeatureManager is used.
+ FeatureManager::InitializeLibL();
+
+ if (FeatureManager::FeatureSupported(KFeatureIdLayout640_360_Touch)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout360_640_Touch))
+ {
+ iGridIconSize = TSize(111, 83);
+ }
+ else if (FeatureManager::FeatureSupported(KFeatureIdLayout640_480_Touch)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout480_640_Touch)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout640_480)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout480_640))
+ {
+ iGridIconSize = TSize(146, 110);
+ }
+ else
+ {
+ iGridIconSize = TSize(146, 110);
+ }
+ // Frees the TLS. Must be done after FeatureManager is used.
+ FeatureManager::UnInitializeLib();
+ }
@@ -678,7 +686,7 @@
EXPORT_C TInt CGlxUiUtility::VisibleItemsInPageGranularityL()
{
TRACER("CGlxUiUtility::VisibleItemsInPageGranularityL");
-
+
//TBD: In MCL 9.1/Corolla env currently the feature flags
//KFeatureIdLayout640_480 and KFeatureIdLayout480_640 are not defined.
//so making the default granularity as 21 instead of 15.
@@ -686,71 +694,60 @@
//getting the feature flag.
TInt ret = KGlxVGAVisibleItemsGranularity;
FeatureManager::InitializeLibL();
-
- if (FeatureManager::FeatureSupported( KFeatureIdLayout640_360_Touch ) ||
- FeatureManager::FeatureSupported( KFeatureIdLayout360_640_Touch ))
- {
- ret = KGlxQHDVisibleItemsGranularity;
- }
- else if(FeatureManager::FeatureSupported(KFeatureIdLayout640_480_Touch) ||
- FeatureManager::FeatureSupported(KFeatureIdLayout480_640_Touch) ||
- FeatureManager::FeatureSupported(KFeatureIdLayout640_480) ||
- FeatureManager::FeatureSupported(KFeatureIdLayout480_640))
- {
- ret = KGlxVGAVisibleItemsGranularity;
- }
- FeatureManager::UnInitializeLib();
+
+ if (FeatureManager::FeatureSupported(KFeatureIdLayout640_360_Touch)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout360_640_Touch))
+ {
+ ret = KGlxQHDVisibleItemsGranularity;
+ }
+ else if (FeatureManager::FeatureSupported(KFeatureIdLayout640_480_Touch)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout480_640_Touch)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout640_480)
+ || FeatureManager::FeatureSupported(KFeatureIdLayout480_640))
+ {
+ ret = KGlxVGAVisibleItemsGranularity;
+ }
+ FeatureManager::UnInitializeLib();
return ret;
}
// -----------------------------------------------------------------------------
-// StartTNMDaemonL
+// StartTNMDaemon
// -----------------------------------------------------------------------------
//
-EXPORT_C void CGlxUiUtility::StartTNMDaemonL()
+EXPORT_C TInt CGlxUiUtility::StartTNMDaemon()
{
- TRACER("CGlxUiUtility::StartTNMDaemonL");
- TInt err = RProperty::Set(KTAGDPSNotification, KForceBackgroundGeneration, ETrue);
- if(err != KErrNone)
- {
- GLX_LOG_INFO1("GetItemsLeftCountL: RProperty::Set errorcode %d",err);
- //need to check what to do in fail cases
- User::Leave(err);
- }
- }
-
-// -----------------------------------------------------------------------------
-// StopTNMDaemonL
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CGlxUiUtility::StopTNMDaemonL()
- {
- TRACER("CGlxUiUtility:: StopTNMDaemonL ");
- TInt err = RProperty::Set(KTAGDPSNotification, KForceBackgroundGeneration, EFalse);
- GLX_LOG_INFO1("CGlxUiUtility::StopTNMDaemonL err = %d",err);
- if(err != KErrNone)
- {
- GLX_LOG_INFO1("StopTNMDaemonL: RProperty::Set errorcode %d",err);
- //need to check what to do in fail cases
- User::Leave(err);
- }
+ TRACER("CGlxUiUtility::StartTNMDaemon");
+ return RProperty::Set(KTAGDPSNotification, KForceBackgroundGeneration,
+ ETrue);
}
// -----------------------------------------------------------------------------
-// GetItemsLeftCountL
+// StopTNMDaemon
// -----------------------------------------------------------------------------
//
-EXPORT_C TInt CGlxUiUtility::GetItemsLeftCountL()
+EXPORT_C TInt CGlxUiUtility::StopTNMDaemon()
{
- TRACER("CGlxUiUtility::GetItemsLeftCountL");
+ TRACER("CGlxUiUtility:: StopTNMDaemon");
+ return RProperty::Set(KTAGDPSNotification, KForceBackgroundGeneration,
+ EFalse);
+ }
+
+// -----------------------------------------------------------------------------
+// GetItemsLeftCount
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TInt CGlxUiUtility::GetItemsLeftCount()
+ {
+ TRACER("CGlxUiUtility::GetItemsLeftCount");
TInt leftVariable = 0;
TInt err = RProperty::Get(KTAGDPSNotification, KItemsleft, leftVariable);
- GLX_LOG_INFO1("GetItemsLeftCountL: GetItemsLeftCountL %d",leftVariable);
- if(err != KErrNone)
+ GLX_LOG_INFO1("GetItemsLeftCount: GetItemsLeftCount %d", leftVariable);
+ if (err != KErrNone)
{
- GLX_LOG_INFO1("GetItemsLeftCountL: RProperty::Get errorcode %d",err);
- User::Leave(err);
+ GLX_LOG_INFO1("GetItemsLeftCount: RProperty::Get errorcode %d", err);
+ leftVariable = 0;
}
- return leftVariable;
+ return leftVariable;
}
// End of file
--- a/photosgallery/viewframework/views/cloudview/inc/glxtagscontextmenucontrol.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/cloudview/inc/glxtagscontextmenucontrol.h Wed Apr 14 15:57:24 2010 +0300
@@ -25,7 +25,7 @@
//Forward Declaration
class CAlfGridLayout;
-class CGlxUiUtility;
+class CAlfEnv;
/**
*MGlxItemMenuObserver is a class to handle the menu items in grid layout
@@ -114,6 +114,10 @@
*/
void CreateMenuListL(TInt aFontId);
+ /**
+ * Calculates the maximum text width of menu items
+ */
+ void CalculateMaxWidth();
/**
* Perform the two phase construction
* @param aEvent - key Event to handle
@@ -123,15 +127,14 @@
TBool OfferEventL(const TAlfEvent& aEvent);
private:
-
- //Ui Utility, not owning, only close
- CGlxUiUtility* iUiUtility;
//Observer to handle the menu items in grid layout
MGlxItemMenuObserver& iItemMenuObserver;
//Grid layout, not owning
CAlfGridLayout* iGrid;
+ /** The Alf environment*/
+ CAlfEnv* iAlfEnv;
//Slideshow text, not owning
CAlfTextVisual* iSlideshowTextVisual;
@@ -153,6 +156,8 @@
//flag for stylus menu visibility
TBool iItemMenuVisibility;
+ //Maximum text width of a menu item
+ TInt iMaxTextWidth;
};
#endif /* GLXTAGSCONTEXTMENUCONTROL_H_ */
--- a/photosgallery/viewframework/views/cloudview/src/glxcloudviewcontrol.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/cloudview/src/glxcloudviewcontrol.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -63,7 +63,7 @@
const TInt KLeftMargin = 10;
const TInt KNumMinRowSpace = 2;
const TInt KColSpace = 20;
-const TInt KRightmargin = 20;
+const TInt KRightmargin = 10;//Aligning Right margin
const TInt KMinTagSize = 77;
const TInt KTagScreenHeight = 460;
const TReal KBoundaryMargin = 0.1; //10% = 10/100 = 0.1
@@ -156,7 +156,7 @@
AknLayoutUtils::LayoutMetricsRect (AknLayoutUtils::EMainPane, rect);
iScreenHeight = rect.Height ();
iParentLayout = CAlfLayout::AddNewL(*this, aAnchorLayout);
- iTagScreenWidth = rect.Width() - iScrollPaneHandle.iW - KRightmargin;
+ iTagScreenWidth = rect.Width() - KRightmargin;
if(IsLandscape())
{
@@ -230,7 +230,7 @@
}
TRect rect;
AknLayoutUtils::LayoutMetricsRect (AknLayoutUtils::EMainPane, rect);
- if ((rect.Width() != (iTagScreenWidth + iScrollPaneHandle.iW + KRightmargin)) || (rect.Height() != iScreenHeight))
+ if ((rect.Width() != (iTagScreenWidth + KRightmargin)) || (rect.Height() != iScreenHeight))
{
//set the new screen dimensions
TRAP_IGNORE(UpdateLayoutL());
@@ -1849,10 +1849,14 @@
if( iScrollEventData.mSpan )
{
scrollbarbaselement->setThumbOpacity(1.0);
+ //make scroll bar visible
+ scrollbarbaselement->setOpacity(1.0);
}
else
{
scrollbarbaselement->setThumbOpacity(0.0);
+ //make scroll bar invisible
+ scrollbarbaselement->setOpacity(0.0);
}
}
}
@@ -1865,11 +1869,11 @@
{
TRect rect;
AknLayoutUtils::LayoutMetricsRect (AknLayoutUtils::EMainPane, rect);
- if ((rect.Width() != (iTagScreenWidth + iScrollPaneHandle.iW + KRightmargin)) || (rect.Height() != iScreenHeight))
+ if ((rect.Width() != (iTagScreenWidth + KRightmargin)) || (rect.Height() != iScreenHeight))
{
//set the new screen dimensions
iScreenHeight=rect.Height();
- iTagScreenWidth = rect.Width()- iScrollPaneHandle.iW - KRightmargin;
+ iTagScreenWidth = rect.Width()- KRightmargin;
if(IsLandscape())
{
iTagScreenHeight = rect.Height();
@@ -1996,6 +2000,10 @@
void CGlxCloudViewControl::ShowContextItemMenu(TBool aShow)
{
iTagsContextMenuControl->ShowItemMenu(aShow);
+ if(!aShow)
+ {
+ iViewPortLayout->UpdateChildrenLayout(0);
+ }
}
//End of file
--- a/photosgallery/viewframework/views/cloudview/src/glxcloudviewimp.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/cloudview/src/glxcloudviewimp.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -46,8 +46,8 @@
#include "glxcloudviewcontrol.h"//cloud view control
// For transition effects
-#include <AknTransEffect.h>
-#include <GfxTransEffect/GfxTransEffect.h>
+#include <akntranseffect.h>
+#include <gfxtranseffect/gfxtranseffect.h>
#include "glxgfxtranseffect.h" // For transition effects
const TInt KViewId = 0x200071B7;
--- a/photosgallery/viewframework/views/cloudview/src/glxtagscontextmenucontrol.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/cloudview/src/glxtagscontextmenucontrol.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -51,8 +51,6 @@
const TInt KMinimalGap = 5;
//Height of each menu item
const TInt KReqHeightPerMenuItem = 47;
-//Minimum width for control
-const TInt KReqWidth = 113;
//Number of menu items present in stylus menu
const TInt KNumofMenuItems = 3;
//Number of columns present in grid control showing menu
@@ -72,7 +70,8 @@
const TInt KShrinkXCoord = 5;
//Y shrink factor for stylus menu border to be drawn/visible
const TInt KShrinkYCoord = 5;
-
+//Padding value for Minimum width for control
+const TInt KWidthPadding = 20;
//For Tagging the visuals
_LIT8(KTagSlideshow, "SS");
_LIT8(KTagRename, "Ren");
@@ -86,7 +85,8 @@
MGlxItemMenuObserver& aItemMenuObserver)
{
TRACER("GLX_CLOUD::CGlxTagsContextMenuControl::NewL");
- CGlxTagsContextMenuControl* self = CGlxTagsContextMenuControl::NewLC( aItemMenuObserver);
+ CGlxTagsContextMenuControl* self = CGlxTagsContextMenuControl::NewLC(
+ aItemMenuObserver);
CleanupStack::Pop(self);
return self;
}
@@ -98,7 +98,8 @@
MGlxItemMenuObserver& aItemMenuObserver )
{
TRACER("GLX_CLOUD::CGlxTagsContextMenuControl::NewLC");
- CGlxTagsContextMenuControl* self = new (ELeave) CGlxTagsContextMenuControl( aItemMenuObserver);
+ CGlxTagsContextMenuControl* self =
+ new (ELeave) CGlxTagsContextMenuControl(aItemMenuObserver);
CleanupStack::PushL( self );
self->ConstructL();
return self;
@@ -107,8 +108,9 @@
// CGlxTagsContextMenuControl()
// ---------------------------------------------------------------------------
//
-CGlxTagsContextMenuControl::CGlxTagsContextMenuControl(MGlxItemMenuObserver& aItemMenuObserver)
- : iItemMenuObserver(aItemMenuObserver)
+CGlxTagsContextMenuControl::CGlxTagsContextMenuControl(
+ MGlxItemMenuObserver& aItemMenuObserver) :
+ iItemMenuObserver(aItemMenuObserver)
{
TRACER("GLX_CLOUD::CGlxTagsContextMenuControl::CGlxTagsContextMenuControl");
//Nothing more to do for now
@@ -120,35 +122,40 @@
void CGlxTagsContextMenuControl::ConstructL()
{
TRACER("GLX_CLOUD::CGlxTagsContextMenuControl::ConstructL");
- iUiUtility = CGlxUiUtility::UtilityL ();
- CAlfControl::ConstructL(*(iUiUtility->Env()) );
+ CGlxUiUtility* utility = CGlxUiUtility::UtilityL();
+ CleanupClosePushL( *utility );
+ iAlfEnv = utility->Env();
+ CleanupStack::PopAndDestroy( utility );
+ CAlfControl::ConstructL(*iAlfEnv);
iTimer = CGlxBubbleTimer::NewL(this);
iMainVisual = CAlfAnchorLayout::AddNewL(*this);
iMainVisual->SetFlag(EAlfVisualFlagManualLayout);
- iMainVisual->SetSize(TSize(KReqWidth, KGridHeight));
iMainVisual->SetPos(TAlfRealPoint(KDummyPoint));
-
- iMainVisual->EnableBrushesL(ETrue);
-
- TRect outerRect(TRect(TPoint(KDummyPoint),TSize(KReqWidth, KGridHeight)));
- TRect innerRect(outerRect);
- innerRect.Shrink(KShrinkXCoord,KShrinkYCoord);
-
- CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC(*(iUiUtility->Env()),
- KAknsIIDQsnFrPopupSub );
- frameBrush->SetFrameRectsL(innerRect, outerRect);
-
- iMainVisual->Brushes()->AppendL(frameBrush,EAlfHasOwnership);
- CleanupStack::Pop(frameBrush);
-
// Create a new 3x1 grid layout visual.
- iGrid = CAlfGridLayout::AddNewL(*this, KNoOfColumns, KNumofMenuItems ,
- iMainVisual);//columns, rows
+ iGrid = CAlfGridLayout::AddNewL(*this, KNoOfColumns, KNumofMenuItems,
+ iMainVisual);//columns, rows
//Finally create the menu list that will appear in screen
CreateMenuListL(CreateFontL());
+ CalculateMaxWidth();
+ iMainVisual->SetSize(TSize(KWidthPadding + iMaxTextWidth, KGridHeight));
+
+ iMainVisual->EnableBrushesL(ETrue);
+
+ TRect outerRect(TRect(TPoint(KDummyPoint),
+ TSize(KWidthPadding + iMaxTextWidth, KGridHeight)));
+ TRect innerRect(outerRect);
+ innerRect.Shrink(KShrinkXCoord, KShrinkYCoord);
+
+ CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC(*iAlfEnv,
+ KAknsIIDQsnFrPopupSub);
+ frameBrush->SetFrameRectsL(innerRect, outerRect);
+
+ iMainVisual->Brushes()->AppendL(frameBrush, EAlfHasOwnership);
+ CleanupStack::Pop(frameBrush);
+
ShowItemMenu(EFalse);
}
// ---------------------------------------------------------------------------
@@ -169,12 +176,6 @@
delete iTimer;
iTimer = NULL;
}
-
- if (iUiUtility)
- {
- iUiUtility->Close();
- iUiUtility = NULL;
- }
}
// ---------------------------------------------------------------------------
// CreateFont()
@@ -185,7 +186,7 @@
TRACER("GLX_CLOUD::CGlxTagsContextMenuControl::CreateFont");
// Create a new style based on the required font
- CAlfTextStyleManager& styleMan = iUiUtility->Env()->TextStyleManager();
+ CAlfTextStyleManager& styleMan = iAlfEnv->TextStyleManager();
// remember its id for return later
TInt id = styleMan.CreatePlatformTextStyleL(EAlfTextStyleNormal);
@@ -210,8 +211,8 @@
TRgb color;
//Gets the color of the text specific to skin
- AknsUtils::GetCachedColor(AknsUtils::SkinInstance(),
- color, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG20 );
+ AknsUtils::GetCachedColor(AknsUtils::SkinInstance(), color,
+ KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG20);
//Loading the strings from rss
HBufC* renameTitle = StringLoader::LoadLC( R_GLX_TAGS_RENAME_TITLE );
@@ -267,9 +268,9 @@
TInt rightDisplayableWidth = iViewableRect.iBr.iY - XPos;
//always draw above
- if(rightDisplayableWidth < KReqWidth)
+ if(rightDisplayableWidth < iMaxTextWidth)
{
- XPos = aPoint.iX - KReqWidth;
+ XPos = aPoint.iX - iMaxTextWidth;
}
if(upperDisplayableHeight < KGridHeight)
{
@@ -369,3 +370,23 @@
iViewableRect.SetRect(aRect.iTl.iX, aRect.iTl.iY,
aRect.iBr.iX, aRect.iBr.iY);
}
+// ---------------------------------------------------------------------------
+// CalculateMaxWidth()
+// ---------------------------------------------------------------------------
+//
+void CGlxTagsContextMenuControl::CalculateMaxWidth()
+ {
+ TRACER("GLX_CLOUD::CGlxTagsContextMenuControl::CalculateMaxWidth");
+
+ iMaxTextWidth
+ = (iSlideshowTextVisual->TextExtents().iWidth
+ > iRenameTextVisual->TextExtents().iWidth
+ ? iSlideshowTextVisual->TextExtents().iWidth
+ : iRenameTextVisual->TextExtents().iWidth);
+
+ iMaxTextWidth
+ = (iMaxTextWidth > iDeleteTextVisual->TextExtents().iWidth
+ ? iMaxTextWidth
+ : iDeleteTextVisual->TextExtents().iWidth);
+
+ }
--- a/photosgallery/viewframework/views/fullscreenview/group/glxfullscreenview.mmp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/fullscreenview/group/glxfullscreenview.mmp Wed Apr 14 15:57:24 2010 +0300
@@ -100,5 +100,6 @@
LIBRARY glxtvout.lib
LIBRARY gfxtrans.lib
LIBRARY akntransitionutils.lib
+LIBRARY ws32.lib // for RWsSession
// EOF
--- a/photosgallery/viewframework/views/fullscreenview/inc/glxfullscreenbusyicon.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/fullscreenview/inc/glxfullscreenbusyicon.h Wed Apr 14 15:57:24 2010 +0300
@@ -18,7 +18,7 @@
#ifndef GLXFULLSCREENBUSYICON_H_
#define GLXFULLSCREENBUSYICON_H_
-#include <alf/alfControl.h>
+#include <alf/alfcontrol.h>
#include <mglxmedialistobserver.h>
// Forward decleartion
class CAlfEnv;
--- a/photosgallery/viewframework/views/fullscreenview/inc/glxfullscreenviewimp.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/fullscreenview/inc/glxfullscreenviewimp.h Wed Apr 14 15:57:24 2010 +0300
@@ -220,11 +220,6 @@
NGlxNFullScreenUIState::TUiState GetUiSate();
/*
- * returns the Ui state
- */
- void CreateScreenFurnitureL();
-
- /*
* Call back function for the CPeriodic
*/
static TInt TimeOut(TAny* aSelf);
@@ -283,6 +278,12 @@
* navigate to main list
*/
void NavigateToMainListL();
+
+ /**
+ * Disable/enable the fullscreen toolbar
+ */
+ void EnableFSToolbarL(TBool aEnable);
+
private:
/** Softkey resource id's */
TFullScreenViewResourceIds iResourceIds;
--- a/photosgallery/viewframework/views/fullscreenview/src/glxfullscreenbusyicon.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/fullscreenview/src/glxfullscreenbusyicon.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -15,7 +15,7 @@
*
*/
-#include <stringloader.h>
+#include <StringLoader.h>
#include <data_caging_path_literals.hrh> // KDC_APP_RESOURCE_DIR
#include <glxtracer.h>
#include <glxlog.h> // Glx logs
--- a/photosgallery/viewframework/views/fullscreenview/src/glxfullscreenviewimp.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/fullscreenview/src/glxfullscreenviewimp.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -164,27 +164,9 @@
//Register the view to recieve toolbar events. ViewBase handles the events
SetToolbarObserver(this);
iImgViewerMode = EFalse;
- // Presently image viewer dont have toolbar
- // So need to remove if image viewer using full screen
- CGlxNavigationalState* navigationalState = CGlxNavigationalState::InstanceL();
- CleanupClosePushL( *navigationalState );
- CMPXCollectionPath* naviState = navigationalState->StateLC();
- if (naviState->Id() == TMPXItemId(KGlxCollectionPluginImageViewerImplementationUid))
- {
- CAknToolbar* toolbar = Toolbar();
- if(toolbar)
- {
- toolbar->DisableToolbarL(ETrue);
- }
- ShowToolbarOnViewActivation(EFalse);
- }
- else
- {
- ShowToolbarOnViewActivation(ETrue);
- }
- CleanupStack::PopAndDestroy(naviState);
- CleanupStack::PopAndDestroy(navigationalState);
-
+ //Disable the toolbar always while entering fullscreen
+ EnableFSToolbarL(EFalse);
+ ShowToolbarOnViewActivation(EFalse);
//Get the ScreenFurniture instance
iScreenFurniture = iUiUtility->ScreenFurniture();
@@ -306,12 +288,13 @@
const TDesC8 & /* aCustomMessage */)
{
TRACER("CGlxFullScreenViewImp::DoMLViewActivateL");
+ //Disable the softkeys
+ Cba()->MakeVisible( EFalse );
+ Cba()->DrawNow();
+
// hide the toolbar
- CAknToolbar* toolbar = Toolbar();
- if(toolbar)
- {
- toolbar->SetToolbarVisibility(EFalse);
- }
+ EnableFSToolbarL(EFalse);
+
CGlxNavigationalState* navigationalState = CGlxNavigationalState::InstanceL();
CleanupClosePushL( *navigationalState );
@@ -357,9 +340,6 @@
// create the coverflow
CreateCoverflowWidgetL();
- // create the screen furniture for touch devices
- CreateScreenFurnitureL();
-
CreateSliderWidgetL();
iBusyIcon = CGlxFullScreenBusyIcon::NewL(*iMediaList,*iUiUtility);
@@ -519,11 +499,11 @@
iCoverFlowWidget->SetUIMode(ETrue);
}
- //show the toolbar
- CAknToolbar* toolbar = Toolbar();
- if(toolbar)
+ //Since the toolbar should not be present for ImageViewer.
+ if(!iImgViewerMode)
{
- toolbar->SetToolbarVisibility(ETrue);
+ //show the toolbar
+ EnableFSToolbarL(ETrue);
}
// For floating toolbar in non-touch devices
@@ -565,12 +545,17 @@
{
iCoverFlowWidget->SetUIMode(EFalse);
}
- // hide the toolbar
- CAknToolbar* toolbar = Toolbar();
- if(toolbar)
+
+ //Since the toolbar should not be present for ImageViewer.
+ if(!iImgViewerMode)
{
- toolbar->SetToolbarVisibility(EFalse);
- }
+ // hide the toolbar
+ CAknToolbar* toolbar = Toolbar();
+ if(toolbar)
+ {
+ toolbar->SetToolbarVisibility(EFalse);
+ }
+ }
// hide the softkeys
Cba()->MakeVisible( EFalse );
@@ -581,20 +566,6 @@
}
// ---------------------------------------------------------------------------
-// CreateScreenFurnitureL
-// ---------------------------------------------------------------------------
-//
-void CGlxFullScreenViewImp::CreateScreenFurnitureL()
- {
- TRACER("CGlxFullScreenViewImp::CreateScreenFurnitureL");
- // create the softkeys
- CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
- CleanupStack::PushL( cba );
- cba->SetCommandSetL(R_GLX_FULLSCREEN_SOFTKEYS);
- CleanupStack::Pop(cba);
- }
-
-// ---------------------------------------------------------------------------
// SetUiSate
// ---------------------------------------------------------------------------
//
@@ -771,6 +742,19 @@
void CGlxFullScreenViewImp::DoMLViewDeactivate()
{
TRACER("CGlxFullScreenViewImp::DoMLViewDeactivate");
+ //Disabling the toolbar here since it would give a crash when
+ //we try to enable the toolbar in activate without exiting photos.
+ if(!iImgViewerMode)
+ {
+ // hide the toolbar
+ TRAP_IGNORE(EnableFSToolbarL(EFalse));
+ }
+
+ HideUi(ETrue);
+ // In Order to hide the softkeys immediately. The above statement does not do that as soon as we need.
+ // So we do the below trick. The SK overlap is still there but much much less noticable.
+ CCoeEnv::Static()->WsSession().Flush();
+
//Clear the last uri for which DRM Rights were consumed before going back to grid view
//since the GridView::Activate() and FullScreen::DeActivate() can be called in any order,
//this call is being made to be on safer side
@@ -828,12 +812,10 @@
if (!aForeground)
{
-
if(iHdmiController)
{
iHdmiController->ShiftToCloningMode();
}
-
iUiUtility->GlxTextureManager().FlushTextures();
}
else
@@ -918,7 +900,7 @@
if ( NGlxNFullScreenUIState::EUiOff == GetUiSate()&& (
aEvent.Code() == EEventKey ) )
{
- //the Ui timer sjould be started once the UI screen furniture is shown
+ //the Ui timer should be started once the UI screen furniture is shown
ShowUiL(ETrue);
}
return EEventHandled;
@@ -949,10 +931,10 @@
}
}
if(!aEvent.IsCustomEvent())
- {
- GLX_LOG_INFO("Event Not Handled");
- return EEventNotHandled;
- }
+ {
+ GLX_LOG_INFO("Event Not Handled");
+ return EEventNotHandled;
+ }
if(aEvent.IsCustomEvent())
{
@@ -1565,3 +1547,20 @@
}
ProcessCommandL(EAknSoftkeyExit);
}
+
+// ---------------------------------------------------------------------------
+// EnableFSToolbarL
+//
+// ---------------------------------------------------------------------------
+//
+void CGlxFullScreenViewImp::EnableFSToolbarL(TBool aEnable)
+ {
+ TRACER("CGlxFullScreenViewImp::EnableFSToolbarL()");
+ CAknToolbar* toolbar = Toolbar();
+ if(toolbar)
+ {
+ toolbar->DisableToolbarL(!aEnable);
+ toolbar->SetToolbarVisibility(aEnable);
+ }
+ }
+
--- a/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -388,11 +388,25 @@
tnSize.iWidth, tnSize.iHeight);
TFileName resFile(KDC_APP_BITMAP_DIR);
resFile.Append(KGlxIconsFilename);
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_notcreated);
- AknIconUtils::SetSize(bitmap, tnSize);
- // Create Hg grid object
- iHgGrid = CHgGrid::NewL (GetHgGridRect(),mediaCount,CGulIcon::NewL(bitmap));
+
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_notcreated,
+ EMbmGlxiconsQgn_prop_image_notcreated_mask);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ // Create Hg grid object
+ iHgGrid = CHgGrid::NewL(GetHgGridRect(), mediaCount, CGulIcon::NewL(
+ bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
// Setting to MopParent to update background skin
@@ -580,22 +594,45 @@
*/
GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_defaultthumbnail tnError(%d), i(%d)",
tnError, index);
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_notcreated);
- AknIconUtils::SetSize(bitmap, setSize);
- iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap));
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_notcreated,
+ EMbmGlxiconsQgn_prop_image_notcreated_mask);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
else if(KErrNone != tnError)
{
GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_corrupted tnError(%d), i(%d)",
tnError, index);
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_corrupted);
- AknIconUtils::SetSize(bitmap, setSize);
- iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap));
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_corrupted,
+ EMbmGlxiconsQgn_prop_image_corrupted_mask);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
-
if (item.IsDrmProtected())
{
const TDesC& uri = item.Uri();
--- a/photosgallery/viewframework/views/gridview/src/glxgridviewimp.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/gridview/src/glxgridviewimp.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -40,8 +40,8 @@
#include "glxgridviewcontainer.h"
// For transition effects
-#include <AknTransEffect.h>
-#include <GfxTransEffect/GfxTransEffect.h>
+#include <akntranseffect.h>
+#include <gfxtranseffect/gfxtranseffect.h>
#include "glxgfxtranseffect.h" // For transition effects
const TInt KGlxToolbarButtonUnLatched = 0; // Toolbar mark button's unlatched state defined in the rss file
--- a/photosgallery/viewframework/views/gridview/src/glxgridviewmlobserver.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/gridview/src/glxgridviewmlobserver.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -245,10 +245,23 @@
else if ( KErrNone != tnError && KErrNotSupported != tnError &&
KErrArgument != tnError )
{
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_corrupted);
- AknIconUtils::SetSize(bitmap, setSize);
- iHgGrid->ItemL(aItemIndex).SetIcon(CGulIcon::NewL(bitmap));
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile,
+ EMbmGlxiconsQgn_prop_image_corrupted,
+ EMbmGlxiconsQgn_prop_image_corrupted_mask);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iHgGrid->ItemL(aItemIndex).SetIcon(CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
}
@@ -316,7 +329,8 @@
{
TRACER("CGlxGridViewMLObserver::HandleErrorL()");
- TInt bitmapId = EMbmGlxiconsQgn_prop_image_notcreated;
+ TInt bitmapId = EMbmGlxiconsQgn_prop_image_corrupted;
+ TInt maskId = EMbmGlxiconsQgn_prop_image_corrupted_mask;
TInt flags = CHgItem::EHgItemFlagsNone ;
for ( TInt i = 0; i < iMediaList.Count(); i++ )
@@ -331,10 +345,12 @@
{
case KErrCANoRights:; // Err id = -17452
bitmapId = EMbmGlxiconsQgn_prop_image_notcreated;
+ maskId = EMbmGlxiconsQgn_prop_image_notcreated_mask;
flags = CHgItem::EHgItemFlagsDrmRightsExpired;
break;
case KErrDiskFull:
bitmapId = EMbmGlxiconsQgn_prop_image_notcreated;
+ maskId = EMbmGlxiconsQgn_prop_image_notcreated_mask;
flags = CHgItem::EHgItemFlagsNone ;
if (!iDiskErrorIntimated)
{
@@ -343,6 +359,7 @@
break;
default:
bitmapId = EMbmGlxiconsQgn_prop_image_corrupted;
+ maskId = EMbmGlxiconsQgn_prop_image_corrupted_mask;
flags = CHgItem::EHgItemFlagsNone ;
break;
}
@@ -350,14 +367,26 @@
TFileName resFile(KDC_APP_BITMAP_DIR);
resFile.Append(KGlxIconsFilename);
- CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile, bitmapId);
- AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize() );
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile, bitmapId, maskId);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
- iHgGrid->ItemL(i).SetIcon(CGulIcon::NewL(bitmap), flags);
+ AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iHgGrid->ItemL(i).SetIcon(CGulIcon::NewL(bitmap, mask), flags);
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
}
iHgGrid->RefreshScreen(iHgGrid->FirstIndexOnScreen());
}
+
// ----------------------------------------------------------------------------
// HandleCommandCompleteL
// ----------------------------------------------------------------------------
--- a/photosgallery/viewframework/views/listview/inc/glxlistviewimp.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/listview/inc/glxlistviewimp.h Wed Apr 14 15:57:24 2010 +0300
@@ -180,6 +180,20 @@
void HandleMMCInsertionL();
void HandleMMCRemovalL();
void HandleNavigationalStateChangedL(){};
+ /**
+ * Cleans Up the cache for list view
+ */
+ void CleanUpL();
+ /**
+ * Updates the preview thumbnail
+ * @param aIndex index to be updated
+ */
+ void UpdatePreviewL(TInt aIndex);
+ /**
+ * Helper function used by HandleError
+ * @param aError the error code to handle.
+ */
+ void DoHandleErrorL( TInt /*aError*/ );
public: // from MGlxMediaListObserver
void HandleItemAddedL( TInt aStartIndex, TInt aEndIndex, MGlxMediaList* aList );
@@ -208,14 +222,16 @@
CGlxPreviewThumbnailBinding* iPreviewTNBinding; //Own
- // Fetch context for retrieving title attribute
- CGlxDefaultAttributeContext* iTitleAttributeContext;
+ // Fetch context for retrieving title attribute
+ CGlxAttributeContext* iTitleAttributeContext;
// Fetch context for retrieving subtitle
- CGlxDefaultAttributeContext* iSubtitleAttributeContext;
+ CGlxAttributeContext* iSubtitleAttributeContext;
- // for thumbnail context
- TGlxSequentialIterator iThumbnailIterator;
+ TGlxFromFocusOutwardIterator iThumbnailIterator;
+
+ // Thumbnail Attrib context
+ CGlxAttributeContext* iThumbnailContext;
/** Unique ID of this Avkon view */
TInt iViewUid;
@@ -243,9 +259,6 @@
CGlxProgressIndicator* iProgressIndicator;
- //Check for TN generation
- TBool isTnGenerationComplete;
-
CActiveSchedulerWait* iSchedulerWait;
CGlxMMCNotifier* iMMCNotifier;
@@ -253,6 +266,8 @@
CGlxNavigationalState* iNavigationalState;
TBool iMMCState;
+
+ TSize iGridIconSize;
};
#endif // C_GLXLISTVIEWIMP_H
--- a/photosgallery/viewframework/views/listview/inc/glxpreviewthumbnailbinding.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/listview/inc/glxpreviewthumbnailbinding.h Wed Apr 14 15:57:24 2010 +0300
@@ -78,14 +78,16 @@
*/
void ConstructL();
+
+public:
+
/**
* Scale the source bitmap to list size
* aSrcBitmap - Source bitmap
* aDestBitmap - Scaled destination bitmap
*/
void ScaleBitmapToListSizeL(CFbsBitmap* aSrcBitmap, CFbsBitmap* aDestBitmap);
-
-public:
+
void HandleItemChangedL(const CMPXCollectionPath& aPath,TBool aPopulateListTNs,
TBool aIsRefreshNeeded, TBool aBackwardNavigation);
void StartTimer();
--- a/photosgallery/viewframework/views/listview/src/glxlistviewimp.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/listview/src/glxlistviewimp.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -40,19 +40,21 @@
#include <aknViewAppUi.h>
#include <StringLoader.h> //StringLoader
#include <glxsetappstate.h>
+#include <mglxcache.h>
+#include <glxerrormanager.h> // For CGlxErrormanager
+#include <glxthumbnailcontext.h>
#include <glxthumbnailattributeinfo.h>
#include <glxcollectionpluginalbums.hrh>
#include <glxcollectionpluginmonths.hrh>
#include <glxcollectionplugintype.hrh>
#include <glxnavigationalstate.h>
-#include <AknTransEffect.h> // For transition effects
-#include <GfxTransEffect/GfxTransEffect.h> // For transition effects
+#include <akntranseffect.h> // For transition effects
+#include <gfxtranseffect/gfxtranseffect.h> // For transition effects
#include "glxgfxtranseffect.h" // For transition effects
-const TInt KListDataWindowSize(25);
-const TInt KNoOfPages(2);
-const TInt KBufferTresholdSize(6);
+const TInt KListDataWindowSize(16);
+const TInt KNoOfPages(4);
const TInt KGlxCollectionRootLevel = 1;
@@ -65,7 +67,7 @@
CGlxListViewImp::CGlxListViewImp(TInt aViewUid,
const TListViewResourceIds& aResourceIds) :
iViewUid(aViewUid), iResourceIds(aResourceIds), iIsRefreshNeeded(EFalse),
- iBackwardNavigation(EFalse), isTnGenerationComplete(ETrue)
+ iBackwardNavigation(EFalse)
{
}
@@ -125,7 +127,10 @@
{
toolbar->DisableToolbarL(ETrue);
}
-
+ CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL();
+ CleanupClosePushL(*uiUtility);
+ iGridIconSize = uiUtility->GetGridIconSize();
+ CleanupStack::PopAndDestroy(uiUtility);
//Register the view to recieve toolbar events. ViewBase handles the events
SetToolbarObserver(this);
iMMCNotifier = CGlxMMCNotifier::NewL(*this);
@@ -215,21 +220,34 @@
GlxSetAppState::SetState(EGlxInListView);
// Separate contexts so that some attributes are loaded before others
- iTitleAttributeContext = CGlxDefaultAttributeContext::NewL();
- iTitleAttributeContext->SetRangeOffsets( KListDataWindowSize,
- KListDataWindowSize );
- iTitleAttributeContext->AddAttributeL( KMPXMediaGeneralTitle );
+ iThumbnailIterator.SetRangeOffsets(KListDataWindowSize,
+ KListDataWindowSize);
+ iTitleAttributeContext = new (ELeave) CGlxAttributeContext(
+ &iThumbnailIterator);
+ iTitleAttributeContext->AddAttributeL(KMPXMediaGeneralTitle);
+
+ iSubtitleAttributeContext = new (ELeave) CGlxAttributeContext(
+ &iThumbnailIterator);
+ iSubtitleAttributeContext->AddAttributeL(
+ KGlxMediaCollectionPluginSpecificSubTitle);
- iSubtitleAttributeContext = CGlxDefaultAttributeContext::NewL();
- iSubtitleAttributeContext->SetRangeOffsets( KListDataWindowSize,
- KListDataWindowSize );
- iSubtitleAttributeContext->AddAttributeL(
- KGlxMediaCollectionPluginSpecificSubTitle );
+ iMediaList->AddContextL(iTitleAttributeContext, KMaxTInt);
+ iMediaList->AddContextL(iSubtitleAttributeContext, KMaxTInt);
+ if (iMediaList->IdSpaceId(0) != KGlxIdSpaceIdRoot)
+ {
+ iThumbnailContext = new (ELeave) CGlxAttributeContext(
+ &iThumbnailIterator);
+ TMPXAttribute tnAttr(KGlxMediaIdThumbnail,
+ GlxFullThumbnailAttributeId(ETrue, iGridIconSize.iWidth,
+ iGridIconSize.iHeight));
+ iThumbnailContext->SetDefaultSpec(iGridIconSize.iWidth,
+ iGridIconSize.iHeight);
+ iThumbnailContext->AddAttributeL(tnAttr);
+ iMediaList->AddContextL(iThumbnailContext,
+ KGlxFetchContextPriorityNormal);
+ }
- iMediaList->AddContextL( iTitleAttributeContext, KMaxTInt );
- iMediaList->AddContextL( iSubtitleAttributeContext, KMaxTInt );
-
- iMediaList->AddMediaListObserverL(this);
+ iMediaList->AddMediaListObserverL(this);
TRect apRect = iEikonEnv->EikAppUi()->ApplicationRect();
iBgContext = CAknsBasicBackgroundControlContext::NewL(
KAknsIIDQsnBgScreen,apRect,ETrue);
@@ -241,18 +259,19 @@
iPreviewTNBinding = CGlxPreviewThumbnailBinding::NewL(*this);
CreateListL();
- if (iPreviewTNBinding && iBackwardNavigation && iMediaList->FocusIndex()
- == 0)
- {
- GLX_LOG_INFO("CGlxListViewImp::DoMLViewActivateL() - HandleItemChangedL()");
- iPopulateListTNs = ETrue;
- CMPXCollectionPath* path = iMediaList->PathLC(
- NGlxListDefs::EPathFocusOrSelection);
- iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs,
- iIsRefreshNeeded, iBackwardNavigation);
- CleanupStack::PopAndDestroy(path);
- }
+ if (iMediaList->IdSpaceId(0) == KGlxIdSpaceIdRoot && iPreviewTNBinding
+ && iBackwardNavigation && iMediaList->FocusIndex() == 0)
+ {
+ GLX_LOG_INFO("CGlxListViewImp::DoMLViewActivateL() - HandleItemChangedL()");
+ iPopulateListTNs = ETrue;
+ CMPXCollectionPath* path = iMediaList->PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
+ iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs,
+ iIsRefreshNeeded, iBackwardNavigation);
+ CleanupStack::PopAndDestroy(path);
+ }
iProgressIndicator = CGlxProgressIndicator::NewL(*this);
+ iProgressIndicator->ShowProgressbarL();
}
// ---------------------------------------------------------------------------
@@ -266,10 +285,10 @@
if(StatusPane())
{
if(iTitletext)
- {
- delete iTitletext;
- iTitletext = NULL;
- }
+ {
+ delete iTitletext;
+ iTitletext = NULL;
+ }
CEikStatusPane* statusPane = iEikonEnv->AppUiFactory()->StatusPane();
TRAP_IGNORE(CAknTitlePane* titlePane = ( CAknTitlePane* )statusPane->ControlL(
TUid::Uid( EEikStatusPaneUidTitle ));
@@ -283,18 +302,21 @@
iMediaList->RemoveContext( iSubtitleAttributeContext );
delete iSubtitleAttributeContext;
iSubtitleAttributeContext = NULL;
-
+ if (iMediaList->IdSpaceId(0) != KGlxIdSpaceIdRoot)
+ {
+ iMediaList->RemoveContext(iThumbnailContext);
+ delete iThumbnailContext;
+ iThumbnailContext = NULL;
+ }
iMediaList->RemoveMediaListObserver( this );
delete iPreviewTNBinding;
iPreviewTNBinding = NULL;
DestroyListViewWidget();
-#ifndef __WINSCW__
if(iProgressIndicator)
{
delete iProgressIndicator;
iProgressIndicator = NULL;
}
-#endif
}
// ---------------------------------------------------------------------------
@@ -421,18 +443,26 @@
const TGlxMedia& item = iMediaList->Item(i);
iList->ItemL(i).SetTitleL(item.Title());
iList->ItemL(i).SetTextL(item.SubTitle());
+ UpdatePreviewL(i);
+ iList->RefreshScreen(i);
}
iList->RefreshScreen(visIndex);
-
- if ( visIndex != iLastFocusedIndex && !iPopulateListTNs)
+ if(iMediaList->IdSpaceId(0) == KGlxIdSpaceIdRoot)
{
- GLX_LOG_INFO1("CGlxListViewImp::RequestL - SetFocusL()"
- " iPopulateListTNs(%d)", iPopulateListTNs);
- GLX_LOG_INFO1("CGlxListViewImp::RequestL - SetFocusL()"
- " visIndex(%d)", visIndex);
- iPopulateListTNs = ETrue;
- iStartIndex = KErrNotFound;
+ if ( visIndex != iLastFocusedIndex && !iPopulateListTNs)
+ {
+ GLX_LOG_INFO1("CGlxListViewImp::RequestL - SetFocusL()"
+ " iPopulateListTNs(%d)", iPopulateListTNs);
+ GLX_LOG_INFO1("CGlxListViewImp::RequestL - SetFocusL()"
+ " visIndex(%d)", visIndex);
+ iPopulateListTNs = ETrue;
+ iStartIndex = KErrNotFound;
+ iMediaList->SetFocusL(NGlxListDefs::EAbsolute, visIndex);
+ }
+ }
+ else
+ {
iMediaList->SetFocusL(NGlxListDefs::EAbsolute, visIndex);
}
}
@@ -458,23 +488,15 @@
TRACER("CGlxListViewImp::HandleOpenL");
#ifndef __WINSCW__
- TInt leftVariable = 0;
- TRAPD(err,leftVariable = iUiUtility->GetItemsLeftCountL());
- GLX_LOG_INFO1("CGlxListViewImp RProperty::Get leftVariable %d",leftVariable);
- isTnGenerationComplete = (leftVariable)?EFalse:ETrue;
- GLX_LOG_INFO1("CGlxListViewImp isTnGenerationComplete %d",isTnGenerationComplete);
- if(err != KErrNone)
+ GLX_LOG_INFO1("CGlxListViewImp RProperty::Get leftVariable %d",(iUiUtility->GetItemsLeftCount()));
+
+ if (iUiUtility->GetItemsLeftCount())
{
- GLX_LOG_INFO1("CGlxListViewImp RProperty::Get errorcode %d",err);
- }
- if(!isTnGenerationComplete)
- {
- if(iProgressIndicator)
+ if(!iProgressIndicator)
{
- delete iProgressIndicator;
- iProgressIndicator = NULL;
+ iProgressIndicator = CGlxProgressIndicator::NewL(*this);
}
- iProgressIndicator = CGlxProgressIndicator::NewL(*this);
+ iProgressIndicator->ShowProgressbarL();
if(iSchedulerWait)
{
delete iSchedulerWait;
@@ -484,11 +506,11 @@
iSchedulerWait->Start();
}
#endif
- if( iNextViewActivationEnabled && ( aIndex >= 0 && aIndex <
- iMediaList->Count()) && isTnGenerationComplete )
- {
- //Delete the PreviewTNMBinding as in forward navigation
- //we do not get the medialist callback.
+ if (iNextViewActivationEnabled && (aIndex >= 0 && aIndex
+ < iMediaList->Count()) && (iUiUtility->GetItemsLeftCount() == 0))
+ {
+ //Delete the PreviewTNMBinding as in forward navigation
+ //we do not get the medialist callback.
delete iPreviewTNBinding;
iPreviewTNBinding = NULL;
@@ -497,11 +519,10 @@
iNextViewActivationEnabled = EFalse;
iUiUtility->SetViewNavigationDirection(EGlxNavigationForwards);
//Navigate to the next view
- CMPXCollectionPath* path =
- iMediaList->PathLC( NGlxListDefs::EPathFocusOrSelection );
+ CMPXCollectionPath* path = iMediaList->PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
iCollectionUtility->Collection().OpenL(*path);
CleanupStack::PopAndDestroy(path);
-
}
}
@@ -608,14 +629,17 @@
* The callback is not given because the setfocus index is same as the focused index
* in medialist.
*/
- if(count==1)
- {
- CMPXCollectionPath* path = iMediaList->PathLC(
- NGlxListDefs::EPathFocusOrSelection );
- GLX_LOG_INFO("CGlxListViewImp::PreviewTNReadyL() - HandleItemChangedL()");
- iPreviewTNBinding->HandleItemChangedL(*path,
- iPopulateListTNs, iIsRefreshNeeded, iBackwardNavigation);
- CleanupStack::PopAndDestroy( path );
+ if(count==1 )
+ {
+ if(id == KGlxIdSpaceIdRoot )
+ {
+ CMPXCollectionPath* path = iMediaList->PathLC(
+ NGlxListDefs::EPathFocusOrSelection );
+ GLX_LOG_INFO("CGlxListViewImp::PreviewTNReadyL() - HandleItemChangedL()");
+ iPreviewTNBinding->HandleItemChangedL(*path,
+ iPopulateListTNs, iIsRefreshNeeded, iBackwardNavigation);
+ CleanupStack::PopAndDestroy( path );
+ }
}
}
}
@@ -639,43 +663,52 @@
TFileName resFile(KDC_APP_BITMAP_DIR);
resFile.Append(KGlxIconsFilename);
- CFbsBitmap* bitmap;
- CMPXCollectionPath* path = iMediaList->PathLC( NGlxListDefs::EPathParent );
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ TInt bitmapId = 0;
+ TInt maskId = 0;
+ CMPXCollectionPath* path = iMediaList->PathLC(
+ NGlxListDefs::EPathParent);
if (path->Id() == KGlxCollectionPluginAlbumsImplementationUid)
{
- bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_album_large);
- AknIconUtils::SetSize(bitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ bitmapId = EMbmGlxiconsQgn_prop_photo_album_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_album_large_mask;
}
else if (path->Id() == KGlxCollectionPluginMonthsImplementationUid)
{
- bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_calendar_large);
- AknIconUtils::SetSize(bitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ bitmapId = EMbmGlxiconsQgn_prop_photo_calendar_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_calendar_large_mask;
}
else
{
- bitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_notcreated);
- AknIconUtils::SetSize(bitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ bitmapId = EMbmGlxiconsQgn_prop_image_notcreated;
+ maskId = EMbmGlxiconsQgn_prop_image_notcreated_mask;
}
-
- iList = CHgDoubleGraphicListFlat::NewL(
- ClientRect(),
- mediaCount,
- CGulIcon::NewL(bitmap) );
+
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
+ bitmap, mask, resFile, bitmapId, maskId);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+ AknIconUtils::SetSize(bitmap,
+ CHgDoubleGraphicListFlat::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask,
+ CHgDoubleGraphicListFlat::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iList = CHgDoubleGraphicListFlat::NewL(ClientRect(), mediaCount,
+ CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
iList->SetMopParent(this);
iList->SetSelectionObserver(*this);
- // Enable Buffer support
- iList->EnableScrollBufferL(*this, (KNoOfPages * KBufferTresholdSize),
- KBufferTresholdSize);
-
+ TInt items = iList->ItemsOnScreen();
+ // Enable Buffer support
+ iList->EnableScrollBufferL(*this, KNoOfPages * items, items);
+
if (iUiUtility->ViewNavigationDirection() == EGlxNavigationBackwards)
{
GLX_DEBUG1("CGlxListViewImp::CreateListL() - SetEmptyTextL()");
@@ -816,23 +849,41 @@
== EGlxNavigationBackwards)
{
iIsRefreshNeeded = ETrue;
+ if(iMediaList->IdSpaceId(0) != KGlxIdSpaceIdRoot)
+ {
+ CleanUpL();
+ }
}
-
+ if(iMediaList->IdSpaceId(0) != KGlxIdSpaceIdRoot)
+ {
+ UpdatePreviewL(aItemIndex);
+ }
// Set iPopulateListTNs to ETrue and refresh all the items in
// list view if subtitle is updated
- if (iPreviewTNBinding && ((!iPopulateListTNs && aItemIndex
+ else if (iPreviewTNBinding && ((!iPopulateListTNs && aItemIndex
== aList->Count() - 1) || (iIsRefreshNeeded)))
{
iPopulateListTNs = ETrue;
iStartIndex = KErrNotFound;
CMPXCollectionPath* path = iMediaList->PathLC(
NGlxListDefs::EPathFocusOrSelection);
- GLX_LOG_INFO("CGlxListViewImp::HandleAttributesAvailableL() - HandleItemChangedL()");
+ GLX_LOG_INFO("CGlxListViewImp::HandleAttributesAvailableL() - HandleItemChangedL()");
iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs,
iIsRefreshNeeded, iBackwardNavigation);
- CleanupStack::PopAndDestroy(path);
+ CleanupStack::PopAndDestroy(path);
}
}
+ TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail,
+ GlxFullThumbnailAttributeId(ETrue, iGridIconSize.iWidth,
+ iGridIconSize.iHeight));
+ if (KErrNotFound != aAttributes.Find(thumbnailAttribute, match))
+ {
+ if (iMediaList->IdSpaceId(0) != KGlxIdSpaceIdRoot)
+ {
+ UpdatePreviewL(aItemIndex);
+ iIsRefreshNeeded = EFalse;
+ }
+ }
}
// ----------------------------------------------------------------------------
@@ -843,22 +894,24 @@
TFocusChangeType /*aType*/, TInt /*aNewIndex*/, TInt /*aOldIndex*/,
MGlxMediaList* /*aList*/ )
{
- TRACER( "CGlxListViewImp::HandleFocusChangedL");
-
+ TRACER( "CGlxListViewImp::HandleFocusChangedL");
if (iPreviewTNBinding && iPopulateListTNs)
{
- CMPXCollectionPath* path = iMediaList->PathLC(
- NGlxListDefs::EPathFocusOrSelection);
- if (!iBackwardNavigation && path->Levels() == KGlxCollectionRootLevel
- && path->Id(0) == KGlxCollectionPluginMonthsImplementationUid)
- {
- CleanupStack::PopAndDestroy(path);
- return;
- }
- GLX_LOG_INFO("CGlxListViewImp::HandleFocusChangedL() - HandleItemChangedL()");
- iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs,
- iIsRefreshNeeded, iBackwardNavigation);
- CleanupStack::PopAndDestroy(path);
+ if(iMediaList->IdSpaceId(0) == KGlxIdSpaceIdRoot)
+ {
+ CMPXCollectionPath* path = iMediaList->PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
+ if (!iBackwardNavigation && path->Levels() == KGlxCollectionRootLevel
+ && path->Id(0) == KGlxCollectionPluginMonthsImplementationUid)
+ {
+ CleanupStack::PopAndDestroy(path);
+ return;
+ }
+ GLX_LOG_INFO("CGlxListViewImp::HandleFocusChangedL() - HandleItemChangedL()");
+ iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs,
+ iIsRefreshNeeded, iBackwardNavigation);
+ CleanupStack::PopAndDestroy(path);
+ }
}
}
@@ -885,9 +938,29 @@
// HandleError
// ----------------------------------------------------------------------------
//
-void CGlxListViewImp::HandleError( TInt /*aError*/ )
+void CGlxListViewImp::HandleError( TInt aError )
+ {
+ TRACER( "CGlxListViewImp::HandleError");
+ TRAP_IGNORE( DoHandleErrorL( aError ) );
+ }
+
+// ----------------------------------------------------------------------------
+// DoHandleErrorL
+// ----------------------------------------------------------------------------
+//
+void CGlxListViewImp::DoHandleErrorL(TInt /*aError*/)
{
-
+ TRACER( "CGlxListViewImp::DoHandleErrorL");
+ for (TInt i = 0; i < iMediaList->Count(); i++)
+ {
+ const TGlxMedia& item = iMediaList->Item(i);
+ TInt tnError = GlxErrorManager::HasAttributeErrorL(item.Properties(),
+ KGlxMediaIdThumbnail);
+ if (tnError != KErrNone)
+ {
+ SetDefaultThumbnailL(i);
+ }
+ }
}
// ----------------------------------------------------------------------------
@@ -950,7 +1023,10 @@
void CGlxListViewImp::SetDefaultThumbnailL(TInt aIndex)
{
TRACER("CGlxListViewImp::SetDefaultThumbnail");
- CFbsBitmap* defaultBitmap = NULL;
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ TInt bitmapId = 0;
+ TInt maskId = 0;
TFileName resFile(KDC_APP_BITMAP_DIR);
resFile.Append(KGlxIconsFilename);
@@ -967,28 +1043,28 @@
switch(aIndex)
{
case EGlxListItemAll:
- defaultBitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_all_large);
- AknIconUtils::SetSize(defaultBitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ {
+ bitmapId = EMbmGlxiconsQgn_prop_photo_all_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_all_large_mask;
+ }
break;
case EGlxListItemMonth:
- defaultBitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_calendar_large);
- AknIconUtils::SetSize(defaultBitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ {
+ bitmapId = EMbmGlxiconsQgn_prop_photo_calendar_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_calendar_large_mask;
+ }
break;
case EGlxListItemAlbum:
- defaultBitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_album_large);
- AknIconUtils::SetSize(defaultBitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ {
+ bitmapId = EMbmGlxiconsQgn_prop_photo_album_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_album_large_mask;
+ }
break;
case EGlxLIstItemTag:
- defaultBitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_tag_large);
- AknIconUtils::SetSize(defaultBitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ {
+ bitmapId = EMbmGlxiconsQgn_prop_photo_tag_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_tag_large_mask;
+ }
break;
default:
break;
@@ -998,34 +1074,43 @@
{
GLX_LOG_INFO1("CGlxListViewImp::SetDefaultThumbnail - For other list view "
"aIndex %d",aIndex);
- CMPXCollectionPath* path = iMediaList->PathLC( NGlxListDefs::EPathParent );
+ CMPXCollectionPath* path = iMediaList->PathLC(
+ NGlxListDefs::EPathParent);
if(path->Id(0) == KGlxCollectionPluginAlbumsImplementationUid)
{
- defaultBitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_album_large);
- AknIconUtils::SetSize(defaultBitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ bitmapId = EMbmGlxiconsQgn_prop_photo_album_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_album_large_mask;
}
else if(path->Id(0) == KGlxCollectionPluginMonthsImplementationUid)
{
- defaultBitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_photo_calendar_large);
- AknIconUtils::SetSize(defaultBitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ bitmapId = EMbmGlxiconsQgn_prop_photo_calendar_large;
+ maskId = EMbmGlxiconsQgn_prop_photo_calendar_large_mask;
}
else
{
- defaultBitmap = AknIconUtils::CreateIconL(resFile,
- EMbmGlxiconsQgn_prop_image_notcreated);
- AknIconUtils::SetSize(defaultBitmap,
- CHgDoubleGraphicListFlat::PreferredImageSize());
+ bitmapId = EMbmGlxiconsQgn_prop_image_notcreated;
+ maskId = EMbmGlxiconsQgn_prop_image_notcreated_mask;
}
CleanupStack::PopAndDestroy(path);
}
- iList->ItemL(aIndex).SetIcon(CGulIcon::NewL(defaultBitmap));
+
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, bitmap,
+ mask, resFile, bitmapId, maskId);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap,
+ CHgDoubleGraphicListFlat::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask,
+ CHgDoubleGraphicListFlat::PreferredImageSize(),
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iList->ItemL(aIndex).SetIcon(CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
}
-
// ----------------------------------------------------------------------------
// HandleDialogDismissedL
// ----------------------------------------------------------------------------
@@ -1033,7 +1118,6 @@
void CGlxListViewImp::HandleDialogDismissedL()
{
TRACER("CGlxListViewImp::HandleDialogDismissedL()");
- isTnGenerationComplete = ETrue;
if(iSchedulerWait)
{
iSchedulerWait->AsyncStop();
@@ -1086,12 +1170,50 @@
void CGlxListViewImp::NavigateToMainListL()
{
TRACER("CGlxListViewImp::NavigateToMainListL()");
- CMPXCollectionPath* naviState = iNavigationalState->StateLC();
- GLX_LOG_INFO1("From listview level = %d",naviState->Levels());
-// if ( naviState->Levels() >= 1)
+ ProcessCommandL(EAknSoftkeyClose);
+ }
+// ----------------------------------------------------------------------------
+// CleanUpL
+// ----------------------------------------------------------------------------
+//
+void CGlxListViewImp::CleanUpL()
+ {
+ GLX_LOG_INFO("CGlxListViewImp::CleanUpL()");
+ MGlxCache* cacheManager = MGlxCache::InstanceL();
+ for (TInt i = 0; i < iMediaList->Count(); i++)
{
- ProcessCommandL(EAknSoftkeyClose);
+ cacheManager->ForceCleanupMedia(iMediaList->IdSpaceId(0),
+ iMediaList->Item(i).Id());
}
- CleanupStack::PopAndDestroy(naviState);
+ cacheManager->Close();
}
+
+// ----------------------------------------------------------------------------
+// UpdatePreviewL
+// ----------------------------------------------------------------------------
+//
+void CGlxListViewImp::UpdatePreviewL(TInt aIndex)
+ {
+ TRACER("CGlxListViewImp::UpdatePreviewL()");
+ if (aIndex >= 0 && aIndex < iMediaList->Count())
+ {
+ TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail,
+ GlxFullThumbnailAttributeId(ETrue, iGridIconSize.iWidth,
+ iGridIconSize.iHeight));
+ GLX_LOG_INFO1("CGlxListViewImp::UpdatePreviewL(aIndex = %d)", aIndex);
+ const TGlxMedia& item = iMediaList->Item(aIndex);
+ const CGlxThumbnailAttribute* value = item.ThumbnailAttribute(
+ thumbnailAttribute);
+ if (value)
+ {
+ CFbsBitmap* bitmap = new (ELeave) CFbsBitmap;
+ CleanupStack::PushL(bitmap);
+ iPreviewTNBinding->ScaleBitmapToListSizeL(value->iBitmap, bitmap);
+ iList->ItemL(aIndex).SetIcon(CGulIcon::NewL(bitmap));
+ iList->RefreshScreen(aIndex);
+ CleanupStack::Pop(bitmap);
+ }
+ }
+ }
+
// End of File
--- a/photosgallery/viewframework/views/metadatadialog/src/glxmetadatacontainer.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/metadatadialog/src/glxmetadatacontainer.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -347,6 +347,7 @@
//-----------------------------------------------------------------------------
void CGlxMetadataContainer::HandleListboxChangesL()
{
+ TRACER("CGlxMetadataContainer::HandleListboxChangesL");
if(iItemMediaList->Count() == 0)
{
return;
@@ -1109,14 +1110,13 @@
// ----------------------------------------------------------------------------
//
void CGlxMetadataContainer::HandleCommandCompleteL(TAny* aSessionId,
- CMPXCommand* /*aCommandResult*/, TInt aError, MGlxMediaList* aList)
+ CMPXCommand* aCommandResult, TInt aError, MGlxMediaList* aList)
{
TRACER("CGlxMetadataContainer::HandleCommandCompleteL()");
//To rename the uri in File System
if(aError == KErrNone)
{
- TInt index = ListBox()->CurrentItemIndex();
- if(aList == iItemMediaList && index == ENameItem)
+ if(aList == iItemMediaList && aCommandResult->IsSupported(KMPXMediaGeneralTitle))
{
iItemMediaList->SetFocusL(NGlxListDefs::EAbsolute,0);
const TGlxMedia& media = iItemMediaList->Item(0);
--- a/photosgallery/viewframework/views/viewbase/inc/glxtoolbarcontroller.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/viewbase/inc/glxtoolbarcontroller.h Wed Apr 14 15:57:24 2010 +0300
@@ -77,6 +77,7 @@
TInt aOldIndex, MGlxMediaList* aList);
void HandleItemSelectedL(TInt aIndex, TBool aSelected, MGlxMediaList* aList);
void HandleMessageL(const CMPXMessage& aMessage, MGlxMediaList* aList);
+ void HandlePopulatedL( MGlxMediaList* aList );
private:
/*
@@ -90,6 +91,12 @@
* aLatched ETrue if the command button needs to be latched.
*/
void EnableLatch( TInt aCommandId, TInt aLatched );
+
+ /*
+ * Set toolbar items dimmed.
+ * @param aDimmed Flag for the toolbar items to be dimmed.
+ */
+ void SetToolbarItemsDimmed(TBool aDimmed);
private:
CAknToolbar* iToolbar;
--- a/photosgallery/viewframework/views/viewbase/inc/glxviewbase.h Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/viewbase/inc/glxviewbase.h Wed Apr 14 15:57:24 2010 +0300
@@ -230,6 +230,12 @@
*/
CAknTitlePane* GetTitlePaneL();
+ /*
+ * Set toolbar items dimmed.
+ * @param aDimmed Flag for the toolbar items to be dimmed.
+ */
+ void SetToolbarItemsDimmed(TBool aDimmed);
+
protected:
/**
* Optionally implemented by sub-classes to prepare command handlers.
--- a/photosgallery/viewframework/views/viewbase/src/glxtoolbarcontroller.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/viewbase/src/glxtoolbarcontroller.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -23,6 +23,7 @@
#include <akntoolbar.h> // For Toolbar
#include <glxcommandhandlers.hrh> // For Command ids
#include <glxtracer.h> // For Logs
+#include <glxlog.h> // For Logs
#include <mglxmedialist.h>
#include <glxnavigationalstate.h>
@@ -63,8 +64,6 @@
iToolbar = aToolbar;
iAttributeAvailable = EFalse;
- iToolbar->SetDimmed(ETrue);
- iToolbar->DrawNow();
aList.AddMediaListObserverL ( this );
}
@@ -116,8 +115,7 @@
if( aList->Count() <= 0 )
{
- iToolbar->SetDimmed(ETrue);
- iToolbar->DrawNow();
+ SetToolbarItemsDimmed(ETrue);
}
}
@@ -153,40 +151,15 @@
// HandleFocusChangedL
//----------------------------------------------------------------------------
//
-void CGlxToolbarController::HandleFocusChangedL(NGlxListDefs::TFocusChangeType /*aType*/,
- TInt aNewIndex, TInt /*aOldIndex*/,
- MGlxMediaList* aList)
+void CGlxToolbarController::HandleFocusChangedL(
+ NGlxListDefs::TFocusChangeType /*aType*/, TInt /*aNewIndex*/,
+ TInt /*aOldIndex*/, MGlxMediaList* aList)
{
TRACER("CGlxToolbarController::HandleFocusChangedL");
-
- // If new index is not equal to -1 (i.e., if there are some items present),
- // then check the media item
- if( (aNewIndex == aList->FocusIndex()) && (KErrNotFound != aNewIndex) )
+ if (aList->Count() <= 0)
{
- //Get the current media item from medialist
- const TGlxMedia& mediaItem = aList->Item(aList->FocusIndex());
- //Check whether media item is a system item, for example Favourites album
- TBool isSystemItem = EFalse;
- mediaItem.GetSystemItem(isSystemItem);
- if( mediaItem.IsStatic() )
- {
- iToolbar->SetDimmed(ETrue);
- }
- else if( iToolbar->IsDimmed() )
- {
- iToolbar->SetDimmed(EFalse);
- }
- if( isSystemItem )
- {
- iToolbar->SetItemDimmed( EGlxCmdRename, ETrue, ETrue );
- }
- else
- {
- iToolbar->SetItemDimmed( EGlxCmdRename, EFalse, ETrue );
- }
+ SetToolbarItemsDimmed(ETrue);
}
- //DrawNow must be called since SetDimmed does not redraw the toolbar
- iToolbar->DrawNow();
}
//----------------------------------------------------------------------------
@@ -232,16 +205,17 @@
//
void CGlxToolbarController::SetStatusOnViewActivationL( MGlxMediaList* aList )
{
- TRACER("CGlxToolbarController::SetStatusOnViewActivationL");
-
- // When going back from fullscreen to grid, when the attributes are already
- // available in the cache, there is no HandleAttributeAvailable callback. Hence,
- // checking for medialist count.
- if( !iAttributeAvailable && (aList->Count(NGlxListDefs::ECountNonStatic) > 0))
- {
- SetStatusL(aList);
- }
- }
+ TRACER("CGlxToolbarController::SetStatusOnViewActivationL");
+ GLX_LOG_INFO1("CGlxToolbarController::SetStatusOnViewActivationL(%d)",
+ aList->Count());
+ // When going back from fullscreen to grid, when the attributes are already
+ // available in the cache, there is no HandleAttributeAvailable callback. Hence,
+ // checking for medialist count.
+ if (!iAttributeAvailable)
+ {
+ SetStatusL(aList);
+ }
+ }
//----------------------------------------------------------------------------
//SetStatusL
@@ -249,36 +223,25 @@
//
void CGlxToolbarController::SetStatusL(MGlxMediaList* aList)
{
- TRACER("CGlxToolbarController::SetStatusL");
- if(KErrNotFound != aList->FocusIndex())
- {
- //Get the current media item from medialist
- const TGlxMedia& mediaItem = aList->Item(aList->FocusIndex());
-
- //Check whether media item is a system item, for example Favourites album
- TBool isSystemItem = EFalse;
- mediaItem.GetSystemItem(isSystemItem);
+ TRACER("CGlxToolbarController::SetStatusL");
- if(!mediaItem.IsStatic() && iToolbar->IsDimmed())
- {
- //Activate (Undim) the toolbar if item in focus is not static
- iToolbar->SetDimmed(EFalse);
- }
-
-
- if( isSystemItem )
- {
- iToolbar->SetItemDimmed( EGlxCmdRename, ETrue, ETrue );
- }
- else
- {
- iToolbar->SetItemDimmed( EGlxCmdRename, EFalse, ETrue );
- }
- }
-
- //DrawNow must be called since SetDimmed does not redraw the toolbar
- iToolbar->DrawNow();
- }
+ GLX_LOG_INFO1("CGlxToolbarController::SetStatusL(%d)", aList->Count());
+ if (aList->Count() <= 0)
+ {
+ SetToolbarItemsDimmed(ETrue);
+ }
+ else if (KErrNotFound != aList->FocusIndex())
+ {
+ CGlxNavigationalState* navigationalState =
+ CGlxNavigationalState::InstanceL();
+ CleanupClosePushL(*navigationalState);
+ if (navigationalState->ViewingMode() == NGlxNavigationalState::EView)
+ {
+ SetToolbarItemsDimmed(EFalse);
+ }
+ CleanupStack::PopAndDestroy(navigationalState);
+ }
+ }
//----------------------------------------------------------------------------
// EnableLatch
@@ -301,5 +264,52 @@
}
}
}
+
+// ----------------------------------------------------------------------------
+// HandlePopulatedL
+// ----------------------------------------------------------------------------
+//
+void CGlxToolbarController::HandlePopulatedL( MGlxMediaList* aList )
+ {
+ TRACER("CGlxToolbarController::HandlePopulatedL()");
+ if (aList->Count() <= 0)
+ {
+ SetToolbarItemsDimmed(ETrue);
+ }
+ }
+
+// ----------------------------------------------------------------------------
+// SetToolbarItemsDimmed
+// ----------------------------------------------------------------------------
+//
+void CGlxToolbarController::SetToolbarItemsDimmed(TBool aDimmed)
+ {
+ TRACER("CGlxToolbarController::SetToolbarItemsDimmed()");
+ if (iToolbar)
+ {
+ iToolbar->SetItemDimmed(EGlxCmdSlideshowPlay, aDimmed, ETrue);
+ iToolbar->SetItemDimmed(EGlxCmdStartMultipleMarking, aDimmed, ETrue);
+
+ if (!aDimmed)
+ {
+ CAknButton* uploadButton =
+ static_cast<CAknButton*> (iToolbar->ControlOrNull(
+ EGlxCmdUpload));
+ TBool dimmed = EFalse;
+ if (uploadButton)
+ {
+ // Get current button state
+ CAknButtonState* currentState = uploadButton->State();
+ dimmed = uploadButton->IsDimmed();
+ iToolbar->SetItemDimmed(EGlxCmdUpload, dimmed, ETrue);
+ }
+ }
+ else
+ {
+ iToolbar->SetItemDimmed(EGlxCmdUpload, aDimmed, ETrue);
+ }
+ }
+ }
+
//end of file
--- a/photosgallery/viewframework/views/viewbase/src/glxviewbase.cpp Wed Mar 31 21:31:03 2010 +0300
+++ b/photosgallery/viewframework/views/viewbase/src/glxviewbase.cpp Wed Apr 14 15:57:24 2010 +0300
@@ -289,8 +289,7 @@
else
{
// Deactivate the toolbar untill the view gets activated properly.
- toolbar->SetDimmed(ETrue);
- toolbar->DrawNow();
+ SetToolbarItemsDimmed(ETrue);
}
toolbar->SetToolbarVisibility(ETrue);
@@ -539,25 +538,46 @@
CAknToolbar* toolbar = GetToolBar();
if(toolbar)
{
- //Here after the toolbar cmd is processed it is enabled
- //back. For share the toolbar state should be same as it was
- //earlier, so we take the current state and reset back after
- //the command is processed.
+ CAknButton* slideshowButton =
+ static_cast<CAknButton*> (toolbar->ControlOrNull(EGlxCmdSlideshow));
+ TBool slideshowdimmed = EFalse;
+
+ //Here after the toolbar cmd is processed it is enabled
+ //back. For share the toolbar state should be same as it was
+ //earlier, so we take the current state and reset back after
+ //the command is processed.
CAknButton* uploadButton =
static_cast<CAknButton*> (toolbar->ControlOrNull(EGlxCmdUpload));
- TBool dimmed = EFalse;
+ TBool uploaddimmed = EFalse;
+
+ CAknButton* markButton =
+ static_cast<CAknButton*> (toolbar->ControlOrNull(EGlxCmdStartMultipleMarking));
+ TBool markButtondimmed = EFalse;
+
+ if(slideshowButton)
+ {
+ // Get current button state
+ CAknButtonState* currentState = slideshowButton->State();
+ slideshowdimmed = slideshowButton->IsDimmed();
+ }
+
+ if(markButton)
+ {
+ // Get current button state
+ CAknButtonState* currentState = markButton->State();
+ markButtondimmed = markButton->IsDimmed();
+ }
if(uploadButton)
{
// Get current button state
CAknButtonState* currentState = uploadButton->State();
- dimmed = uploadButton->IsDimmed();
+ uploaddimmed = uploadButton->IsDimmed();
}
-
+
// Deactivate the toolbar. Don't accept the toolbar input when the command
// execution is already in progress.
- toolbar->SetDimmed(ETrue);
- toolbar->DrawNow();
+ SetToolbarItemsDimmed(ETrue);
// Execute the command recieved.
ProcessCommandL(aCommand);
@@ -565,8 +585,18 @@
// Activate back the toolbar and set it's state properly
// after command execution.
SetToolbarStateL();
+
+ if(!markButtondimmed)
+ {
+ toolbar->SetItemDimmed(EGlxCmdStartMultipleMarking, EFalse, ETrue);
+ }
+
+ if(!slideshowdimmed)
+ {
+ toolbar->SetItemDimmed(EGlxCmdSlideshowPlay, EFalse, ETrue);
+ }
- if(dimmed || (aCommand == EGlxCmdStartMultipleMarking))
+ if(uploaddimmed || (aCommand == EGlxCmdStartMultipleMarking))
{
toolbar->SetItemDimmed(EGlxCmdUpload, ETrue, ETrue);
}
@@ -675,5 +705,20 @@
InitAnimationL(EGlxViewAnimationEntry);
}
+// ----------------------------------------------------------------------------
+// SetToolbarItemsDimmed
+// ----------------------------------------------------------------------------
+//
+void CGlxViewBase::SetToolbarItemsDimmed(TBool aDimmed)
+ {
+ TRACER("CGlxViewBase::SetToolbarItemsDimmed()");
+ CAknToolbar* toolbar = GetToolBar();
+ if (toolbar)
+ {
+ toolbar->SetItemDimmed(EGlxCmdSlideshowPlay, aDimmed, ETrue);
+ toolbar->SetItemDimmed(EGlxCmdStartMultipleMarking, aDimmed, ETrue);
+ toolbar->SetItemDimmed(EGlxCmdUpload, aDimmed, ETrue);
+ }
+ }