Bug 157947 - FILEOPEN PPTX: gluepoints are used in wrong order
Summary: FILEOPEN PPTX: gluepoints are used in wrong order
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
7.5.0.0 alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisected, bisected, implementationError
Depends on:
Blocks: Shape-Points PPTX-line-connector-import
  Show dependency treegraph
 
Reported: 2023-10-27 14:42 UTC by Regina Henschel
Modified: 2024-02-20 00:58 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
Examples with wrong gluepoint order (25.65 KB, application/vnd.openxmlformats-officedocument.presentationml.presentation)
2023-10-27 14:42 UTC, Regina Henschel
Details
List of affected shapes (3.45 KB, text/plain)
2023-10-27 14:43 UTC, Regina Henschel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Regina Henschel 2023-10-27 14:42:46 UTC
Created attachment 190453 [details]
Examples with wrong gluepoint order

Open attached file. It contains some shapes with connectors and screenshot of the rendering in PowerPoint. Notice, that Impress uses the wrong glue points.

The shapes get no own gluepoints during import. The current implementation assumes, that the gluepoints are in the order top-left-bottom-right in such case. But that is not true here. The gluepoint order is right-bottom-left-top.

The second attached file contains a list of all ooxml preset shapes, which have such a gluepoint order.

It would be possible to correct the order during import. But it might be a better solution to add the gluepoints to the mso_CustomShape struct of these shapes so that they get own gluepoints.
Comment 1 Regina Henschel 2023-10-27 14:43:19 UTC
Created attachment 190454 [details]
List of affected shapes
Comment 2 Xisco Faulí 2023-11-02 13:29:55 UTC
Reproduced in

Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 33ca16e94dcd9b74f39937bafaa76c8ca9189877
CPU threads: 8; OS: Linux 6.1; UI render: default; VCL: gtk3
Locale: es-ES (es_ES.UTF-8); UI: en-US
Calc: threaded

and

Version: 7.4.0.0.alpha1+ / LibreOffice Community
Build ID: c94961c6869c34b3874d21cfaa5ec1488609acfe
CPU threads: 8; OS: Linux 6.1; UI render: default; VCL: gtk3
Locale: es-ES (es_ES.UTF-8); UI: en-US
Calc: threaded
Comment 3 Xisco Faulí 2023-11-02 13:31:31 UTC
no reproduced in

Version: 6.0.0.0.alpha1+
Build ID: 6eeac3539ea4cac32d126c5e24141f262eb5a4d9
CPU threads: 8; OS: Linux 6.1; UI render: default; VCL: gtk3; 
Locale: es-ES (es_ES.UTF-8); Calc: group threaded

so this is a regression
Comment 4 Xisco Faulí 2023-11-02 13:35:12 UTC
Not reproduced with

Version: 7.3.7.2 / LibreOffice Community
Build ID: e114eadc50a9ff8d8c8a0567d6da8f454beeb84f
CPU threads: 8; OS: Linux 6.1; UI render: default; VCL: gtk3
Locale: de-DE (es_ES.UTF-8); UI: en-US
Calc: threaded

so it has to be bisected with 7.4 branch
Comment 5 Xisco Faulí 2023-11-02 14:53:47 UTC
Regression introduced by:

author	Tibor Nagy <nagy.tibor2@nisz.hu>	2022-03-10 08:42:12 +0100
committer	László Németh <nemeth@numbertext.org>	2022-03-29 16:12:45 +0200
commit cbf66ec3e60d07efb7c3cceed9b4f0fb4f0510c8 (patch)
tree c7e02c1e50525e42d7b15d000398631be3c7c697
parent bc601af632861896bdfaa14c96daf1a7ffdfcf71 (diff)
tdf#89449 PPTX import: fix line connectors

Bisected with: bibisect-linux64-7.4

Adding Cc: to Tibor Nagy
Comment 6 Regina Henschel 2023-11-09 13:26:27 UTC
It is no regression, because before the work of Tibor, the connectors were not imported as connectors but as simple shapes. When you move a gray target shape in the example file in LO 7.3, you can see that the "connector" shape is not fixed to the gray shape.

At least for action button shapes this cannot be fixed by changing the geometry definitions in EnhancedCustomShapeGeometry.cxx, because those describe the shapes from binary MS Office and for action button shapes that is very different from OOXML action button shapes. Instead it has to be fixed on import.

An idea for a fix is included in https://gerrit.libreoffice.org/c/core/+/156629. That is not yet ready for submit. But when it is in master, the solution there can be copied to slidepersist.cxx for import of pptx files.