diff -r 2f259fa3e83a -r 8ca85d2f0db7 uifw/AvKon/src/aknsignal.cpp --- a/uifw/AvKon/src/aknsignal.cpp Tue Feb 02 01:00:49 2010 +0200 +++ b/uifw/AvKon/src/aknsignal.cpp Fri Feb 19 23:04:46 2010 +0200 @@ -537,25 +537,31 @@ return; } - if ( AknStatuspaneUtils::StaconPaneActive() ) - { - // Signal pane in STACON PANE layout - DrawInStaconPane( Rect() ); - } - else if ( AknStatuspaneUtils::FlatLayoutActive() ) + // Don't allow normal background drawing if + // background is already drawn with a background drawer. + const MCoeControlBackground* backgroundDrawer = FindBackground(); + if ( !backgroundDrawer ) { - // Signal pane in FLAT STATUSPANE layout - DrawInFlatStatusPane( Rect() ); - } - else if ( AknStatuspaneUtils::SmallLayoutActive() ) - { - // Signal pane in SMALL STATUSPANE layout - DrawInSmallStatusPane( Rect() ); - } - else - { - // Signal pane in NORMAL STATUSPANE layout - DrawInNormalStatusPane( Rect() ); + if ( AknStatuspaneUtils::StaconPaneActive() ) + { + // Signal pane in STACON PANE layout + DrawInStaconPane( Rect() ); + } + else if ( AknStatuspaneUtils::FlatLayoutActive() ) + { + // Signal pane in FLAT STATUSPANE layout + DrawInFlatStatusPane( Rect() ); + } + else if ( AknStatuspaneUtils::SmallLayoutActive() ) + { + // Signal pane in SMALL STATUSPANE layout + DrawInSmallStatusPane( Rect() ); + } + else + { + // Signal pane in NORMAL STATUSPANE layout + DrawInNormalStatusPane( Rect() ); + } } }