Bug 113290 - RTL: Animations that work letter-by-letter dont show diacritics during animation
Summary: RTL: Animations that work letter-by-letter dont show diacritics during animation
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
Inherited From OOo
Hardware: All All
: medium normal
Assignee: ⁨خالد حسني⁩
URL:
Whiteboard: target:24.2.0 target:7.6.0.0.beta2
Keywords:
Depends on:
Blocks: RTL-CTL Object-Animations
  Show dependency treegraph
 
Reported: 2017-10-20 13:24 UTC by Yousuf Philips (jay) (retired)
Modified: 2023-07-06 14:12 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
sample (18.06 KB, application/vnd.oasis.opendocument.presentation)
2017-10-20 13:25 UTC, Yousuf Philips (jay) (retired)
Details
sample including latin script (17.33 KB, application/vnd.oasis.opendocument.presentation)
2017-10-21 09:13 UTC, Shai Berger
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yousuf Philips (jay) (retired) 2017-10-20 13:24:46 UTC
steps:
1. open attachment
2. notice the arabic diacritics in title text textbox (slanted line the first letter from the right and the circle over the second letter from the right)
3. notice the hebrew diacritics in text frame textbox (the dot in the center of the first letter from the right, that looks like an n)
3. start slide show
4. notice that the letters appear without these diacritics

Version: 6.0.0.0.alpha1+
Build ID: 143c482b3189cb084fbdf5e6f78f15b43f099e24
CPU threads: 2; OS: Linux 4.4; UI render: default; VCL: gtk2; 
Locale: en-US (en_US.UTF-8); Calc: group
Comment 1 Yousuf Philips (jay) (retired) 2017-10-20 13:25:32 UTC
Created attachment 137142 [details]
sample
Comment 2 Shai Berger 2017-10-21 09:11:58 UTC
Notes: 

A) When I test it, the letters do have the diacritics in the end -- it's only during the animation that they're missing them. This is in line with the bug title, just not completely clear in the description.

B) At least on my version, the diacritics are missing during the animation also for Latin script (attachment forthcoming -- note the double dots, dieresis, above 'G' and 'e') so this bug may not be an RTL-specific issue

C) However, what is RTL specific is that during the animation, the letters are ordered LTR. It's a bit of on oddity in Hewbrew where letters are not connected, I believe it's quite a mess in connected scripts like Arabic.




Version: 5.4.1.2.0+
Build ID: 1:5.4.1-1
CPU threads: 4; OS: Linux 4.13; UI render: default; VCL: gtk3; 
Locale: en-US (en_IL.UTF-8); Calc: group
Comment 3 Shai Berger 2017-10-21 09:13:42 UTC
Created attachment 137180 [details]
sample including latin script
Comment 4 Yousuf Philips (jay) (retired) 2017-10-21 21:09:36 UTC
(In reply to Shai Berger from comment #2)
> B) At least on my version, the diacritics are missing during the animation
> also for Latin script (attachment forthcoming -- note the double dots,
> dieresis, above 'G' and 'e') so this bug may not be an RTL-specific issue

I wouldnt really call those diacritics for latin, as when i tested characters like ë (U+EB) from U+C0 to U+2AF, they worked just fine.

> C) However, what is RTL specific is that during the animation, the letters
> are ordered LTR. It's a bit of on oddity in Hewbrew where letters are not
> connected, I believe it's quite a mess in connected scripts like Arabic.

