Files
emacs/lisp
Po Lu d76fb0c11e Allow using GTK+ to handle input methods on X
* doc/emacs/xresources.texi (Table of Resources): Document new
value of `inputStyle'.
* etc/NEWS: Announce new option.

* lisp/cus-start.el (standard): Add `x-gtk-use-native-input'.
* src/gtkutil.c (xg_mark_data): Mark xg_pending_quit_event.
(xg_add_virtual_mods):
(xg_im_context_commit):
(xg_im_context_preedit_changed):
(xg_im_context_preedit_end):
(xg_widget_key_press_event_cb):
(xg_filter_key): New functions.
* src/gtkutil.h: Add prototype for `xg_filter_key'.
* src/xfns.c (xic_set_preeditarea): Set cursor location for the
GTK IM context as well.
* src/xterm.c (xg_pending_quit_event): New variable.
(x_focus_changed): Set focus on the GTK input context as well.
(x_filter_event): Filter events through GTK if the user asked
for it.
(handle_one_xevent): Likewise.
(XTread_socket): Set hold_quit to xg_pending_quit_event if it
exists.
(x_draw_window_cursor): Always set preedit area even if XIC
doesn't exist.
* src/xterm.h (struct x_display_info): New field
`prefer_native_input'.
(struct x_output): New field `im_context'.
2022-01-08 15:21:51 +08:00
..
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-05 14:28:37 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-05 06:30:39 +01:00
2022-01-01 07:03:03 -05:00
2022-01-05 17:07:07 +01:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-05 15:14:54 +02:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:25:56 +01:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-07 20:30:17 +02:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:07:15 -05:00
2022-01-01 07:07:15 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-02 16:46:02 +01:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 02:45:51 -05:00
2022-01-01 07:03:03 -05:00
2022-01-01 07:07:15 -05:00

This directory contains source code for the parts of Emacs that are
written in Emacs Lisp.  *.el files are Emacs Lisp source, and the
corresponding *.elc files are byte-compiled versions.  Byte-compiled
files are architecture-independent.

The term subdirectory contains Lisp files that customize Emacs for
certain terminal types.  When Emacs starts, it checks the TERM
environment variable to get the terminal type and loads
'term/${TERM}.el' if it exists.

The other subdirectories hold Lisp packages grouped by their general
purpose.