tootle icon indicating copy to clipboard operation
tootle copied to clipboard

Emoji support

Open elegaanz opened this issue 6 years ago • 7 comments

elegaanz avatar May 15 '18 08:05 elegaanz

Currently I'm not aware of a solution to display emojis (or any images whatsoever) in gtk labels. Google tells me that newer libs can display emojis correctly if these are present:

cairo from git master
fontconfig from git master
pango 1.40.9 or .10
GTK+ from the gtk-3-22 branch

I really hope those will be available in @elementary OS Juno. For now I'll concentrate on more important things.

bleakgrey avatar May 15 '18 09:05 bleakgrey

On Arch Linux, regular unicode emoji work fine with the current git version. The regular GTK emoji entry works (ctrl+;) and they display fine in toots.

To handle custom emoji, it might require moving from GtkLabels to GtkTextViews and inserting images in the GtkTextBuffer.

martensitingale avatar May 17 '18 15:05 martensitingale

@martensitingale Can GtkTextViews also have clickable links? Without them it's pointless in this case.

bleakgrey avatar May 17 '18 15:05 bleakgrey

Yes, see the "Hypertext", "Markup", and "Multiple Views" (which demos images) examples under "Text View" in gtk3-demo. You can also put arbitrary widgets in the flow of text if you need more flexibility.

martensitingale avatar May 17 '18 15:05 martensitingale

Oh great, I guess it's totally doable then. It even solves the issue of instance-specific emojis.

bleakgrey avatar May 17 '18 15:05 bleakgrey

Just wondering, does this issue only refer to emojis in the sense of Unicode standard emojis, or also to the custom images some people are able to use by entering text between colons (like :blobmelt: or :blobdance:)?

null-von-sushi avatar Jul 07 '18 12:07 null-von-sushi

Technically the Unicode ones are already supported in Ubuntu 18.04 or similar distros, but it is unusable in Compose Toot dialog as the emoji selector gets clipped when it's used in a modal window (GTK behavior, can't fix that).

I'm going to rewrite this dialog with a custom emoji selector which will support both types of emojis.

bleakgrey avatar Jul 07 '18 12:07 bleakgrey