Bug 128880 - btlr text not rendered in some tables
Summary: btlr text not rendered in some tables
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
6.3.3.2 release
Hardware: All All
: medium normal
Assignee: Miklos Vajna
URL:
Whiteboard: target:7.0.0 target:6.4.3 target:6.3.6
Keywords: bibisected, bisected, regression
: 130569 (view as bug list)
Depends on:
Blocks: Text-Direction-Unification docx-aggressive-competitors
  Show dependency treegraph
 
Reported: 2019-11-18 17:32 UTC by Luke
Modified: 2020-05-27 17:51 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments
Simple table with btlr text (12.50 KB, application/vnd.oasis.opendocument.text)
2019-11-18 17:34 UTC, Luke
Details
The example file in Writer 6.3 and 6.4 alpha (112.07 KB, image/png)
2019-11-20 16:24 UTC, NISZ LibreOffice Team
Details
Another file affected (39.34 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2019-12-20 15:57 UTC, Xisco Faulí
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Luke 2019-11-18 17:32:46 UTC
After https://cgit.freedesktop.org/libreoffice/core/commit/?id=8fdbda18b593e7014e44a0fd590bbf98d83258b7
Writer supported btlr text in tables. Shortly after that commit, the btlr text disappeared in some complex tables. 

Steps to reproduce:
1. Open attached file in lo 6.4+

Expected results
1. First cell under 2011 should read "USA" in btlr 


Version: 6.4.0.0.alpha0+ (x64) Build: 2f2f4767089512c34514896bc37823f9310e9dd4
CPU threads: 8; OS: Windows 10.0; UI render: GL; VCL: win; 
TinderBox: Win-x86_64@42, Branch:master, Time: 2019-07-10_02:13:57
Partial render U in "USA"


Version: 6.5.0.0.alpha0+ (x64) Build: d0ee281680711117099ac892acf84996af4af9e6
No "USA", error on edit of text

Note: The A in "USA" is missing with OpenGL. See Bug 126405
Comment 1 Luke 2019-11-18 17:34:15 UTC
Created attachment 155927 [details]
Simple table with btlr text
Comment 2 Luke 2019-11-18 17:51:25 UTC
Note there have always been rendering issues. This is a report about the point where the text disappears completely between 6.4 and 6.5.
Comment 3 NISZ LibreOffice Team 2019-11-20 16:19:22 UTC
bibisected using bibisect-win64-6.4 to:

https://cgit.freedesktop.org/libreoffice/core/commit/?id=435ab51ec8920033b7865f27f4afee8a852a0b31

author	Miklos Vajna <vmiklos@collabora.com>	2019-10-29 15:29:59 +0100
committer	Miklos Vajna <vmiklos@collabora.com>	2019-10-29 18:59:41 +0100

tdf#128399 sw btlr: fix clicking to lower rotated cell

Adding CC to: Miklos Vajna
Comment 4 NISZ LibreOffice Team 2019-11-20 16:24:56 UTC
Created attachment 155980 [details]
The example file in Writer 6.3 and 6.4 alpha

It wasn't readable before either but now even that little of that cells text is not visible.
Comment 5 Xisco Faulí 2019-12-19 13:18:59 UTC
Also reproduced with attachment 105774 [details] from bug 79272

Adding Cc to: Miklos Vajna
Comment 6 Xisco Faulí 2019-12-20 15:57:46 UTC
Created attachment 156700 [details]
Another file affected
Comment 7 Xisco Faulí 2020-01-30 15:32:03 UTC
Document from meta bug 128194 is also affected here ( see table in page 2 )
Comment 8 NISZ LibreOffice Team 2020-02-04 13:13:19 UTC
Another way to reproduce, this time with editor: 
- Open attachment #101906 [details] from bug #34436
- Select the rotated text and press Ctrl-M to remove direct formatting (character level rotation).
- Right click in the cell and select Table Properties then on Text Flow select Text orientation - Vertical (bottom to top)
- The text disappears from the cell.
Comment 9 Xisco Faulí 2020-02-27 16:03:10 UTC
Adding Cc: to Miklos Vajna
Comment 10 Miklos Vajna 2020-03-03 14:55:11 UTC
(In reply to Luke from comment #2)
> Note there have always been rendering issues. This is a report about the
> point where the text disappears completely between 6.4 and 6.5.

I'll take a look.
Comment 11 Commit Notification 2020-03-10 08:28:47 UTC
Miklos Vajna committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/74f0105a2c140d078932576b457a327f3d2490a6

tdf#128880 sw btlr: fix SwFrame::GetPaintArea() for the row span case

It will be available in 7.0.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 12 Miklos Vajna 2020-03-10 08:35:31 UTC
This not only fixes the regression, but improves the rendering so that it's on par with the "Japanese" direction.
Comment 13 Commit Notification 2020-03-10 16:09:01 UTC
Miklos Vajna committed a patch related to this issue.
It has been pushed to "libreoffice-6-4":

https://git.libreoffice.org/core/commit/72c0723bf97938d7eabd9ebe631e8442cb6b7699

tdf#128880 sw btlr: fix SwFrame::GetPaintArea() for the row span case

It will be available in 6.4.3.

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 14 Gabor Kelemen (allotropia) 2020-03-10 22:44:11 UTC
*** Bug 130569 has been marked as a duplicate of this bug. ***
Comment 15 Timur 2020-03-11 10:11:21 UTC
Verified for ODT attachment 155927 [details]

master:
real	0m29,498s
user	0m2,097s
sys	0m0,257s

oldest:
real	0m14,804s
user	0m2,623s
sys	0m0,351s


DOCX attachment 156700 [details] with 1 page now shows "Information Security Competencies" and it didn't. 
But now it has 3 pages (slightly more than 2) instead of 1. (How do I directly check if this source commit is the culprit, how do I translate source commit to bisect commit?) But that's existing László's.

master: 
real	1m40,812s
user	0m6,500s
sys	0m0,484s

oldest:
real	0m33,783s
user	0m4,175s
sys	0m0,318s


Verified DOCX attachment 105774 [details] now has "USA".


ODT attachment #101906 [details] test remains.


So, text is all OK. But I'm not sure about perf, numbers don't say so.
Comment 16 Miklos Vajna 2020-03-11 10:19:27 UTC
Let's keep using this bug for the original description:

"This is a report about the point where the text disappears completely between 6.4 and 6.5."

I actually already fixed more than that here, since the text now has even correct position, which was always broken. :-)

If there are other problems, that would be better in a new, follow-up bug as always.
Comment 17 Aron Budea 2020-03-11 10:23:32 UTC
(In reply to Timur from comment #15)
> (How do I directly check if this source commit is the culprit, how do I translate source commit to bisect commit?)
One can use the following command in the bibisect repo: git log --all --grep="<source git hash>"
(with the quotes, without the < and >)
Comment 18 Xisco Faulí 2020-03-11 11:19:44 UTC
Verified in

Version: 7.0.0.0.alpha0+
Build ID: dde0cf9eafed91c88d9999a294ea32fe0e8aa4bc
CPU threads: 4; OS: Linux 4.19; UI render: default; VCL: gtk3; 
Locale: en-US (en_US.UTF-8); UI-Language: en-US
Calc: threaded

@Miklos, thanks for fixing this issue!

@Timur, I don't reproduce the performance issue. Still, create a follow-up report as Miklos suggested!
Comment 19 Xisco Faulí 2020-03-11 11:32:36 UTC
Problem with attachment 156700 [details] reported in bug 131279
Comment 20 Commit Notification 2020-03-11 14:55:37 UTC
Miklos Vajna committed a patch related to this issue.
It has been pushed to "libreoffice-6-3":

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

tdf#128880 sw btlr: fix SwFrame::GetPaintArea() for the row span case

It will be available in 6.3.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.