diff -r e1bea15f9a39 -r 79859ed3eea9 webengine/osswebengine/WebKit/s60/webview/WebScrollingDeceleratorGH.cpp --- a/webengine/osswebengine/WebKit/s60/webview/WebScrollingDeceleratorGH.cpp Thu Aug 19 10:58:56 2010 +0300 +++ b/webengine/osswebengine/WebKit/s60/webview/WebScrollingDeceleratorGH.cpp Tue Aug 31 16:17:46 2010 +0300 @@ -17,7 +17,6 @@ // INCLUDE FILES -#include #include <../bidi.h> #include "WebScrollingDeceleratorGH.h" #include "WebView.h" @@ -29,6 +28,7 @@ #include "WebKitLogger.h" +using namespace RT_GestureHelper; // constants const int KRecordSize = 4; @@ -36,18 +36,9 @@ // It lists the timeout dt values in microseconds. const int KDecelCurveSize = 10; -#ifdef BRDO_PERF_IMPROVEMENTS_ENABLED_FF -const int KScrollIntervalTimeout = 30000; // scroll timer interval in microseconds -#else const int KScrollIntervalTimeout = 60000; // scroll timer interval in microseconds -#endif -#ifdef BRDO_MULTITOUCH_ENABLED_FF -const float KDecceleration = -1300.0; -#else -const float KDecceleration = -750.0; -#endif -const float KSpeedHigh = 2000.0; +const float KDecceleration = -700.0; int decelTimerCB(TAny* ptr); @@ -87,7 +78,6 @@ void WebScrollingDeceleratorGH::ConstructL() { m_decelTimer = CPeriodic::NewL(CActive::EPriorityStandard); - m_deceleration = KDecceleration; } // ----------------------------------------------------------------------------- @@ -101,7 +91,7 @@ int WebScrollingDeceleratorGH::getDecceleration() { - return m_deceleration; + return KDecceleration; } @@ -116,50 +106,29 @@ { m_decelelatorSwitch = false; if (m_decelTimer->IsActive()) { - m_webView.setViewIsScrolling(false); - m_webView.resumeJsTimers(); m_decelTimer->Cancel(); } } -bool WebScrollingDeceleratorGH::startDecel(TRealPoint& speed, WebScrollbarDrawer* scrollbarDrawer) +void WebScrollingDeceleratorGH::startDecel(TRealPoint& speed, WebScrollbarDrawer* scrollbarDrawer) { - bool started = false; m_decelelatorSwitch = true; m_scrollbarDrawer = scrollbarDrawer; - float speedX = speed.iX; - float speedY = speed.iY; - float absSpeedX = abs(speedX); - float absSpeedY = abs(speedY); - - if (absSpeedX > KSpeedHigh) { - speedX = KSpeedHigh * speedX/absSpeedX ; - } - if (absSpeedY > KSpeedHigh) { - speedY = KSpeedHigh * speedY/absSpeedY; - } - - m_initSpeed.iX = (-1) * speedX; - m_initSpeed.iY = (-1) * speedY; + m_initSpeed.iX = (-1) * speed.iX; + m_initSpeed.iY = (-1) * speed.iY; m_numscrollsteps = 0; if (m_decelTimer->IsActive()) { - m_webView.setViewIsScrolling(false); - m_webView.resumeJsTimers(); m_decelTimer->Cancel(); } WebFrameView* scrollingView = m_webView.pageScrollHandler()->currentScrollingFrameView(); if (scrollingView) { - m_webView.pauseJsTimers(); // pause the JS timers - m_webView.setViewIsScrolling(true); m_startPos = scrollingView->contentPos(); m_lastPos = m_startPos; m_decelTimer->Start(0, KScrollIntervalTimeout, TCallBack(&decelTimerCB, this)); - started = true; } - return started; } void WebScrollingDeceleratorGH::scroll() @@ -176,16 +145,14 @@ TReal32 accelX = 0.0; TReal32 accelY = 0.0; - TReal32 deceleration = getDecceleration(); - if (m_initSpeed.iX) { - accelX = (m_initSpeed.iX > 0) ? deceleration : (-1) * deceleration; + accelX = (m_initSpeed.iX > 0) ? KDecceleration : (-1) * KDecceleration; vx = m_initSpeed.iX + accelX * t; dx = m_initSpeed.iX * t + 0.5 * accelX * (t * t); } if (m_initSpeed.iY) { - accelY = (m_initSpeed.iY > 0) ? deceleration : (-1) * deceleration; + accelY = (m_initSpeed.iY > 0) ? KDecceleration : (-1) * KDecceleration; vy = m_initSpeed.iY + accelY * t; dy = m_initSpeed.iY * t + 0.5 * accelY * (t * t); } @@ -205,9 +172,6 @@ if (m_scrollbarDrawer) { m_scrollbarDrawer->fadeScrollbar(); } - - m_webView.resumeJsTimers(); // resume the js timers - m_webView.setViewIsScrolling(false); m_decelTimer->Cancel(); handler->clearScrollingElement(); m_webView.setViewIsScrolling(false);