1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 16:51:06 -07:00
Commit graph

154372 commits

Author SHA1 Message Date
Andrew G Cohen
48e8569c87 Allow searching of nnselect (search) groups
* lisp/gnus/gnus-group.el (gnus-group-make-search-group):
(gnus-group-read-ephemeral-search-group):  Ensure the server is
correctly identified even for nnselect groups.
* lisp/gnus/gnus-search.el (gnus-search-nnselect): New function.
(gnus-search-default-engines): Use it.
(gnus-search-make-spec): Queries from nnselect should always be raw.
* lisp/gnus/nnselect.el (gnus-search): Silence the byte-compiler.
2022-02-11 15:09:46 +08:00
Po Lu
20da50619f * etc/PROBLEMS: Document some limitations of Xwayland and PGTK. 2022-02-11 14:46:25 +08:00
Po Lu
a9d54814b7 Don't make cursors affected by background alpha on PGTK
* src/ftcrfont.c (ftcrfont_draw):
* src/pgtkterm.c (x_clear_glyph_string_rect): Make behavior on
PGTK consistent with X.
2022-02-11 13:59:03 +08:00
Po Lu
9fdc0f08ce Set _NET_WM_OPAQUE_REGION on non-GTK3 toolkits when using 32 bit visual
* src/xfns.c (x_set_alpha_background): Set opaque region if
opaque.

* src/xterm.c (x_update_opaque_region): New parameter
`configure'.  All callers changed.
(handle_one_xevent): Call `x_update_opaque_region' on configure
events.
2022-02-11 13:44:42 +08:00
Po Lu
2d5b219239 Fix fallout from switch to 32-bit visuals
* src/xfns.c (x_decode_color): Make return type wide enough to
hold any pixel value.
* src/xterm.h (x_make_truecolor_pixel): Simplify.
2022-02-11 13:30:11 +08:00
Po Lu
c7bde98806 Improve reliability of selection ownership on Haiku
* src/haiku_select.cc (count_clipboard, count_primary)
(count_secondary): Initialize to -1
(BClipboard_set_system_data)
(BClipboard_set_primary_selection_data)
(BClipboard_set_secondary_selection_data): Store count before
saving to the the clipboard.
(BClipboard_owns_clipboard, BClipboard_owns_primary)
(BClipboard_owns_secondary): Adjust tests accordingly.
2022-02-11 02:37:38 +00:00
Po Lu
2469e03603 Disable nearest-color allocation on DirectColor visuals
* src/xterm.c (x_alloc_nearest_color_1): Disable such allocation
on DirectColor.  The method we use can't possibly work there.
2022-02-11 09:26:45 +08:00
Mattias Engdegård
26eeca71fb Silence macOS vfork deprecation warnings
The vfork system call exists and works in macOS 11.6 but the compiler
gives a deprecation message; silence it, because the performance is
still better than that of plain fork.  See discussion at
https://lists.gnu.org/archive/html/emacs-devel/2022-02/msg00260.html

