--- a/textinput/peninputarc/src/peninputanim/peninputanim.cpp Wed Sep 01 12:23:33 2010 +0100
+++ b/textinput/peninputarc/src/peninputanim/peninputanim.cpp Tue Sep 14 21:59:06 2010 +0300
@@ -241,6 +241,7 @@
case TRawEvent::EButton1Up:
{
pointerEvent.iType = TPointerEvent::EButton1Up;
+ pointerEvent.iPosition = aRawEvent.Pos();
break;
}
case TRawEvent::EPointerMove:
@@ -259,17 +260,25 @@
return ETrue;
}
+ TRawEvent rawEvent = aRawEvent;
+ if ( aRawEvent.Type() == TRawEvent::EButton1Up
+ && aRawEvent.Pos() != pointerEvent.iPosition )
+ {
+ rawEvent.Set( TRawEvent::EButton1Up,
+ pointerEvent.iPosition.iX,
+ pointerEvent.iPosition.iY );
+ }
switch(aRawEvent.Type())
{
case TRawEvent::EKeyUp:
case TRawEvent::EKeyDown:
{
- return OnRawKeyEvent(aRawEvent);
+ return OnRawKeyEvent( rawEvent );
}
case TRawEvent::EButton1Down:
{
- TBool used = OnRawButton1Down(aRawEvent);
+ TBool used = OnRawButton1Down( rawEvent );
if ( used )
{
@@ -280,19 +289,19 @@
}
case TRawEvent::EButton1Up:
{
- TBool used = OnRawButton1Up(aRawEvent);
+ TBool used = OnRawButton1Up( rawEvent );
StopTimer();
return used;
}
case TRawEvent::EPointerMove:
{
- return OnRawPointerMove(aRawEvent);
+ return OnRawPointerMove( rawEvent );
}
default:
{
return EFalse;
- }
- }
+ }
+ }
}
// ---------------------------------------------------------------------------
@@ -695,6 +704,18 @@
SetDiscreeptPop(area);
}
break;
+ case EPeninputOpUpdatePointerSuppressor:
+ {
+ TPointerEventSuppressorParameters parameters;
+ TPckg<TPointerEventSuppressorParameters> msgData( parameters );
+ msg->ReadL( KMsgSlot1, msgData );
+
+ iPointerEventSuppressor->SetMaxTapMove( parameters.iMoveEventMaxMovement );
+ iPointerEventSuppressor->SetMaxTapDuration( parameters.iMoveEventTimeout );
+ iPointerEventSuppressor->SetMaxDownUpMove( parameters.iUpEventMaxMovement );
+ iPointerEventSuppressor->SetMaxDownUpDuration( parameters.iUpEventTimeout );
+ }
+ break;
default:
// unsupported opcode, panic the client
{