Changeset 136231 in webkit


Ignore:
Timestamp:
Nov 30, 2012 5:56:54 AM (11 years ago)
Author:
commit-queue@webkit.org
Message:

[WK2] TiledBackingStore: Frame view re-layouts with wrong Fixed Visible Content Rect.
https://bugs.webkit.org/show_bug.cgi?id=103428

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-30
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Set now appropriate fixed visible content rect before layout when viewport
attributes change.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::syncVisibleContents):
(WebKit::PageViewportController::didChangeViewportAttributes):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::sendViewportAttributesChanged):

LayoutTests:

Unskipped corresponding test cases for EFL WK2.

  • platform/efl-wk2/TestExpectations:
Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r136230 r136231  
     12012-11-30  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
     2
     3        [WK2] TiledBackingStore: Frame view re-layouts with wrong Fixed Visible Content Rect.
     4        https://bugs.webkit.org/show_bug.cgi?id=103428
     5
     6        Reviewed by Kenneth Rohde Christiansen.
     7
     8        Unskipped corresponding test cases for EFL WK2.
     9
     10        * platform/efl-wk2/TestExpectations:
     11
    1122012-11-30  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
    213
  • trunk/LayoutTests/platform/efl-wk2/TestExpectations

    r136121 r136231  
    269269# Page client doesn't react to orientation changes from CSS Viewport rules.
    270270webkit.org/b/103130 css3/device-adapt/opera/orientation-001.xhtml [ Failure ]
    271 
    272 # Issue with viewport width and relative units.
    273 webkit.org/b/102922 css3/device-adapt/opera/constrain-006.xhtml [ Failure ]
    274 webkit.org/b/102922 css3/device-adapt/opera/constrain-007.xhtml [ Failure ]
    275271
    276272# Text input controller needs selectedRange implementation
  • trunk/Source/WebKit2/ChangeLog

    r136230 r136231  
     12012-11-30  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
     2
     3        [WK2] TiledBackingStore: Frame view re-layouts with wrong Fixed Visible Content Rect.
     4        https://bugs.webkit.org/show_bug.cgi?id=103428
     5
     6        Reviewed by Kenneth Rohde Christiansen.
     7
     8        Set now appropriate fixed visible content rect before layout when viewport
     9        attributes change.
     10
     11        * UIProcess/PageViewportController.cpp:
     12        (WebKit::PageViewportController::syncVisibleContents):
     13        (WebKit::PageViewportController::didChangeViewportAttributes):
     14        * WebProcess/WebPage/WebPage.cpp:
     15        (WebKit::WebPage::sendViewportAttributesChanged):
     16
    1172012-11-30  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
    218
  • trunk/Source/WebKit2/UIProcess/PageViewportController.cpp

    r136129 r136231  
    210210void PageViewportController::syncVisibleContents(const FloatPoint& trajectoryVector)
    211211{
    212     DrawingAreaProxy* const drawingArea = m_webPageProxy->drawingArea();
     212    DrawingAreaProxy* drawingArea = m_webPageProxy->drawingArea();
    213213    if (!drawingArea || m_viewportSize.isEmpty() || m_contentsSize.isEmpty())
    214214        return;
     
    235235    if (updateMinimumScaleToFit(true))
    236236        m_client->didChangeViewportAttributes();
    237 
    238     syncVisibleContents();
    239237}
    240238
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp

    r136210 r136231  
    10281028    attr.initialScale = m_page->viewportArguments().zoom; // Resets auto (-1) if no value was set by user.
    10291029
     1030    // Keep the current position, update size only.
     1031    // For the new loads position is already reset to (0,0).
     1032    FrameView* view = m_page->mainFrame()->view();
     1033    IntPoint contentFixedOrigin = view->fixedVisibleContentRect().location();
     1034
     1035    // Put the width and height to the viewport width and height. In css units however.
     1036    // FIXME: This should be in scaled units but this currently affects viewport attributes calculation.
     1037    IntSize contentFixedSize = m_viewportSize;
     1038    contentFixedSize.scale(1 / m_page->deviceScaleFactor());
     1039
     1040    setFixedVisibleContentRect(IntRect(contentFixedOrigin, contentFixedSize));
     1041
    10301042    // This also takes care of the relayout.
    1031     setFixedLayoutSize(IntSize(static_cast<int>(attr.layoutSize.width()), static_cast<int>(attr.layoutSize.height())));
     1043    setFixedLayoutSize(roundedIntSize(attr.layoutSize));
     1044
    10321045    send(Messages::WebPageProxy::DidChangeViewportProperties(attr));
    10331046}
Note: See TracChangeset for help on using the changeset viewer.