Bug 157790 - White triangles appear around a moving object (instead of the background)
Summary: White triangles appear around a moving object (instead of the background)
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
24.2.0.0 alpha0+
Hardware: All All
: medium normal
Assignee: Patrick Luby (volunteer)
URL:
Whiteboard: target:24.2.0
Keywords: bibisected, bisected, regression
Depends on:
Blocks: Impress-Gradient
  Show dependency treegraph
 
Reported: 2023-10-15 21:59 UTC by Gerald Pfeifer
Modified: 2023-10-26 11:42 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
Sample slide (ODP) (261.61 KB, application/vnd.oasis.opendocument.presentation)
2023-10-15 21:59 UTC, Gerald Pfeifer
Details
Screenshot of presentation mode (267.96 KB, image/png)
2023-10-15 21:59 UTC, Gerald Pfeifer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gerald Pfeifer 2023-10-15 21:59:02 UTC
Created attachment 190229 [details]
Sample slide (ODP)

This may be yet another 24.2 regression related to transparency.

1. Open the sample document
2. Invoke presentation mode
3. Observe how there are some white triangles "around" the moving
   drone instead of the green background we expect.

Seen in 

  Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
  Build ID: 489da34e9bffb234fa27155cef1931bd6f21dc1d
  CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
  Locale: en-US (en_US.UTF-8); UI: en-US

Not seen in 

  Version: 7.6.3.0.0+ (X86_64) / LibreOffice Community
  Build ID: 9c8a1994bea590db7436638580231daf31844fd6
  CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
  Locale: en-US (en_US.UTF-8); UI: en-US

So yet another regressions.
Comment 1 Gerald Pfeifer 2023-10-15 21:59:28 UTC
Created attachment 190230 [details]
Screenshot of presentation mode
Comment 2 m_a_riosv 2023-10-16 01:33:48 UTC
Reproducible with
Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 9eb419b0b0f019f5fbc48ff1a11977e8b041edee
CPU threads: 16; OS: Windows 10.0 Build 22621; UI render: Skia/Vulkan; VCL: win
Locale: es-ES (es_ES); UI: en-US Calc: CL threaded

Works for me with:
Version: 7.6.2.0.0+ (X86_64) / LibreOffice Community
Build ID: 0842e6ae7db830b7ccf540685174af101dc68bc0
CPU threads: 16; OS: Windows 10.0 Build 22621; UI render: Skia/Raster; VCL: win
Locale: es-ES (es_ES); UI: en-US Calc: CL threaded
Comment 3 BogdanB 2023-10-16 17:17:00 UTC
 c21a1c45e2403119c90af25cdb5350f978d5c93b is the first bad commit
commit c21a1c45e2403119c90af25cdb5350f978d5c93b
Author: Jenkins Build User <tdf@pollux.tdf>
Date:   Tue Jul 25 09:06:10 2023 +0200

    source 81994cb2b8b32453a92bcb011830fcb884f22ff3
    
    source 81994cb2b8b32453a92bcb011830fcb884f22ff3

 instdir/program/libchartcontrollerlo.so | Bin 3810384 -> 3810384 bytes
 instdir/program/libcppcanvaslo.so       | Bin 382552 -> 382552 bytes
 instdir/program/libcuilo.so             | Bin 5066680 -> 5066680 bytes
 instdir/program/libdrawinglayerlo.so    | Bin 2067536 -> 2067632 bytes
 instdir/program/libeditenglo.so         | Bin 3336888 -> 3336888 bytes
 instdir/program/libfrmlo.so             | Bin 4274440 -> 4274400 bytes
 instdir/program/libmsfilterlo.so        | Bin 1063760 -> 1063760 bytes
 instdir/program/libsclo.so              | Bin 22502464 -> 22502464 bytes
 instdir/program/libsdlo.so              | Bin 10531352 -> 10531352 bytes
 instdir/program/libsduilo.so            | Bin 2135776 -> 2135776 bytes
 instdir/program/libsfxlo.so             | Bin 7755888 -> 7755888 bytes
 instdir/program/libslideshowlo.so       | Bin 2904968 -> 2905016 bytes
 instdir/program/libsmlo.so              | Bin 2290704 -> 2290704 bytes
 instdir/program/libspllo.so             | Bin 96136 -> 96136 bytes
 instdir/program/libsvtlo.so             | Bin 3063720 -> 3063720 bytes
 instdir/program/libsvxcorelo.so         | Bin 12298416 -> 12298464 bytes
 instdir/program/libsvxlo.so             | Bin 5529544 -> 5529544 bytes
 instdir/program/libswlo.so              | Bin 22729480 -> 22729480 bytes
 instdir/program/libswuilo.so            | Bin 2985632 -> 2985640 bytes
 instdir/program/libtklo.so              | Bin 7023960 -> 7024008 bytes
 instdir/program/libvclcanvaslo.so       | Bin 1014736 -> 1014736 bytes
 instdir/program/libvcllo.so             | Bin 20328320 -> 20332568 bytes
 instdir/program/libvclplug_gtk3lo.so    | Bin 2748840 -> 2748840 bytes
 instdir/program/libvclplug_qt5lo.so     | Bin 2495136 -> 2495032 bytes
 instdir/program/setuprc                 |   2 +-
 instdir/program/versionrc               |   2 +-
 26 files changed, 2 insertions(+), 2 deletions(-)


