124 //when composer view will be deactivated it wiil call NavigateBack; |
124 //when composer view will be deactivated it wiil call NavigateBack; |
125 if (pluginSettingsActive && iAppUi.CurrentActiveView()->Id() == MailEditorId) |
125 if (pluginSettingsActive && iAppUi.CurrentActiveView()->Id() == MailEditorId) |
126 { |
126 { |
127 iAppUi.ReturnFromPluginSettingsView(); |
127 iAppUi.ReturnFromPluginSettingsView(); |
128 } |
128 } |
129 // View activated succesfully. Change visible control group, but not |
129 |
130 // when application is being sent to background. |
130 // View activated succesfully |
131 if ( !iAppUi.SwitchingToBackground() ) |
131 if ( !iAppUi.SwitchingToBackground() ) |
132 { |
132 { |
|
133 // Change visible control group |
133 DoTransition( EFalse ); |
134 DoTransition( EFalse ); |
134 ActivateControlGroup(); |
135 ActivateControlGroup(); |
|
136 } |
|
137 else |
|
138 { |
|
139 // View activated but Mail application is switching to background. |
|
140 // Mail application was invoked from other app and now we`re going back |
|
141 // to this other app. We have to force, that after going back to Mail |
|
142 // application, ActivateControlGroup will be invoked in |
|
143 // HandleAppForegroundEventL method |
|
144 iWasActiveControlGroup = ETrue; |
135 } |
145 } |
136 } |
146 } |
137 else |
147 else |
138 { |
148 { |
139 // In case of error, navigate to the previous view |
149 // In case of error, navigate to the previous view |
464 const TInt KActivationDelay = 200; // ms |
474 const TInt KActivationDelay = 200; // ms |
465 ActivateControlGroup( KActivationDelay ); |
475 ActivateControlGroup( KActivationDelay ); |
466 iWasActiveControlGroup = EFalse; |
476 iWasActiveControlGroup = EFalse; |
467 } |
477 } |
468 } |
478 } |
469 else |
479 else if ( !iWasActiveControlGroup ) // If activation of control group isn`t forced |
470 { |
480 { |
|
481 // Mail application is switching to background. |
|
482 // Remember state of control group to restore it when Mail goes foreground. |
471 iWasActiveControlGroup = ControlGroup().AcceptInput(); |
483 iWasActiveControlGroup = ControlGroup().AcceptInput(); |
472 } |
484 } |
473 } |
485 } |
474 |
486 |
475 // --------------------------------------------------------------------------- |
487 // --------------------------------------------------------------------------- |