1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-07 16:10:46 -08:00
Commit graph

153460 commits

Author SHA1 Message Date
Po Lu
e91848344e Pass through caret position from native GTK input methods
* src/gtkutil.c (xg_im_context_preedit_changed): Set caret
position appropriately.
* src/xfns.c (xg_widget_key_press_event_cb): Ignore modifier
keys.
(xic_preedit_caret_callback, xic_preedit_draw_callback):
Constrain caret position to the string length as well.
2022-01-09 20:43:17 +08:00
Po Lu
59ede5cce8 Fix specification of caret position
* src/xfns.c (xic_preedit_caret_callback):
(xic_preedit_draw_callback): Use `cursor' property correctly.

* src/xterm.c (handle_one_xevent): Stop filtering XI release
events.  This caused more problems than it fixed.
2022-01-09 20:30:58 +08:00
Eli Zaretskii
fea3bed792 ; Minor wording fix in last NEWS entry. 2022-01-09 14:14:10 +02:00
Po Lu
5cee447ed0 Add missing part of last commit
* src/xterm.h (struct x_output): Add field `preedit_caret'.
2022-01-09 19:48:13 +08:00
Po Lu
d5499e3eb2 Display caret in preedit text where the input method asked
* src/xfns.c (xic_preedit_start_callback): Clear caret position.
(xic_preedit_caret_callback): Record new caret position and
announce it.
(xic_preedit_done_callback): Clear caret position.
(xic_preedit_draw_callback): Set caret position appropriately.
2022-01-09 19:46:14 +08:00
Po Lu
3dfefb8bb4 Fix native GTK input for cyrillic input methods
* src/gtkutil.c (xg_widget_key_press_cb): Get unicode mapping of
keyval if string doesn't exist.
* src/xterm.c (handle_one_xevent): Fix build without
HAVE_X_I18N.
2022-01-09 18:16:46 +08:00
Stefan Kangas
262a7c9ea0 New minor mode elide-head-mode
* lisp/elide-head.el (elide-head-mode): New minor mode.  (Bug#52980)
(elide-head--delete-overlay, elide-head--show)
(elide-head--hide): New functions factored out from ...
(elide-head, elide-head-show): ... here.  Make obsolete in favor
of elide-head-mode.
(elide-head-headers-to-hide): Doc fix.

* test/lisp/elide-head-tests.el (ert-x): Require.
(elide-head-tests-elide-head-mode)
(elide-head-tests-elide-head-mode/enable-disable)
(elide-head-tests-elide-head-mode/normal-mode)
(elide-head-tests-elide-head-mode/revert-buffer): New tests.
(elide-head--add-test): Update test to use elide-head-mode.
(elide-head-tests-elide-head)
(elide-head-tests-elide-head-with-prefix-arg)
(elide-head-tests-show): Make obsolete.
2022-01-09 11:12:06 +01:00
Po Lu
a2868656ab * lisp/term/x-win.el (x-preedit-text): Make edit overlay window local. 2022-01-09 17:50:51 +08:00
Po Lu
51ee62bf28 Reduce flicker on Haiku Emacs tooltips
* src/haikuterm.c (haiku_read_socket): Ignore motion events from
tooltip frames.
2022-01-09 06:54:08 +00:00
Stefan Kangas
3984ea8553 Merge from origin/emacs-28
30f1bdb41f Clarify docstring of package-native-compile
c54fda643d Fix Subject "simplification" in Rmail
2022-01-09 06:30:18 +01:00
Po Lu
af7ca138c4 ; * src/image.c (syms_of_image): Fix typo in last change. 2022-01-09 05:04:15 +00:00
Po Lu
0c1099d6d8 * src/image.c (syms_of_image): Declare support for webp on Haiku. 2022-01-09 05:00:37 +00:00
Po Lu
91f778d3af Add support for native webp images on Haiku
* src/haikuimage.c (haiku_can_use_native_image_api): Add support
for `webp' images.
2022-01-09 04:44:16 +00:00
Po Lu
97f41faf09 Make caps lock work on Haiku
* src/haiku_support.cc (map_caps):
(map_caps_shift): New functions.
(DispatchMessage): Map keys with the appropriate map if caps
lock is on.
2022-01-09 04:32:57 +00:00
Po Lu
8aad4cee32 Fix some problems with Haiku font display
* src/haiku_font_support.cc (BFont_char_bounds): Fix rounding
errors.
(BFont_open_pattern): Set size before setting family and style.
2022-01-09 03:24:44 +00:00
Stefan Kangas
30f1bdb41f Clarify docstring of package-native-compile
* lisp/emacs-lisp/package.el (package-native-compile): Clarify
docstring.
2022-01-09 03:18:38 +01:00
Po Lu
92e4460911 Implement override redirect on Haiku
* src/haiku_support.cc (pre_override_redirect_style):
(pre_override_redirect_feel): New variables.
(BWindow_set_override_redirect):
* src/haiku_support.h (BWindow_set_override_redirect): New
functions.
* src/haikufns.c (haiku_create_frame): Set override redirect.
(haiku_set_override_redirect): New function.
(haiku_frame_parm_handlers): Add `haiku_set_override_redirect'
2022-01-09 01:33:02 +00:00
Po Lu
c6e8b5354b Fix some portability bugs in gtkutil.c
* src/gtkutil.c (xg_widget_key_press_event_cb): Surround raising
SIGIO with USABLE_SIGIO.
2022-01-09 08:51:35 +08:00
Eli Zaretskii
c54fda643d Fix Subject "simplification" in Rmail
* lisp/mail/rmail.el (rmail-simplified-subject): Match against
"[external]" _after_ decoding the Subject by RFC-2047.
2022-01-08 16:32:01 +02:00
Stefan Kangas
762aa25fe7 ; Merge from origin/emacs-28
The following commit was skipped:

d193801f59 Bump Emacs version to 28.0.91
2022-01-08 14:43:28 +01:00
Stefan Kangas
42cdd0e5a6 Merge from origin/emacs-28
d2284b0353 ; Update files for 28.0.91 pretest

# Conflicts:
#	lisp/ldefs-boot.el
2022-01-08 14:43:28 +01:00
Po Lu
c1106b2ee7 Make sure native keypresses are received immediately on GTK
* src/gtkutil.c (xg_widget_key_press_event_cb): Send input
available signal.
2022-01-08 21:28:11 +08:00
Po Lu
e05512ba42 Fix pinch-to-scale on real X servers and NS
* lisp/face-remap.el (text-scale-pinch): Stop waiting for
more events.
2022-01-08 20:53:02 +08:00
Po Lu
2e60ca3713 Correctly translate GDK virtual modifiers when using native input
* src/gtkutil.c (xg_virtual_mods_to_x): New function.
(xg_widget_key_press_event_cb): Translate modifiers to X first.
2022-01-08 20:44:47 +08:00
Michael Albinus
9652736b08 Adapt Tramp for `auth-info-password'
* lisp/net/tramp-compat.el (tramp-compat-auth-info-password):
New defalias.

* lisp/net/tramp.el (tramp-read-passwd): Use it.
2022-01-08 13:38:18 +01:00
Stefan Kangas
d193801f59 Bump Emacs version to 28.0.91
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version to 28.0.91.
2022-01-08 13:09:29 +01:00
Stefan Kangas
d2284b0353 ; Update files for 28.0.91 pretest
* ChangeLog.3:
* etc/AUTHORS:
* lisp/ldefs-boot.el: Update.
2022-01-08 13:09:25 +01:00
Po Lu
a80125ae37 * src/haikuterm.c (haiku_clear_frame): Fix clipping. 2022-01-08 10:41:05 +00:00
Po Lu
86ed4b9858 Add an option to rely on passive touch grabs on X
This prevents crashes with three-finger touch gestures on
Xwayland running on GNOME Shell, and also when running some
programs that make use of an Emacs window's XID on the same X
server.

* src/xterm.c (handle_one_xevent): Respect
`x-input-grab-touch-events'.
(syms_of_xterm): New option `x-input-grab-touch-events.
2022-01-08 18:24:53 +08:00
Eli Zaretskii
e86a2ce5fc ; Fix last change. 2022-01-08 11:13:03 +02:00
Eli Zaretskii
6bf1bb384c Improve documentation of native input methods
* doc/emacs/mule.texi (International, Input Methods)
(Unibyte Mode): Document user-level features of native input
methods.
2022-01-08 11:10:42 +02:00
Po Lu
f7c3d62833 * lisp/cus-start.el (standard): Fix standard customizables for PGTK. 2022-01-08 15:30:02 +08:00
Po Lu
79cc87f3b7 Fix build on PGTK
* src/gtkutil.c (xg_mark_data):
* src/gtkutil.h (xg_filter_key): Ifdef out definitions on PGTK.
2022-01-08 15:27:50 +08:00
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
Po Lu
63c83e40da * src/pgtkterm.c (pgtk_enqueue_string): Free return of g_utf8_to_ucs4. 2022-01-08 11:18:59 +08:00
Po Lu
9bb71f8236 Call EVENT_INIT in some places
* src/xfns.c (xic_preedit_done_callback):
(xic_preedit_draw_callback): Call EVENT_INIT.
2022-01-08 11:16:22 +08:00
Sam Steingold
ad5cf84fa7 Add `auth-info-password' and use it instead of ad hoc code
* lisp/auth-source.el (auth-info-password):
  Extract from `auth-source-pick-first-password'.
(auth-source-pick-first-password, auth-source-secrets-create)
(auth-source-user-and-password): Use `auth-info-password'.
* lisp/erc/erc-services.el (erc-nickserv-get-password):
  Use `auth-source-pick-first-password'.
* lisp/erc/erc.el (erc-open, erc-server-join-channel): Likewise.
* lisp/gnus/mail-source.el (mail-source-set-1): Add a comment.
* lisp/gnus/nnimap.el (nnimap-credentials): Use `auth-info-password'.
* lisp/gnus/nntp.el (nntp-send-authinfo): Likewise.
* lisp/mail/rmail.el (rmail-get-remote-password): Likewise.
* lisp/mail/smtpmail.el (smtpmail-try-auth-methods): Likewise.
* lisp/net/sieve-manage.el (sieve-sasl-auth): Likewise.
* lisp/net/tramp.el (tramp-read-passwd): Likewise.
* lisp/net/rcirc.el (rcirc): Likewise (fixes a bug: the possibility
  that password might be a function was not handled).
2022-01-07 14:48:59 -05:00
Eli Zaretskii
19c6cad182 Fix "C-SPC C-SPC" after "C-x C-x"
* lisp/simple.el (exchange-point-and-mark): Fix what the command
does when 'transient-mark-mode' is OFF.  (Bug#52896)
2022-01-07 20:30:17 +02:00
Eli Zaretskii
c168afb6f6 Minor improvements for 'pgtk' documentation
* src/dispnew.c (syms_of_display) <initial-window-system>
<window-system>:
* src/frame.c (Fwindow_system):
* doc/lispref/display.texi (Defining Faces, Window Systems):
* doc/lispref/frames.texi (Frames): Mention/explain 'pgtk'/'haiku'.
* doc/lispref/commands.texi (Misc Events): Fix @example and
markup.
2022-01-07 16:38:47 +02:00
Yuuki Harano
f424ef88e2 Handle internal events specially on PGTK
* src/xgselect.c (xg_select): If there are pending events already,
don't sleep.
2022-01-07 22:09:13 +09:00
Yuuki Harano
a263824ae3 Write documentation about ARG of the preedit-text event on PGTK
* doc/lispref/commands.texi (Misc Events):
2022-01-07 21:17:27 +09:00
Po Lu
d4e48c3642 Fix special-cased cursor foreground and background correctly on PGTK
* src/pgtkfns.c (x_set_foreground_color):
(x_set_background_color): Set cursor color as well if
appropriate.  (bug#53073)
2022-01-07 20:01:11 +08:00
Po Lu
62f3942b89 Add documentation for the `none' input style
* doc/emacs/xresources.texi (Table of Resources): Document
missing value of `inputStyle'.
2022-01-07 19:08:56 +08:00
Po Lu
4c6d9b921c ; * doc/lispref/commands.texi (Misc Events): Fix typo. 2022-01-07 19:07:37 +08:00
Protesilaos Stavrou
11626f0c0c
* admin/MAINTAINERS: Describe Modus themes as externally maintained package 2022-01-07 11:40:54 +02:00
Po Lu
f501b572ed * doc/lispref/display.texi (Face Attributes): Update doc for new values. 2022-01-07 17:26:15 +08:00
Po Lu
f041d61008 Improve documentation of the preedit-text event
* doc/lispref/commands.texi (Misc Events): Document how
`preedit-text' events are used.
2022-01-07 17:26:13 +08:00
Po Lu
259229bf37 Disable new input method behaviour by default on X
* src/xfns.c (supported_xim_styles): Default to STYLE_NONE.
2022-01-07 17:25:32 +08:00
Eli Zaretskii
1fae01dacf ; * doc/lispref/commands.texi (Misc Events): Fix wording. 2022-01-07 10:11:33 +02:00
Eli Zaretskii
d99e32436d ; * doc/emacs/xresources.texi (Table of Resources): Use @table. 2022-01-07 09:57:43 +02:00