widgets/widgetapp/src/WidgetUiWindowManager.cpp
branchRCL_3
changeset 62 c711bdda59f4
parent 59 1f3c3f2f5b0a
child 67 4917f9bf7995
equal deleted inserted replaced
59:1f3c3f2f5b0a 62:c711bdda59f4
   406                 else
   406                 else
   407                     wdgt_window->NeedToNotifyNetworkState(ETrue);
   407                     wdgt_window->NeedToNotifyNetworkState(ETrue);
   408                 }
   408                 }
   409             }
   409             }
   410             break; 
   410             break; 
       
   411         case WidgetFullViewClose:
       
   412         	{
       
   413         	Exit( EEikCmdExit, aUid );
       
   414         	needToNotify = EFalse ;
       
   415         	}
       
   416         	break;
   411         }
   417         }
   412     if(needToNotify)
   418     if(needToNotify)
   413     // Widget is up and running, notify that next one can be launched    
   419     // Widget is up and running, notify that next one can be launched    
   414     	NotifyCommandHandled();
   420     	NotifyCommandHandled();
   415     
   421     
   641         return EFalse;
   647         return EFalse;
   642         }
   648         }
   643 
   649 
   644     if ( iClientSession.IsWidgetInFullView ( aWidgetWindow->Uid()))
   650     if ( iClientSession.IsWidgetInFullView ( aWidgetWindow->Uid()))
   645         {
   651         {
       
   652 #ifdef BRDO_WRT_HS_FF
       
   653           iCpsPublisher->ClearScreenshotL(*(aWidgetWindow->WidgetBundleId()), aWidgetWindow->Uid().iUid);
       
   654 #endif
   646         HideWindow( aWidgetWindow );
   655         HideWindow( aWidgetWindow );
   647         if (aWidgetWindow == iActiveFsWindow)
   656         if (aWidgetWindow == iActiveFsWindow)
   648             iActiveFsWindow = NULL;
   657             iActiveFsWindow = NULL;
   649         // make widgets act like separate applications by pushing to background
   658         // make widgets act like separate applications by pushing to background
   650         // when widget is in fullview , this way user is sent back to app shell or idle 
   659         // when widget is in fullview , this way user is sent back to app shell or idle 
   786 void CWidgetUiWindowManager::SendWidgetToBackground( const TUid& aUid )
   795 void CWidgetUiWindowManager::SendWidgetToBackground( const TUid& aUid )
   787     {
   796     {
   788     CWidgetUiWindow* window( GetWindow( aUid ) );
   797     CWidgetUiWindow* window( GetWindow( aUid ) );
   789     if( !window )
   798     if( !window )
   790         return;
   799         return;
       
   800         
       
   801 #ifdef BRDO_WRT_HS_FF
       
   802           iCpsPublisher->ClearScreenshotL(*(GetWindow(aUid )->WidgetBundleId()), aUid.iUid);
       
   803 #endif
   791 
   804 
   792     // make widgets act like separate applications by pushing to background
   805     // make widgets act like separate applications by pushing to background
   793     // this way user is sent back to app shell or idle to run another widget
   806     // this way user is sent back to app shell or idle to run another widget
   794     iAppUi.SendAppToBackground();
   807     iAppUi.SendAppToBackground();
   795     if ( window == iActiveFsWindow )
   808     if ( window == iActiveFsWindow )
   910         }
   923         }
   911     else
   924     else
   912         {
   925         {
   913         if(iDialogsProvider)
   926         if(iDialogsProvider)
   914             iDialogsProvider->CancelAll();
   927             iDialogsProvider->CancelAll();
       
   928             
       
   929 #ifdef BRDO_WRT_HS_FF  
       
   930         CFbsBitmap* bitmap( new CFbsBitmap() );
       
   931         if ( bitmap && iCpsPublisher)
       
   932             {
       
   933             if(iActiveFsWindow)
       
   934                 {
       
   935                 TRAP_IGNORE(iActiveFsWindow->Engine()->TakeSnapshotL( *bitmap ));
       
   936                 TRAP_IGNORE(iCpsPublisher->PublishScreenshotL(*iActiveFsWindow->WidgetBundleId(),iActiveFsWindow->Uid().iUid, bitmap));
       
   937                 }
       
   938              }
       
   939 #endif
   915         HideWindow( iActiveFsWindow );
   940         HideWindow( iActiveFsWindow );
   916         }
   941         }
   917     }
   942     }
   918 
   943 
   919 // -----------------------------------------------------------------------------
   944 // -----------------------------------------------------------------------------