Bug 140797 - Moving the top image (with images behind) is rather slow
Summary: Moving the top image (with images behind) is rather slow
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
7.0.0.0.beta1+
Hardware: All All
: medium normal
Assignee: Luboš Luňák
URL:
Whiteboard: target:7.2.0 target:7.1.2 target:7.0.6
Keywords:
Depends on:
Blocks:
 
Reported: 2021-03-04 13:04 UTC by Telesto
Modified: 2021-06-09 07:41 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
Example file (9.63 MB, application/vnd.oasis.opendocument.text)
2021-03-04 13:04 UTC, Telesto
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2021-03-04 13:04:19 UTC
Description:
Moving the top image (with images behind) is rather slow Skia Raster/GDI

Steps to Reproduce:
1. Open the attached file
2. Pick the first image on top of the to faces.. press arrow up/down (or hold) it notice the delay 

Actual Results:
Slow

Expected Results:
Fast


Reproducible: Always


User Profile Reset: No



Additional Info:
Found in
Version: 7.2.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: 385808a2dff7300ec0120fdd5e8acfad8f86e50d
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: default; VCL: win
Locale: nl-NL (nl_NL); UI: nl-NL
Calc: CL

and in
Version: 7.0.0.0.alpha1+ (x64)
Build ID: 574c57090642347980d2395e1e183cc7b5c171ad
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: default; VCL: win
Locale: nl-NL (nl_NL); UI: nl-NL
Calc: CL

Fast with some issue (frame lagging behind compared to image)
Version: 6.4.0.0.beta1+ (x64)
Build ID: 20be5cd0bdc57d812bf34a2debfe48caa51de881
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: default; VCL: win; 
Locale: nl-NL (nl_NL); UI-Language: en-US
Calc: CL
Comment 1 Telesto 2021-03-04 13:04:41 UTC
Created attachment 170210 [details]
Example file
Comment 2 Telesto 2021-03-04 13:06:53 UTC
And in
Version: 7.0.0.0.beta1+ (x64)
Build ID: 2891e91a513520d68ea2b8c59c14335861a15253
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: default; VCL: win
Locale: nl-NL (nl_NL); UI: en-US
Calc: CL
Comment 3 Luboš Luňák 2021-03-04 14:02:34 UTC
This has nothing to do with Skia, in fact AFAICT Skia still performs the best here.

It's either a problem of Writer redrawing too much, or VclProcessor2D::RenderMaskPrimitive2DPixel() thinking that implementing clipping using transparency is a good idea.
Comment 4 Luboš Luňák 2021-03-04 15:08:14 UTC
I actually couldn't bear the idea of knowing what VclProcessor2D::RenderMaskPrimitive2DPixel() does, and had to fix this: https://gerrit.libreoffice.org/c/core/+/111966 .
Comment 5 Commit Notification 2021-03-08 12:47:12 UTC
Luboš Luňák committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/6b8c157a0b4f37a09fdbf656919b2df06a3abc3e

make RenderMaskPrimitive2DPixel() clip using clipping (tdf#140797)

It will be available in 7.2.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 6 Commit Notification 2021-03-09 21:11:26 UTC
Luboš Luňák committed a patch related to this issue.
It has been pushed to "libreoffice-7-1":

https://git.libreoffice.org/core/commit/058b59ae92ca19beed698ad1a2d6ee6f1182213a

make RenderMaskPrimitive2DPixel() clip using clipping (tdf#140797)

It will be available in 7.1.2.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 7 Commit Notification 2021-03-10 09:18:41 UTC
Luboš Luňák committed a patch related to this issue.
It has been pushed to "libreoffice-7-0":

https://git.libreoffice.org/core/commit/3d343f870df96a96f133429c9df0d0d4488137db

make RenderMaskPrimitive2DPixel() clip using clipping (tdf#140797)

It will be available in 7.0.6.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.