textinput/peninputarc/src/peninputanim/peninputanim.cpp
branchRCL_3
changeset 5 a47de9135b21
parent 0 eb1f2e154e89
child 6 6ceef9a83b1a
equal deleted inserted replaced
3:f5a1e66df979 5:a47de9135b21
   808 	    //give tactile feedback	    
   808 	    //give tactile feedback	    
   809 	    if(iTactileSupported)
   809 	    if(iTactileSupported)
   810             DoTactileFeedBack(aRawEvent.Pos() - rect.iTl);
   810             DoTactileFeedBack(aRawEvent.Pos() - rect.iTl);
   811 #endif // RD_TACTILE_FEEDBACK	
   811 #endif // RD_TACTILE_FEEDBACK	
   812 		iIsPenDown = ETrue;
   812 		iIsPenDown = ETrue;
       
   813 
       
   814         // Fix bug HMNN-82CDU5 
       
   815         // When button downing event is happened, iIsMove is reset to EFalse
       
   816 	    iIsMove = EFalse;              
       
   817 
       
   818         // Recording pointer that button is pressing down in at this time
       
   819 	    iPointerDown = aRawEvent.Pos();  
       
   820         //
       
   821 
   813 		PostRawEvent(aRawEvent); 
   822 		PostRawEvent(aRawEvent); 
   814 		return ETrue;
   823 		return ETrue;
   815 	    }
   824 	    }
   816 
   825 
   817 	if(iIsPointerCaptured)
   826 	if(iIsPointerCaptured)
   839 		iDiscreetPopedCapture = EFalse;
   848 		iDiscreetPopedCapture = EFalse;
   840 		return EFalse;
   849 		return EFalse;
   841 		}
   850 		}
   842 	if(iIsPenDown)
   851 	if(iIsPenDown)
   843 	    {      
   852 	    {      
       
   853     
       
   854         // Fix bug HMNN-82CDU5 
       
   855         // When the control key pressing down in is different with the control key pressing up 
       
   856         // and pointer moving event isn¡¯t happened,
       
   857         // pointer moving event will is supplied 
       
   858         if(iPointerDown != aRawEvent.Pos() && !iIsMove)
       
   859           {
       
   860           TRawEvent rawEvent = aRawEvent;
       
   861           rawEvent.Set( TRawEvent::EPointerMove );
       
   862           OnRawPointerMove(rawEvent);
       
   863           }
       
   864         //
       
   865 
   844 		iIsPenDown = EFalse;
   866 		iIsPenDown = EFalse;
   845 		
   867 		
   846 		TRect rect(iSpritePosition, iSpriteSize);        
   868 		TRect rect(iSpritePosition, iSpriteSize);        
   847 		if(rect.Contains(aRawEvent.Pos()))
   869 		if(rect.Contains(aRawEvent.Pos()))
   848 		    {
   870 		    {
   849 			//send pen up event immediately
   871 			//send pen up event immediately
   850 			SendRawEvent(aRawEvent);
   872 			SendRawEvent(aRawEvent);
       
   873             
       
   874             // Fix bug HMNN-82CDU5 
       
   875             // When key pressing up event is completed, iIsMove is reset to EFalse.
       
   876             iIsMove = EFalse;   
       
   877             //
       
   878 
   851 			return ETrue;                    
   879 			return ETrue;                    
   852 		    }
   880 		    }
   853 	    }
   881 	    }
   854 	
   882 	
   855 	if(iIsPointerCaptured)
   883 	if(iIsPointerCaptured)
   878 	TRect rect(iSpritePosition, iSpriteSize);        
   906 	TRect rect(iSpritePosition, iSpriteSize);        
   879 	if( iIsPenDown && iIsPointerCaptured)
   907 	if( iIsPenDown && iIsPointerCaptured)
   880 	    {                
   908 	    {                
   881 	    //give tactile feedback	    
   909 	    //give tactile feedback	    
   882 
   910 
       
   911         // Fix bug HMNN-82CDU5 
       
   912         // When pointer moving event is happened, iIsMove is set to ETrue
       
   913         iIsMove = ETrue;        
       
   914         //
       
   915 
   883 		PostRawEvent(aRawEvent); 
   916 		PostRawEvent(aRawEvent); 
   884 		return ETrue;
   917 		return ETrue;
   885 	    }
   918 	    }
   886 #endif // RD_TACTILE_FEEDBACK	
   919 #endif // RD_TACTILE_FEEDBACK	
   887 
   920 
   888 	if(iIsPointerCaptured || iIsPenDown)
   921 	if(iIsPointerCaptured || iIsPenDown)
   889 	    {                    
   922 	    {                    
       
   923 
       
   924         // Fix bug HMNN-82CDU5 
       
   925         // When pointer moving event is happened, iIsMove is set to ETrue
       
   926         iIsMove = ETrue;        
       
   927         //
       
   928 
   890 		PostRawEvent(aRawEvent);
   929 		PostRawEvent(aRawEvent);
   891 		return ETrue;
   930 		return ETrue;
   892 	    }
   931 	    }
   893 	
   932 	
   894 	return EFalse;
   933 	return EFalse;