Log Message: |
automatically merged revision 784703:
Large optimization of scrolling for pages containing "position: fixed"
objects.
.replace the dumb approach of repainting the whole page always,
by collecting fixed regions, repainting them individually,
then blit-scrolling the remaining surface.
.also maintain a tighter count of fixed objects, so that changes of
styles might trigger a switch from static to blitting (i.e. fast)
background.
.consequently, go all the way to using QWidget::scroll()
instead of native QWidget::move() for scrolling, so as to avoid the
unescapable flicker when switching from a method to the other.
QWidget::scroll is - I believe, a tad slower, but not significantly so,
and the gain in overall browsing smoothness is very satisfactory.
-change of scrolling method conveniently allows to avoid the serious
scrolling bugs in 4.4 beta, making it possible to remove the disabling
of alien widgets, which in turn should fix the problems Roman encountered
in Kopete.
CCMAIL: kedgedev@centrum.cz
|