Skip to content

[wpe-2.46] font-feature-settings: 'liga' 1 doesn't work #1644

@asurdej-comcast

Description

@asurdej-comcast

With WebKit 2.46 ligatures doesn't work correctly. This should replace some well known text like "close" with an icon (X):

<span class="material-symbols-outlined loaded">close</span>

.material-symbols-outlined {
  font-feature-settings: 'liga' 1;
}

As a result you should see close icon rather than "close" text
It used to work well with 2.38 but doesn't work with webkit 2.46 and is a regression from 8685aa2 that was fixing #1516
This part to be precise: #if 0 && !USE(FONT_VARIANT_VIA_FEATURES) && !USE(FREETYPE)

Unfortunately, reverting that brings the text rendering performance problem back. It's visible with https://ytlr-cert.appspot.com/latest/main.html but also text page attached in #1516

Here is full test page:
test.html

<!DOCTYPE html>
<html dir="ltr">
  <head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="./templates.css">
  </head>
  <body>
    <span class="material-symbols-outlined loaded">close</span>
  </body>
</html>

templates.css:

@import url(https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0&icon_names=arrow_back,close,navigate_next,radio_button_checked,radio_button_unchecked&display=fallback);

.material-symbols-outlined {
  font-feature-settings: 'liga' 1;
}

body {
  background-color: white;
  margin: 0;

  display: flex;
  flex-direction: column;
  align-items: center; /* centers horizontally */
}

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions