Fix progressbar animation on macstyle
The animation is not just supposed to run when indeterminate, but also while it is progressing. Change-Id: If176bd230c2f6f83781e01ea77526c24d54c8477 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
This commit is contained in:
parent
faa3759120
commit
28f36ebcc2
@ -4357,7 +4357,8 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter
|
||||
tdi.min = pb->minimum;
|
||||
tdi.value = pb->progress;
|
||||
tdi.attributes = vertical ? 0 : kThemeTrackHorizontal;
|
||||
if (isIndeterminate) {
|
||||
|
||||
if (isIndeterminate || tdi.value < tdi.max) {
|
||||
if (QProgressStyleAnimation *animation = qobject_cast<QProgressStyleAnimation*>(d->animation(opt->styleObject)))
|
||||
tdi.trackInfo.progress.phase = animation->animationStep();
|
||||
else
|
||||
|
@ -58,7 +58,9 @@ private slots:
|
||||
void text();
|
||||
void format();
|
||||
void setValueRepaint();
|
||||
#ifndef Q_OS_MAC
|
||||
void setMinMaxRepaint();
|
||||
#endif
|
||||
void sizeHint();
|
||||
void formatedText_data();
|
||||
void formatedText();
|
||||
@ -212,6 +214,10 @@ void tst_QProgressBar::setValueRepaint()
|
||||
}
|
||||
}
|
||||
|
||||
// This test is invalid on Mac, since progressbars
|
||||
// are animated there
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
void tst_QProgressBar::setMinMaxRepaint()
|
||||
{
|
||||
ProgressBar pbar;
|
||||
@ -247,6 +253,7 @@ void tst_QProgressBar::setMinMaxRepaint()
|
||||
QTRY_VERIFY(pbar.repainted);
|
||||
}
|
||||
}
|
||||
#endif //Q_OS_MAC
|
||||
|
||||
void tst_QProgressBar::sizeHint()
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user