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

154065 commits

Author SHA1 Message Date
Eli Zaretskii
4320eebb4a ; * lisp/subr.el (use-dialog-box-p): Fix typo. 2022-01-29 19:18:26 +02:00
Lars Ingebrigtsen
99f4c17615 Modernise the security section in the efaq a bit
* doc/misc/efaq.texi (Security risks with Emacs): Remove the X
bit, and add a bit about browsing the web (bug#24489).
2022-01-29 17:49:52 +01:00
Lars Ingebrigtsen
43a5f22857 Allow redirecting `message' output to a different buffer
* doc/lispref/display.texi (Logging Messages): Document it.
* src/xdisp.c (message_dolog): Add sanity checking.
(syms_of_xdisp): Make Vmessages_buffer_name into a defvar
(bug#27170).
2022-01-29 17:24:49 +01:00
Eli Zaretskii
bddd9c5f68 ; Fix formatting of last change. 2022-01-29 17:56:30 +02:00
Eli Zaretskii
f7b408ec50 Don't require mouse for prompting via dialog boxes
* lisp/subr.el (use-dialog-box-p): Don't require mouse support,
and allow dialog boxes when invoked via the TTY menus without a
mouse.
(from--tty-menu-p): New internal variable.

* lisp/menu-bar.el (popup-menu): Bind 'from--tty-menu-p' when
invoking a command from the menu.
2022-01-29 17:54:43 +02:00
Charles A. Roelli
a836e8bf0c Make revert-buffer ('g') keep point in VC diff buffers
* lisp/vc/vc.el (vc-diff-restore-buffer): New function.
(vc-diff-finish): Update its calling convention to include an
optional 'oldbuf' parameter, and handle it.
(vc-diff-internal): Pass a clone of the incumbent vc-diff
buffer to 'vc-diff-finish' (bug#28852).
2022-01-29 16:47:52 +01:00
Lars Ingebrigtsen
7608b77d9e Clarify Fmatch_data doc string
* src/search.c (Fmatch_data): Note quirk about non-matching
optional groups in the doc string (bug#29343).
2022-01-29 16:39:48 +01:00
Jae-hyeon Park
852a5f24bb Make gnus-icalendar-with-decoded-handle more DWIM
* lisp/gnus/gnus-icalendar.el
(gnus-icalendar-with-decoded-handle): Assume that calendars with
no charset is utf-8.

Copyright-paperwork-exempt: yes
2022-01-29 15:44:44 +01:00
Po Lu
4bac7d8c73 Fix error after merge
* src/filelock.c (lock_file): Fix test against I_OWN_IT.
2022-01-29 20:38:13 +08:00
Po Lu
04bba4a28f Merge from origin/emacs-28
611736f3bc Remove debug logging
ddba3c3dba Fix error in filelock.c

# Conflicts:
#	src/filelock.c
2022-01-29 20:37:24 +08:00
Alan Third
611736f3bc Remove debug logging
* src/nsterm.m ([EmacsView copyRect:to:]): Remove logging as it's no
longer required.
2022-01-29 12:15:39 +00:00
Po Lu
a85e9d7641 Fix error at startup with recent change
* lisp/startup.el (normal-top-level): Don't access
`native-comp-eln-load-path' if not (featurep 'native-compile).
2022-01-29 19:08:52 +08:00
Po Lu
e380fb509b Fix unrelated help text tooltips if a popup is shown during the delay
* doc/lispref/frames.texi (Pop-Up Menus): Document new hook.
* etc/NEWS: Announce `x-pre-popup-menu-hook'.
* lisp/tooltip.el (tooltip-mode): Make sure `tooltip-hide' is
run before any popup menu is displayed to prevent unrelated help
text from obscuring the popup menu if it pops up during the
tooltip delay.
* src/menu.c (x_popup_menu_1): Run said hook right before the
popup menu is displayed.
(syms_of_menu): New hook `x-pre-popup-menu-hook'.
2022-01-29 18:57:08 +08:00
Michael Albinus
ddba3c3dba Fix error in filelock.c
* src/filelock.c (lock_file): Move call of file name handler to
`Flock_file'.  Determine lock_filename only in case
create_lockfiles is non-nil.  Adapt the rest of the function accordingly.
(Flock_file): Do not check for create_lockfiles.  Call file name
handler if appropriate.  (Bug#53207)
2022-01-29 11:45:38 +01:00
Eli Zaretskii
0a5ece3da1 Allow <Delete> key to delete entire grapheme clusters
* lisp/simple.el (delete-forward-char): If deleting forward,
delete complete grapheme clusters as single units.

* etc/NEWS: Announce the change.
2022-01-29 12:19:23 +02:00
Eli Zaretskii
a773d7f05b Fix native-compilation at startup
* lisp/startup.el (normal-top-level): Set up the initial value of
'native-comp-eln-load-path' early into startup, then amend it
after calling 'command-line'.  (Bug#53497)
2022-01-29 11:55:02 +02:00
Po Lu
278bacad69 Write a dummy event on each popup menu event
* src/haiku_io.c (haiku_len): Add new event.
* src/haiku_support.cc (be_popup_menu_thread_entry):
(Highlight): Write a dummy event to the event port.
* src/haiku_support.h (enum haiku_event_type): New `DUMMY_EVENT'
type.
(struct haiku_dummy_event): New structure.
* src/haikuterm.c (haiku_read_socket): Handle dummy events.
2022-01-29 07:38:49 +00:00
Eli Zaretskii
c4e66bb2b5 Fix compiler warning due to a recent change
* src/data.c (Ffset): Avoid compiler warning about 'function'.
2022-01-29 09:12:30 +02:00
Po Lu
7e17749ada Fix a default value of the `:underline' face attribute
* lisp/cus-face.el (custom-face-attributes): Add `:position' t
default value of "On" for underlines.
2022-01-29 14:05:49 +08:00
Po Lu
166556f464 Improve menu drag tracking on Haiku
* src/haikuterm.c (haiku_read_socket): Ignore all button events
when popup_activated_p.
2022-01-29 05:50:32 +00:00
Po Lu
b616e14c35 Make menus on Haiku work better
* src/haikuterm.c (haiku_read_socket): Don't send up events for
ungrabbed buttons.
2022-01-29 05:24:04 +00:00
Po Lu
95ccd1ba47 Implement real menu help-echo text on Haiku
* lisp/tooltip.el (tooltip-show-help): Remove Haiku-specific
conditional since that's now taken care of by C code.

* src/haiku_io.c (haiku_read_size):
(haiku_read_with_timeout):
(haiku_write_without_signal): Add parameter `popup_p'.  All
callers changed.
(port_popup_menu_to_emacs): New variable.

* src/haiku_support.cc (struct be_popup_menu_data): New
structure.
(be_popup_menu_thread_entry): New function.
(class EmacsMenuItem): New field `menu_ptr'.
(Highlight): Send help text to the popup port if this item
isn't for a menu bar.
(BMenu_add_item): Set menu_ptr appropriately.
(BMenu_run): Complete rewrite that allows to read help text from
the menu bar port.

* src/haiku_support.h (struct haiku_menu_bar_help_event): New
fields for popup menus.

* src/haikumenu.c (digest_menu_items): Only set help tooltip on
popup menus when system tooltips are enabled.
(haiku_menu_show_help):
(haiku_process_pending_signals_for_menu): New functions.
(haiku_menu_show): Pass new callbacks.
2022-01-29 05:11:04 +00:00
Stefan Monnier
70fc32f6dd * src/data.c (Ffset, defalias): Complete last change
Somehow part of the autoload history handling was left behind in `Ffset`
when the rest was moved to `defalias`.  Finish the job.

* src/data.c (Ffset): Don't set the `autoload` property here...
(defalias): ... set it here instead.
2022-01-28 23:39:31 -05:00
Stefan Monnier
7531bf096e Reduce code duplication in parts of (auto)load&defalias
* src/data.c (defalias): New function, extracted from `Fdefalias`.
(Fdefalias): Use it.
(Ffset): Don't handle `Vautoload_queue` here, handle it in
`defalias` instead.
* src/comp.c (comp--register-subr): Use `defalias` instead of
duplicating its code.

* src/eval.c (load_with_autoload_queue): New function, extracted from
`Fautoload_do_load`.
(Fautoload_do_load): Use it.
(un_autoload): Mark it as static.
* src/fns.c (Frequire): Use it as well.

* src/lisp.h (defalias, load_with_autoload_queue): New declarations.
(un_autoload): Remove declaration.
2022-01-28 13:19:11 -05:00
Sebastian Urban
1f5fa1de7f Make where-is correctly identify aliases
* lisp/help.el (where-is): Make aliases correctly say which
function is an alias for what (bug#37325).
2022-01-28 17:27:28 +01:00
Sebastian Urban
96867f9d08 Fix manual points about tex-latex-block/latex-insert-block
* doc/emacs/text.texi (LaTeX Editing):
(LaTeX Editing): Update documentation of
tex-latex-block/latex-insert-block to what they really point to
(bug#37325).

Copyright-paperwork-exempt: yes
2022-01-28 17:12:35 +01:00
Lars Ingebrigtsen
fdc7272980 Improve the read-file-name doc string slightly
* lisp/minibuffer.el (read-file-name): Note that the semantics of
INITIAL are odd (bug#37883).
2022-01-28 17:03:14 +01:00
Michael Albinus
87c2367011 Clarify where the shell-command output goes
* lisp/simple.el (shell-command):
* doc/emacs/misc.texi (Single Shell): Clarify where the output
goes if the specified buffer isn't the current one (bug#40896).
2022-01-28 16:32:15 +01:00
Lars Ingebrigtsen
12d3c4831a Allow using dired-hide-details-mode in wdired buffers
* lisp/dired.el (dired-hide-details-mode): Also work in
wdired-mode buffers (bug#45127).

* lisp/wdired.el (wdired-mode-map): Add a key binding.
2022-01-28 15:56:05 +01:00
Lars Ingebrigtsen
bf695b937e Move native-comp-eln-load-path setting earlier again
* lisp/startup.el (normal-top-level): Move
`native-comp-eln-load-path' earlier because hooks called may need
the setting (bug#53596).
2022-01-28 15:26:39 +01:00
Lele Gaifax
70c3437ae1 Fix copyright-fix-years, use a dash to separate years in a range
Commit 7a46fa9c75, allowing en-dash as
years separator, changed the way the years range is composed taking the
separator from the `sep' variable instead of always using an hardwired
hyphen. Since the code explicitly avoid to touch (that is, extend)
existing ranges, that `sep' variable is almost always a space, or
whatever character precedes the last parsed year, thus generating a
range like "2020 2022" instead of "2020-2022".

* lisp/emacs-lisp/copyright.el (copyright-fix-years): Always use an dash
to separate years in a range.

* test/lisp/emacs-lisp/copyright-tests.el (with-copyright-fix-years-test):
(copyright-fix-years-tests--data):
(text-copyright-fix-years): New test cases (bug#53597).
2022-01-28 15:23:05 +01:00
Lars Ingebrigtsen
7ba197a163 Fix merge error in doc-view-pdf/ps->png
* lisp/doc-view.el (doc-view-pdf/ps->png): Fix merge error from
previous epub patch.
2022-01-28 14:47:15 +01:00
Po Lu
11add52bec Prevent duplicate grab setting with xwidgets
* src/xwidget.c (xwidget_show_view): Don't set passive grab if
already set.
2022-01-28 17:56:17 +08:00
Po Lu
15f8c6b11e Use the real cursor beneath the pointer on xwidgets
* src/xwidget.c (define_cursors): Make manual cursor definition
code PGTK-only.
(xw_update_cursor_for_view):
(xw_last_crossing_cursor_cb): New functions.
(xw_maybe_synthesize_crossing): Attach and disconnect cursor
signal handler where appropriate.
(xwidget_init_view): Set the default cursor to the nontext
cursor.
(Fxwidget_delete_view): Disconnect last crossing signal if
appropriate.
* src/xwidget.h (struct xwidget_view): New field
`last_crossing_cursor_signal'.
2022-01-28 16:40:40 +08:00
Po Lu
bad16c6f56 Fix xwidget build on PGTK
* src/xwidget.c (xw_forward_event_translate): Adjust calls to
`find_widget_at_pos' for recent changes.
2022-01-28 16:08:59 +08:00
Eli Zaretskii
b293e254eb ; Rename 'startup--require-comp-safetly'
* src/comp.c (maybe_defer_native_compilation):
* lisp/startup.el (startup--require-comp-safely): Rename from
'startup--require-comp-safetly'.  All callers changed.
2022-01-28 09:37:28 +02:00
Eli Zaretskii
241f2857f1 ; Fix a typo in recent documentation changes
* doc/lispref/os.texi (Startup Summary):
* doc/emacs/cmdargs.texi (Initial Options): Fix a typo.
2022-01-28 09:30:04 +02:00
Po Lu
84d4a34919 Fix duplicate scroll events without XI2
* src/xwidget.c (xwidget_button): Only generate scroll events
when the button was released.
2022-01-28 14:07:35 +08:00
Stefan Kangas
9d0833f408 Merge from origin/emacs-28
3dd47bde7a * lisp/frame.el (clone-frame): Filter out 'parent-id' (bug...
2022-01-28 06:32:22 +01:00
Po Lu
2f0d67b047 Clear xwidget passive grab whenever a drag begins
* src/xwidget.c (xv_drag_begin_cb): New function.
(xwidget_view_from_window): Attach said function to grab widget
when a grab starts.
* src/xwidget.h (struct xwidget_view): New field
`passive_grab_drag_signal'.
2022-01-28 11:08:20 +08:00
Po Lu
bc404cd8ea * src/xterm.c (handle_one_xevent): Remove obsolete workaround. 2022-01-28 10:51:33 +08:00
Po Lu
47b7ec2a3d Fix inappropriate use of killed xwidgets
* src/xwidget.c (x_draw_xwidget_webkit_view): Don't record
embedder or synthesize focus events if the widget is killed.
2022-01-28 10:48:12 +08:00
Po Lu
8471c6f06c Implement xwidget passive grabs
* src/xwidget.c (find_widget_at_pos): New parameters for
controlling whether to respect grabs.  All callers changed.
(window_coords_from_toplevel): Make work when the widget is
the toplevel.
(find_widget): Fix coding style.
(xwidget_button_1): Set and clear passive grabs if appropriate.
(xw_maybe_synthesize_crossing): Allow current_window to be NULL
if the mode is XW_CROSSING_LEFT.
2022-01-28 10:41:03 +08:00
Lars Ingebrigtsen
8eaf04de83 Add new switch --init-directory
* doc/emacs/cmdargs.texi (Initial Options): Mention it.
* lisp/startup.el (normal-top-level): Move the eln init to after
we've processed the command line arguments.
(command-line): Interpret the --init-directory switch.

* src/emacs.c (standard_args): Add.
2022-01-27 23:38:13 +01:00
Glenn Morris
53ebc1fa21 * lisp/doc-view.el (doc-view-epub-font-size): Fix type; add version.
Flagged by test-custom-opts.
2022-01-27 14:21:55 -08:00
Andrea Corallo
536a57b72c Fix potential native compiler circular dependencies during load
* lisp/startup.el (startup--require-comp-safetly): New function.
(startup--honor-delayed-native-compilations): Make use of
`startup--require-comp-safetly'.
* src/comp.c (CALL0I): New define.
(maybe_defer_native_compilation): Make use of
`startup--require-comp-safetly'.
2022-01-27 23:02:31 +01:00
Lars Ingebrigtsen
ce220524fc Fix up previous "Quit Emacs" from menu logic
* lisp/files.el (files--buffers-needing-to-be-saved): Separated
out into its own function...
(save-some-buffers): ... from here.
(save-buffers-kill-emacs): Check that we have anything to save
before prompting the user.
2022-01-27 22:26:12 +01:00
Lars Ingebrigtsen
b8ddd94aac Make the save buffers prompt from Quit Emacs menu more understandable
* lisp/files.el (save-buffers-kill-emacs): Use a much simpler (and
more understandable) prompt when exiting Emacs from the menu bar
(bug#4980).

* lisp/subr.el (use-dialog-box-p): Separate out into its own
function for reuse...
(y-or-n-p): ... from here.
2022-01-27 19:56:29 +01:00
Eli Zaretskii
10c680551e Improve detection of glyphless characters on TTY frames
* src/term.c (produce_glyphs): If the terminal can report for
which characters it has glyphs, use that to determine whether
a given character should be displayed as glyphless.
2022-01-27 20:35:22 +02:00
Juri Linkov
3dd47bde7a * lisp/frame.el (clone-frame): Filter out 'parent-id' (bug#51883). 2022-01-27 19:47:40 +02:00