Commit graph

156469 commits

Author SHA1 Message Date
Po Lu
dbfbae8708 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2022-05-14 21:35:43 +08:00
Po Lu
2c4e998592 Minor fixes for popup dialogs on macOS
* nsmenu.m (pop_down_menu): Restore old hack for macOS.
([EmacsDialogPanel initWithTitle:isQuestion:]): Set command
title correctly.
2022-05-14 21:35:05 +08:00
Eli Zaretskii
725251094b Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs 2022-05-14 16:32:38 +03:00
Eli Zaretskii
640e52d8fa ; Fix mistakes in 'declare function' forms
* lisp/progmodes/gdb-mi.el (tooltip-show):
* lisp/vc/vc-git.el (grep-expand-template):
* lisp/cedet/semantic/imenu.el (pulse-momentary-highlight-one-line):
* lisp/mail/feedmail.el (smtpmail-via-smtp):
* lisp/mail/rmail.el (rmail-mime-entity-truncated):
* lisp/mail/rmailsum.el (rmail-cease-edit):
* lisp/progmodes/gud.el (speedbar-toggle-line-expansion)
(speedbar-edit-line):
* lisp/autoinsert.el (sgml-tag):
* lisp/comint.el (url-host, url-type, url-filename):
* lisp/progmodes/elisp-mode.el (xref-make, xref-item-location):
* lisp/vc/vc-hooks.el (vc-responsible-backend):
* lisp/cedet/semantic/complete.el (tooltip-show):
* lisp/doc-view.el (tooltip-show):
* lisp/follow.el (mwheel-scroll):
* lisp/term/pgtk-win.el (pgtk-set-resource):
* lisp/progmodes/cperl-mode.el (Info-find-node):
* lisp/lpr.el (print-region-function):
* lisp/w32-fns.el (w32-version, w32-read-registry):
* lisp/emacs-lisp/checkdoc.el (ispell-correct-p, checkdoc-dired):
* lisp/progmodes/xref.el (apropos-parse-pattern):
* lisp/cus-edit.el (apropos-parse-pattern):
* lisp/obsolete/gs.el (x-change-window-property):
* lisp/x-dnd.el (x-change-window-property):
* lisp/xwidget.el (make-xwidget):
* lisp/transient.el (info, Man-find-section, Man-next-section)
(Man-getpage-in-background):
* lisp/frame.el (x-device-class, pgtk-device-class):
* lisp/textmodes/texinfo.el (flymake--log-1):
* lisp/term/x-win.el (x-internal-focus-input-context): Fix
'declare function' errors uncovered by 'check-declare'.
2022-05-14 16:19:12 +03:00
Po Lu
5aef501d9c Fix processing of dialog box items on NS
* src/nsmenu.m (pop_down_menu): Remove old hack and discard menu
items.
(ns_popup_dialog):
([EmacsDialogPanel initWithContentRect:styleMask:backing:defer:]):
([EmacsDialogPanel windowShouldClose:]):
([EmacsDialogPanel dealloc]):
([EmacsDialogPanel processdialog:]):
([EmacsDialogPanel addButton:value:row:]):
([EmacsDialogPanel addString:row:]):
([EmacsDialogPanel clicked:]):
([EmacsDialogPanel initFromContents:isQuestion:]):
([EmacsDialogPanel timeouthandler:]):
([EmacsDialogPanel runDialogAt:]): Use the regular menu item
machinery to parse dialog items instead of the incorrect ad-hoc
code used previously.

* src/nsterm.h: Update prototypes.
2022-05-14 21:18:35 +08:00
Po Lu
e0044dfeb0 Avoid unsafe alloca when looking up toplevels
* src/xterm.c (x_dnd_compute_toplevels): Use SAFE_ALLOCA, since
alloca isn't safe when there are lots of toplevels or the window
manager is broken.
2022-05-14 20:07:56 +08:00
Eli Zaretskii
9a67e83bd6 Fix undigest-tests on MS-Windows
* lisp/emacs-lisp/ert-x.el (ert-with-temp-file): Accept a new
keyword argument :coding CODING to use as the encoding when
writing initial text to the temporary file.

