videoplayback/videoplaybackcontrols/src/mpxvideoplaybackcontrolscontroller.cpp
branchRCL_3
changeset 16 67eb01668b0e
parent 15 8f0df5c82986
child 21 315810614048
--- a/videoplayback/videoplaybackcontrols/src/mpxvideoplaybackcontrolscontroller.cpp	Tue May 25 12:44:54 2010 +0300
+++ b/videoplayback/videoplaybackcontrols/src/mpxvideoplaybackcontrolscontroller.cpp	Wed Jun 09 09:44:23 2010 +0300
@@ -16,7 +16,7 @@
 */
 
 
-// Version : %version: 41 %
+// Version : %version: 42 %
 
 
 // INCLUDE FILES
@@ -42,6 +42,8 @@
 #include <mpxvideoplaybackcontrols.rsg>
 #include <mpxvideoplaybackcontrols.mbg>
 
+#include <avkondomainpskeys.h>
+
 #ifdef RD_TACTILE_FEEDBACK
 #include <touchfeedback.h>
 #endif //RD_TACTILE_FEEDBACK
@@ -115,6 +117,7 @@
 
     iFileDetails = aDetails;
     iTvOutConnected = iFileDetails->iTvOutConnected;
+    iShowControls  = ETrue;
 
     iRNFormat = IsRealFormatL( iFileDetails->iClipName->Des() );
 
@@ -328,6 +331,15 @@
         {
             MPX_DEBUG(_L("    [EMPXControlCmdHandleBackgroundEvent]"));
 
+            TBool keylock( EFalse );
+            RProperty::Get( KPSUidAvkonDomain, KAknKeyguardStatus, keylock );
+
+            // Don't show controls when key is locked 
+            if ( keylock )
+            {
+                iShowControls = EFalse;
+            }
+
             ResetDisappearingTimers( EMPXTimerReset );
 
             for ( TInt i = 0 ; i < iControls.Count() ; i++ )
@@ -340,6 +352,7 @@
         case EMPXControlCmdHandleForegroundEvent:
         {
             MPX_DEBUG(_L("    [EMPXControlCmdHandleForegroundEvent]"));
+            iShowControls = ETrue;
             UpdateControlsVisibility();
             break;
         }
@@ -1263,13 +1276,16 @@
     MPX_ENTER_EXIT(_L("CMPXVideoPlaybackControlsController::ShowControls()"),
                    _L("iState = %d"), iState );
 
-    CloseMediaDetailsViewer();
-
-    ResetDisappearingTimers( EMPXTimerReset );
+    if ( iShowControls )
+    {
+        CloseMediaDetailsViewer();
 
-    for ( TInt i = 0 ; i < iControls.Count() ; i++ )
-    {
-        iControls[i]->SetVisibility( iState );
+        ResetDisappearingTimers( EMPXTimerReset );
+
+        for ( TInt i = 0 ; i < iControls.Count() ; i++ )
+        {
+            iControls[i]->SetVisibility( iState );
+        }
     }
 }