Bug 156427 - support GTK3 Emoji Chooser
Summary: support GTK3 Emoji Chooser
Status: RESOLVED NOTOURBUG
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
Version:
(earliest affected)
7.5.0.0 alpha0+
Hardware: All Linux (All)
: medium enhancement
Assignee: Not Assigned
URL: https://ask.libreoffice.org/t/how-can...
Whiteboard:
Keywords:
Depends on:
Blocks: GTK3
  Show dependency treegraph
 
Reported: 2023-07-22 20:56 UTC by Christoph Anton Mitterer
Modified: 2024-04-07 15:42 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christoph Anton Mitterer 2023-07-22 20:56:12 UTC
Description:
GTK supports a native Emoji Chooser, which should already work with GTK 3 used by Libreoffice (on Linux) and is activated by pressing Ctrl-. or Ctrl-; .

Interestingly this already works, when e.g. pressing the key sequence in the font selection drop down text field... but it does not work in the main text area.

It would be nice if Libreoffice could enable support for that.

Steps to Reproduce:
Position cursor in e.g. a Writer document text field, press Ctrl+. .

Actual Results:
nothing happens

Expected Results:
the emoji chooser should show up


Reproducible: Always


User Profile Reset: No

Additional Info:
Version: 7.5.5.2 (X86_64) / LibreOffice Community
Build ID: 50(Build:2)
CPU threads: 16; OS: Linux 6.3; UI render: default; VCL: gtk3
Locale: en-US (en_DE.UTF-8); UI: en-US
Debian package version: 4:7.5.5-2
Calc: threaded
Comment 1 Stéphane Guillou (stragu) 2023-07-24 09:41:19 UTC
Makes sense since the integrated LO picker was removed in LO 7.5 for bug 151197.
KDE users seem to be able to use their DE's emoji picker, but GNOME's shortcut for it only functions in shipped GTK apps (for example, works in Gedit).

Caolán, any thoughts on how doable that is?

On a German keyboard layout, shortcuts would be <Ctrl + Shift + ;> or <Ctrl + .>, which are not assigned to anything by default.

Tested on Ubuntu 20.04 with GNOME 3.36.8 and:

Version: 7.5.5.2 (X86_64) / LibreOffice Community
Build ID: ca8fe7424262805f223b9a2334bc7181abbcbf5e
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: threaded
Comment 2 Caolán McNamara 2024-04-07 15:42:34 UTC
Currently in gtk3 I see that the GtkEntry and GtkTextview have explicit bindings for ctrl+. and ctrl+; for "insert-emoji", but the GtkEmoji popover they use is internal in gtk3 and not exposed for external reuse.

In gtk4 https://developer-old.gnome.org/gtk4/stable/GtkEmojiChooser.html is it exposed, but not in gtk3

nm -D /usr/lib64/libgtk-4.so.1.800.3 |grep gtk_emoji_chooser_get_type
0000000000127980 T gtk_emoji_chooser_get_type

but 

$ nm -D /usr/lib64/libgtk-3.so.0.2406.32 |grep gtk_emoji_chooser_get_type

is silent. So as far as I can see it isn't practically possible to reuse that gtk emoji chooser from our main widget in gtk3 (but it could be under gtk4)