textinput/peninputarc/src/peninputserverapp/peninputserver.cpp
branchRCL_3
changeset 19 5e18d8c489d6
parent 10 6defe5d1bd39
child 22 1bbdde98cc2d
equal deleted inserted replaced
18:c8fb4cf7b3ae 19:5e18d8c489d6
   526     if(!IsGlobalNotesApp(focusApp))
   526     if(!IsGlobalNotesApp(focusApp))
   527         iPreNonGloebalNotesWndGrpId = focusApp.iUid;         
   527         iPreNonGloebalNotesWndGrpId = focusApp.iUid;         
   528 
   528 
   529     if(!iUiLayout)
   529     if(!iUiLayout)
   530         return;
   530         return;
   531     
   531 
       
   532     TBool notDraw = EFalse;
       
   533     iUiLayout->HandleCommand(ECmdPeninputDisableLayoutDrawing,(unsigned char*)&notDraw);
       
   534   
   532     // move it out from if(!iActive) to make sure that msg bubble can be 
   535     // move it out from if(!iActive) to make sure that msg bubble can be 
   533     // shown if fast swap from other application to msg application.
   536     // shown if fast swap from other application to msg application.
   534     TBool bNeedWait = AnimOpNeedWaiting(ESignalPenUiActivated);
   537     TBool bNeedWait = AnimOpNeedWaiting(ESignalPenUiActivated);
   535  
   538  
   536     if(!iActive)
   539     if(!iActive)
  1202     if(iUiLayout)
  1205     if(iUiLayout)
  1203         {
  1206         {
  1204 		ClearSpriteGc();
  1207 		ClearSpriteGc();
  1205         DeactivateSprite();
  1208         DeactivateSprite();
  1206         iDestroyingLayout = ETrue;
  1209         iDestroyingLayout = ETrue;
       
  1210         if(iUseWindowCtrl)
       
  1211 		   {
       
  1212 		   if(iPenUiCtrl)
       
  1213 		       {
       
  1214 			   iPenUiCtrl->Clean();
       
  1215 			   }
       
  1216 		   }
  1207         iUiLayout->Destroy();
  1217         iUiLayout->Destroy();
  1208         iUiLayout = NULL;    
  1218         iUiLayout = NULL;    
  1209         iDestroyingLayout = EFalse;
  1219         iDestroyingLayout = EFalse;
  1210         if(iAnimObj)
  1220         if(iAnimObj)
  1211             {
  1221             {
  1305         {        
  1315         {        
  1306         iOpaqueUi = ETrue;
  1316         iOpaqueUi = ETrue;
  1307         iUseWindowCtrl = ETrue;
  1317         iUseWindowCtrl = ETrue;
  1308 
  1318 
  1309         if(iUseWindowCtrl)
  1319         if(iUseWindowCtrl)
  1310             {            
  1320             {
  1311         iPenUiCtrl->SetExtent(layoutRect.iTl,layoutSize);
  1321 #ifdef FIX_FOR_NGA
       
  1322             TBool flag = ETrue;
       
  1323             iUiLayout->HandleCommand(ECmdPeninputEnableOwnBitmap,reinterpret_cast<TUint8*>(&flag));
       
  1324 #endif            
       
  1325             iPenUiCtrl->SetExtent(layoutRect.iTl,layoutSize);
  1312             if(iAnimObj)
  1326             if(iAnimObj)
  1313                 {
  1327                 {
  1314                 iAnimObj->AddEnalbeSpriteCmd(EFalse);
  1328                 iAnimObj->AddEnalbeSpriteCmd(EFalse);
  1315                 }
  1329                 }
  1316         //must swap back when using window background
  1330         //must swap back when using window background
  1560             }
  1574             }
  1561         iCurRectNumInBuf = 0;
  1575         iCurRectNumInBuf = 0;
  1562    	    } 
  1576    	    } 
  1563     return;
  1577     return;
  1564     }
  1578     }
  1565 
       
  1566 #ifndef FIX_FOR_NGA
       
  1567 #define FIX_FOR_NGA
       
  1568 #endif
       
  1569 
  1579 
  1570 //MLayoutOwner
  1580 //MLayoutOwner
  1571 // ---------------------------------------------------------------------------
  1581 // ---------------------------------------------------------------------------
  1572 // CPeninputServer::UpdateArea
  1582 // CPeninputServer::UpdateArea
  1573 // Update sprite rect
  1583 // Update sprite rect
  1899             	    iPenUiCtrl->ShowPopup( rectInScreen, rectInLayout, rectTrimLayout );
  1909             	    iPenUiCtrl->ShowPopup( rectInScreen, rectInLayout, rectTrimLayout );
  1900             	    }
  1910             	    }
  1901         	    }
  1911         	    }
  1902         	    break;
  1912         	    break;
  1903 
  1913 
  1904         	case ESignalPopupWndClosed:
  1914         	default:
  1905         	    {        	    
  1915         	    if(iUseWindowCtrl)                    
  1906         	    if(iUseWindowCtrl)
       
  1907         	        {
  1916         	        {
  1908         	        iPenUiCtrl->ClosePopup();
  1917                     iPenUiCtrl->HandleNGASpecificSignal(aEventType, aEventData);
  1909         	        }
  1918         	        }
  1910         	    }
       
  1911         	    break;
       
  1912         	default:
       
  1913         		break;
  1919         		break;
  1914         	}
  1920         	}
  1915         }
  1921         }
  1916 
  1922 
  1917     }
  1923     }
  2115             iPenUiCtrl->ClosePenUi(ETrue);
  2121             iPenUiCtrl->ClosePenUi(ETrue);
  2116             iActive = EFalse;
  2122             iActive = EFalse;
  2117             }
  2123             }
  2118         return;    
  2124         return;    
  2119         }
  2125         }
  2120 */    if(iActive && !iPrevActive && 
  2126 */    
  2121        iUiLayout->PenInputType() != EPluginInputModeFSQ && 
  2127     TInt inputMode = iUiLayout ? iUiLayout->PenInputType() : EPluginInputModeNone;
  2122        iBackgroudDefaultOri == CAknAppUiBase::EAppUiOrientationUnspecified )
  2128 	
       
  2129     TBool isArabicFingerInput = (inputMode == EPluginInputModeFingerHwr && iInputLanguage == ELangArabic);
       
  2130     
       
  2131     if(isArabicFingerInput)
       
  2132         {
       
  2133         return;
       
  2134         }
       
  2135     
       
  2136 	if(iActive && !iPrevActive && inputMode != EPluginInputModeFSQ && iBackgroudDefaultOri == CAknAppUiBase::EAppUiOrientationUnspecified )
  2123         {
  2137         {
  2124         
  2138         
  2125         iPrevActive = ETrue;
  2139         iPrevActive = ETrue;
  2126         ClearSpriteGc();
  2140         ClearSpriteGc();
  2127 	    //Close the UI immediately, without notify UI handler 
  2141 	    //Close the UI immediately, without notify UI handler