* test/lisp/mail/undigest-tests.el (rmail-undigest-test-rfc934-digest)
(rmail-undigest-test-rfc1153-digest-strict)
(rmail-undigest-test-rfc1153-less-strict-digest)
(rmail-undigest-test-rfc1153-sloppy-digest)
(rmail-undigest-test-rfc1521-mime-digest)
(rmail-undigest-test-multipart-mixed-digest): Force the temporary
mbox files to have Unix-style EOL format.
2022-05-14 11:30:54 +03:00
Eli Zaretskii
e2e081a476 ; Fix the documentation of compiler-macros and advice
* doc/lispref/functions.texi (Advice and Byte Code): Fix typos
and improve wording and indexing.  (Bug#23264)
2022-05-14 10:34:50 +03:00
Martin Rudalics
88e0e034ef 2022-05-14 Martin Rudalics <rudalics@gmx.at>
* lisp/window.el (quit-restore-select-window): New function.
(quit-restore-window): Call 'quit-restore-select-window' to avoid
selecting inactive minibuffer window (Bug#55403).
2022-05-14 09:19:57 +02:00
Po Lu
df8efda552 Try to restore valuator values when a device is enabled
* src/xterm.c (struct xi_known_valuator): New struct.
(xi_populate_device_from_info): Figure out all the values of the
valuators and set the scroll valuators's current_value to it.
2022-05-14 14:12:39 +08:00
Po Lu
004c2ced6e Better fix for disappearing menu items on NS
* src/frame.c (delete_frame): Revert last change.
* src/nsmenu.m (free_frame_menubar): Only free if that frame's
menu bar is actually being displayed.
(ns_update_menubar): Note the last frame to have updated the
menu bar.
2022-05-14 13:50:52 +08:00
Po Lu
320eaa0017 Add more cursor bitmaps on Haiku
* src/haikufns.c (cursor_bitmaps): Register new cursor bitmaps.
* src/haikugui.h (hand_ptr_bits, hand_ptrmask_bits)
(horizd_ptr_bits, horizd_ptrmask_bits, vertd_ptr_bits)
(vertd_ptrmask_bits, hourglass_bits, hourglass_mask_bits): New
cursor bitmaps.
2022-05-14 05:30:16 +00:00
Stefan Kangas
3e23957bd6 ; Merge from origin/emacs-28
The following commit was skipped:

f044da7704 Fix tooltip face overwriting dragged text strings during m...
2022-05-14 06:31:37 +02:00
Stefan Kangas
bfdd93aefe Merge from origin/emacs-28
a769cbfcfb Fix lexical-binding fallout in vhdl-mode.el
2022-05-14 06:31:34 +02:00
Po Lu
c33b048a86 Work around deleting tooltip frames clearing menubars on NS
* src/frame.c (delete_frame): Update menu bars if a tooltip
frame was deleted on NS.
2022-05-14 12:16:34 +08:00
Po Lu
09e86785ce Implement non-system tooltips on NS
* src/nsfns.m (unwind_create_frame): Return Lisp_Object like on
X.
(do_unwind_create_frame): New function.
(Fx_create_frame): Adjust accordingly.
(compute_tip_xy): Fix coding style.
(unwind_create_tip_frame, ns_create_tip_frame): New functions.
(x_hide_tip, Fx_show_tip, Fx_hide_tip): Create and hide actual
tooltip frames.
(syms_of_nsfns): New defvar `x-max-tooltip-size' and staticpros.

* src/nsterm.m (ns_set_window_size): Clean up coding style.
([EmacsWindow initWithEmacsFrame:]):
([EmacsWindow initWithEmacsFrame:fullscreen:screen:]): Handle
tooltip frames.
2022-05-14 11:30:29 +08:00
Lars Ingebrigtsen
949180b8ab Put help-fns--compiler-macro last in the *Help* buffer
* lisp/help-fns.el (help-fns-describe-function-functions): Make
help-fns--compiler-macro the last entry (because it's not the most
interesting information).
2022-05-14 04:59:24 +02:00
Po Lu
96f60d1033 Fix display class of tooltip frames on Haiku
* haikufns.c (haiku_create_tip_frame): Set up frame display
class.
(syms_of_haikufns): New symbols `mono', `grayscale' and `color'.
2022-05-14 02:39:18 +00:00
Lars Ingebrigtsen
334fa0c91d Restore `with-help-window' return code
* lisp/help.el (help--window-setup): Return the correct thing.
2022-05-14 04:13:56 +02:00
Lars Ingebrigtsen
5f7dd959c2 Improve the *Help* output for compiler macros and the like
* doc/lispref/functions.texi (Advice and Byte Code): New node.

* lisp/help-fns.el (help-fns--compiler-macro): Also output data on
other byte compilation things, and link to the manual (bug#23264).
2022-05-14 04:13:56 +02:00
Po Lu
0bedf074a6 Reenable frame sync for child frames after they're unparented
* src/xfns.c (x_set_parent_frame, Fx_create_frame): Use correct
boolean constants.
* src/xterm.c (handle_one_xevent): Enable frame synchronization
upon receiving a sync request event.
2022-05-14 10:12:21 +08:00
Lars Ingebrigtsen
221031b4ff Tweak querying in package-update-all
* lisp/emacs-lisp/package.el (package-update-all): Reverse the
QUERY logic to make calling more regular.
2022-05-14 03:10:46 +02:00
Stefan Kangas
1dec6548b8 Use ert-with-temp-file in undigest-tests.el
* test/lisp/mail/undigest-tests.el (ert-x): Require.
(rmail-undigest-test-rfc934-digest)
(rmail-undigest-test-rfc1153-digest-strict)
(rmail-undigest-test-rfc1153-less-strict-digest)
(rmail-undigest-test-rfc1153-sloppy-digest)
(rmail-undigest-test-rfc1521-mime-digest)
(rmail-undigest-test-multipart-mixed-digest): Use ert-with-temp-file.
2022-05-13 23:17:16 +02:00
Stefan Kangas
942bc9c8f5 Don't use obsolete yow library
* lisp/erc/erc.el (erc-quit-reason-zippy, erc-part-reason-zippy):
Don't use obsolete yow library.
2022-05-13 23:17:16 +02:00
Stefan Kangas
bc50a957b1 Remove some XEmacs compat code from flyspell.el
* lisp/textmodes/flyspell.el (flyspell-display-next-corrections):
Remove XEmacs compat code.
2022-05-13 23:17:16 +02:00
Stefan Kangas
cc8b6101f4 Remove some XEmacs compat code from org-mode
* lisp/org/ol-eww.el (org-eww-copy-for-org-mode):
* lisp/org/ol-w3m.el (org-w3m-copy-for-org-mode):
* lisp/org/org-refile.el (org-refile):
* lisp/org/org.el (org-change-tag-in-region): Remove XEmacs compat
code.
2022-05-13 23:17:16 +02:00
Stefan Kangas
db492b1e41 Remove some XEmacs compat code from eudc-bob.el
* lisp/net/eudc-bob.el (eudc-bob-can-display-inline-images): Make
into obsolete alias for display-graphic-p.  Update all callers.
(eudc-bob-display-jpeg): Remove XEmacs compat code.
2022-05-13 23:17:16 +02:00
Lars Ingebrigtsen
909f3e2dfd Regenerate ldefs-boot.el 2022-05-13 21:24:26 +02:00
Lars Ingebrigtsen
dea41d4c24 Add new minor mode `header-line-indent-mode'
This is mostly factored out from tabulated-list.el (with bugs fixed).

* doc/lispref/modes.texi (Header Lines): Document it.
* lisp/display-line-numbers.el (header-line-indent): New variable.
(header-line-indent--line-number-width)
(header-line-indent--watch-line-number-width)
(header-line-indent--window-scroll-function): New helper functions.
(header-line-indent-mode): New minor mode.

* lisp/display-line-numbers.el (header-line-indent-width): New
variable.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-line-number-width)
(tabulated-list-watch-line-number-width)
(tabulated-list-window-scroll-function): Make into obsolete aliases.
(tabulated-list-mode): Use 'header-line-indent-mode'.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header):
Adjust the header line format and computation.

* src/buffer.c (syms_of_buffer): Mention header-line-indent-mode.
2022-05-13 21:24:12 +02:00
Lars Ingebrigtsen
72b5b41941 Revert mistaken change in help-mode-setup
* lisp/help-mode.el (help-mode-setup): Revert mistakenly applied
change from cd87a5c7a.
2022-05-13 19:31:46 +02:00
Lars Ingebrigtsen
bd464297bd Don't overwrite variables set by callback in help--window-setup
* lisp/help.el (help--window-setup): Initialize the buffer in the
correct order to avoid resetting variables set by the callback.
2022-05-13 17:14:36 +02:00
Lars Ingebrigtsen
cd87a5c7a1 Don't clear out local variables in `with-help-window'
* lisp/help-mode.el (help-mode-setup): Declare obsolete.
(help-mode-finish): Ditto.

* lisp/help.el (with-help-window): Don't be a wrapper around
`with-temp-buffer-window', because that made the macro big and
difficult to understand.
(help--window-setup): Implement the relevant bits from
`with-temp-buffer-window'.  Also don't clear out local variables,
because that makes things like `text-scale-mode' not work (bug#25979).
2022-05-13 17:14:36 +02:00
Stefan Monnier
9c126cbacb * doc/lispref/help.texi (Keys in Documentation): Typo in last change 2022-05-13 10:38:42 -04:00
Lars Ingebrigtsen
ebfec5c119 Allow substitute-command-keys to include menus in \{...} output
* doc/lispref/help.texi (Keys in Documentation): Document it.
* lisp/help.el (substitute-command-keys): Add an argument to
include menus in the \{...-map} output (bug#24236).
2022-05-13 15:54:16 +02:00
Lars Ingebrigtsen
2ec9f025d2 Include the number of dependencies in the install prompt
* lisp/emacs-lisp/package.el (package-menu--list-to-prompt): Add
the info to the prompt (bug#23346).
(package--dependencies): New function.
2022-05-13 15:31:13 +02:00
Lars Ingebrigtsen
dce5642e86 Allow calling package-update-all from the command line
* lisp/emacs-lisp/package.el (package-update-all): Allow calling from
  the command line with -f package-update-all without any queries.
2022-05-13 15:05:14 +02:00
Po Lu
f044da7704 Fix tooltip face overwriting dragged text strings during mouse DND
* lisp/mouse.el (mouse-drag-and-drop-region): Copy
`text-tooltip' before showing it.  Do not merge to master.
2022-05-13 20:57:24 +08:00
Pieter van Prooijen
526e9758de Use gsettings font rendering entries for pgtk builds
If present, apply the gsettings font hinting and antialiasing
entries when creating a font in cairo.  Do this at
initialization and when the entries change, re-rendering the
frames.

* src/ftcrfont.c (ftcrfont_open): Use the font_options derived
from gsettings when opening a font.
(ftcrfont_cached_font_ok): Report a cached font as invalid if
its font options differ from the current options inside
gsettings.
* src/xsettings.c (apply_gsettings_font_hinting)
(apply_gsettings_font_alias, apply_gsettings_font_rgba_order):
Convert the settings from GSettings to the cairo_font_options_t
object.
(init_gsettings, something_changed_gsettingsCB): Invoke the
apply functions if the relevant settings changed.
(store_font_options_changed): Store an event to re-render the
fonts.
(xsetting_get_font_options)
* src/xsettings.h (xsettings_get_font_options): New function.
2022-05-13 20:52:02 +08:00
Po Lu
784a3bde24 ; Minor improvements to earlier change
* etc/NEWS:
* lisp/tooltip.el (tooltip-show): Rename `frame-face' to
`default-face' and improve doc about system tooltips.
2022-05-13 20:48:58 +08:00
Lars Ingebrigtsen
39e9665127 Add a provide in epa-ks
* lisp/epa-ks.el (epa-ks): Add a provide (bug#55388).
2022-05-13 14:44:34 +02:00
Stefan Kangas
7df302d285 Remove some XEmacs compat code from pascal.el
* lisp/progmodes/pascal.el (pascal-outline-map): Remove XEmacs compat
code.
2022-05-13 14:35:00 +02:00
Stefan Kangas
87eed07041 * lisp/language/thai-util.el (thai-word-mode-map): Prefer defvar-keymap. 2022-05-13 14:35:00 +02:00
Lars Ingebrigtsen
d0975d7db0 Fix dabbrev expansion after recent file-name buffer addition
* lisp/dabbrev.el (dabbrev--find-expansion): Remove the now-dead
file name buffer from dabbrev--friend-buffer-list, so that we
don't trip over the killed buffer later (bug introduced in 2d0085f756).
2022-05-13 14:30:09 +02:00
Lars Ingebrigtsen
36ae1c721a Make imenu-flush-cache into a function
* doc/emacs/programs.texi (Imenu): Remove documentation.

* lisp/imenu.el (imenu-flush-cache): Make into a function, since
this isn't supposed to be used interactively.
2022-05-13 14:30:09 +02:00
Eli Zaretskii
a769cbfcfb Fix lexical-binding fallout in vhdl-mode.el
* lisp/progmodes/vhdl-mode.el (arch-alist, pack-alist)
(file-alist, unit-alist, rule-alist): Defvar them, since vhdl-aput
expects them to be dynamically bound.  (Bug#55389)
(vhdl-speedbar-insert-hierarchy): Rename the PACK-ALIST argument
to PACKAGE-ALIST, to avoid shadowing the global variable.
2022-05-13 15:00:21 +03:00
Po Lu
3bd3e00598 Allow changing the face used for text and frame colors in tooltips
* etc/NEWS: Announce new arguments to `tooltip-show'.
* lisp/tooltip.el (tooltip-show): Accept new arguments
`text-face' and `frame-face'.  Use them to display text and
determine the foreground, background and border colors of the
tooltip frame respectively.
2022-05-13 19:46:43 +08:00
Po Lu
77aba69768 Rely solely on device scaling for fonts on PGTK
* src/pgtkterm.c (pgtk_get_text_scaling_factor): Delete
function.
(pgtk_term_init): Stop multiplying dpi by text scale.
(bug#55394)
2022-05-13 19:19:52 +08:00
Arash Esbati
ebf43cc444 ; Fix RefTeX docstrings
* lisp/textmodes/reftex-cite.el (reftex-parse-bibitem)
(reftex-format-bibitem): Quote backslash.

* lisp/textmodes/reftex-vars.el
(reftex-cite-cleanup-optional-args): Fix example with 2 optional
arguments.
2022-05-13 12:18:15 +02:00
Po Lu
dae431bf0a Fix display of image reliefs for tab bars on NS
* src/nsterm.m (ns_draw_image_relief): New function.
Synchronize code with X.
(ns_dumpglyphs_image): Use that function instead, as on X.
2022-05-13 17:08:09 +08:00
Po Lu
1a6def02cd Minor cleanups to PGTK code
* src/pgtkterm.c (pgtk_text_scaling_factor): Rename to
`pgtk_get_text_scaling_factor', clean up coding style, and fix
leak of GSettings object.
(pgtk_term_init): Clean up coding style and fix scroll
increments.
2022-05-13 16:32:10 +08:00