gtk/modules/input
Kazuki Iwamoto 74f57ee04d Avoid a crash in gtk_im_context_ime_reset
When GTK+ runs with inputim-ime.dll module, there is NULL
pointer reference. Because "context_ime->client_window" may
be NULL in gtk_im_context_ime_reset.

https://bugzilla.gnome.org/show_bug.cgi?id=644906
2011-06-06 19:33:23 -04:00
..
gtkimcontextime.c Avoid a crash in gtk_im_context_ime_reset 2011-06-06 19:33:23 -04:00
gtkimcontextime.h
gtkimcontextmultipress.c
gtkimcontextmultipress.h
gtkimcontextthai.c
gtkimcontextthai.h
gtkimcontextxim.c Replace gtk_misc_set_padding() with GtkWidget:margin properties 2011-06-02 18:49:54 +02:00
gtkimcontextxim.h
im-multipress.conf
imam-et.c
imcedilla.c
imcyrillic-translit.c
imime.c
iminuktitut.c
imipa.c
imm-extra.h
immultipress.c
imthai.c
imti-er.c
imti-et.c
imviqr.c
imxim.c
Makefile.am
README.multipress
thai-charprop.c
thai-charprop.h

*** 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