gnome-shell/data
Carlos Garnacho 42ae052da7 keyboard: Add Emoji keyboard
This keyboard works similar to GTK+'s emoji chooser (actually, both pull
from the same JSON file). Emojis are categorized in sections and variants
and kept in a "model".

The EmojiPager actor then uses this model to generate pages on-the-fly as
the user swipes around. This is an important optimization since the amount
of actors would rival with the rest of the shell otherwise.

The EmojiSelection object puts the EmojiPager, the page indicators and
a KeyContainer with the bottom row of emoji section shortcuts together to
implement the emoji panel as a whole.

The Keyboard object hooked this to an "emoji" key, which is just visible
on the Clutter.InputContentPurpose where showing an emoji would be
meaningful. Otherwise the surrounding buttons are made a bit wider to
cover up for it (i.e. as it was before).
2019-02-05 16:25:57 +01:00
..
dbus-interfaces introspect: Add GetWindows method 2019-01-09 10:13:45 +01:00
osk-layouts osk: Add Malayalam layout 2018-08-28 20:52:27 +02:00
theme keyboard: Add Emoji keyboard 2019-02-05 16:25:57 +01:00
00_org.gnome.shell.gschema.override Replace custom override schema with per-desktop override 2018-07-31 18:36:26 +00:00
50-gnome-shell-system.xml build: Say good-bye to intltool 2016-08-19 22:13:14 +02:00
emoji.json keyboard: Add Emoji keyboard 2019-02-05 16:25:57 +01:00
gnome-shell-dbus-interfaces.gresource.xml Add app introspection API 2019-01-09 10:13:45 +01:00
gnome-shell-extension-prefs.desktop.in.in extensionPrefs: Tweak UI 2017-02-15 23:20:14 +01:00
gnome-shell-osk-layouts.gresource.xml keyboard: Add Emoji keyboard 2019-02-05 16:25:57 +01:00
gnome-shell-overrides-migration.desktop.in tools: fix XDG desktop syntax in gnome-shell-overrides-migration 2018-08-03 00:49:49 +02:00
gnome-shell-overrides.convert data: Do not convert 'button-layout' setting 2014-06-10 12:32:28 +02:00
gnome-shell-theme.gresource.xml theme: Replace calendar arrow images with symbolic icons and CSS 2018-11-26 15:34:08 +00:00
gnome-shell-wayland.target Add systemd units 2018-07-17 18:10:06 +00:00
gnome-shell-x11.target Add systemd units 2018-07-17 18:10:06 +00:00
gnome-shell.portal Provide org.freedesktop.impl.portal.access implementation 2016-07-20 17:14:12 +02:00
gnome-shell.service.in Add systemd units 2018-07-17 18:10:06 +00:00
meson.build fileUtils: Add helper for loading D-Bus XML from resource 2018-09-17 07:34:49 +00:00
org.gnome.Shell.desktop.in.in build: Say good-bye to intltool 2016-08-19 22:13:14 +02:00
org.gnome.shell.gschema.xml.in windowManager: Add switch-to-application-n keybindings 2019-02-05 11:33:30 +00:00
org.gnome.Shell.PortalHelper.desktop.in.in Add translator comments to .desktop files 2016-08-19 23:15:20 +02:00
org.gnome.Shell.PortalHelper.service.in Add a helper to handle captive portal logins 2014-06-26 19:54:58 +02:00
perf-background.xml.in Add a special background to use for performance testing 2014-08-18 10:54:42 -04:00
README.osk-layouts data: Add README and supporting script to update keyboard layouts from CLDR 2018-02-05 17:46:57 +01:00
update-osk-layouts.sh data: Add README and supporting script to update keyboard layouts from CLDR 2018-02-05 17:46:57 +01:00

Gnome-shell OSK layouts are extracted from CLDR layout definitions:
https://www.unicode.org/cldr/charts/latest/keyboards/layouts/index.html

Updating these involves several steps:

1) Downloading and unzipping the tarball found at:
   http://www.unicode.org/Public/cldr/latest/keyboards.zip

   This file contains XML files describing the keyboard layouts.

2) Cloning the cldr2json script at:
   git://repo.or.cz/cldr2json.git

   It will be used to convert the XML files into JSON that can be
   directly consumed by gnome-shell.

3) Running the script to produce the files:
   ./cldr2json <input-directory> <output-directory>

   We shall usually use the "android" folder, since that's most
   complete, and similar to our UI and target sizes. And the target
   directory must be data/osk-layouts in this repository.

4) Modify gnome-shell-osk-layouts.gresource.xml to include the files

5) Do git add on the updated/new files, and git commit.


Or alternatively:

1) Run update-osk-layouts.sh

2) Do git add and git commit