Yes that is already reported in bug 55361.
Comment 5 Shai Berger 2017-11-02 08:02:59 UTC
(In reply to Yousuf Philips (jay) from comment #4)
> (In reply to Shai Berger from comment #2)
> > B) At least on my version, the diacritics are missing during the animation
> > also for Latin script (attachment forthcoming -- note the double dots,
> > dieresis, above 'G' and 'e') so this bug may not be an RTL-specific issue
> 
> I wouldnt really call those diacritics for latin, as when i tested
> characters like ë (U+EB) from U+C0 to U+2AF, they worked just fine.
> 

There are two ways to represent such letters: You can use the "combined" code point, like U+EB, or you can use the separate code points for a letter and the dieresis (U+A8). As far as I recall, combined code points exist for vowels only, so you couldn't write the G with dieresis this way.

RTL languages happen to have much more diverse use of diacritics than Latin scripts, but the document I attached proves that the problem is not actually RTL related. I believe you'll find Thai, which also uses combining characters heavily, to have the same problem although it's LTR.
Comment 6 Omer Zak 2017-11-15 08:21:10 UTC Comment hidden (obsolete)
Comment 7 QA Administrators 2018-11-16 03:42:57 UTC Comment hidden (obsolete)
Comment 8 Shai Berger 2018-12-08 22:22:32 UTC
Version: 6.1.3.2
Build ID: 1:6.1.3-1
CPU threads: 4; OS: Linux 4.18; UI render: default; VCL: gtk3_kde5; 
Locale: en-US (en_IL.UTF-8); Calc: group threaded

(Not sure it's quite the last version, but it's what I have -- it's the current version on Debian testing)

Still happens as described. One more thing I noted now,  which I don't see in the descriptions:

Before starting the animation, note in the Arabic text, the diacritic of the letter Meem (a slanted line under the left end of the right-side word). Now start slide show. When the animation ends, other diacritics show up, but this one does not.
Comment 9 QA Administrators 2019-12-09 03:39:08 UTC Comment hidden (obsolete)
Comment 10 Buovjaga 2020-11-17 18:52:49 UTC Comment hidden (obsolete)
Comment 11 tomber 2021-07-02 07:54:24 UTC Comment hidden (spam)
Comment 12 QA Administrators 2023-07-03 03:11:51 UTC Comment hidden (obsolete)
Comment 13 Roman Kuznetsov 2023-07-05 17:31:55 UTC
https://gerrit.libreoffice.org/c/core/+/154066
Comment 14 Commit Notification 2023-07-05 21:22:14 UTC
Khaled Hosny committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/5d2fa4ab6e75609c30351f0623dac63182be4c27

tdf#113290: Fix handling of grapheme clusters in slideshow animations

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 15 ⁨خالد حسني⁩ 2023-07-05 22:38:15 UTC
(In reply to Shai Berger from comment #3)
> Created attachment 137180 [details]
> sample including latin script

The Latin text in this attachment is broken, though. The diacritic is inserted before the letters and this is degenerate when forming grapheme clusters. If the diacritic are inserted after the letters, they work fine (even after letters that does not have pre-composed diacritic form, like x).
Comment 16 Shai Berger 2023-07-06 05:09:53 UTC
Thanks for fixing the bug!

(In reply to ⁨خالد حسني⁩ from comment #15)
> (In reply to Shai Berger from comment #3)
> > Created attachment 137180 [details]
> > sample including latin script
> 
> The Latin text in this attachment is broken, though. The diacritic is
> inserted before the letters 

I'm not sure what that means, or how I could affect this as a user. I have no recollection of how exactly I created the document 5.5 years ago, but when I try to edit it now -- if I put the cursor after the combination and hit "backspace", it deletes only the dieresis; if I put the cursor before the combination and hit "delete", it removes the whole thing. If the order in memory (or on disk) is different, I would attribute the brokenness to LO version 5.4.1 which created it.
Comment 17 Commit Notification 2023-07-06 05:22:55 UTC
Khaled Hosny committed a patch related to this issue.
It has been pushed to "libreoffice-7-6":

https://git.libreoffice.org/core/commit/08152c9771b4f7d48f1a6b6dd1289d454d4f6514

tdf#113290: Fix handling of grapheme clusters in slideshow animations

It will be available in 7.6.0.0.beta2.

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 18 ⁨خالد حسني⁩ 2023-07-06 14:12:16 UTC
(In reply to Shai Berger from comment #16)
> Thanks for fixing the bug!
> 
> (In reply to ⁨خالد حسني⁩ from comment #15)
> > (In reply to Shai Berger from comment #3)
> > > Created attachment 137180 [details]
> > > sample including latin script
> > 
> > The Latin text in this attachment is broken, though. The diacritic is
> > inserted before the letters 
> 
> I'm not sure what that means, or how I could affect this as a user. I have
> no recollection of how exactly I created the document 5.5 years ago, but
> when I try to edit it now -- if I put the cursor after the combination and
> hit "backspace", it deletes only the dieresis; if I put the cursor before
> the combination and hit "delete", it removes the whole thing. If the order
> in memory (or on disk) is different, I would attribute the brokenness to LO
> version 5.4.1 which created it.

If I put the cursor after the G and hit backspace, I’m left with standalone diacritic, which indicate that the diacritic is before the letter not after it. After fixing this, the diacritics show correctly during animation.