1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00
Commit graph

154706 commits

Author SHA1 Message Date
Po Lu
cde8e5afbb Clean up input extension event handling code
* src/xterm.c (handle_one_xevent): Fix usages of event
structures of the wrong type.
2022-02-28 20:21:24 +08:00
Po Lu
122b189219 * src/xterm.c (handle_one_xevent): Add some missing dead keys. 2022-02-28 19:45:18 +08:00
Mattias Engdegård
cb0aad2dbe Clean up byte-compile-arglist-warn
* lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
Remove unnecessary sort (only need min and max).  Reduce mutation.
2022-02-28 12:16:54 +01:00
Lars Ingebrigtsen
cd32693151 Fix :color specification in flat-button boxes
* src/xfaces.c (realize_gui_face): Allow reliably specifying
:color in flat-button boxes (bug#54196).
2022-02-28 11:41:52 +01:00
Lars Ingebrigtsen
15a76160bb Don't throw errors while propertizing in sgml-mode
* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize): Don't
throw an error when propertizing (bug#54195).
2022-02-28 10:30:31 +01:00
Po Lu
66899628f8 Better fix for bug#13476
* lisp/faces.el (face-spec-recalc): Apply scroll bar foreground
and background to the frame if changing the scroll-bar face.
(scroll-bar): Restore previous declaration.  That way, the
default colors are used for toolkit scroll bars, instead of
black and white.
2022-02-28 14:35:01 +08:00
Po Lu
f995169c72 Improve treatment of toolkit scroll bars with the input extension
* src/xterm.c (x_create_horizontal_toolkit_scroll_bar)
(x_create_toolkit_scroll_bar): Set XI2 event mask appropriately.
(handle_one_xevent): Make sure coordinates are correct for the
frame's window when handling wheel events.
2022-02-28 14:06:12 +08:00
Stefan Kangas
1de7382b57 Merge from origin/emacs-28
e77fc8262a Update to Org 9.5.2-22-g33543d
9bce4b67f1 ; * lisp/help.el (with-help-window): Doc fix.  (Bug#54170)
558b03a958 Add explicit '--no-heading' for ripgrep
2022-02-28 06:33:06 +01:00
Kyle Meyer
e77fc8262a Update to Org 9.5.2-22-g33543d 2022-02-28 00:11:01 -05:00
Po Lu
0f3ce51a0d Don't save menu bar events that land on the menu bar itself
* src/xterm.c (handle_one_xevent): Ignore menu bar events which
land on the menu bar itself instead of a button.
2022-02-28 09:40:01 +08:00
Po Lu
0470ef007f Treat scroll bar information consistently on Haiku
* src/haiku_support.cc (class EmacsScrollBar): New field `info'.
(EmacsScrollBar): Obtain scroll bar info on initialization.
(ButtonRegionFor): Use that information instead.
2022-02-28 01:16:17 +00:00
Eli Zaretskii
9bce4b67f1 ; * lisp/help.el (with-help-window): Doc fix. (Bug#54170) 2022-02-27 15:54:27 +02:00
Lars Ingebrigtsen
6a10a3e8d4 Merge from gnulib
* m4/gnulib-common.m4 (gl_COMMON_BODY):
* lib/gnulib.mk.in (CXXCPP):
* lib/cdefs.h: Updated with admin/merge-gnulib.  (This is in
preparation to adding the nanosleep module later.)
2022-02-27 14:32:38 +01:00
Dmitry Gutov
558b03a958 Add explicit '--no-heading' for ripgrep
* lisp/progmodes/xref.el (xref-search-program-alist):
Add explicit '--no-heading' for ripgrep (bug#54177).
2022-02-27 15:28:04 +02:00
Po Lu
704a40ad75 Don't send help-echo on menu button arming not caused by motion events
* lwlib/lwlib-Xm.c (xm_arm_callback): Ignore arming if the arm
was not caused by an EnterNotify or MotionNotify event.
2022-02-27 19:33:16 +08:00
Po Lu
e2d96ffa6a * src/xterm.c (handle_one_xevent): Translate motion events on Motif. 2022-02-27 14:56:34 +08:00
Po Lu
14c80c9db8 Work around some problems with Motif and the input extension
* src/xmenu.c (create_and_show_popup_menu): Restore input focus
to the frame's outer window if there was an input extension
grab.
2022-02-27 14:40:26 +08:00
Po Lu
4c12a16aa7 Translate some more input extension events needed by Motif
* src/xterm.c (handle_one_xevent): Translate XI_Enter and
XI_Leave events when built with Motif.
2022-02-27 14:31:39 +08:00
Stefan Kangas
2fdc7d5044 Merge from origin/emacs-28
a50f8dec09 Follow OpenSSH changes in Tramp
e86eae21a9 Document better how to reset attributes of faces for new f...
2022-02-27 06:31:54 +01:00
Po Lu
796bb6f1e7 * commands.texi (Misc Events): Update description of wheel events. 2022-02-27 11:44:56 +08:00
Manuel Uberti
bc0d1f1c46 Add project-ignore-buffer-conditions
* lisp/progmodes/project.el (project-ignore-buffer-conditions):
New defcustom.
(project--read-project-buffer):
Use it (bug#54100).
2022-02-27 05:25:01 +02:00
Po Lu
422ad3a01f * src/xterm.c (handle_one_xevent): Fix translation of button events. 2022-02-27 10:49:19 +08:00
Po Lu
16702f183f Fix Motif menu and menu bar dismissal on XI2
* src/xmenu.c (x_activate_menubar): Improve ungrabbing logic on
XI2.
(server_timestamp_predicate): New function.
(create_and_show_popup_menu): If the display supports XI2, make
sure the timestamps are correct by dispatching a PropertyNotify
event to Xt.
* src/xterm.c (handle_one_xevent): Translate XI_ButtonRelease
events into core events before dispatching them to Xt.
2022-02-27 10:37:43 +08:00
Po Lu
a2768c2f74 Ignore irrelevant button events on Haiku scroll bars
* src/haiku_support.cc (MouseDown): Ignore if there are too many
buttons pressed.
2022-02-26 12:25:51 +00:00
Michael Albinus
a50f8dec09 Follow OpenSSH changes in Tramp
* lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
Reimplement.  OpenSSH has changed its diagnostics messages.
2022-02-26 12:51:26 +01:00
Eli Zaretskii
e86eae21a9 Document better how to reset attributes of faces for new frames
* doc/lispref/display.texi (Attribute Functions):
* lisp/faces.el (set-face-attribute): Explain how to reset an
attribute's value for future frames.  (Bug#54156)
2022-02-26 09:41:05 +02:00
Po Lu
e1757c00ca Prevent crashes on event for removed scroll bar on Haiku
* src/haiku_support.cc (class EmacsScrollBar): Remove field
`scroll_bar'.
(ValueChanged, MouseDown, MouseUp, BScrollBar_make_for_view):
Adjust for changes.

* src/haiku_support.h (struct haiku_scroll_bar_value_event)
(struct haiku_scroll_bar_drag_event)
(struct haiku_scroll_bar_part_event): New field `window'.

* src/haikuterm.c (haiku_scroll_bar_from_widget): New function.
(haiku_read_socket): Adjust for changes in scroll bar event
structures.
2022-02-26 07:24:12 +00:00
Po Lu
3e9c36e799 Fix reporting of horizontal scroll bar buttons on Haiku
* haikuterm.c (haiku_read_socket): Use correct values for scroll
bar buttons when the scroll bar is horizontal.
2022-02-26 07:06:55 +00:00
Po Lu
974c44414a Improve scroll bar button handling on Haiku
* src/haiku_io.c (haiku_len): Add `SCROLL_BAR_PART_EVENT'.
* src/haiku_support.cc (class EmacsScrollBar): New fields
`dragging' and `current_state', along with `old_value' and
`current_part'.
(EmacsScrollBar): Set horizontal flag to `horizontal_p'.
(MessageReceived): Set old_value when receiving
SCROLL_BAR_UPDATE message.
(ValueChanged): Don't allow scroll bar values to change while
dragging.
(MouseUp, MouseDown): Calculate button under mouse and act
accordingly.
* src/haiku_support.h (enum haiku_event_type): New event
`SCROLL_BAR_PART_EVENT'.
(enum haiku_scroll_bar_part): New enumerator.
(struct haiku_scroll_bar_part_event): New struct.
* src/haikuterm.c (haiku_read_socket): Handle
SCROLL_BAR_PART_EVENTs.
2022-02-26 06:57:00 +00:00
Stefan Kangas
c215158756 Merge from origin/emacs-28
ded89ed3fa * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options): ...
2022-02-26 06:32:26 +01:00
Po Lu
63a21224a5 * src/xterm.c (handle_one_xevent): Set user time for xwidgets as well. 2022-02-26 08:54:36 +08:00
Dmitry Gutov
018eeb655a Drop the visited file modtime check for remote xref hits
* lisp/progmodes/xref.el (xref--hits-remote-id): New variable.
(xref--convert-hits, xref--collect-matches)
(xref--find-file-buffer): Use it (bug#54025).
2022-02-26 02:27:30 +02:00
Paul Eggert
9372e543a9 Robustify merge-gnulib a bit
* admin/merge-gnulib: Fail if autogen.sh fails.
Remove autom4te.cache before running gnulib-tool.
2022-02-25 12:27:22 -08:00
Bob Rogers
ca3858563c Add new file ietf-drums-date.el
* lisp/mail/ietf-drums-date.el: parse-time-string replacement which is
compatible but can be made stricter if desired.
* test/lisp/mail/ietf-drums-date-tests.el (added): Add tests for
ietf-drums-parse-date-string.
* lisp/mail/ietf-drums.el (ietf-drums-parse-date): Use
ietf-drums-parse-date-string.
2022-02-25 13:04:10 +01:00
Po Lu
2b8bb05383 Improve treatment of dropping mouse track state on Haiku
* src/haikuterm.c (haiku_mouse_or_wdesc_frame): New function.
(haiku_read_socket): Use it to find the appropriate frame when
handling motion or button events.
2022-02-25 11:36:07 +00:00
Michael Albinus
ded89ed3fa * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options): Adapt test. 2022-02-25 10:11:40 +01:00
Po Lu
a95c43976f Improve tracking of modified regions on Haiku
* src/haiku_support.cc (class EmacsView): New field
`invalid_region'.
(FlipBuffers): Only invalidate that region.
(SetUpDoubleBuffering): Clear that region.
(BView_draw_lock): New parameters for denoting the region
to invalidate.
(BView_invalidate_region): New function.
* src/haiku_support.h: Update prototypes.
* src/haikufns.c (haiku_set_background_color):
* src/haikumenu.c (digest_menu_items):
* src/haikuterm.c (haiku_clip_to_string):
(haiku_flip_buffers):
(haiku_clear_frame_area):
(haiku_clear_frame):
(haiku_draw_glyph_string):
(haiku_after_update_window_line):
(haiku_draw_window_cursor):
(haiku_draw_vertical_window_border):
(haiku_draw_window_divider):
(haiku_draw_fringe_bitmap):
(haiku_scroll_run):
(haiku_read_socket):
(haiku_flash):
(haiku_clear_under_internal_border): Mark appropriate region as
invalid before buffer flip.
2022-02-25 08:08:06 +00:00
Po Lu
6fd6bea8c4 Fix calculation of scroll deltas when coalescing wheel events
* src/xterm.c (handle_one_xevent): Use accumulated values
instead of raw delta to determine scroll amounts.
2022-02-25 14:20:14 +08:00
Po Lu
a2e80d2a41 Make interpolated scrolling work above non-selected windows
* lisp/pixel-scroll.el (pixel-scroll-precision-interpolate): New
parameter `old-window'.
(pixel-scroll-precision): Pass originally selected window to the
interpolation function.
2022-02-25 14:15:51 +08:00
Stefan Kangas
f4ef44a5eb Merge from origin/emacs-28
5c77aed2d6 Mention flyspell-prog-mode in flyspell-mode doc string
2022-02-25 06:30:57 +01:00
Jim Porter
73e1be36e5 Fix Eshell process tests to (hopefully) work on all platforms
* test/lisp/eshell/esh-proc-tests.el (esh-proc-test/kill-pipeline):
Fix test (bug#54136).
2022-02-25 03:19:08 +01:00
Dmitry Gutov
fa2b60615b xref--find-file-buffer: Check modified-p and modtime
* lisp/progmodes/xref.el (xref--find-file-buffer):
Check whether the buffer contents match what's on disk
(bug#54025).
2022-02-25 03:35:51 +02:00
Po Lu
d29cc1e8a0 Set user time when receiving any wheel events
* src/xterm.c (handle_one_xevent): Set user time if the mouse
wheel moved.
2022-02-25 08:40:51 +08:00
Eli Zaretskii
8d2fbd4a14 Fix esh-proc-tests on MS-Windows
* test/lisp/eshell/esh-proc-tests.el (esh-proc-test/kill-pipeline)
(esh-proc-test/kill-background-process): Fix tests on MS-Windows.
2022-02-24 22:02:28 +02:00
Eli Zaretskii
794fbd1c07 Make 't' in Buffer-menu be more defensive
* lisp/buff-menu.el (Buffer-menu-visit-tags-table): Verify that
the buffer holds a tags-table file before using it as such.
(Bug#54133)
2022-02-24 21:57:34 +02:00
Paul Eggert
bd17fa2c75 * admin/merge-gnulib: fix bare checkout (Bug#32452#65) 2022-02-24 10:13:08 -08:00
Alan Mackenzie
6092ee1c3f Amend byte-run-strip-symbol-positions so that an unexec build builds
This fixes bug #54098.

* lisp/emacs-lisp/byte-run.el (byte-run--strip-list)
(byte-run--strip-vector/record): New functions.  These alter a list or
vector/record structure only where a symbol with position gets replaced by a
bare symbol.
(byte-run-strip-symbol-positions): Reformulate to use the two new functions.
(function-put): No longer strip positions from the second and third arguments.

* lisp/emacs-lisp/bytecomp.el (byte-compile-out): Remove the senseless
"stripping" of putative symbol positions from OPERAND, which is nil or a
number.
2022-02-24 17:30:39 +00:00
Michael Albinus
2db149539b Fix symlinks in tramp-sshfs.el (Bug#54130)
* lisp/net/tramp-sshfs.el (tramp-methods) <sshfs>:
Add "-o transform_symlinks" to `tramp-mount-args'.
(tramp-sshfs-file-name-handler-alist):
Use `tramp-sshfs-handle-file-writable-p'.
(tramp-sshfs-handle-file-writable-p): New defun.  (Bug#54130)

* test/lisp/net/tramp-tests.el (tramp-test18-file-attributes)
(tramp-test20-file-modes): Adapt tests.
2022-02-24 16:11:01 +01:00
Po Lu
94e59f80b7 Check if WM support for NET_WM_USER_TIME_WINDOW changed during updates
* src/xterm.c (x_display_set_last_user_time): Update the user
time window if window manager support changed.

* src/xterm.h (struct x_display_info): New field
`last_user_check_time'.
2022-02-24 20:01:39 +08:00
Eli Zaretskii
dfe78ccb87 ; * etc/NEWS: Fix wording of a recently added NEWS entry. 2022-02-24 13:07:16 +02:00