Bug 125536 - Garbled combo box within Format / Character / Font dialog box on macOS
Summary: Garbled combo box within Format / Character / Font dialog box on macOS
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
Version:
(earliest affected)
6.3.0.0.alpha1+
Hardware: All Mac OS X (All)
: medium trivial
Assignee: Thorsten Wagner
URL:
Whiteboard: target:6.5.0 target:6.4.0.2
Keywords:
Depends on:
Blocks: MacOS-Wishlist Button-Controls
  Show dependency treegraph
 
Reported: 2019-05-27 21:06 UTC by Thorsten Wagner
Modified: 2020-01-04 05:09 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
Screenshot (54.15 KB, image/png)
2019-05-27 21:06 UTC, Thorsten Wagner
Details
Screenshot 1 without patch (372.15 KB, image/png)
2020-01-01 15:11 UTC, Thorsten Wagner
Details
Screenshot 1 with patch (372.58 KB, image/png)
2020-01-01 15:11 UTC, Thorsten Wagner
Details
Screenshot 2 without patch (338.15 KB, image/png)
2020-01-01 15:11 UTC, Thorsten Wagner
Details
Screenshot 2 with patch (337.06 KB, image/png)
2020-01-01 15:12 UTC, Thorsten Wagner
Details
Screenshot 3 without patch (289.26 KB, image/png)
2020-01-01 15:12 UTC, Thorsten Wagner
Details
Screenshot 3 with patch (288.16 KB, image/png)
2020-01-01 15:13 UTC, Thorsten Wagner
Details
Screenshot 4 without patch (230.76 KB, image/png)
2020-01-01 15:13 UTC, Thorsten Wagner
Details
Screenshot 4 with patch (230.08 KB, image/png)
2020-01-01 15:14 UTC, Thorsten Wagner
Details
Screenshot 5 without patch (368.15 KB, image/png)
2020-01-01 15:14 UTC, Thorsten Wagner
Details
Screenshot 5 with patch (370.63 KB, image/png)
2020-01-01 15:14 UTC, Thorsten Wagner
Details
Screenshot 6 without patch (284.25 KB, image/png)
2020-01-01 15:15 UTC, Thorsten Wagner
Details
Screenshot 6 with patch (285.11 KB, image/png)
2020-01-01 15:17 UTC, Thorsten Wagner
Details
Screenshot 7 without patch (325.53 KB, image/png)
2020-01-01 15:18 UTC, Thorsten Wagner
Details
Screenshot 7 with patch (295.10 KB, image/png)
2020-01-01 15:19 UTC, Thorsten Wagner
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Thorsten Wagner 2019-05-27 21:06:11 UTC
Description:
Asian Text Font / Language combo box within Character / Font dialog boxes is garbled (see screenshot).

Steps to Reproduce:
(1) Open an LO application, e.g. Writer

(2) Select an appropriate Character / Font dialog box, e.g. Format / Character / Font

(3) Expand Asian Text Font / Language combo box for better visibility

Actual Results:
Combo box is rendered garbled (horizontal line artifact within combo box)

Expected Results:
Combo box is rendered without artifacts


Reproducible: Always


User Profile Reset: No


OpenGL enabled: Yes

Additional Info:
Issue is not related to LO 6.3. Issue exists since LO 5 at least.
Comment 1 Thorsten Wagner 2019-05-27 21:06:35 UTC
Created attachment 151717 [details]
Screenshot
Comment 2 Alex Thurgood 2019-05-28 07:31:26 UTC
Confirming with

Version: 6.3.0.0.alpha1+
Build ID: 92b0b8d78d69bd917842b09af7888b402144baeb
CPU threads: 4; OS: Mac OS X 10.14.4; UI render: default; VCL: osx; 
Locale: fr-FR (fr_FR.UTF-8); UI-Language: en-US
Calc: threaded

Doesn't need to be Asian font, even just opening the Insert Special Character dialog is enough to show the artefact on the Subset dropdown menu (default Liberation Serif font).
Comment 3 Thorsten Wagner 2020-01-01 13:01:40 UTC
To fix this issue investigation points to the following two files: vcl/inc/osx/salnativewidgets.h and vcl/osx/salnativewidgets.cxx:

(1) Throughout code mainly derived from OpenOffice Aqua porting effort there are many offsets by some pixels to refect special situations when rendering some widgets.

