IMContext


Object Hierarchy:

Gtk.IMContext Gtk.IMContext Gtk.IMContext GLib.Object GLib.Object GLib.Object->Gtk.IMContext

Description:

[ CCode ( type_id = "gtk_im_context_get_type ()" ) ]
public abstract class IMContext : Object

`GtkIMContext` defines the interface for GTK input methods.

`GtkIMContext` is used by GTK text input widgets like `GtkText` to map from key events to Unicode character strings.

An input method may consume multiple key events in sequence before finally outputting the composed result. This is called *preediting*, and an input method may provide feedback about this process by displaying the intermediate composition states as preedit text. To do so, the `GtkIMContext` will emit [signal@Gtk.IMContext:GtkIMContext:preedit-start], [signal@Gtk.IMContext: GtkIMContext:preedit-changed] and [signal@Gtk.IMContext:GtkIMContext:preedit-end] signals.

For instance, the built-in GTK input method [class@Gtk.IMContextSimple] implements the input of arbitrary Unicode code points by holding down the <kbd>Control</kbd> and <kbd>Shift</kbd> keys and then typing <kbd>u</kbd> followed by the hexadecimal digits of the code point. When releasing the <kbd>Control</kbd> and <kbd>Shift</kbd> keys, preediting ends and the character is inserted as text. For example,

Ctrl+Shift+u 2 0 A C

results in the € sign.

Additional input methods can be made available for use by GTK widgets as loadable modules. An input method module is a small shared library which provides a `GIOExtension` for the extension point named "gtk-im-module".

To connect a widget to the users preferred input method, you should use [class@Gtk.IMMulticontext].

All known sub-classes:

Namespace: Gtk
Package: gtk4

Content:

Properties:

Creation methods:

Methods:

Signals:

Inherited Members: