textinput/peninputvkbcn/ctrlsrc/peninputvkbwindow.cpp
branchRCL_3
changeset 3 f5a1e66df979
parent 0 eb1f2e154e89
child 7 6defe5d1bd39
--- a/textinput/peninputvkbcn/ctrlsrc/peninputvkbwindow.cpp	Tue Feb 02 01:02:04 2010 +0200
+++ b/textinput/peninputvkbcn/ctrlsrc/peninputvkbwindow.cpp	Fri Feb 19 23:09:27 2010 +0200
@@ -58,8 +58,10 @@
 // constant definition
 const TInt KInvalidImg = -1 ;
 
-
-
+const TInt KTooltipLeftMargin = 10;
+const TInt KTooltipTopMargin = 0;
+const TInt KTooltipRightMargin = 10;
+const TInt KTooltipBottomMargin = 0;
 
 // ======== MEMBER FUNCTIONS ========
 
@@ -1220,7 +1222,24 @@
         {
         return;
         }    
-    iInputContextField->ShowTooltipL( aText );
+        
+    // Calculate tooltip width
+    const TPeninputCnTooltipBoxLayoutData& tooltipBoxLAF 
+                                      = iLafMgr->TooltipBoxLayoutData();
+    TRect tooltipRect = tooltipBoxLAF.iRect;
+    // Calculate inner rect
+    TRect innerRect = tooltipRect;
+    innerRect.iTl += TPoint( KTooltipLeftMargin, KTooltipTopMargin );
+    innerRect.iBr -= TPoint( KTooltipRightMargin, KTooltipBottomMargin );          
+    const CFont* font = tooltipBoxLAF.iFont;
+    // Set inner width in terms of text width
+    innerRect.SetWidth( font->TextWidthInPixels( aText ) );    
+    tooltipRect.iTl 
+           = innerRect.iTl - TPoint( KTooltipLeftMargin, KTooltipTopMargin );
+    tooltipRect.iBr 
+           = innerRect.iBr + TPoint( KTooltipRightMargin, KTooltipBottomMargin );
+    // Set tooltip rect in terms of inner rect
+    iInputContextField->ShowTooltipL( aText, tooltipRect );    
     }
 	
 // --------------------------------------------------------------------------
@@ -1440,8 +1459,11 @@
                                         NULL,
                                         KAknsIIDQsnFrInputPreviewSideL,
                                         KAknsIIDQsnFrInputPreviewMiddle,
-                                        KAknsIIDQsnFrInputPreviewSideR);
-        
+                                        KAknsIIDQsnFrInputPreviewSideR);        
+        iInputContextField->TooltipBubbleCtrl()->SetFrameDiff( KTooltipLeftMargin, 
+        		                                               KTooltipTopMargin,
+        		                                               KTooltipRightMargin,
+        		                                               KTooltipBottomMargin );        
         // read color from skin for autocompletion part
         iInputContextField->SetAutoCompleteTextColor( 
                                         AutoCompletionPartColorOnFSQ() );