Use titleHtml where appropriate

What does this MR do and why?

Closes Emojis in work item titles are not rendered in ... (#597261)titleHtml is the canonical, safe rendered variant of title for work items and issuables in general, so use it with v-safe-html wherever possible to ensure e.g. emojis are rendered consistently anywhere work item titles are shown.

This became the case as of Use regular non-Markdown single line pipeline f... (!224839 - merged), but as noted in that MR, there are still places where just title was used (occasionally with some hacks to e.g. manually render emoji in an ad-hoc fashion); this MR tries to round up all the stragglers.

Note that titleHtml is only safe for use with v-safe-html because it has been rendered and sanitised by the backend first. Please note that, despite its name, v-safe-html cannot be used safely with plain text, such as title — that's how we get XSS.

Screenshots or screen recordings

I have a work item with the name entered as Henwo :fox:, a task called Henwo task :fox:.

What Before After
Popover image image
Linked items image image
Child items image.png image.png
Parent item in sidebar image.png image.png
Parent metadata in work item list image.png image.png
Ancestor bread crumb trail image.png image.png
Issue board card title* image.png image.png

*Per the screenshots, issue board card titles worked before, but only in a hacky way: it manually parsed emoji in the text title. Now we rely on the backend to render them the same everywhere and delete the special-casing in issue boards.

How to set up and validate locally

  1. Check out the branch.

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Asherah Connor

Merge request reports

Loading