diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2012-11-07 11:22:47 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-11-07 11:22:47 +0100 |
commit | cfd86b747d32ac22246a1aa908eaa720c63a88c1 (patch) | |
tree | 24d68c6f61c464ecba1e05670b80390ea3b0e50c /Source/WebKit/blackberry/Api/BackingStore.cpp | |
parent | 69d7c744c9de19d152dbe2d8e46eb7dfd4511d1a (diff) | |
download | qtwebkit-cfd86b747d32ac22246a1aa908eaa720c63a88c1.tar.gz |
Imported WebKit commit 20271caf2e2c016d5cef40184cddeefeac4f1876 (http://svn.webkit.org/repository/webkit/trunk@133733)
New snapshot that contains all previous fixes as well as build fix for latest QtMultimedia API changes.
Diffstat (limited to 'Source/WebKit/blackberry/Api/BackingStore.cpp')
-rw-r--r-- | Source/WebKit/blackberry/Api/BackingStore.cpp | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/Source/WebKit/blackberry/Api/BackingStore.cpp b/Source/WebKit/blackberry/Api/BackingStore.cpp index 0c20cdcf4..0dac9cb31 100644 --- a/Source/WebKit/blackberry/Api/BackingStore.cpp +++ b/Source/WebKit/blackberry/Api/BackingStore.cpp @@ -359,6 +359,10 @@ void BackingStorePrivate::resumeScreenAndBackingStoreUpdates(BackingStore::Resum if (op == BackingStore::None) return; #if USE(ACCELERATED_COMPOSITING) + // It needs layout and render before committing root layer if we set OSDS + if (m_webPage->d->needsOneShotDrawingSynchronization()) + m_webPage->d->requestLayoutIfNeeded(); + // This will also blit since we set the OSDS flag above. m_webPage->d->commitRootLayerIfNeeded(); #else @@ -514,8 +518,7 @@ bool BackingStorePrivate::shouldPerformRegularRenderJobs() const } static const BlackBerry::Platform::Message::Type RenderJobMessageType = BlackBerry::Platform::Message::generateUniqueMessageType(); -class RenderJobMessage : public BlackBerry::Platform::ExecutableMessage -{ +class RenderJobMessage : public BlackBerry::Platform::ExecutableMessage { public: RenderJobMessage(BlackBerry::Platform::MessageDelegate* delegate) : BlackBerry::Platform::ExecutableMessage(delegate, BlackBerry::Platform::ExecutableMessage::UniqueCoalescing, RenderJobMessageType) @@ -1200,7 +1203,7 @@ void BackingStorePrivate::paintDefaultBackground(const Platform::IntRect& dstRec // make sure it is invalidated. const Platform::IntRect pixelContentsRect = viewportAccessor->pixelContentsRect(); Platform::IntRectRegion overScrollRegion = Platform::IntRectRegion::subtractRegions( - dstRect, viewportAccessor->pixelViewportFromContents(pixelContentsRect)); + clippedDstRect, viewportAccessor->pixelViewportFromContents(pixelContentsRect)); IntRectList overScrollRects = overScrollRegion.rects(); for (size_t i = 0; i < overScrollRects.size(); ++i) { @@ -2327,8 +2330,10 @@ void BackingStorePrivate::blitToWindow(const Platform::IntRect& dstRect, BlackBerry::Platform::Graphics::Buffer* dstBuffer = buffer(); ASSERT(dstBuffer); ASSERT(srcBuffer); - if (!dstBuffer) - BBLOG(BlackBerry::Platform::LogLevelWarn, "Empty window buffer, couldn't blitToWindow"); + if (!dstBuffer) { + BBLOG(BlackBerry::Platform::LogLevelWarn, + "Empty window buffer, couldn't blitToWindow"); + } BlackBerry::Platform::Graphics::BlendMode blendMode = blend ? BlackBerry::Platform::Graphics::SourceOver @@ -2356,8 +2361,10 @@ void BackingStorePrivate::fillWindow(Platform::Graphics::FillPattern pattern, BlackBerry::Platform::Graphics::Buffer* dstBuffer = buffer(); ASSERT(dstBuffer); - if (!dstBuffer) - BBLOG(BlackBerry::Platform::LogLevelWarn, "Empty window buffer, couldn't fillWindow"); + if (!dstBuffer) { + BBLOG(BlackBerry::Platform::LogLevelWarn, + "Empty window buffer, couldn't fillWindow"); + } BlackBerry::Platform::Graphics::fillBuffer(dstBuffer, pattern, dstRect, contentsOrigin, contentsScale); } @@ -2441,8 +2448,10 @@ void BackingStorePrivate::clearWindow(const Platform::IntRect& rect, BlackBerry::Platform::Graphics::Buffer* dstBuffer = buffer(); ASSERT(dstBuffer); - if (!dstBuffer) - BBLOG(BlackBerry::Platform::LogLevelWarn, "Empty window buffer, couldn't clearWindow"); + if (!dstBuffer) { + BBLOG(BlackBerry::Platform::LogLevelWarn, + "Empty window buffer, couldn't clearWindow"); + } windowFrontBufferState()->clearBlittedRegion(rect); windowBackBufferState()->addBlittedRegion(rect); |