Bug Hunting Session
Bug 123304 - Cannot deactivate OpenType features anymore in 6.2
Summary: Cannot deactivate OpenType features anymore in 6.2
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
6.2.0.0.alpha1+
Hardware: All All
: high major
Assignee: Khaled Hosny
URL:
Whiteboard: target:6.3.0 target:6.2.3 target:6.2.2
Keywords: bibisected, bisected, regression
Depends on:
Blocks: Font-Rendering
  Show dependency treegraph
 
Reported: 2019-02-10 12:20 UTC by Julius Becker
Modified: 2019-03-15 17:29 UTC (History)
7 users (show)

See Also:
Crash report or crash signature:


Attachments
sample file (8.66 KB, application/vnd.oasis.opendocument.text)
2019-02-13 15:31 UTC, Xisco Faulí
Details
Comparison master and 6.1 (109.76 KB, image/png)
2019-02-13 15:33 UTC, Xisco Faulí
Details
how it should look (22.54 KB, image/png)
2019-02-13 15:40 UTC, Xisco Faulí
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Julius Becker 2019-02-10 12:20:21 UTC
Description:
Since early 2017, LO supports ligatures and other OpenType features. You can activate and deactive them easily by adding :feature or :-feature to the font name. 
– activate: font:feature (Calibri:tnum)
– deactivate font:-feature (Calibri:-liga)

With LO 6.2.0.3, :-feature doesn't work anymore. Since standard ligatures (liga) are already activated as a default setting, it's impossible to deactive them.

Steps to Reproduce:
1. Use a font that supports ligatures (like Calibri) and enter fi, ffi, fl or ffl.
2. Mark the text and add :-liga to the font name (Calibri:-liga)

Actual Results:
The ligatures remain.

Expected Results:
The ligatures disappear.


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Comment 1 Dieter Praas 2019-02-13 08:33:18 UTC
I confirm that with

Version: 6.3.0.0.alpha0+ (x64)
Build ID: f42554a1886ebe49170c25096dc3281b2c7bb1f4
CPU threads: 4; OS: Windows 10.0; UI render: default; VCL: win; 
TinderBox: Win-x86_64@42, Branch:master, Time: 2019-02-08_22:37:30
Locale: en-US (de_DE); UI-Language: en-US
Calc: threaded

in comparison to

Version: 6.1.5.2 (x64)
Build-ID: 90f8dcf33c87b3705e78202e3df5142b201bd805
CPU-Threads: 4; BS: Windows 10.0; UI-Render: Standard; 
Gebietsschema: de-DE (de_DE); Calc: group threaded
Comment 2 Xisco Faulí 2019-02-13 15:31:26 UTC
Created attachment 149270 [details]
sample file

document using
Linux Biolinum G:liga
Linux Biolinum G:-liga
Linux Biolinum G
Comment 3 Xisco Faulí 2019-02-13 15:33:45 UTC
Created attachment 149271 [details]
Comparison master and 6.1
Comment 4 Xisco Faulí 2019-02-13 15:40:18 UTC
Created attachment 149272 [details]
how it should look
Comment 5 Xisco Faulí 2019-02-13 15:42:08 UTC
Regression introduced by:

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

author	Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>	2018-06-15 19:32:15 +0200
committer	Tomaž Vajngerl <quikee@gmail.com>	2018-06-16 18:04:31 +0200
commit	dc9ee533dc707cc10b99d537eaccc3ee5aa555fe (patch)
tree	bbe8c7547aac7b0440f874ed39945faa60a84276
parent	099eef24da24d638fdf2c747d28040c9b3a30780 (diff)
vcl: parser of font features included in the font name

Bisected with: bibisect-linux64-6.2

Adding Cc: to Tomaž Vajngerl
Comment 6 LibreTraining 2019-02-16 01:04:47 UTC
Also affects calt (Contextual Alternates) which is also on by default.

Today using v6.2.0.3 I noticed I could not disable calt (Vollkorn:-calt).

Thought it may be the font but I checked documents last edited 2/4/2019 where -calt was working with other fonts, and they also are not working now since updating LO from 6.1.4.2 to 6.2.0.3.
Comment 7 Khaled Hosny 2019-02-19 00:29:06 UTC
(In reply to Xisco Faulí from comment #5)
> Regression introduced by:
> 
> https://cgit.freedesktop.org/libreoffice/core/commit/
> ?id=dc9ee533dc707cc10b99d537eaccc3ee5aa555fe
> 
> author	Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>	2018-06-15 19:32:15
> +0200
> committer	Tomaž Vajngerl <quikee@gmail.com>	2018-06-16 18:04:31 +0200
> commit	dc9ee533dc707cc10b99d537eaccc3ee5aa555fe (patch)
> tree	bbe8c7547aac7b0440f874ed39945faa60a84276
> parent	099eef24da24d638fdf2c747d28040c9b3a30780 (diff)
> vcl: parser of font features included in the font name
> 
> Bisected with: bibisect-linux64-6.2
> 
> Adding Cc: to Tomaž Vajngerl

This commit replaces the use of hb_feature_from_string() with a much simpler feature syntax parser, which probably breaks more things as HarfBuzz syntax is more elaborate.
Comment 8 Khaled Hosny 2019-03-11 19:05:41 UTC
https://gerrit.libreoffice.org/#/c/69062/
Comment 9 Commit Notification 2019-03-11 23:55:52 UTC
Khaled Hosny committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/+/45deb5b714d2d011eb2a5ad91721a9c2c508a426%5E%21

tdf#123304: Allow the full feature syntax as pre 6.2

It will be available in 6.3.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 10 Commit Notification 2019-03-12 02:39:37 UTC
Khaled Hosny committed a patch related to this issue.
It has been pushed to "libreoffice-6-2":

https://git.libreoffice.org/core/+/3450311c403af714d3fc0ba14b9f7673c717a6a2%5E%21

tdf#123304: Allow the full feature syntax as pre 6.2

It will be available in 6.2.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 11 Xisco Faulí 2019-03-13 11:37:01 UTC
Verified in

Version: 6.3.0.0.alpha0+
Build ID: 8aa579830b20072af8d6e149d6b279362fe98b91
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; 
Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US
Calc: threaded

@Khaled Hosny, thanks for fixing this issue!
Comment 12 Commit Notification 2019-03-15 17:29:55 UTC
Khaled Hosny committed a patch related to this issue.
It has been pushed to "libreoffice-6-2-2":

https://git.libreoffice.org/core/+/5f3271f75383d4580299f0a38e57353fe161c3a6%5E%21

tdf#123304: Allow the full feature syntax as pre 6.2

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