Commit graph

153117 commits

Author SHA1 Message Date
Po Lu
c9f05cbe3f Make precision scrolling work on margins and fringes
* lisp/pixel-scroll.el (pixel-scroll-precision-mode-map): Add
missing key definitions.
2021-12-24 15:35:39 +08:00
Po Lu
8e0d327b8c Remove useless functions from PGTK port that were breaking emacsbug
* src/pgtkfns.c (Fx_server_vendor, Fx_server_version): Remove
useless functions that returned invalid values.
(syms_of_pgtkfns): Stop defining removed subrs.
2021-12-24 15:24:35 +08:00
Po Lu
965b8b0fad Grab the server when warping the client pointer
* src/xfns.c (Fx_set_mouse_absolute_pixel_position):
* src/xterm.c (x_make_frame_invisible): Avoid race conditions
where the client pointer is destroyed between when it is
obtained and when XIWarpPointer is called.
2021-12-24 14:23:23 +08:00
Stefan Kangas
6a17bb4879 Merge from origin/emacs-28
04be23f19f Improve Xref documentation
edb1d491d9 * lisp/net/shr.el (shr-expand-url): Also strip trailing wh...
2021-12-24 06:30:41 +01:00
Po Lu
fbe026cb3e Acquire draw lock when updating menubar on Haiku
* src/haikumenu.c (digest_menu_items): Acquire draw lock.
2021-12-24 03:21:21 +00:00
Po Lu
7078af622b Fix menu grabs on XI2 Motif builds
* src/xmenu.c (x_activate_menubar) [USE_MOTIF]: Clear XI grab.
* src/xterm.c (xi_grab_or_ungrab_device) [USE_MOTIF]: Always
ungrab if a popup is active.
2021-12-24 11:10:09 +08:00
Po Lu
8c99628a71 Fix some more incorrect valuator clearing
* src/xterm.c (handle_one_xevent): Improve detection of stray
ungrab events.
2021-12-24 09:55:15 +08:00
Dmitry Gutov
04be23f19f Improve Xref documentation
* lisp/progmodes/xref.el (xref-item): Add docstring for 'summary'.
Fix typo in the header Commentary.
2021-12-24 03:25:22 +02:00
Po Lu
20647467be Drop scrollbar motion events when valuators are found
* src/xterm.c (handle_one_xevent): Drop XI_Motion if it's on
top of a scroll bar and a valuator is found.
2021-12-24 09:20:44 +08:00
Andreas Schwab
edb1d491d9 * lisp/net/shr.el (shr-expand-url): Also strip trailing
whitespace.
2021-12-23 19:07:49 +01:00
Glenn Morris
2fa7feca33 * doc/misc/Makefile.in (need_emacsver): Add missing members. 2021-12-23 08:34:16 -08:00
Po Lu
f9d518bc2f Make precision scrolling also work on various bars
* lisp/pixel-scroll.el (pixel-scroll-precision-mode-map):
Define keys for various kinds of bars.
2021-12-23 21:35:46 +08:00
Po Lu
03dc54ba7f Fix precision scrolling down for multi-line display strings
* lisp/pixel-scroll.el
(pixel-scroll-precision-scroll-down-page): Make sure Y delta
is appropriate before deciding on next-pos.
2021-12-23 21:26:59 +08:00
Po Lu
902f343c18 Set start to desired start when pixel scrolling to end of buffer
* lisp/pixel-scroll.el
(pixel-scroll-precision-scroll-down-page): Set start to desired
start when point cannot be moved further down.
2021-12-23 19:00:30 +08:00
Po Lu
d54d8a88e9 Allow window-text-pixel-size to measure pixels around a position
* doc/lispref/display.texi (Size of Displayed Text): Announce
new meaning of `from'.
* etc/NEWS: Announce changes.

* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-up-page):
Use new feature.

* src/xdisp.c (window_text_pixel_size): Understand a special
format of `from' that specifies the amount of pixels above or
below a position.

(Fwindow_text_pixel_size): Update doc string.
2021-12-23 18:55:54 +08:00
Lars Ingebrigtsen
2001ae5898 Revert back to using monospaced fonts in the mode line
* lisp/faces.el (mode-line-active, mode-line-inactive): Revert
back to using monospaced fonts on the mode line (for now).  The
main remaining usability problem is clicking on the very small "-"
characters in "U:--".
2021-12-23 11:44:57 +01:00
Eli Zaretskii
fb89711ebc ; Fix documentation of a recently-installed change
* lisp/gnus/message.el (message-server-alist)
(message-update-smtp-method-header): Doc string fixes.

* doc/misc/message.texi (Sending Variables): Fix wording and
markup.

* etc/NEWS: Fix the wording of the 'message-server-alist' entry.
2021-12-23 09:55:48 +02:00
Stefan Kangas
be38405b1f Merge from origin/emacs-28
29fffbdd87 Revert field-related thingatpt changes
9bcb732686 * lisp/window.el (quit-restore-window): Select previously ...
b7d31d6192 Revert "Remove Motif support"

# Conflicts:
#	etc/NEWS
2021-12-23 06:31:26 +01:00
Philip Kaludercic
b1cfdb3573 Fix wrong-type-argument
* message.el (message-update-smtp-method-header): Only Use address
part of mail-extract-address-component.
2021-12-23 00:38:34 +01:00
Philip Kaludercic
28fff38eeb Allow automatic X-Message-SMTP-Method header insertion
* message.el (message-server-alist): Add user option
(message-update-smtp-method-header): Add function
(message-send): Call message-update-smtp-method-header
* doc/misc/message.texi (Sending Variables): Document
message-server-alist
* etc/NEWS: Add news entry
2021-12-23 00:18:36 +01:00
Stefan Kangas
8cc7326d95 Fix compile time error in a pcase test
* test/lisp/emacs-lisp/pcase-tests.el (pcase-tests-cl-type): Fix test.
2021-12-22 22:59:36 +01:00
Stefan Kangas
8d846b8f8e Use defvar-keymap in minibuffer.el
* lisp/minibuffer.el (completion-in-region-mode-map)
(minibuffer-local-completion-map)
(minibuffer-local-must-match-map)
(minibuffer-local-filename-completion-map)
(minibuffer-local-ns-map, minibuffer-inactive-mode-map): Use
defvar-keymap.
2021-12-22 22:59:36 +01:00
Stefan Kangas
205030ba5a Make substitute-command-keys test less brittle
* test/lisp/help-tests.el (help-tests--test-keymap): New keymap
variable.
(help-tests-substitute-command-keys/keymaps): Make test less
brittle by using above new keymap.
2021-12-22 22:59:36 +01:00
Alan Third
ec1312d76a Add native HEIC support on macOS (bug#51381)
* lisp/image.el (image-type-header-regexps):
(image-type-file-name-regexps):
(image-type-auto-detectable): Add auto-detect code for heic.
* src/image.c (syms_of_image): Add heic as an image type under NS.
* src/nsimage.m (ns_can_use_native_image_api): Add heic to list of
possible image types in the native image support lookup.
2021-12-22 20:48:19 +00:00
Alan Third
ab0d7a2b83 Allow resizing undecorated frames on macOS (bug#28512, bug#31795)
* src/nsterm.m (FRAME_DECORATED_FLAGS, FRAME_UNDECORATED_FLAGS):
Remove unused defines.
* src/nsterm.m ([EmacsWindow initWithEmacsFrame:fullscreen:screen:]):
Since this is now the only place these defines are used just put them
inline and add NSWindowStyleMaskResizable for undecorated frames on
Cocoa.
2021-12-22 20:48:19 +00:00
Alan Third
89749a62b5 Make NS toolbar item ID more unique (bug#50160)
* src/nsmenu.m
([EmacsToolbar addDisplayItemWithImage:idx:tag:labelText:helpText:enabled:]):
Add the label to the identifier to avoid collisions between toolbar
items that use the same image.
2021-12-22 20:48:19 +00:00
Alan Third
42601d3a93 Make NS toolbar use NSString instead of C strings
* src/nsfns.m ([NSString stringWithLispString:]): Ensure that the lisp
object is actually a string.
* src/nsmenu.m (update_frame_tool_bar): Convert to NSString instead of
C strings.
([EmacsToolbar addDisplayItemWithImage:idx:tag:labelText:helpText:enabled:]):
No need to convert to NSString here anymore.
2021-12-22 20:48:19 +00:00
Alan Third
308ad05d37 Fix macfont backend color handling
* src/macfont.m (get_cgcolor): Replace use of ns_lookup_indexed_color.
(CG_SET_FILL_COLOR_WITH_FACE_FOREGROUND):
(CG_SET_FILL_COLOR_WITH_FACE_BACKGROUND):
(CG_SET_STROKE_COLOR_WITH_FACE_FOREGROUND): Fix call to get_cgcolor
and fix all callers.
2021-12-22 20:48:19 +00:00
Alan Third
11c0b25503 Further cleanup of NS color code
* src/dispextern.h (FACE_COLOR_TO_PIXEL): Remove define and fix all
callers.
* src/nsterm.h (struct nsfont_info): Remove color_table.
* src/nsterm.m ([NSColor colorWithUnsignedLong:]): Always assume the
input contains the correct alpha value.
(ns_lookup_indexed_color):
(ns_index_color):
(ns_color_index_to_rgba): Remove functions and fix all callers.
(ns_query_color): No longer set pixel to the lookup table index,
always just set it to the ARGB integer value.
(ns_defined_color): Ignore makeindex as we no longer set pixel to the
lookup table index.
(ns_initialize_display_info):
(ns_redisplay_interface): Remove lookup table.
(ns_term_init): Fix the alpha setting.

thing
2021-12-22 20:48:19 +00:00
Alan Third
0f427befe8 Simplify NS color handling
* src/image.c (RGB_TO_ULONG):
(ARGB_TO_ULONG):
(RED_FROM_ULONG):
(RED16_FROM_ULONG):
(GREEN16_FROM_ULONG):
(BLUE16_FROM_ULONG): Define these here for NS too.
* src/nsfns.m (ns_set_foreground_color):
(ns_set_background_color): Use new EmacsColor methods.
* src/nsterm.h (struct ns_color_table): Replace this struct with a
built-in Objective C type.
(RGB_TO_ULONG):
(ARGB_TO_ULONG):
(ALPHA_FROM_ULONG):
(RED_FROM_ULONG):
(GREEN_FROM_ULONG):
(BLUE_FROM_ULONG):
(RED16_FROM_ULONG):
(GREEN16_FROM_ULONG):
(BLUE16_FROM_ULONG): These are no longer needed in the NS specific code.
(struct ns_display_info): Use an NSMutableArray instead of a custom struct.
* src/nsterm.m ([NSColor colorWithUnsignedLong:hasAlpha:]):
([NSColor unsignedLong]): New methods.
(ns_lookup_indexed_color):
(ns_index_color): Use the NSMutableArray lookup table.
(ns_term_init):
(ns_color_index_to_rgba):
(ns_query_color): Use the new EmacsColor methods.
(ns_initialize_display_info):
(ns_delete_display): Initialize and release the NSMutableArray lookup table.
2021-12-22 20:48:19 +00:00
Jonas Bernoulli
5b0121b708 Help outline-minor-mode avoid some false matches
* lisp/international/emoji.el (emoji--generate-file): Help
'outline-minor-mode' avoid false matches by quoting certain
characters when they appear at bol in a multi-line string.
2021-12-22 20:03:00 +01:00
Jonas Bernoulli
7be73593b4 Hide transient prefix/suffix commands from execute-extended-command
* lisp/international/emoji.el (emoji--define-transient): Hide
transient prefix/suffix commands from 'execute-extended-command'
by declaring that they should only be listed in the non-existent
'not-a-mode' mode.
2021-12-22 20:02:00 +01:00
Michael Albinus
8d0efd87e1 Fix some Tramp tests
* test/lisp/net/tramp-tests.el (tramp-test07-file-exists-p)
(tramp-test14-delete-directory, tramp-test29-start-file-process)
(tramp-test30-make-process): Adapt tests.
2021-12-22 18:13:18 +01:00
Mattias Engdegård
ccba86be78 Use unibyte strings in ntlm auth requests and responses
* lisp/net/ntlm.el (ntlm-build-auth-request)
(ntlm-build-auth-response): Make sure to use unibyte strings for bytes
greater than 127, or base64 encoding will fail.
This should fix failures in ntlm-tests.
2021-12-22 16:34:26 +01:00
Eli Zaretskii
ca5c527ade ; * etc/NEWS: Fix a recently-added entry. 2021-12-22 16:24:56 +02:00
Lars Ingebrigtsen
b7faac0fef Adjust test after recent help.el change 2021-12-22 15:19:41 +01:00
Po Lu
3dbe7caed7 * src/pgtkterm.c (scroll_event): Fix scroll delta scale. 2021-12-22 21:36:18 +08:00
Po Lu
551fe22557 * src/pgtkterm.c (scroll_event): Fix sign of delta_y. 2021-12-22 21:33:00 +08:00
Po Lu
4154a85d81 Disable by default and add NEWS entry to the new completion behavior
* etc/NEWS: Announce 'completion-auto-select'.
* lisp/simple.el (completion-auto-select): Default to nil.
2021-12-22 21:33:00 +08:00
Lars Ingebrigtsen
29fffbdd87 Revert field-related thingatpt changes
This reverts 7db376e560, which led to
severe performance regressions when being run in large buffers with no
fields (bug#52593)
2021-12-22 13:56:47 +01:00
Lars Ingebrigtsen
70266929c3 Simplify disabled-command-function prompting
* lisp/novice.el (disabled-command-function): Use a prompt for
`read-event' instead of messaging it, so that people using
Emacspeak get the prompt read to them.
2021-12-22 13:34:15 +01:00
Lars Ingebrigtsen
dbd0eef0c7 Use pop-to-buffer-same-window in `M-x term'
* lisp/term.el (term): Allow `display-buffer*' customization to
take effect (bug#52688).
2021-12-22 13:00:55 +01:00
Po Lu
141bf182da Fix horizontal scrolling on PGTK
* src/pgtkterm.c (scroll_event): Fix for when
`mwheel-coalesce-scroll-events' is nil.
2021-12-22 17:29:27 +08:00
Po Lu
f703232b7f Use XI2 calls to warp the client pointer
* src/xfns.c (Fx_set_mouse_absolute_pixel_position):
* src/xterm.c (frame_set_mouse_pixel_position): Replace
calls to XWarpPointer with calls to XIWarpPointer with
the client pointer explictly specified.  This avoids the
odd situation where the client pointer of the root window
is not the client pointer of the frame.
2021-12-22 11:13:23 +08:00
Po Lu
026804b606 Fix GTK crash when clicking on xwidgets on XI2
* src/xterm.c (handle_one_xevent): Drop button events destined
for an xwidget.
2021-12-22 09:24:05 +08:00
Paul Eggert
4b7e73432c Update from gnulib 2021-12-21 15:37:30 -08:00
Philip Kaludercic
f1668ef23c Delete completion window on quitting
* lisp/simple.el (completion-list-mode-map): Rebind
delete-completion-window over keyboard-quit.
2021-12-21 22:31:18 +01:00
Philip Kaludercic
15693c8116 Allow for next-completion to wrap around the completion buffer
* lisp/simple.el (completion-wrap-movement): Add new option.
(previous-completion): Update docstring.
(next-completion): Respect completion-wrap-movement.
(switch-to-completions): Handle backwards completion by jumping to the
end of the buffer.
* lisp/minibuffer.el: (minibuffer-local-completion-map): Bind
minibuffer-complete to backtab
(completion--in-region-1): Handle backtab to scroll backwards
2021-12-21 22:31:18 +01:00
Philip Kaludercic
f6967d2f66 Allow for the completion buffer to be automatically selected
* lisp/simple.el (completion-auto-select): Add new option.
(completion-setup-function): Respect completion-auto-select.
2021-12-21 22:31:18 +01:00
Juri Linkov
9bcb732686 * lisp/window.el (quit-restore-window): Select previously selected window.
After deleting the dedicated window, such as a window with *Completions*
buffer, select the previously selected window, like most of other 'cond'
branches do in this function (bug#52491).
2021-12-21 21:11:30 +02:00