Changeset 23866 in webkit


Ignore:
Timestamp:
Jun 28, 2007 7:46:23 PM (17 years ago)
Author:
weinig
Message:

LayoutTests:

Reviewed by Beth.

  • fast/dynamic/recursive-layout-expected.txt: Added.
  • fast/dynamic/recursive-layout.html: Added.

WebCore:

Reviewed by Beth.

Test: fast/dynamic/recursive-layout.html

  • page/FrameView.cpp: (WebCore::FrameView::layout): Removed the midLayout guards around the calls to invalidateSelection() and updateWidgetPositions(). Those calls may dirty the layout, but in that case they also update it, so they should be allowed to do it. Added an ASSERT to make sure that when they return, the root is not marked for layout.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r23863 r23866  
     12007-06-28  Mitz Pettel  <mitz@webkit.org>
     2
     3        Reviewed by Beth.
     4
     5        - test for http://bugs.webkit.org/show_bug.cgi?id=14118
     6          ASSERTION FAILED: !needsLayout() seen again
     7
     8        * fast/dynamic/recursive-layout-expected.txt: Added.
     9        * fast/dynamic/recursive-layout.html: Added.
     10
    1112007-06-28  Sam Weinig  <sam@webkit.org>
    212
  • trunk/WebCore/ChangeLog

    r23863 r23866  
     12007-06-28  Mitz Pettel  <mitz@webkit.org>
     2
     3        Reviewed by Beth.
     4
     5        - fix http://bugs.webkit.org/show_bug.cgi?id=14118
     6          ASSERTION FAILED: !needsLayout() seen again
     7
     8        Test: fast/dynamic/recursive-layout.html
     9
     10        * page/FrameView.cpp:
     11        (WebCore::FrameView::layout): Removed the midLayout guards around
     12        the calls to invalidateSelection() and updateWidgetPositions(). Those
     13        calls may dirty the layout, but in that case they also update it, so
     14        they should be allowed to do it. Added an ASSERT to make sure that when
     15        they return, the root is not marked for layout.
     16
    1172007-06-28  Sam Weinig  <sam@webkit.org>
    218
  • trunk/WebCore/page/FrameView.cpp

    r22062 r23866  
    428428    d->layoutRoot = 0;
    429429
    430     d->midLayout = true;
    431430    m_frame->invalidateSelection();
    432     d->midLayout = false;
    433431   
    434432    d->layoutSchedulingEnabled=true;
     
    441439
    442440    // We update our widget positions right after doing a layout.
    443     if (!subtree) {
    444         d->midLayout = true;
     441    if (!subtree)
    445442        static_cast<RenderView*>(root)->updateWidgetPositions();
    446         d->midLayout = false;
    447     }
    448443   
    449444    // FIXME: Could optimize this and have objects removed from this list
     
    465460        m_frame->loader()->didFirstLayout();
    466461   
    467     if (root->needsLayout()) {
    468         scheduleRelayout();
    469         return;
    470     }
     462    ASSERT(!root->needsLayout());
     463
    471464    setStaticBackground(useSlowRepaints());
    472465
Note: See TracChangeset for help on using the changeset viewer.