Changeset 124714 in webkit


Ignore:
Timestamp:
Aug 4, 2012 10:55:05 PM (12 years ago)
Author:
mitz@apple.com
Message:

<rdar://problem/11875795> REGRESSION (tiled drawing): Page’s scroll bars flash with each character you type in a textarea (affects Wikipedia and YouTube)
https://bugs.webkit.org/show_bug.cgi?id=91348

Reviewed by Andy Estes.

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::scrollPositionChanged): Changed to call notifyContentAreaScrolled()
only if the scroll position after the change differs from what it was before the change.

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scrollPosition): Added an override of this ScrollableArea function.

  • rendering/RenderListBox.h:
Location:
trunk/Source/WebCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r124713 r124714  
     12012-08-04  Dan Bernstein  <mitz@apple.com>
     2
     3        <rdar://problem/11875795> REGRESSION (tiled drawing): Page’s scroll bars flash with each character you type in a textarea (affects Wikipedia and YouTube)
     4        https://bugs.webkit.org/show_bug.cgi?id=91348
     5
     6        Reviewed by Andy Estes.
     7
     8        * platform/ScrollableArea.cpp:
     9        (WebCore::ScrollableArea::scrollPositionChanged): Changed to call notifyContentAreaScrolled()
     10        only if the scroll position after the change differs from what it was before the change.
     11        * rendering/RenderListBox.cpp:
     12        (WebCore::RenderListBox::scrollPosition): Added an override of this ScrollableArea function.
     13        * rendering/RenderListBox.h:
     14
    1152012-08-04  Ami Fischman  <fischman@chromium.org>
    216
  • trunk/Source/WebCore/platform/ScrollableArea.cpp

    r122701 r124714  
    143143void ScrollableArea::scrollPositionChanged(const IntPoint& position)
    144144{
     145    IntPoint oldPosition = scrollPosition();
    145146    // Tell the derived class to scroll its contents.
    146147    setScrollOffset(position);
     
    169170    }
    170171
    171     scrollAnimator()->notifyContentAreaScrolled();
     172    if (scrollPosition() != oldPosition)
     173        scrollAnimator()->notifyContentAreaScrolled();
    172174}
    173175
  • trunk/Source/WebCore/rendering/RenderListBox.cpp

    r124556 r124714  
    628628}
    629629
     630IntPoint RenderListBox::scrollPosition() const
     631{
     632    return IntPoint(0, m_indexOffset);
     633}
     634
    630635void RenderListBox::scrollTo(int newOffset)
    631636{
  • trunk/Source/WebCore/rendering/RenderListBox.h

    r124556 r124714  
    101101    virtual int scrollPosition(Scrollbar*) const;
    102102    virtual void setScrollOffset(const IntPoint&);
     103    virtual IntPoint scrollPosition() const OVERRIDE;
    103104    virtual void invalidateScrollbarRect(Scrollbar*, const IntRect&);
    104105    virtual bool isActive() const;
Note: See TracChangeset for help on using the changeset viewer.