Files
gtk3/modules/input
Colin Walters 913cdf3be7 GDK: Prefix key names with KEY_
The keysyms create a lot of potential namespace conflicts for
C, and are especially problematic for introspection, where we take
constants into the namespace, so GDK_Display conflicts with GdkDisplay.

For C application compatiblity, add gdkkeysyms-compat.h which uses
the old names.

Just one user in GTK+ continues to use gdkkeysyms-compat.h, which is
the gtkimcontextsimple.c, since porting that requires porting more
custom Perl code.
2010-09-08 18:51:44 -04:00
..
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2010-09-08 18:51:44 -04:00
2010-09-08 18:51:44 -04:00
2010-09-08 18:51:44 -04:00
2010-09-08 18:51:44 -04:00
2008-07-01 22:57:50 +00:00
2010-09-08 18:51:44 -04:00
2010-09-08 18:51:44 -04:00
2010-09-08 18:51:44 -04:00
2008-07-01 22:57:50 +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