1. diff --git a/src/gui/styles/qwindowsvistastyle.cpp b/src/gui/styles/qwindowsvistastyle.cpp
  2. index 7f1a3ab..f65dc5c 100644
  3. --- a/src/gui/styles/qwindowsvistastyle.cpp
  4. +++ b/src/gui/styles/qwindowsvistastyle.cpp
  5. @@ -969,7 +969,8 @@ void QWindowsVistaStyle::drawControl(ControlElement element, const QStyleOption
  6.          if (const QStyleOptionButton *btn = qstyleoption_cast<const QStyleOptionButton *>(option))
  7.          {
  8.  
  9. -            if (QWindowsVistaAnimation *anim = d->widgetAnimation(widget)) {
  10. +            QWindowsVistaAnimation *anim = d->widgetAnimation(widget);
  11. +            if (anim && btn->state && State_Enabled) {
  12.                  anim->paint(painter, option);
  13.              } else {
  14.                  name = QLatin1String("BUTTON");
  15. @@ -996,7 +997,6 @@ void QWindowsVistaStyle::drawControl(ControlElement element, const QStyleOption
  16.                          !(state & (State_Sunken | State_On)) && !(state & State_MouseOver) &&
  17.                           (state & State_Enabled) && (state & State_Active))
  18.                          {
  19. -                        QWindowsVistaAnimation *anim = d->widgetAnimation(widget);
  20.                          if (!anim && widget) {
  21.                              QImage startImage(option->rect.size(), QImage::Format_ARGB32_Premultiplied);
  22.                              startImage.fill(0);
  23. @@ -2502,7 +2502,6 @@ void QWindowsVistaStylePrivate::timerEvent()
  24.              animations[i]->widget()->update();
  25.  
  26.          if (!animations[i]->widget() ||
  27. -            !animations[i]->widget()->isEnabled() ||
  28.              !animations[i]->widget()->isVisible() ||
  29.              animations[i]->widget()->window()->isMinimized() ||
  30.              !animations[i]->running() ||