Closed Bug 1403261 Opened 2 years ago Closed Last year

wr-text: implement partial ligatures?

Categories

(Core :: Graphics: WebRender, enhancement, P1)

enhancement

Tracking

()

RESOLVED FIXED
mozilla61
Tracking Status
firefox57 --- unaffected
firefox61 --- fixed

People

(Reporter: Gankra, Assigned: Gankra)

References

(Blocks 1 open bug)

Details

(Whiteboard: [wr-reserve])

Attachments

(3 files)

Attached file devanagari.html
Gecko has an obscure quality-of-implementation feature, which tries to render ligatures across style changes and elements (no one else does this). Basically it just chops up the glyphs by drawing them multiple times, with extra clip rects.

For now I'm making this fallback to gecko/blobs.

Longterm we either need to impl this or decide this isn't worth carrying forward.
Blocks: 1392723
For now falling back is probably fine. If we wanted to implement this we could probably do it without additional support from WebRender. Whether we want to is, I agree, an open question.
Oops patch to wrong bug.
Whiteboard: [wr-mvp] [triage]
Priority: -- → P2
Whiteboard: [wr-mvp] [triage] → [wr-mvp]
Assignee: nobody → a.beingessner
Status: NEW → ASSIGNED
Priority: P2 → P1
Comment on attachment 8912350 [details]
Bug 1403261 - enable native webrender handling of partial ligatures.

https://reviewboard.mozilla.org/r/183676/#review189336
Attachment #8912350 - Flags: review?(jmuizelaar) → review+
lol jeff thanks but that was the accidental patch that was already merged on the proper bug.
Blocks: 1407627
Summary: text-layers: implement partial ligatures? → wr-text: implement partial ligatures?
Assignee: a.beingessner → nobody
Status: ASSIGNED → NEW
Priority: P1 → P3
Whiteboard: [wr-mvp] → [wr-reserve]
Patch up to turn this on.

Once the patch in https://bugzilla.mozilla.org/show_bug.cgi?id=1401653 lands, this basically just works so might as well just flip the switch, stress out our clipping code a bit more.
Assignee: nobody → a.beingessner
Depends on: 1401653
Should fix the shadow clipping issue before landing this.
Depends on: 1414125
(In reply to Alexis Beingessner [:Gankro] from comment #0)
> Longterm we either need to impl this or decide this isn't worth carrying
> forward.

Note that Blink does plan to fix this in their layout engine rewrite: https://bugs.chromium.org/p/chromium/issues/detail?id=796943
bluh, legit failure on linux CI; not seeing it locally on macos. I'll check it out tomorrow morning on the linux box.
Found why implementing GetSize never seemed to work (it was insufficient!)

try push: https://treeherder.mozilla.org/#/jobs?repo=try&revision=a051ac78f2cf5c8db23f27af2adffa34efc5b9c6
results: looks good; two new passes on windows because we're no longer comparing some native content to fallback content (subpixel vs greyscale).
Comment on attachment 8912350 [details]
Bug 1403261 - enable native webrender handling of partial ligatures.

https://reviewboard.mozilla.org/r/183676/#review244716
Attachment #8912350 - Flags: review?(mstange) → review+
Comment on attachment 8968896 [details]
Bug 1403261 - remove fuzziness (no longer comparing fallback to native).

https://reviewboard.mozilla.org/r/237622/#review244714
Attachment #8968896 - Flags: review?(mstange) → review+
Keywords: checkin-needed
Pushed by kgupta@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/0b822d43971f
enable native webrender handling of partial ligatures. r=jrmuizel,mstange
https://hg.mozilla.org/integration/autoland/rev/cea91957ffe4
remove fuzziness (no longer comparing fallback to native). r=mstange
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/0b822d43971f
https://hg.mozilla.org/mozilla-central/rev/cea91957ffe4
Status: NEW → RESOLVED
Closed: Last year
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
You need to log in before you can comment on or make changes to this bug.