uifw/EikStd/coctlsrc/EIKSCRLB.CPP
branchRCL_3
changeset 38 c52421ed5f07
parent 25 941195f2d488
child 55 aecbbf00d063
--- a/uifw/EikStd/coctlsrc/EIKSCRLB.CPP	Wed Jun 09 09:58:37 2010 +0300
+++ b/uifw/EikStd/coctlsrc/EIKSCRLB.CPP	Mon Jun 21 15:57:43 2010 +0300
@@ -1320,25 +1320,31 @@
                     if ( extension->iShowPopup && extension->iPopupController )
                         {
                         TPoint infoPoint = PositionRelativeToScreen();
-
+                        
                         if ( iOrientation == EVertical )
                             {
                             if ( AknLayoutUtils::LayoutMirrored() )
+                            	{
+								TRect mainPaneRect( 0, 0, 0, 0 );    
+                                AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, 
+                                                mainPaneRect );
+                                TInt mainPaneWidth = mainPaneRect.Width();
+                                infoPoint.iX += ( mainPaneWidth - infoPoint.iX + Rect().Width() ) / 2 ;
+                                infoPoint.iY += aPointerEvent.iPosition.iY;
+                                extension->iPopupController->SetPositionAndAlignment (
+                                    infoPoint, EHRightVCenter );
+                                }
+                            else
                                 {
-                                infoPoint.iX += Rect().Width();
+                                infoPoint.iX = infoPoint.iX / 2;
                                 infoPoint.iY += aPointerEvent.iPosition.iY;
                                 extension->iPopupController->SetPositionAndAlignment (
                                     infoPoint, EHLeftVCenter );
                                 }
-                            else
-                                {
-                                infoPoint.iY += aPointerEvent.iPosition.iY;
-                                extension->iPopupController->SetPositionAndAlignment (
-                                    infoPoint, EHRightVCenter );
-                                }
                             }
                         else if ( iOrientation == EHorizontal )
                             {
+                            //infoPoint.iY = infoPoint.iY / 2;
                             infoPoint.iX += aPointerEvent.iPosition.iX;
                             extension->iPopupController->SetPositionAndAlignment(
                                 infoPoint, EHCenterVBottom );