diff -r 4917f9bf7995 -r 8bfb9186a8b8 webengine/osswebengine/WebKit/s60/webview/WebPointerEventHandler.cpp --- a/webengine/osswebengine/WebKit/s60/webview/WebPointerEventHandler.cpp Tue Apr 27 17:46:17 2010 +0300 +++ b/webengine/osswebengine/WebKit/s60/webview/WebPointerEventHandler.cpp Tue May 11 17:13:44 2010 +0300 @@ -164,12 +164,16 @@ { m_ignoreTap = false; handleTouchUp(aGesture); - m_webview->setScrolling(false); + m_webview->resumeJsTimers(); // resume js timers break; } case stmGesture::EGestureUidPan: { + // pause js timers (if not already done) + if(!m_webview->jsTimersPaused()) + m_webview->pauseJsTimers(); + if(!m_webview->isScrolling()) m_webview->setScrolling(true); handleMove(aGesture); @@ -193,6 +197,9 @@ if(!m_webview->inPageViewMode()) { handlePinchZoomL(aGesture); + if(aGesture.GestureState() != EGestureEnter) { + m_webview->resumeJsTimers(); // resume js timers + } } break; } @@ -328,6 +335,10 @@ } } + // pause JS timers for better ui response + if (aPointerEvent.iType == TPointerEvent::EButton1Down) { + m_webview->pauseJsTimers(); + } #ifdef BRDO_USE_GESTURE_HELPER m_gestureInterface->HandlePointerEventL(aPointerEvent); #endif