Changeset 147747 in webkit


Ignore:
Timestamp:
Apr 5, 2013 8:26:48 AM (11 years ago)
Author:
zhajiang@rim.com
Message:

[BlackBerry] Blitting wrong rect during history navigations
https://bugs.webkit.org/show_bug.cgi?id=113963

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by Rob Buis.
Internally reviewed by Jakob Petsovits.

On www.bbc.com/news, we blit wrong rect during the second restoration
of the view states when we navigate back from stories to the main page.
Update the contents size and scroll position before we render and blit
if we failed to zoomAboutPoint so that UI thread can still get the
correct rect during blit.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::restoreHistoryViewState):

Location:
trunk/Source/WebKit/blackberry
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/blackberry/Api/WebPage.cpp

    r147744 r147747  
    61016101    m_shouldReflowBlock = shouldReflowBlock;
    61026102
    6103     bool didZoom = zoomAboutPoint(scale, m_mainFrame->view()->scrollPosition(), true /* enforceScaleClamping */, true /*forceRendering*/, true /*isRestoringZoomLevel*/);
     6103    if (!zoomAboutPoint(scale, m_mainFrame->view()->scrollPosition(), true /* enforceScaleClamping */, true /*forceRendering*/, true /*isRestoringZoomLevel*/)) {
     6104        // We need to notify the client of the scroll position and content size change(s) above even if we didn't scale.
     6105        notifyTransformedContentsSizeChanged();
     6106        notifyTransformedScrollChanged();
     6107    }
     6108
    61046109    // If we're already at that scale, then we should still force rendering
    61056110    // since our scroll position changed.
     
    61076112    m_backingStore->d->resumeBackingStoreUpdates();
    61086113    m_backingStore->d->resumeScreenUpdates(BackingStore::RenderAndBlit);
    6109 
    6110     if (!didZoom) {
    6111         // We need to notify the client of the scroll position and content size change(s) above even if we didn't scale.
    6112         notifyTransformedContentsSizeChanged();
    6113         notifyTransformedScrollChanged();
    6114     }
    61156114}
    61166115
  • trunk/Source/WebKit/blackberry/ChangeLog

    r147744 r147747  
     12013-04-04  Jacky Jiang  <zhajiang@rim.com>
     2
     3        [BlackBerry] Blitting wrong rect during history navigations
     4        https://bugs.webkit.org/show_bug.cgi?id=113963
     5
     6        Reviewed by Rob Buis.
     7        Internally reviewed by Jakob Petsovits.
     8
     9        On www.bbc.com/news, we blit wrong rect during the second restoration
     10        of the view states when we navigate back from stories to the main page.
     11        Update the contents size and scroll position before we render and blit
     12        if we failed to zoomAboutPoint so that UI thread can still get the
     13        correct rect during blit.
     14
     15        * Api/WebPage.cpp:
     16        (BlackBerry::WebKit::WebPagePrivate::restoreHistoryViewState):
     17
    1182013-04-05  Jakob Petsovits  <jpetsovits@blackberry.com>
    219
Note: See TracChangeset for help on using the changeset viewer.