gtk/modules/input
Carlos Garnacho 493ca20912 ime: Add builtin handling of dead keys
The IME input method has been both ignoring keypresses of
non-spacing characters (ditching these as non displayable),
and not letting IME do anything about those.

Even though, the sparse documentation on IMM/IME seems to
hint that applications can't pipe non-spacing characters to
the input method manager, and experimentation shown that
those characters are indeed handled differently than how
it'd be expected.

Then, add basic handling of dead keys on the IME input method
itself , as it's not mutually exclusive with regular keymaps
with dead keys.

https://bugzilla.gnome.org/show_bug.cgi?id=704937
2013-07-29 20:04:45 -04:00
..
gtkimcontextime.c ime: Add builtin handling of dead keys 2013-07-29 20:04:45 -04:00
gtkimcontextime.h Change FSF Address 2012-02-27 17:06:11 +00:00
gtkimcontextmultipress.c imcontexts: Include config.h first 2013-05-07 14:06:12 +02:00
gtkimcontextmultipress.h Change FSF Address 2012-02-27 17:06:11 +00:00
gtkimcontextthai.c Change FSF Address 2012-02-27 17:06:11 +00:00
gtkimcontextthai.h Change FSF Address 2012-02-27 17:06:11 +00:00
gtkimcontextxim.c Deprecate and ignore gtk-im-status-style and gtk-im-preedit-style 2013-06-30 12:57:44 -04:00
gtkimcontextxim.h Change FSF Address 2012-02-27 17:06:11 +00:00
im-multipress.conf Remove the namespace prefix from functions defined locally only. Clean up 2009-01-16 15:02:06 +00:00
imam-et.c Change FSF Address 2012-02-27 17:06:11 +00:00
imcedilla.c Change FSF Address 2012-02-27 17:06:11 +00:00
imcyrillic-translit.c Change FSF Address 2012-02-27 17:06:11 +00:00
imime.c Change FSF Address 2012-02-27 17:06:11 +00:00
iminuktitut.c Change FSF Address 2012-02-27 17:06:11 +00:00
imipa.c Change FSF Address 2012-02-27 17:06:11 +00:00
imm-extra.h Change FSF Address 2012-02-27 17:06:11 +00:00
immultipress.c imcontexts: Include config.h first 2013-05-07 14:06:12 +02:00
imquartz.c imquartz: Fallback to slave IM context if no NSEvent exists. 2013-07-27 14:26:22 -07:00
imthai.c Change FSF Address 2012-02-27 17:06:11 +00:00
imti-er.c Change FSF Address 2012-02-27 17:06:11 +00:00
imti-et.c Change FSF Address 2012-02-27 17:06:11 +00:00
imviqr.c Change FSF Address 2012-02-27 17:06:11 +00:00
imxim.c Change FSF Address 2012-02-27 17:06:11 +00:00
Makefile.am modules/input: Only build quartz module if we're targeting quartz 2013-05-20 14:18:02 -04:00
README.multipress Maintenance of Multipress input method by Openismus GmbH: 2008-12-10 11:58:37 +00:00
thai-charprop.c Remove the broken Thai input method and add a functional Thai and Lao 2006-11-29 01:14:04 +00:00
thai-charprop.h Change FSF Address 2012-02-27 17:06:11 +00:00

*** Introduction

This is a GTK+ input method which allows text entry via the multi-press method, 
as on a mobile phone. When this has been installed, you can choose the "Multipress" 
menu item from the "Input Methods" submenu when right-clicking in a GTK+ text entry 
area. 

For instance:
- press a to get a, then wait 1 second for the character to be accepted.
or
- press dd to get e, then wait 1 second for the character to be accepted.
or
- press ad to get ad, then wait 1 second for the d character to be accepted.


*** Configuration

Edit the im-multipress.conf to define the keypresses needed to input particular characters.
This file is in GKeyFile-format, and contains explanatory comments.


*** Per-widget deactivation

When the input method is active (either by choosing it from the context menu, or 
by defining the default language as "*" in immultipress.c), the multipress 
behaviour can be turned off for individual widgets, like so:

  g_object_set_data(G_OBJECT(yourwidget), "multipress-passthrough-flag", GINT_TO_POINTER(1));


For a C++ gtkmm project, you could make a convenience function to do this. For instance:

  void multipress_deactivate(Gtk::Widget& widget)
  {
    static const Glib::Quark quark ("multipress-passthrough-flag");
    widget.set_data(quark, GINT_TO_POINTER(1));
  }

*** Contact

Please contact Openismus for assistance with this input method. You can email murrayc@openismus.com

Copyright 2006-2007, Openismus GmbH