* src/conf_post.h (VFORK): New #define.
* src/callproc.c (emacs_spawn):
* src/sysdep.c (sys_subshell): Use it.
2022-02-10 23:06:17 +01:00
Juri Linkov
437382734a * lisp/mouse.el (context-menu-map): Select only unselected window (bug#53910) 2022-02-10 20:57:42 +02:00
Juri Linkov
a6df8f9f99 * lisp/tab-line.el (tab-line-format): Use mode-line-window-selected-p.
Recently 'mode-line-window-selected-p' was added to
'tab-line-tab-name-format-default'.  Now add the same to another
place that handles the face 'tab-line-tab-current' (bug#53629).
2022-02-10 20:52:55 +02:00
Corwin Brust
64d211179d Autoload package-installed-p
* lisp/emacs-lisp/package.el (package-installed-p): Add autoload
cookie. (Bug#53885)

Copyright-paperwork-exempt: yes
2022-02-10 19:27:57 +02:00
Eli Zaretskii
2d897f7c66 Merge from origin/emacs-28
# Conflicts:
#	lisp/startup.el
2022-02-10 19:12:19 +02:00
Eli Zaretskii
c30106ce9f ; * lisp/startup.el (normal-top-level): Fix byte-compilation warning. 2022-02-10 19:05:41 +02:00
Alan Mackenzie
6548286446 Note current buffer and restore it in c-force-redisplay.
This fixes bug #52709.

* lisp/progmodes/cc-fonts.el (c-force-redisplay): New parameter BUFFER.  Set
current buffer to this before fontifying.
(c-fontify-new-found-type): Give the current buffer as argument to
run-with-timer.
2022-02-10 17:03:50 +00:00
Lars Ingebrigtsen
d64a1f7251 Restore command-line--load-script messaging
* lisp/startup.el (command-line--load-script): Restore previous
non-messaging behaviour.
2022-02-10 15:13:33 +01:00
Andrea Corallo
202d3be873 * lisp/startup.el (normal-top-level): Disable native-comp if not available 2022-02-10 14:26:29 +01:00
Michael Albinus
8ababad570 Improve handling of file modes in Tramp
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-get-remote-uid)
(tramp-gvfs-handle-get-remote-gid): Do not assume that the default
location is owned be the remote uid/gid.
(tramp-gvfs-handle-file-executable-p):
* lisp/net/tramp-sh.el (tramp-sh-handle-file-executable-p):
Check also for setuid/setgid bit.

* lisp/net/tramp.el (tramp-check-cached-permissions): Check also
for ?s access type.  Check whether remote uid/gid are unknown.
2022-02-10 14:14:06 +01:00
Lars Ingebrigtsen
53da8c50fc Don't signal a backtrace on empty --script files
* lisp/startup.el (command-line--load-script): New function that
avoids erroring out if it turns out there's no forms in the buffer
(bug#4616).

* lisp/subr.el (delete-line): New utility function.
* lisp/international/mule.el (load-with-code-conversion): Accept
an eval function.
2022-02-10 13:44:55 +01:00
Po Lu
15781beda8 Enable TrueColor allocation optimizations on all visuals
* src/xterm.c (x_alloc_nearest_color): Enable optimizations on
32-bit TrueColor visuals that legitimately don't have an alpha
mask.
2022-02-10 20:00:47 +08:00
Po Lu
d49c8cea43 Correctly premultiply background color of fringe bitmaps
* src/xterm.c (x_draw_fringe_bitmap): Premultiply alphas by
alpha_background.
2022-02-10 19:56:30 +08:00
Po Lu
e16a78c44e Correctly allocate colors in xftfont
* src/xftfont.c (struct xftface_info): New fields
`bg_allocated_p' and `fg_allocated_p'.
(xftfont_get_colors): Actually allocate colors and tell the
caller whether colors were allocated.
(xftfont_prepare_face): Set allocated fields.
(xftfont_done_face):
(xftfont_draw): Free colors that were allocated.
2022-02-10 18:45:35 +08:00
Dima Kogan
849895d0db Make comint-word actually check comint-file-name-quote-list
* lisp/comint.el (comint-word): We were checking for
comint-file-name-quote-list existing, but not actually comparing
to the characters in that list.  This patch actually checks the
contents of comint-file-name-quote-list (bug#53911).
2022-02-10 10:22:53 +01:00
Eli Zaretskii
d3c47011d5 Allow customization of the user's eln-cache directory
* lisp/startup.el (startup-redirect-eln-cache)
(startup--update-eln-cache): New functions.
(startup--original-eln-load-path): New defvar.
(normal-top-level): Record the original value of
'native-comp-eln-load-path' in 'startup--original-eln-load-path'.
Do not amend 'native-comp-eln-load-path' here, as that could
overwrite user customizations.
(command-line): Amend 'native-comp-eln-load-path' after loading
the early-init file, and then again after loading the user init
file.  (Bug#53891)

* etc/NEWS: Announce 'startup-redirect-eln-cache'.
2022-02-10 10:34:29 +02:00
Stefan Kangas
35bf8d4a02 Merge from origin/emacs-28
69e82968d7 Fix integer arithmetic miss-compilation (bug#53451)
31af9bca99 Mark flymake as compatible with emacs-26.1
2022-02-10 06:56:22 +01:00
Po Lu
aad91285c3 Fix disconnect errors on some X servers
* src/xfns.c (x_make_gc): Don't set FillOpaqueStippled on cursor
GC.  The reason is that some X servers break on such a fill
style if the operation being performed is not a stiple
operation.
2022-02-10 13:36:24 +08:00
Po Lu
0653a58380 Fill in missing pixel after PolyLine on scroll bars
* src/xterm.c (x_scroll_bar_expose): Draw bottom right corner of
scroll bar manually.
2022-02-10 12:57:47 +08:00
Po Lu
c867a43872 * src/haikugui.h [_cplusplus]: Remove extern "C" declarations.
These were left over from an old implementation strategy
abandoned long before the port was installed.
2022-02-10 03:25:19 +00:00
Po Lu
f9a7a81cde Improve reliability of hotplugging window managers
* src/xterm.c (x_make_frame_visible): Change the user time
window if the window manager supports something different from
what it did the first time the frame was made visible.
2022-02-10 10:21:15 +08:00
Po Lu
8df3052bdb Ignore tooltip frames when setting PGTK scrollbar foreground
* src/pgtkfns.c (pgtk_set_scroll_bar_foreground): Ignore tip
frames.  (bug#53900)
2022-02-10 10:11:19 +08:00
Po Lu
3f738b9095 ; * src/xterm.c (handle_one_event): Fix build error. 2022-02-10 10:01:44 +08:00
Tassilo Horn
f063e38521 ; show-paren: improve previous commit bb69361cbe
Update show-paren--last-pos also in the "not at paren position" case.
Otherwise, we don't get the context info when moving point from a
paren position to a non-paren position and back again.
2022-02-09 20:48:02 +01:00
Eli Zaretskii
55463952f2 ; * src/xterm.c (x_display_set_last_user_time): Fix compilation error. 2022-02-09 19:31:45 +02:00
Andrea Corallo
69e82968d7 Fix integer arithmetic miss-compilation (bug#53451)
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-set-range-for-arithm):
When one of the two sources is negated revert to set dst as
number.
* test/src/comp-tests.el (comp-tests-type-spec-tests): Add test to
verify this is effective.
2022-02-09 17:58:57 +01:00
Michael Albinus
f06915c93c Tilde expansion is not possible for Tramp sshfs method
* lisp/net/tramp.el (tramp-handle-expand-file-name):
Tilde expansion is not possible.  (Bug#53847)
2022-02-09 17:02:29 +01:00
Tassilo Horn
bb69361cbe show-paren: Don't show context again after C-g-ing it away.
* lisp/paren.el (show-paren--last-pos): New variable.
(show-paren-function): Don't show context again after C-g-ing it away.
2022-02-09 15:15:32 +01:00
Po Lu
2386aa8a5d Get rid of `register' declarations in X11 related files
* src/xfns.c (XScreenNumberOfScreen): Rewrite K&R declaration.
* src/xterm.c (x_set_offset): Remove `register' from `xoff' and
`yoff'.
2022-02-09 19:05:54 +08:00
Po Lu
7ead127a66 Fix compiler warning on GTK
* src/xterm.c (x_make_frame_visible): Make some fields that are
set but never used conditioned out on GTK.
2022-02-09 18:51:51 +08:00
Po Lu
7f425613a7 Add support for _NET_WM_USER_TIME_WINDOW
* src/xterm.c (x_make_frame_visible):
(x_display_set_last_user_time): Use and set user time window if
the WM supports it.
(x_term_init): Intern new atom.

* src/xterm.h (struct x_display_info): New atom
`_NET_WM_USER_TIME_WINDOW'.
(struct x_output): New field `user_time_window'.
2022-02-09 18:49:15 +08:00
Antoine Levitt
2f80d8058b Improve the set-fill-column prompt
* lisp/simple.el (set-fill-column): Improve the prompt (bug#53874).
2022-02-09 10:53:19 +01:00
Lars Ingebrigtsen
65a61154d8 Make calendar-exit actually respect the KILL parameter
* lisp/calendar/calendar.el (calendar-exit): Really kill off all
the buffers (if requested) (bug#53870).
2022-02-09 09:32:50 +01:00
Po Lu
7f9335f91d Implement _NET_WM_USER_TIME protocol
* src/xterm.c (x_display_set_last_user_time): Set user time on
the active window.
(handle_one_xevent): Only set user time when the user actually
interacted with Emacs.
(x_make_frame_visible): Set user time if non-zero.
(x_term_init): Intern `_NET_WM_USER_TIME'.
* src/xterm.h (struct x_display_info): New field
`Xatom_net_wm_user_time'.
(x_display_set_last_user_time): Implement in xterm.c instead.
2022-02-09 16:07:59 +08:00
Po Lu
5627693ce3 Explictly specify whether or not to respect alpha-background on Cairo
* src/ftcrfont.c (ftcrfont_draw): Don't respect
`alpha-background' if drawing cursor.  (bug#53890)
* src/xterm.c (x_set_cr_source_with_gc_foreground):
(x_set_cr_source_with_gc_background): New parameters
`respect_alpha_background'.  All callers changed.
* src/xterm.h: Update protoypes.
2022-02-09 15:04:12 +08:00
Tassilo Horn
3477245526 Mention `overlay' show-paren-context-when-offscreen value in NEWS
* etc/NEWS: Mention `overlay' value of
show-paren-context-when-offscreen.
2022-02-09 06:55:35 +01:00
Stefan Kangas
9459399d58 Merge from origin/emacs-28
82e74e4559 flymake: Ensure compatibility with older Emacsen
2022-02-09 06:30:54 +01:00
Po Lu
11ff76153e Make haikufont_list_family actually work
* haikufont.c (haikufont_list_family): Intern returned font
families.
2022-02-09 05:09:24 +00:00
Po Lu
f96eee4e06 Implement `list_family' for the haikufont driver
* src/haiku_font_support.cc (be_list_font_families): New
function.
* src/haiku_support.h: Update prototypes.
* src/haikufont.c (haikufont_list_family): New function.
(haikufont_driver): Add `haikufont_list_family'.
2022-02-09 03:53:13 +00:00
Po Lu
d41a5e7e33 Improve selection of fonts available from `mouse-set-font'
People get confused on a build without font dialogs (such as a
Lucid build) if `menu-set-font' and `mouse-set-font' don't
present them a list of the fonts actually available on their
system.

* lisp/mouse.el (mouse-generate-font-name-for-menu)
(mouse-generate-font-menu): New functions.
(mouse-select-font): Allow the user to select from all fonts
available on the system.
(mouse-set-font): Use `mouse-select-font' to display font menu.
2022-02-09 11:27:15 +08:00
Po Lu
59ff15e350 Make sure the cursor can't move on top of a tooltip on Haiku
* src/haikuterm.c (haiku_read_socket): Work around leave
notification events not being sent on tooltip frames.
2022-02-09 02:10:36 +00:00
Po Lu
882cf2d0cd Fix creation of tooltip frames with a stippled background
* src/xfns.c (x_create_tip_frame): Init faces after creating the
drawable, since that's needed for loading stipple files.
2022-02-09 09:10:50 +08:00
Tassilo Horn
2755e6bba0 Allow showing show-paren context in an overlay
* lisp/paren.el (show-paren-context-when-offscreen): Add new
possibility `overlay'.
(show-paren--context-overlay): New defvar.
(show-paren--delete-context-overlay): New function.
(show-paren--show-context-in-overlay): New function.
(show-paren-function): Handle the new `overlay' case.
* lisp/emacs-lisp/eldoc.el (eldoc-display-message-no-interference-p):
There's no interference if `show-paren-context-when-offscreen' is
overlay or child-frame.
2022-02-08 21:54:56 +01:00