diff -r a47de9135b21 -r 6ceef9a83b1a fep/aknfep/UiPlugins/AknFepUiInterface/AvkonImpl/src/AknFepUiAvkonImpl.cpp --- a/fep/aknfep/UiPlugins/AknFepUiInterface/AvkonImpl/src/AknFepUiAvkonImpl.cpp Fri Mar 12 15:44:07 2010 +0200 +++ b/fep/aknfep/UiPlugins/AknFepUiInterface/AvkonImpl/src/AknFepUiAvkonImpl.cpp Mon Mar 15 12:42:02 2010 +0200 @@ -927,7 +927,7 @@ if ( dlg ) { CEikButtonGroupContainer* currentCba = dlg->MopGetObject( currentCba ); - CEikCba* dlgcba = static_cast( currentCba->ButtonGroup()); + //CEikCba* dlgcba = static_cast( currentCba->ButtonGroup()); if ( currentCba && iDialogCba == currentCba ) { currentCba->RemoveCommandFromStack( ELeftSoftkeyIndex, -1 ); @@ -953,10 +953,10 @@ if ( eikAppUi!= NULL && eikAppUi->IsDisplayingDialog() && eikAppUi->TopFocusedControl()) { CEikDialog* dlg = eikAppUi->TopFocusedControl()->MopGetObject( dlg ); - if ( dlg ) + if ( dlg && CbaEmbeddedInDialog( dlg->DialogFlags())) { CEikButtonGroupContainer* currentCba = dlg->MopGetObject( currentCba ); - CEikCba* dlgcba = static_cast( currentCba->ButtonGroup()); + //CEikCba* dlgcba = static_cast( currentCba->ButtonGroup()); if ( currentCba ) { TUint flags( 0 ); @@ -972,7 +972,7 @@ CEikCba* cba = static_cast( iCba->ButtonGroup()); - CEikCba* dlgcba = static_cast( currentCba->ButtonGroup()); + //CEikCba* dlgcba = static_cast( currentCba->ButtonGroup()); if( !isCbaEmded ) { currentCba->AddCommandToStackL( ELeftSoftkeyIndex, -1, _L(""), NULL, NULL ); @@ -995,4 +995,11 @@ } } +TBool CAknFepUIAvkonImpl::CbaEmbeddedInDialog( const TInt& aFlags ) + { + return AknLayoutUtils::PenEnabled() && + !( aFlags & EEikDialogFlagFillAppClientRect ) && + !( aFlags & EEikDialogFlagFillScreen ) && + !( aFlags & EEikDialogFlagVirtualInput ); + } //End of File