--- a/uifw/EikStd/coctlsrc/EIKMENUP.CPP Wed Apr 14 16:14:00 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKMENUP.CPP Tue Apr 27 16:55:05 2010 +0300
@@ -2287,7 +2287,7 @@
numItemsInPane = iItemArray->Count();
}
- if ( iExtension->iSct )
+ if ( iExtension && iExtension->iSct )
{
numItemsInPane++;
}
@@ -3766,7 +3766,7 @@
{
TPointerEvent ptrEvent;
ptrEvent.iType = TPointerEvent::EButton1Up;
- menubar->HandlePointerEventL( ptrEvent );
+ TRAP_IGNORE( menubar->HandlePointerEventL( ptrEvent ) );
}
else
{
@@ -4284,6 +4284,7 @@
else
{
// Clicked out side submenu, parent handles this
+ iExtension->iDownOnMenuArea = EFalse;
if ( iOwner )
{
iExtension->CalculateParentEvent(aPointerEvent, parentEvent);
@@ -4381,7 +4382,7 @@
iExtension->EnableHighlight( EFalse );
}
- if ( iExtension->iPanningActive )
+ if ( iExtension->iPanningActive && iExtension->iDownOnMenuArea )
{
TPoint delta(
0, iExtension->iPrevPoint.iY - aPointerEvent.iPosition.iY );
@@ -4435,20 +4436,6 @@
CloseCascadeMenu();
}
}
- else
- {
- TInt oldSelected = iSelectedItem;
- // update highlight to new item
- if ( oldSelected != ii )
- {
- iExtension->iPressedDown = EFalse;
- }
- TRect screenRect( TPoint( KMinTInt, KMinTInt ),
- TPoint( KMaxTInt, KMaxTInt ) );
- TRect repeatRect( screenRect.iTl.iX, item->iPos,
- screenRect.iBr.iX, item->iPos
- + iItemHeight );
- }
// item found, break
break;
}
@@ -5104,7 +5091,7 @@
}
else
{
- DoUpdateScrollBarL();
+ TRAP_IGNORE( DoUpdateScrollBarL() );
}
}
_AKNTRACE_FUNC_EXIT;
@@ -5383,7 +5370,7 @@
pointerEvent.iType = TPointerEvent::EButton1Up;
// Sending a up event to scroll bar for dehighlighting
// the scroll bar.
- verScrollBar->HandlePointerEventL(pointerEvent);
+ TRAP_IGNORE ( verScrollBar->HandlePointerEventL(pointerEvent) );
iSBFrame->DrawScrollBarsDeferred();
ClaimPointerGrab( EFalse );
}