Changeset 6395 in webkit


Ignore:
Timestamp:
Apr 15, 2004 6:07:35 PM (20 years ago)
Author:
hyatt
Message:

Fix for 3624335, bugs with overflow and positioned objects. The scrollbar didn't properly update
as you changed the sizes of positioned objects inside an overflow block.

Reviewed by rjw

  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::layoutBlock):
  • khtml/rendering/render_flexbox.cpp: (khtml::RenderFlexibleBox::layoutBlock):
  • khtml/rendering/render_layer.cpp: (RenderLayer::updateScrollInfoAfterLayout):
Location:
trunk/WebCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog-2005-08-23

    r6392 r6395  
     12004-04-15  David Hyatt  <hyatt@apple.com>
     2
     3        Fix for 3624335, bugs with overflow and positioned objects.  The scrollbar didn't properly update
     4        as you changed the sizes of positioned objects inside an overflow block.
     5       
     6        Reviewed by rjw
     7
     8        * khtml/rendering/render_block.cpp:
     9        (khtml::RenderBlock::layoutBlock):
     10        * khtml/rendering/render_flexbox.cpp:
     11        (khtml::RenderFlexibleBox::layoutBlock):
     12        * khtml/rendering/render_layer.cpp:
     13        (RenderLayer::updateScrollInfoAfterLayout):
     14
    1152004-04-15  Ken Kocienda  <kocienda@apple.com>
    216
  • trunk/WebCore/khtml/rendering/render_block.cpp

    r6392 r6395  
    377377        // All we have to is lay out our positioned objects.
    378378        layoutPositionedObjects(relayoutChildren);
     379        if (hasOverflowClip())
     380            m_layer->updateScrollInfoAfterLayout();
    379381        setNeedsLayout(false);
    380382        return;
  • trunk/WebCore/khtml/rendering/render_flexbox.cpp

    r6391 r6395  
    247247        // All we have to is lay out our positioned objects.
    248248        layoutPositionedObjects(relayoutChildren);
     249        if (hasOverflowClip())
     250            m_layer->updateScrollInfoAfterLayout();
    249251        setNeedsLayout(false);
    250252        return;
  • trunk/WebCore/khtml/rendering/render_layer.cpp

    r6357 r6395  
    669669#else
    670670        m_hBar->setRange(0, m_scrollWidth-clientWidth);
     671        m_object->repaintRectangle(QRect(m_object->borderLeft(), m_object->borderTop() + clientHeight(),
     672                                   horizontalScrollbarHeight(),
     673                                   m_object->width() - m_object->borderLeft() - m_object->borderRight()));
    671674#endif
    672675    }
     
    681684        m_vBar->setRange(0, m_scrollHeight-clientHeight);
    682685#endif
    683     }
     686        m_object->repaintRectangle(QRect(m_object->borderLeft() + m_object->clientWidth(),
     687                                   m_object->borderTop(), verticalScrollbarWidth(),
     688                                   m_object->height() - m_object->borderTop() - m_object->borderBottom()));
     689    }
     690   
     691    m_object->repaint();
    684692}
    685693
Note: See TracChangeset for help on using the changeset viewer.