Changeset 140622 in webkit


Ignore:
Timestamp:
Jan 23, 2013 5:54:13 PM (11 years ago)
Author:
benjamin@webkit.org
Message:

RenderProgress does not repaint on value change
https://bugs.webkit.org/show_bug.cgi?id=106977

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-01-23
Reviewed by Joseph Pecoraro.

No test because the ouput depends on the code of RenderTheme, and
we use the platform theme for testing.

  • rendering/RenderProgress.cpp:

(WebCore::RenderProgress::updateFromElement):
(WebCore::RenderProgress::updateAnimationState):
Previously, repaint() was only called on two occasions:
-On animationTimerFired().
-In response to updateFromElement() if and only if the RenderTheme start/stop an

animation previously stopped/running.

When changing the value of HTMLProgressElement, no repaint was called until
the next timer fired for the animation.
This is a problem if:
-The animation of RenderTheme is slow.
-If there is no animation (the element is never updated in that case).

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r140620 r140622  
     12013-01-23  Benjamin Poulain  <bpoulain@apple.com>
     2
     3        RenderProgress does not repaint on value change
     4        https://bugs.webkit.org/show_bug.cgi?id=106977
     5
     6        Reviewed by Joseph Pecoraro.
     7
     8        No test because the ouput depends on the code of RenderTheme, and
     9        we use the platform theme for testing.
     10
     11        * rendering/RenderProgress.cpp:
     12        (WebCore::RenderProgress::updateFromElement):
     13        (WebCore::RenderProgress::updateAnimationState):
     14        Previously, repaint() was only called on two occasions:
     15        -On animationTimerFired().
     16        -In response to updateFromElement() if and only if the RenderTheme start/stop an
     17         animation previously stopped/running.
     18
     19        When changing the value of HTMLProgressElement, no repaint was called until
     20        the next timer fired for the animation.
     21        This is a problem if:
     22        -The animation of RenderTheme is slow.
     23        -If there is no animation (the element is never updated in that case).
     24
    1252013-01-23  Ian Vollick  <vollick@chromium.org>
    226
  • trunk/Source/WebCore/rendering/RenderProgress.cpp

    r124754 r140622  
    5757
    5858    updateAnimationState();
     59    repaint();
    5960    RenderBlock::updateFromElement();
    6061}
     
    9293        return;
    9394
    94     repaint();
    9595    m_animating = animating;
    9696    if (m_animating) {
Note: See TracChangeset for help on using the changeset viewer.