Debugging an unrelated timer issue with GammaRay I noticed QtCurve can have multiple progressbar timers active in more complex applications like KDevelop even when progressbar aren't being animated (or are in fact not being shown/active). Progressbar timers run at 20Hz, which seems a bit fast for idling.
This patch introduces a rather basic improvement. The progressbar timer is started at an idling frequency of 2Hz unless it's being started for a progressbar which requires animation. It will then be set to the working frequency in the timerEvent callback, if and only if there are progressbars to be animated.