Some Unicode pictograms are not shown if they were first drawn with globalAlpha=0
Categories
(Core :: Graphics: Canvas2D, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr115 | --- | unaffected |
firefox-esr128 | --- | fixed |
firefox129 | --- | wontfix |
firefox130 | --- | fixed |
firefox131 | --- | fixed |
People
(Reporter: martynasma, Assigned: jfkthame)
References
(Regression)
Details
(Keywords: regression)
Attachments
(4 files)
625 bytes,
text/html
|
Details | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
phab-bot
:
approval-mozilla-beta+
|
Details | Review |
48 bytes,
text/x-phabricator-request
|
phab-bot
:
approval-mozilla-esr128+
|
Details | Review |
Reproduce:
- Create a <canvas> element
- Set
context.globalAlpha = 0
. - Draw text which includes Unicode pictograms, e.g. "🕛".
- Set
context.globalAlpha = 1
. - Draw text which includes Unicode pictograms, e.g. "🕛".
Live demo:
https://codepen.io/team/amcharts/pen/ExBvOod/782ea4f2c0233491a115df464405c164?editors=0010
Actual outcome:
- The first text is all invisible (correct).
- Only regular characters are visible in the second text, Unicode pictograms (e.g. 🕛) are still invisible, even though they take up space. (bug)
Desired outcome:
- All text, including Unicode pictograms should have been visible.
Comment 1•1 month ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Graphics: Canvas2D' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Comment 2•1 month ago
•
|
||
Can confirm.
Bisection:
Bug 1875670 - Add a cache for rasterized COLRv1 glyphs, because fully redrawing them on each use can be expensive. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D200139
Comment 3•1 month ago
|
||
Updated•1 month ago
|
Comment 4•1 month ago
|
||
Set release status flags based on info from the regressing bug 1875670
Updated•1 month ago
|
Assignee | ||
Comment 5•1 month ago
|
||
The reftest here currently fails on Android for what appears to be an
unrelated reason: reftest-analyzer shows that in the reference case,
all but the last line of text is completely missing.
I'm not sure what's failing there (but it fails similarly without this
patch, anyhow); we should investigate that as a separate bug.
Updated•1 month ago
|
Pushed by jkew@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/b1612e480369 Don't apply global alpha when creating a cached color glyph. r=gfx-reviewers,lsalzman
Comment 7•1 month ago
|
||
Backed out for causing reftest failures on 1912431-emoji-globalAlpha.html
Pushed by jkew@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6615415921d9 Don't apply global alpha when creating a cached color glyph. r=gfx-reviewers,lsalzman
Assignee | ||
Updated•1 month ago
|
Comment 9•1 month ago
|
||
Backed out for causing failures at globalAlpha.html
Backout link: https://hg.mozilla.org/integration/autoland/rev/ba1282f96e4613a1e25525ba8abcdb58217a4e10
Failure log: https://treeherder.mozilla.org/logviewer?job_id=470141575&repo=autoland&lineNumber=2610
Assignee | ||
Updated•1 month ago
|
Comment 10•1 month ago
|
||
Pushed by jkew@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/05e409210f6b Don't apply global alpha when creating a cached color glyph. r=gfx-reviewers,lsalzman
Comment 11•1 month ago
|
||
Backed out for reftest failure on 1912431-emoji-globalAlpha.html
Backout link: https://hg.mozilla.org/integration/autoland/rev/4a870b447bf201ab4e151d9f568af2aec2292d7a
Log link: https://treeherder.mozilla.org/logviewer?job_id=470161613&repo=autoland&lineNumber=5622
Assignee | ||
Comment 12•1 month ago
|
||
Sigh.... so many different backends, with subtly different rendering... :(. Tweaked the fuzz numbers again.
Comment 13•1 month ago
|
||
Pushed by jkew@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f189c9ba3746 Don't apply global alpha when creating a cached color glyph. r=gfx-reviewers,lsalzman
Comment 14•1 month ago
|
||
Backed out for causing reftest failures in 1912431-emoji-globalAlpha.html
- Backout link
- Push with failures
- Failure Log
- Failure line: REFTEST TEST-UNEXPECTED-PASS | gfx/tests/reftest/1912431-emoji-globalAlpha.html == gfx/tests/reftest/1912431-emoji-globalAlpha-ref.html | image comparison, max difference: 0, number of differing pixels: 0
Assignee | ||
Comment 15•1 month ago
|
||
Huh, so the Android failure (bug 1912718) doesn't always happen.
Comment 16•1 month ago
|
||
Pushed by jkew@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a39f4090a526 Don't apply global alpha when creating a cached color glyph. r=gfx-reviewers,lsalzman
Comment 17•1 month ago
|
||
bugherder |
Comment 18•1 month ago
|
||
The patch landed in nightly and beta is affected.
:jfkthame, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- If no, please set
status-firefox130
towontfix
.
For more information, please visit BugBot documentation.
Assignee | ||
Comment 19•1 month ago
|
||
The reftest here currently fails on Android for what appears to be an
unrelated reason: reftest-analyzer shows that in the reference case,
all but the last line of text is completely missing.
I'm not sure what's failing there (but it fails similarly without this
patch, anyhow); we should investigate that as a separate bug.
Original Revision: https://phabricator.services.mozilla.com/D219024
Updated•1 month ago
|
Comment 20•1 month ago
|
||
beta Uplift Approval Request
- User impact if declined: color glyphs (e.g. emoji) in <canvas> may be missing in some cases
- Code covered by automated testing: yes
- Fix verified in Nightly: no
- Needs manual QE test: no
- Steps to reproduce for manual QE testing: n/a
- Risk associated with taking this patch: minimal
- Explanation of risk level: trivial fix when creating a cached glyph image
- String changes made/needed: none
- Is Android affected?: yes
Assignee | ||
Updated•1 month ago
|
Updated•1 month ago
|
Updated•1 month ago
|
Comment 21•1 month ago
|
||
uplift |
https://hg.mozilla.org/releases/mozilla-beta/rev/f238b4e2b49e
Comment 22•29 days ago
|
||
Worth an ESR128 uplift also? Note that we would also need bug 1902253 for it to graft cleanly.
Assignee | ||
Comment 23•26 days ago
|
||
The reftest here currently fails on Android for what appears to be an
unrelated reason: reftest-analyzer shows that in the reference case,
all but the last line of text is completely missing.
I'm not sure what's failing there (but it fails similarly without this
patch, anyhow); we should investigate that as a separate bug.
Original Revision: https://phabricator.services.mozilla.com/D219024
Updated•26 days ago
|
Assignee | ||
Updated•26 days ago
|
Comment 24•26 days ago
|
||
esr128 Uplift Approval Request
- User impact if declined: color glyphs may fail to paint in canvas when globalAlpha has been used
- Code covered by automated testing: yes
- Fix verified in Nightly: yes
- Needs manual QE test: no
- Steps to reproduce for manual QE testing: n/a
- Risk associated with taking this patch: minimal
- Explanation of risk level: trivial (one-liner) fix when generating cached glyph image
- String changes made/needed: none
- Is Android affected?: yes
Updated•26 days ago
|
Comment 25•26 days ago
|
||
uplift |
https://hg.mozilla.org/releases/mozilla-esr128/rev/bc9f4040eb4d
Updated•26 days ago
|
Description
•