diff -r 6a9f87576119 -r d1daf54a55b5 filemanager/App/src/CFileManagerViewBase.cpp --- a/filemanager/App/src/CFileManagerViewBase.cpp Mon Jan 18 20:09:41 2010 +0200 +++ b/filemanager/App/src/CFileManagerViewBase.cpp Tue Feb 02 00:03:31 2010 +0200 @@ -3319,19 +3319,6 @@ dimSend = ETrue; } - /* Codes below will cause trouble for large amount file selection - if ( !dimSend ) - { - // Check if there are files to send - TInt dummy( 0 ); - CArrayFixFlat< TInt >* files = GetSendFilesLC( dummy ); - if ( !files->Count() ) - { - dimSend = ETrue; - } - CleanupStack::PopAndDestroy( files ); - } - */ // Hide empty details if no item or memory specific details // can be shown. @@ -3340,12 +3327,17 @@ { aMenuPane.SetItemDimmed( EFileManagerDetails, ETrue ); } - if ( ( drvInfo.iState & TFileManagerDriveInfo::EDriveRemote ) && - !( drvInfo.iState & TFileManagerDriveInfo::EDriveConnected ) ) - { - // Handle disconnected remote drive - dimSend = ETrue; - } + + if ( !( drvInfo.iState & TFileManagerDriveInfo::EDrivePresent ) || + ( ( drvInfo.iState & TFileManagerDriveInfo::EDriveRemote ) && + !( drvInfo.iState & TFileManagerDriveInfo::EDriveConnected ) ) ) + { + // Handle unavailable drive OR disconnected remote drive + dimSend = ETrue; + aMenuPane.SetItemDimmed( EFileManagerSort, ETrue ); + aMenuPane.SetItemDimmed( EFileManagerOrganise, ETrue ); + aMenuPane.SetItemDimmed( EFileManagerMark, ETrue ); + } } else if ( iContainer->ListBoxNumberOfItems() ) {