[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice-devel
Subject:    Re: [PATCH] - Major performance, minor painting bug in kpresenter
From:       Thorsten Zachmann <t.zachmann () zagge ! de>
Date:       2004-12-25 12:34:21
Message-ID: 200412251334.21308.t.zachmann () zagge ! de
[Download RAW message or body]

Hello Maksim,

> Hi... Currently, there is a bug in how KPPixmapObject caches/draws which
> causes it to resize the pixmap every time it draws -- causing pixmap ->
> image -> pixmap conversion every time, which causes KPresenter to be
> slowwww with embedded images, and which also produces an unpainted line at
> border.
>
> The reason for this is that when the cached pixmap is generated, it is
> drawn to a rectangle that excludes the border. However, the pixmap
> generator makes it full-sizes, including the border. Hence, at each
> painting it has to resize it ~2 pixels down, and has double-border..

Good find. 

> --- kppixmapobject.cc   27 Aug 2003 14:45:39 -0000      1.88
> +++ kppixmapobject.cc   21 Dec 2004 16:02:36 -0000
> @@ -381,9 +381,7 @@ void KPPixmapObject::draw( QPainter *_pa
>
>      if ( !drawContour )
>      {
> -        QRect rect( (int)( penw ), (int)( penw ),
> -                    (int)( _zoomHandler->zoomItX( ow ) - 2 * penw ),
> -                    (int)( _zoomHandler->zoomItY( oh ) - 2 * penw ) );
> +        QRect rect( 0, 0, (int)( _zoomHandler->zoomItX( ow ) ), (int)(
> _zoomHandler->zoomItY( oh ) ) );
>          // ### HACK QT seems not to be able to correctly compare QVariant
>          bool variants1;
>          if (m_ie_par1.isNull())

Do you have access to CVS so that you can commit the code. If so please commit 
it to the 1.3 branch and also to HEAD. I you don't have access please let me 
know and I will commit it for you.

Have a nice Christmas,

Thorsten
_______________________________________________
koffice-devel mailing list
koffice-devel@kde.org
https://mail.kde.org/mailman/listinfo/koffice-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic