--- a/webengine/webkitutils/stmgesturefw/src/gesturehelpereventsender.cpp Wed Mar 31 23:16:40 2010 +0300
+++ b/webengine/webkitutils/stmgesturefw/src/gesturehelpereventsender.cpp Wed Apr 14 17:06:56 2010 +0300
@@ -11,14 +11,12 @@
*
* Contributors:
*
-* Description: Gesture helper implementation
+* Description: Gesture event sender implementation
*
*/
#include "gesturehelpereventsender.h"
-const TInt KEventsQueueGranularity = 4;
-
CGestureEventSender* CGestureEventSender::NewL( MStmGestureListener& aObserver )
{
CGestureEventSender* self = new (ELeave) CGestureEventSender(aObserver);
@@ -26,25 +24,17 @@
return self;
}
-CGestureEventSender::CGestureEventSender( MStmGestureListener& aObserver ) :
- CActive(EPriorityUserInput - 1),
- iObserver(aObserver), iEvents(KEventsQueueGranularity)
+CGestureEventSender::CGestureEventSender( MStmGestureListener& aObserver )
+ :iObserver(aObserver)
{
- CActiveScheduler::Add(this);
}
CGestureEventSender::~CGestureEventSender()
{
- if (IsActive())
- {
- Cancel();
- }
-
- iEvents.Close();
}
-TInt CGestureEventSender::AddEvent(TStmGestureUid aUid, const MStmGesture* aGestureEvent)
- {
+void CGestureEventSender::AddEvent(TStmGestureUid aUid, const MStmGesture* aGestureEvent)
+{
TStmGestureEvent event;
if (aGestureEvent) {
event.SetCode(aGestureEvent->gestureUid());
@@ -58,75 +48,20 @@
}
else {
if (aUid != stmGesture::EGestureUidPinch) {
- return iEvents.Count();
+ return;
}
event.SetCode(aUid);
event.SetGestureState(EGestureExit);
}
- iEvents.Append(event);
-
+ EmitEventL(event);
if (event.Code() == stmGesture::EGestureUidTap) {
event.SetCode(stmGesture::EGestureUidRelease);
- iEvents.Append(event);
- }
-
- if (iState != EBusy)
- {
- iState = EEventsReady;
- }
-
- if (!IsActive())
- {
- Complete();
- }
- return iEvents.Count();
- }
-
-void CGestureEventSender::Complete()
- {
- TRequestStatus* status = &iStatus;
- User::RequestComplete(status, KErrNone);
- SetActive();
+ EmitEventL(event);
}
-
-void CGestureEventSender::RunL()
- {
- switch (iState)
- {
- case EEventsReady:
- {
- if (iEvents.Count() > 0)
- {
- TInt count = iEvents.Count();
- for (int i = 0; i < count; i++)
- {
- TStmGestureEvent& gst = iEvents[i];
- EmitEventL(gst);
- }
- }
- iEvents.Reset();
- iState = ENoEvents;
- break;
- }
- }
- }
+}
void CGestureEventSender::EmitEventL( const TStmGestureEvent& aGesture )
- {
- iState = EBusy;
+{
iObserver.HandleGestureEventL(aGesture);
- iState = EEventsReady;
- }
-
-TInt CGestureEventSender::RunError(TInt aError)
- {
- iEvents.Reset();
- return aError;
- }
-
-void CGestureEventSender::DoCancel()
- {
- iEvents.Reset();
- iState = ENoEvents;
- }
+}