(2) To fix this issue a consistent approach to calculate and render all Carbon widgets is helpful.

To implement a consistent approach, both files vcl/inc/osx/salnativewidgets.h and vcl/osx/salnativewidgets.cxx have been reworked completely (a patch will be committed to Gerrit in short). Appoach to calculate widget bounds have been documented within vcl/osx/salnativewidgets.cxx.

There are issues with RTL text no releated to this patch (e.g. garbeled display of listbox/combobox dropdown windows) - will file separate Bugzilla issues.
Comment 4 Thorsten Wagner 2020-01-01 15:10:28 UTC
Patch submitted to Gerrit: https://gerrit.libreoffice.org/c/core/+/86066

Patch should resolve the following issues:

(1) Alignment of combobox dropdown window (see screenshots 1 without/with patch)

(2) Alignment of listbox dropdown window and listbox control after displaying dropdown window (see screenshots 2 without/with patch and screenshots 5 without/with patch)

(3) Left alignment of editboxes and comboboxes/listboxes (see screenshots 3 without/with patch)

(4) Rendering of spinbox within toolbar (see screenshots 4 without/with patch)

(5) Left alignment of spinboxes and editboxes/comboboxes/listboxes (see screenshots 6 without/with patch)

(7) Native right-handed disclosure triangle on RTL UIs (see screenshots 7 without/with patch)

(8) Vertical centering of progress indicator (e.g. when loading files, no screenshot)
Comment 5 Thorsten Wagner 2020-01-01 15:11:04 UTC
Created attachment 156872 [details]
Screenshot 1 without patch
Comment 6 Thorsten Wagner 2020-01-01 15:11:27 UTC
Created attachment 156873 [details]
Screenshot 1 with patch
Comment 7 Thorsten Wagner 2020-01-01 15:11:52 UTC
Created attachment 156874 [details]
Screenshot 2 without patch
Comment 8 Thorsten Wagner 2020-01-01 15:12:19 UTC
Created attachment 156875 [details]
Screenshot 2 with patch
Comment 9 Thorsten Wagner 2020-01-01 15:12:49 UTC
Created attachment 156876 [details]
Screenshot 3 without patch
Comment 10 Thorsten Wagner 2020-01-01 15:13:16 UTC
Created attachment 156877 [details]
Screenshot 3 with patch
Comment 11 Thorsten Wagner 2020-01-01 15:13:40 UTC
Created attachment 156878 [details]
Screenshot 4 without patch
Comment 12 Thorsten Wagner 2020-01-01 15:14:06 UTC
Created attachment 156879 [details]
Screenshot 4 with patch
Comment 13 Thorsten Wagner 2020-01-01 15:14:32 UTC
Created attachment 156880 [details]
Screenshot 5 without patch
Comment 14 Thorsten Wagner 2020-01-01 15:14:58 UTC
Created attachment 156881 [details]
Screenshot 5 with patch
Comment 15 Thorsten Wagner 2020-01-01 15:15:24 UTC
Created attachment 156882 [details]
Screenshot 6 without patch
Comment 16 Thorsten Wagner 2020-01-01 15:17:08 UTC
Created attachment 156883 [details]
Screenshot 6 with patch
Comment 17 Thorsten Wagner 2020-01-01 15:18:30 UTC
Created attachment 156884 [details]
Screenshot 7 without patch
Comment 18 Thorsten Wagner 2020-01-01 15:19:01 UTC
Created attachment 156885 [details]
Screenshot 7 with patch
Comment 19 Commit Notification 2020-01-02 18:16:12 UTC
Thorsten Wagner committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/9d31d8f1d8d3a73f8c07ca39f5ed45e2bb7b088c

tdf#125536 macOS native Carbon widgets reworked

It will be available in 6.5.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 20 Adolfo Jayme 2020-01-03 07:08:05 UTC
Excellent job, Thorsten!
Comment 21 Commit Notification 2020-01-04 05:09:29 UTC
Thorsten Wagner committed a patch related to this issue.
It has been pushed to "libreoffice-6-4":

https://git.libreoffice.org/core/commit/3367c986b78397c05e051daede2a8b60d705bffb

tdf#125536 macOS native Carbon widgets reworked

It will be available in 6.4.0.2.

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.