diff options
author | Nicolas Roard <nicolas@android.com> | 2010-03-31 23:18:51 +0100 |
---|---|---|
committer | Nicolas Roard <nicolas@android.com> | 2010-05-21 18:29:47 -0700 |
commit | bad8b91f026f7b63252113590bab4c73a7092214 (patch) | |
tree | d09ed442230ae40886fa054576c5051b8c8eef9e /WebKit/android/WebCoreSupport/ChromeClientAndroid.cpp | |
parent | 571024554692d67ee9f4c6390e18dc41a38e7251 (diff) | |
download | external_webkit-bad8b91f026f7b63252113590bab4c73a7092214.zip external_webkit-bad8b91f026f7b63252113590bab4c73a7092214.tar.gz external_webkit-bad8b91f026f7b63252113590bab4c73a7092214.tar.bz2 |
Remove the use of a timer to delay painting, instead use a flag and check it
in RecordContent.
Change-Id: I2a7c11d0cb9697bbc415b2b91ee96a188bf45bf3
Diffstat (limited to 'WebKit/android/WebCoreSupport/ChromeClientAndroid.cpp')
-rw-r--r-- | WebKit/android/WebCoreSupport/ChromeClientAndroid.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/WebKit/android/WebCoreSupport/ChromeClientAndroid.cpp b/WebKit/android/WebCoreSupport/ChromeClientAndroid.cpp index b59689d..ead81e0 100644 --- a/WebKit/android/WebCoreSupport/ChromeClientAndroid.cpp +++ b/WebKit/android/WebCoreSupport/ChromeClientAndroid.cpp @@ -57,11 +57,16 @@ static unsigned long long tryToReclaimDatabaseQuota(SecurityOrigin* originNeedin #if USE(ACCELERATED_COMPOSITING) -void ChromeClientAndroid::syncTimerFired(Timer<ChromeClientAndroid>* client) +void ChromeClientAndroid::layersSync() { if (!m_rootGraphicsLayer) return; + if (!m_needsLayerSync) + return; + + m_needsLayerSync = false; + if (m_webFrame) { FrameView* frameView = m_webFrame->page()->mainFrame()->view(); if (frameView && frameView->syncCompositingStateRecursive()) { @@ -77,8 +82,7 @@ void ChromeClientAndroid::syncTimerFired(Timer<ChromeClientAndroid>* client) void ChromeClientAndroid::scheduleCompositingLayerSync() { - if (!m_syncTimer.isActive()) - m_syncTimer.startOneShot(0); + m_needsLayerSync = true; } void ChromeClientAndroid::setNeedsOneShotDrawingSynchronization() |