equal
deleted
inserted
replaced
277 |
277 |
278 // Restore the original screen saver |
278 // Restore the original screen saver |
279 self->iModel->ActivateScreenSaver( |
279 self->iModel->ActivateScreenSaver( |
280 KErrNotFound, |
280 KErrNotFound, |
281 EPslnScreenSaverPreviewDeactivation ); |
281 EPslnScreenSaverPreviewDeactivation ); |
282 self->iScreenSaverPreviewing = EFalse; |
|
283 |
282 |
284 if ( self->iContainer ) |
283 if ( self->iContainer ) |
285 { |
284 { |
286 // Update container. |
285 // Update container. |
287 TRAP_IGNORE( |
286 TRAP_IGNORE( |
562 // CPslnScreenSaverView::HandleScreenSaverActivationL |
561 // CPslnScreenSaverView::HandleScreenSaverActivationL |
563 // ----------------------------------------------------------------------------- |
562 // ----------------------------------------------------------------------------- |
564 // |
563 // |
565 void CPslnScreenSaverView::HandleScreenSaverActivationL( TInt aCurrentItem ) |
564 void CPslnScreenSaverView::HandleScreenSaverActivationL( TInt aCurrentItem ) |
566 { |
565 { |
567 // Protect screensaver type during preview. |
|
568 if ( iScreenSaverPreviewing ) |
|
569 { |
|
570 return; |
|
571 } |
|
572 |
|
573 TInt PsmMode = 0; |
566 TInt PsmMode = 0; |
574 iPsmClient->PsmSettings().GetCurrentMode( PsmMode ); |
567 iPsmClient->PsmSettings().GetCurrentMode( PsmMode ); |
575 if ( PsmMode == EPsmsrvModePowerSave ) // PSM on, setting is protected |
568 if ( PsmMode == EPsmsrvModePowerSave ) // PSM on, setting is protected |
576 { |
569 { |
577 HBufC* buf = StringLoader::LoadLC( R_PSLN_QTN_PSM_INFONOTE ); |
570 HBufC* buf = StringLoader::LoadLC( R_PSLN_QTN_PSM_INFONOTE ); |
615 // CPslnScreenSaverView::HandleScreenSaverPreviewL |
608 // CPslnScreenSaverView::HandleScreenSaverPreviewL |
616 // ----------------------------------------------------------------------------- |
609 // ----------------------------------------------------------------------------- |
617 // |
610 // |
618 void CPslnScreenSaverView::HandleScreenSaverPreviewL( TInt aCurrentItem ) |
611 void CPslnScreenSaverView::HandleScreenSaverPreviewL( TInt aCurrentItem ) |
619 { |
612 { |
620 // Stop responding to preview again if screensaver is being previewed. |
|
621 if ( iScreenSaverPreviewing ) |
|
622 { |
|
623 return; |
|
624 } |
|
625 |
|
626 TRAPD( err, DoInvokeScreenSaverFunctionL( |
613 TRAPD( err, DoInvokeScreenSaverFunctionL( |
627 aCurrentItem, |
614 aCurrentItem, |
628 EScpCapsPreviewNotification ) ); |
615 EScpCapsPreviewNotification ) ); |
629 |
616 |
630 if ( err == KErrNone ) |
617 if ( err == KErrNone ) |
631 { |
618 { |
632 // Start listening for screensaver preview mode key changes. |
619 // Start listening for screensaver preview mode key changes. |
633 CreatePreviewModeSubscriberL(); |
620 CreatePreviewModeSubscriberL(); |
634 CreatePreviewStateSubscriberL(); |
621 CreatePreviewStateSubscriberL(); |
635 |
622 |
636 iScreenSaverPreviewing = ETrue; |
|
637 User::LeaveIfError( |
623 User::LeaveIfError( |
638 iModel->ActivateScreenSaver( |
624 iModel->ActivateScreenSaver( |
639 aCurrentItem, |
625 aCurrentItem, |
640 EPslnScreenSaverPreviewActivation ) ); |
626 EPslnScreenSaverPreviewActivation ) ); |
641 } |
627 } |