author	Noel Grandin <noelgrandin@gmail.com>	2021-04-16 20:33:10 +0200
committer	Noel Grandin <noel.grandin@collabora.co.uk>	2023-07-25 08:38:12 +0200
commit 81994cb2b8b32453a92bcb011830fcb884f22ff3 (patch)
tree ae1750e92421ad2e0ec3f50351c3be6581841598
parent dabedcaf27b0af1e38a611b8d8e48444f848e01d (diff)
Convert internal vcl bitmap formats transparency->alpha (II)
(Second attempt at landing this)

Image formats and graphics APIs use alpha, not transparency,
so change our internal formats and data structures to work directly
with alpha, so we don't need to modify data before we push it to
graphics APIs.

Add a couple of new Color constants to make the intention
of the vcl code clearer.

Notes
(*) On macOS, tweaking the logic in CreateWithSalBitmapAndMask
to more accurately reflect the requirements of the
CGImageCreateWithMask function seems to fix some
tests.

(*) The vcl code does not properly support gradients
with transparency. So the previous code was wrong, and this
change is going to result in slightly different wrongness.

Change-Id: I9e21c2e98d88ecfdc5f75db13bd1ffff7c38db98
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114168
Tested-by: Jenkins
Reviewed-by: Patrick Luby <plubius@neooffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Comment 4 Gerald Pfeifer 2023-10-17 10:37:42 UTC
Hi Patrick, I'm afraid this is yet another instance of the 
alpha/transparency outfall of which you kindly fixed several already.
Comment 5 Patrick Luby (volunteer) 2023-10-17 13:06:44 UTC
I can also reproduce this bug.

I will need to do some debugging and find the code that draws this slideshow image. I will post again when I have any news.
Comment 6 Patrick Luby (volunteer) 2023-10-23 13:24:27 UTC
I noticed that my fix for bug 157795 in https://gerrit.libreoffice.org/c/core/+/158355 also fixes part of this bug. Specifically, the white background when printing, exporting to PDF, or after the transition has run in the slideshow is now green like it should be.

I still need to find where the slideshow transition is drawing the rotated images so that is what I will work on next.
Comment 7 Commit Notification 2023-10-25 05:51:29 UTC
Patrick Luby committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/4cf636fab338ad759e1a23bb8570cc9351ded0d0

tdf#157790 invert alpha mask

It will be available in 24.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 8 Patrick Luby (volunteer) 2023-10-25 12:20:37 UTC
I think that I have fixed this bug and the fix should should be in tomorrow's (26 October 2023) nightly master build.
Comment 9 BogdanB 2023-10-25 17:39:40 UTC
Thanks, Patrick, working well in
Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 9f3e8b2546563cdabbe01838a72ed542c7f58875
CPU threads: 16; OS: Linux 6.2; UI render: default; VCL: gtk3
Locale: ro-RO (ro_RO.UTF-8); UI: en-US
Calc: threaded
Comment 10 Gerald Pfeifer 2023-10-26 11:14:42 UTC
(In reply to Patrick Luby from comment #8)
> I think that I have fixed this bug and the fix should should be in
> tomorrow's (26 October 2023) nightly master build.

This is interesting since indeed like Bogdan reported, already
yesterday's snapshot (which from all I can see was built before
your push) has this fixed:

  Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
  Build ID: b14583ba37a6d7ce398ccd3cf339f954785b03d8
  CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
  Locale: en-US (en_US.UTF-8); UI: en-US

The previous version I have, datding back to 22 October 2023
still showed it:

  Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
  Build ID: b14583ba37a6d7ce398ccd3cf339f954785b03d8
  CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
  Locale: en-US (en_US.UTF-8); UI: en-US

Not a complaint :-), just a curious finding.
Comment 11 BogdanB 2023-10-26 11:42:37 UTC
I build myself LibreOffice, is not downloaded. This is why is from yesterday.