Bug 166647 - SLIDESHOW Hand-written Ink objects ("mouse as pen") are doubled each time a presentation is started or modified, depending on version
Summary: SLIDESHOW Hand-written Ink objects ("mouse as pen") are doubled each time a p...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
4.4.7.2 release
Hardware: x86-64 (AMD64) All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:26.2.0 target:25.8.1
Keywords: implementationError
Depends on:
Blocks: annotation(pen)
  Show dependency treegraph
 
Reported: 2025-05-19 15:06 UTC by Alex
Modified: 2025-08-11 22:07 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
A document with a single drawing already multiplied 8 times (15.35 KB, application/vnd.oasis.opendocument.presentation)
2025-05-19 15:07 UTC, Alex
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex 2025-05-19 15:06:46 UTC
Description:
In some circumstances, Impress duplicates "Ink-Notes" (using "mouse as pen" drawn while presenting) by a factor of 2 each time I start the presentation or add another mouse-as-pen drawing.

In short: when I start the presentation and draw a circle, then stop it, there's one red circle. Then I start and stop again (caveat: depends on the "version", see below), there's two circles (exactly overlain on each other). Start-Stop again makes it 4. Do that 10 times and we end up with >1000 copies already, making LO unresponsive.

Steps to Reproduce:
Depending on factors I have not yet understood (see https://bugs.documentfoundation.org/show_bug.cgi?id=112687#c20), the Ink is either stored as a single polyline (possibility #1) or as a set of individual lines and polygons (possibility #2, old behavior). This is something different of course, but I found it to be related.

Depending on how the "ink" is stored/represented, I found two ways of reproducing the behavior of duplicated "mouse-as-pen" drawings:
#1 (ink is a single polyline): start the presentation (no need to draw anything, but it's the same if you do) and stop again.
All _previous_ drawings (mouse-as-pen-made) are duplicated.

#2 (ink is a set of lines and polygons): start the presentation, but this time _you need to draw something_. Stop again: 
All _previous_ drawings (mouse-as-pen-made) are duplicated.

Actual Results:
My guess: all previous objects get duplicated once drawing has started. When that happens, somehow depends on the hardware !?

I currently don't have to many different LO versions at hand to test, but here's a few (testing results first, refs relate to versions in the "Other Information" section):

[1a]: follows #2 (individual lines), duplicates when drawing new lines
[1b]: different machine: follows #1 (one polyline), duplicates when starting the presentation
[1c]: Windows (VM), follows #1
[2]: follows #2
[3]: follows #1

So I don't see any pattern here with versions, rather than how the input might be processed:
[1b, 1c, 3]: Laptop with Touchscreen and Pen (though drawings done with a Mouse) and a VM (emulated USB Tablet)
[1a, 2]: Mouse only

Expected Results:
No duplication of drawings made using "mouse-as-pen" feature.


Reproducible: Always


User Profile Reset: Yes

Additional Info:
[1a]
Version: 25.2.3.2 (X86_64) / LibreOffice Community
Build ID: bbb074479178df812d175f709636b368952c2ce3
CPU threads: 12; OS: Linux 6.8; UI render: default; VCL: gtk3
Locale: de-DE (de_DE.UTF-8); UI: de-DE
Flatpak
Calc: threaded

[1b]
Version: 25.2.3.2 (X86_64) / LibreOffice Community
Build ID: bbb074479178df812d175f709636b368952c2ce3
CPU threads: 8; OS: Linux 6.8; UI render: default; VCL: gtk3
Locale: de-DE (de_DE.UTF-8); UI: de-DE
Flatpak
Calc: threaded

[1c] Version: 25.2.3.2 (X86_64) / LibreOffice Community
Build ID: bbb074479178df812d175f709636b368952c2ce3
CPU threads: 4; OS: Windows 11 X86_64 (10.0 build 26100); UI render: Skia/Raster; VCL: win
Locale: de-DE (de_DE); UI: de-DE
Calc: threaded

[2]
Version: 25.2.2.2 (X86_64) / LibreOffice Community
Build ID: 7370d4be9e3cf6031a51beef54ff3bda878e3fac
CPU threads: 12; OS: Linux 6.8; UI render: default; VCL: gtk3
Locale: de-DE (de_DE.UTF-8); UI: de-DE
Calc: threaded

[3]
Version: 24.2.7.2 (X86_64) / LibreOffice Community
Build ID: 420(Build:2)
CPU threads: 8; OS: Linux 6.8; UI render: default; VCL: gtk3
Locale: de-DE (de_DE.UTF-8); UI: de-DE
Ubuntu package version: 4:24.2.7-0ubuntu0.24.04.4
Calc: threaded
Comment 1 Alex 2025-05-19 15:07:27 UTC
Created attachment 200870 [details]
A document with a single drawing already multiplied 8 times
Comment 2 m_a_riosv 2025-05-19 21:37:01 UTC
Reproducible
Version: 25.2.3.1 (X86_64) / LibreOffice Community
Build ID: d8d1af5f77df955194e52baabe19324532ac8e8b
CPU threads: 16; OS: Windows 11 X86_64 (10.0 build 26100); UI render: Skia/Raster; VCL: win
Locale: en-US (es_ES); UI: en-US
Calc: CL threaded
+
Version: 25.8.0.0.alpha1+ (X86_64) / LibreOffice Community
Build ID: 94231af057db7871fb993582e2015c0fa21dde46
CPU threads: 16; OS: Windows 11 X86_64 (build 26100); UI render: Skia/Vulkan; VCL: win
Locale: es-ES (es_ES); UI: en-US
Calc: CL threaded
Comment 3 Regina Henschel 2025-06-22 18:57:48 UTC
It seems it was there from the beginning of keeping annotations in revision 44d83b68fd07342fdad4003ce4007e26669979f4

The feature to keep the annotations was introduced somewhere between version 4.0.1.2 and 4.4.7.2.

Use e.g. LO 5.1.6. Create a new presentation. Insert a shape e.g a rectangle. Enable "mouse as pen" in presentation settings. Start presentation. Draw a short line that is as straight as possible. Exit presentation mode.
Open Navigator. Set Navigator to show all shapes. Count how many shapes are created besides the rectangle.

Start presentation again. Do nothing in presentation mode. Exit presentation mode. Show again in Navigator. The shapes are duplicated.
Comment 4 Regina Henschel 2025-07-25 22:10:28 UTC
My proposal is in https://gerrit.libreoffice.org/c/core/+/188364.
Comment 5 Commit Notification 2025-08-11 06:52:49 UTC
Regina Henschel committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/c3448b4beaa2b0f4a19331841e6205a320ab6b75

tdf#166647 avoid duplicating slideshow user paint

It will be available in 26.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 Alex 2025-08-11 08:53:07 UTC
I'm sorry it took me so long to report back, somehow LO didn't want to compile on my system any more.

It does now - and I tested you patch: no duplication.

Thank you!
Comment 7 Commit Notification 2025-08-11 22:07:41 UTC
Regina Henschel committed a patch related to this issue.
It has been pushed to "libreoffice-25-8":

https://git.libreoffice.org/core/commit/a98b1523141a8c3bed01ee9781f6b4844960bd73

tdf#166647 avoid duplicating slideshow user paint

It will be available in 25.8.1.

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.