| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since native subrs can have either etc/DOC indexes or vector indexes,
we use the sign bit of the 'doc' field to distinguish the two cases.
* src/comp.c (native_function_doc, make_subr): Use one's complement of
doc index for native subrs.
* src/doc.c (store_function_docstring): Add assertion.
* src/lisp.h (struct Lisp_Subr): Document 'doc' sign bit.
|
| | | |
| | |
| | |
| | | |
Reduce the diff between master and scratch/igc.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
* src/lisp.h (define_error): Move declaration to its proper place, make
external, and move its docstring...
* src/eval.c (define_error): ...to its function definition.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/xfaces.c (realize_basic_faces): Bind 'face-remapping-alist'
to nil while realizing basic faces.
(lookup_basic_face): Force realizing a face whose 'inherit'
attribute is non-nil. (Bug#73862)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/emacs.c (main) [HAVE_PDUMPER] [WINDOWSNT]: Call
'w32_init_file_name_codepage' again after loading the pdumper
file.
* src/w32.c (w32_init_file_name_codepage) [HAVE_PDUMPER]:
Reinitialize additional variables. (Bug#75207)
|
| |\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
6468c3f7a74 Update doc string of 'insert'
6d8c3c0cbe4 Use `keymap*-set' over `global-set-key'/`define-key' in e...
4b2bb63b7ac Fix documentation and prompt in 'package-isolate'
55f43f5b220 ; Fix typo in treesit-explore-mode
921f454f508 Update fontification for attribute values in heex-ts-mode
ae2589ea7a5 Add expression handling to heex-ts-mode
0cacf806391 ; * etc/NEWS: Document change of 'make-cursor-line-fully-...
f47a29da5c4 * lisp/man.el (Man-mode): Improve docstring.
# Conflicts:
# etc/NEWS
|
| | | |
| | |
| | |
| | |
| | | |
* src/editfns.c (Finsert): Mention 'decode-coding-string' instead
of the obsolete 'string-as-multibyte' in doc string. (Bug#75345)
|
| | | |
| | |
| | |
| | | |
Run "TZ=UTC0 admin/update-copyright".
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Automatically redraw frames when we detect that a window
parameter used in a face filter is changed. (Bug#75291)
* src/window.c (Fset_window_parameter): redraw window, actually
whole frame in this implementation, on face-relevant parameter
change
(syms_of_window): add window_auto_redraw_on_parameter_change
* src/xfaces.c (evaluate_face_filter): record properties
|
| | | |
| | |
| | |
| | | |
Run "TZ=UTC0 admin/update-copyright".
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a user invokes browse-url, the browser window viewing the URL
should be raised in the user's desktop environment. On X11, running
xdg-open as a subprocess does the job. However, on Wayland, this
approach doesn't work: xdg-open makes the web browser browse a URL all
right, but doesn't raise the browser window in the GUI. Therefore, if
the browser window is behind Emacs, browse-url appears to do nothing.
Repeated invocations of browse-url cause the browser to load multiple
tabs in the background, surprising the user when he gives up in
frustration and manually switches to the browser window.
There's no subprocess we can run to make the right thing happen.
Wayland requires that we pass along event activation information to the
browser using the xdg_activation_v1 protocol.
This change adds x-gtk-launch-uri to invoke GTK-native URL-dispatch
machinery. This machinery DTRT on both X11 and Wayland. We fall back
to the default browser machinery if we're not on a GTK frame.
The logic is more complicated than it has to be because the GTK URI
launch mechanism requires that we launch with respect to a specific GTK
window, and in some environments (e.g., running emacs -nw in a PGTK
Emacs) we don't have a GTK window. We also want to preserve the effect
of customizing browse-url-browser-function, so adding an entry to
browse-url-default-handlers that preempts URI open when we happen to be
on a GTK frame is the wrong thing to do.
* lisp/net/browse-url.el (browse-url--browser-defcustom-type):
(browse-url--inhibit-pgtk): avoid infinite recursion
(browse-url-default-browser): use pgtk launch
(x-gtk-launch-uri): new function
(browse-url-default-gtk-browser): ues it
* src/pgtkfns.c (unwind_gerror_ptr): new function
(Fx_gtk_launch_uri): new function
(syms_of_pgtkfns): register it
* etc/NEWS: mention the new feature
|
| |\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
2ba6387d1d6 ; Fix inaccuracy in ELisp Reference manual
8ac6a178804 ; * etc/PROBLEMS: Mention problems with XPM support in GD...
624322d5f6a Add missing fontification matches for elixir-ts-mode
5bafb11b400 ; Fix copyright year
186ea407326 Don't start docstrings with "This function" or similar
cb8ce2e68bb Enable indent-tabs-mode in obj-c-mode
54f35137096 Fix comment indent in 'lua-ts-mode' and old grammar
8b95549e908 * admin/nt/dist-build/build-dep-zips.py: (deps src) handl...
8064b2a6798 Document undocumented completion commands
c29b798537e ; etc/w32-feature.el (harfbuzz): improve test
0e43e35f96e * admin/nt/dist-build/emacs.nsi: (Uninstall) delete only ...
b83cd8a8fb0 ; * etc/tutorials/TUTORIAL.ko: Fix the beginning.
41caccc488b ; * etc/publicsuffix.txt: Update from upstream.
e6fb18406ee ; Fix refcards
14e791f9ba2 ; Update acknowledgments for Emacs 30
861b7864fc4 ; Fix node name in emacs-lisp-intro.texi
77243ba5be8 ; Update version tags of defcustoms
fe2ac33bae8 ;* doc/misc/efaq.texi (New in Emacs 30): Mention 'trusted...
8fb884f0dc0 ; * etc/NEWS: Fix wording.
e281355a5e8 Improve D-Bus and Tramp manual
# Conflicts:
# doc/emacs/emacs.texi
# etc/NEWS
# lisp/erc/erc-log.el
# lisp/eshell/esh-mode.el
# lisp/which-key.el
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/minibuf.c (Fread_from_minibuffer):
* lisp/minibuffer.el (minibuffer-complete-history)
(minibuffer-complete-defaults): Doc fixes.
* doc/emacs/mini.texi (Completion Commands): Fix markup, style of
describing commands, and indexing. Document 'C-x UP' and 'C-x
DOWN'.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/dispextern.h (struct image): Add scale so it can be compared in
search_image_cache.
* src/image.c (search_image_cache): Calculate the scale factor and
compare with the cached value.
(image_compute_scale): Compute the image's scale factor and optionally
store it in the image struct.
(compute_image_size): Move scale calculation code into
image_compute_scale and use it.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is brittle, as evinced by the recent problem with lib/stdlib.c.
* src/conf_post.h: Move potential inclusion of stdlib.h and
redefinitions of malloc, free, realloc, aligned_alloc, and calloc
from here ...
* src/lisp.h: ... to here. Do not redefine the symbols
if UNEXMACOS_C is defined.
* src/unexmacosx.c: Do not undef malloc, realloc, free.
(UNEXMACOS_C): New symbol, to prevent lisp.h from defining them.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Recent Gnulib should work around the Android NDK 16
MB_CUR_MAX bug, so Emacs no longer needs to worry about it.
* configure.ac (gl_STDLIB_H):
Remove, to stop overriding Gnulib.
* configure.ac (__ctype_get_mb_cur_max)
(emacs_cv_broken_mb_cur_max, REPLACEMENT_MB_CUR_MAX):
* src/conf_post.h (MB_CUR_MAX):
Remove, as Gnulib does this now.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Resolve warnings caused by mismatched format specifiers in `NSLog` and
`fprintf` calls.
This was observed when compiled with Clang version
19.1.6 (arm64-apple-darwin).
Warnings fixed:
- "format specifies type 'unsigned int' but the argument has type
'IOReturn' (aka 'int')"
* src/nsterm.m: Cast `IOReturn` (aka `int`) to `unsigned int` for `%x`
format specifiers in `NSLog`. (Bug#74971)
|
| |\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
5e97079cc75 ; Fix call to 'decode_string_utf_8' in #ifdef'ed-away code
6902673b5b9 ; Improve commentary in calendar.el
08b62132dde Add 'lua-ts-mode' to 'interpreter-mode-alist'
d8ffcf2fbac Document representation of dates in calendar.el
faaa13ec762 Autoload 'shortdoc-help-fns-examples-function'
|
| | | |
| | |
| | |
| | |
| | |
| | | |
* src/coding.c (Finternal_decode_string_utf_8): Fix calling
sequence of 'decode_string_utf_8' to adapt to changes in the
latter's signature.
|
| |\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
8f8da2d7854 ; * ChangeLog.4: Update.
49adcf30b01 ; * etc/AUTHORS: Update.
1381c6f9591 * Update authors.el
5c0f3f5826e ; * etc/NEWS: Mark unmarked entries.
8a0c9c234f1 Document 'trusted-content
c6ce11b2a48 Mention network-interface-list in network-interface-info ...
a7905145f70 ; * lisp/emacs-lisp/re-builder.el (reb-change-syntax): Fi...
cde22c02011 Move NEWS items from unreleased 28.3 to released 29.1
5686bb5b428 Improve browse-url-android-share docstring
92041e15f4a Minor doc fix for url-handler-regexp
9fd96e2ab95 Improve reb-change-syntax docstring
b9dc337ea74 * lisp/files.el (trusted-content-p): Make `:all` work in ...
4b685bc4fcd ; * src/process.c (Fnetwork_interface_list): Fix typo.
c14c4895719 ; * lisp/net/nsm.el (nsm-trust-local-network): Fix typo.
10f976300d0 ; Add some tree-sitter thing content to the manual
55303a6bc0a * lisp/org/ox-texinfo.el (org-texinfo-template): Fix Info...
8b6c6cffd1f trusted-content: Adjust the last patch based on prelimina...
69b16e5c638 ; * etc/NEWS: Fix typos.
5c6dbc65f36 ; * doc/lispref/frames.texi (Multiple Terminals): Add ind...
856a58e2827 Update documentation of 'etags' regexps some more
4c68846223b Update documentation of 'etags' regexps
b5158bd1914 elisp-mode.el: Disable Flymake byte-compile backend in un...
# Conflicts:
# doc/man/etags.1
# etc/NEWS
# lisp/org/ox-texinfo.el
|
| | | |
| | |
| | |
| | |
| | | |
* src/process.c (Fnetwork_interface_info): Reference
'network-interface-list'.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/sound.c (parse_sound) [WINDOWSNT]: Check that either :file
or :data is present.
(do_play_sound): Added parameter to select file or data, and code to
play from data.
(Fplay_sound_internal): Fixed volume format, and send file or data
to 'do_play_sound'. (Bug#74863)
* etc/NEWS: Add entry for this change.
* etc/PROBLEMS: Remove entry about missing support for :data.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
* src/dispnew.c (frame_rect_abs, frame_pos_abs, rect_intersect)
(copy_child_glyphs, abs_cursor_pos, is_in_matrix)
(is_cursor_obscured) [HAVE_ANDROID]: Delete functions.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/frame.c (frame_inhibit_resize): Under GTK do not inhibit
implied resizing as long as the tool bar has not been drawn yet
so the frame gets its intended initial height (Bug#74750).
* src/gtkutil.c (update_frame_tool_bar): Set tool_bar_resized
slot of frame f to true regardless of whether a tool bar was
made or not. This will make inhibiting implied resizes work
again from now on.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
* src/w32font.c (memq_no_quit):
* src/w32uniscribe.c (memq_no_quit): Remove; use the function from
fns.c instead. All callers changed.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is basically a workaround for running a test in batch mode
which should have a tty frame available but doesn't.
* src/frame.c (check_tty): Relax check if noninteractive.
* lisp/xt-mouse.el (xterm-mouse-event): Don't use frame-at if
noninteractive.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/fns.c (memq_no_quit): New function.
* src/lisp.h: Declare it.
* src/xdisp.c (redisplay_internal): Use memq_no_quit instead of
assq_no_quit.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/dispnew.c (change_frame_size): Do not propagate changes to
child frames to root frames and vice versa.
* src/frame.c (adjust_frame_size): Do not change video modes
in resizing a child frame.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/conf_post.h (ENOTSUP): Define to ENOSYS as msdos.h once
did.
(IFTODT): Copy definition from Gnulib.
* src/dispnew.c (is_tty_frame): Also test FRAME_MSDOS_P.
* src/frame.c (tty_child_pos_param, tty_child_size_param):
Export functions.
* src/msdos.c (mouse_get_xy, mouse_moveto, mouse_pressed):
Offset mouse positions by those of the selected frame.
(it_face_override): New function.
(IT_set_face): New argument F. Load FACE_ID from its face
cache.
(IT_write_glyphs): Track the frames on which glyphs were
generated and apply faces from their individual face caches.
(IT_write_glyphs_with_face): New function.
(tty_draw_row_with_mouse_face): Reimplement in line with tty.c
and eliminate an obsolete optimization.
(IT_clear_end_of_line, IT_clear_screen): Load faces from the
cache of the provided frame.
(IT_set_frame_parameters): Adjust frame geometry and garbage
frames after geometry parameters change as a child frame.
(BUILD_CHAR_GLYPH): Accept new parameter F.
(IT_menu_display): Offset cursor positions by those of the
selected frame.
* src/msdos.h (ENOTSUP): Move to conf_post.h for Gnulib.
* src/xdisp.c (redisplay_internal): Redisplay MSDOS frames
unconditionally as with terminal frames.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/dispnew.c (terminal_cursor_magic)
(combine_updates_for_frame): Disable unused code on Android.
* src/frame.c (tty_child_frame_rect): Define out on Android.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When using certain VPN clients, the interface info returned by
'getifaddrs' does not have the address family filled in for the
ifa_netmask component (this is allowed by the standard, since
the value is not specified). The resulting address info causes
network tests suite failures. Fix by copying the address family
from the returned interface address.
* src/process.c (network_interface_list): Copy the interface address
sa_family to the netmask address.
(Fnetwork_lookup_address_info): Fix test for non-IP addresses to
properly account for IPv6.
* test/src/process-tests.el (process-tests-check-bug-74907): New
test, checks that 'network-interface-list' output is as
expected.
(Bug#74907)
|
| |\ \ \ |
|
| | | | |
| | | |
| | | |
| | | | |
* src/dispnew.c (update_menu_bar): Remove superfluous argument.
|
| |\ \ \ \
| |/ / / |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* src/pgtkfns.c (Fpgtk_print_frames_dialog): Remove reference to
Qredisplay_dont_pause.
* src/pgtkterm.c (pgtk_cr_export_frames): Remove reference to
Qredisplay_dont_pause.
* src/xfns.c (Fx_print_frames_dialog): Remove reference to
Qredisplay_dont_pause.
* src/xterm.c (x_cr_export_frames): Remove reference to
Qredisplay_dont_pause.
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
* src/term.c (Ftty_frame_geometry, Ftty_frame_edges)
(Ftty_frame_list_z_order, Ftty_frame_restack)
(Ftty_display_pixel_width, Ftty_display_pixel_height): Doc fixes.
(Ftty_frame_restack): Make it "noreturn".
|
| | | |
| | |
| | |
| | |
| | |
| | | |
* src/dispnew.c (combine_updates): Remove unused parameter inhibit_scrolling.
* src/xdisp.c (redisplay_internal): Adjust caller.
* src/dispextern.h: Change function prototype.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* src/dispnew.c: Remove display_completed, redisplay_dont_pause,
redisplay-dont-pause was declared obsolete in Emacs 24. Remove anything
checking pending input, change function signatures accordingly, and so
on.
* src/keyboard.c (read_char): Don't use redisplay_dont_pause.
* src/minibuf.c (read_minibuf): Use new function signatures.
* src/xdisp.c: Don't check display_completed. Use new API.
* lisp/subr.el (redisplay-dont-pause): Remove declaration.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add support for child frames on tty
The redisplay part is complete. The frame-handling part supports
use-cases like Posframe, Corfu, and child frames acting like tooltips.
Other use-cases of child frames are not currently supported. In
particular, trying to create minibuffer-only child frames on ttys will
signal an error.
* src/xfaces.c (free_frame_faces): Change formatting slightly.
* src/xdisp.c (redisplay_trace, move_tracxe): Print to stderr because
stdout screws up terminal display.
(init_iterator): Remove a #ifdef HAVE_WINDOW_SYSTEM.
(clear_garbaged_frames): Return a bool telling if we cleared matrix.
(echo_area_display): Use combine_updates on tty frames.
(redisplay_internal): Changes for redisplay of tty child windows.
(deep_copy_glyph_row): Take a frame parameter.
(display_tty_menu_item): Changes because of function signature changes.
* src/w32term.c (w32_read_socket): Don't use FRAME_OBSCRURED_P,
which has been removed.
* src/w32inevt.c (do_mouse_event): Workaround for mouse events on
child frafmes.
* src/w32console.c (w32con_write_glyphs, w32con_update_end):
Use glyphs' frame for faces.
* src/treesit.c (treesit_load_language): Pacify a warning.
* src/w32console.c (w32con_clear_end_of_line): Set glyph's frame.
* src/terminal.c (cursor_to, raw_cursor_to): Handle case that
frame is a child frame.
* src/termhooks.h: Declare formerly static functions.
* src/term.c (tty_hide_cursor, tty_show_cursor): Make externally
visible.
(tty_write_glyphs): Determine faces based on a glyph's frame.
(tty_write_glyphs_with_face): Take a struct face argument instead
of a face id. Callers changed.
(tty_insert_glyphs): Use faces, not face ids.
(append_glyph, append_composite_glyph, append_glyphless_glyph):
Set glyph's frame.
(turn_on_face, turn_off_face): Take face argument instead of face
id. Callers adapted.
(Fresume_tty): Act on root frame.
(tty_draw_row_with_mouse_face): Handle child frames.
(restore_desired_matrix): Make sure glyphs' is live.
(set_tty_hooks): Set terminal's frame_raise_lower_hook.
(tty_frame_geometry, Ftty_frame_geometry, Ftty_frame_edges)
(Ftty_frame_list_z_order, Ftty_frame_restack)
(tty_display_dimension, Ftty_display_pixel_width)
(Ftty_display_pixel_height): New functions.
(syms_of_term): Defsubr new Lisp functions.
* src/minibuf.c (read_minibuf): Use combine_updates for tty
frames.
* src/frame.h (struct frame): Always define parent_frame. Change
'visible' to be a boolean. Always define 'undecorated' and
'no_accept_focus'. Add 'z_order'.
(FRAME_OBSCURED_P): Removed.
(FRAME_PARENT_FRAME): Make it a function.
(SET_FRAME_VISIBLE): Take a bool parameter, not an int.
(FRAME_INTERNAL_BORDER_WIDTH): Don't special-base HAVE_WINDOW_SYSTEM.
* src/frame.c (decode_tty_frame): New function.
(set_menu_bar_lines): Set menu bar lines and height to 0 for tty
child frames. Compute min height differently.
(adjust_frame_size): Set FrameCols/Rows only for root tty frames.
Mark tty root frame garbaged if child frame is adjusted. Run some
code even if not HAVE_WINDOW_SYSTEM.
(make_frame): Run some code even if not HAVE_WINDOW_SYSTEM.
(make_terminal_frame): Implement child frame creation.
(tty_child_pos_param, tty_child_size_param)
(tty_child_frame_rect): New functions.
(Fmake_terminal_frame): Parts rewritten for child frames.
(do_switch_frame): Add child frame support.
(Fframe_ancestor_p): Define if not HAVE_WINDOW_SYSTEM.
(Fmake_frame_visible, Fmake_frame_invisible)
(Fframe_visible_p, Fraise_frame):
Handle tty frames differently.
(store_frame_param): Signal error if trying to re-parent a tty
child frame.
(Fframe_parameters): Report some additional tty frame parameters.
(Fmodify_frame_parameters): Handle tty child frames.
(Fset_frame_position): Ditto.
(frame_parms): Define index for additional frame parameters.
(handle_frame_param): New function.
(gui_set_frame_parameters_1): Use handle_frame_param.
* src/disptab.h (DISP_TABLE_EXTRA_SLOTS): Change to 12.
(enum box): New enumeration.
* src/dispnew.c (check_rows): New function, #if 0.
(frame_matrix_frame): Variable removed.
(line_hash_code): Take glyph's frame into account.
(build_frame_matrix_from_leaf_window): Do not copy glyphs from
rows that aren't enabled.
(fill_up_glyph_row_with_spaces): Add frame parameter, uses
changed.
(fill_up_glyph_row_area_with_spaces): Add frame parameter. Set
glyph's frame to it.
(fill_up_frame_row_with_spaces): Ditto.
(set_frame_matrix_frame): Function removed.
(make_current): Change signature. Callers changed.
(mirrored_line_dance): Take a frame argument, not a matrix.
(redraw_frame): Don't clear_frame a child frame.
(struct rect): New.
(rect_intersect, frame_pos_abs, frame_rect_abs, root_frame)
(max_child_z_order, is_frame_ancestor, frames_with_root)
(frames_with_parent, frame_z_order_cmp, Fframe__z_order_lessp)
(frames_in_reverse_z_order, tty_raise_lower_frame, is_tty_frame)
(is_tty_child_frame, is_tty_root_frame, first_enabled_row)
(make_matrix_current, prepare_desired_root_row)
(make_glyph_space, neutralize_wide_char, produce_box_glyphs)
(produce_box_sides, produce_box_line, copy_child_glyphs)
(update_window_frame, update_initial_frame, flush_terminal)
(abs_cursor_pos, is_in_matrix, is_cursor_obscured)
(terminal_cursor_magic, combine_updates_for_frame)
(combine_updates): New functions.
(update_frame): Rewritten.
(Fdisplay__update_for_mouse_movement): Take a MOUSE_FRAME param.
(syms_of_display): New symbol frame--z-order--lessp, tty-non-selected-cursor.
New subr Sframe__z_order_lessp. Provide tty-child-frames.
* src/dispextern.h (struct glyph): Add member 'frame'.
(CHAR_GLYPH_SPACE_P): Add FRAME parameter. All uses changed.
(GLYPH_EQUAL_P): Compare glyphs' frame.
(SET_CHAR_GLYPH): Add parameter FRAME.
(SET_CHAR_GLYPH_FROM_GLYPH): Ditto.
* src/chartab.c (Fmake_char_table): Allow more than 10 display
table slots.
* lisp/xt-mouse.el (xterm-mouse--handle-mouse-movement): Use new
terminal parameter xterm-mouse-frame.
(xterm-mouse-position-function): Ditto.
(xterm-mouse-event): Determine frame under mouse and compute
frame-relative coordinates. Set terminal parameter
xterm-mouse-frame.
* lisp/tty-tip.el: New file implementing tooltip for ttys.
* lisp/paren.el (show-paren-function): Don't check if
display-graphics-p when using child frames.
* lisp/frame.el (frame-at): New function.
(tty-frame-geometry, tty-frame-edges, tty-frame-restack)
(tty-display-pixel-height, tty-frame-list-z-order)
(tty-display-pixel-width): Declare C function.
(frame-geometry): Use tty-frame-geometry.
(frame-edges): Use tty-frame-edges.
(frame-list-z-order): Use tty-frame-list-z-order.
(frame-restack): Use tty-frame-restack.
(display-pixel-height): Use tty-display-pixel-height.
(display-pixel-width): Use tty-display-pixel-width.
* lisp/disp-table.el (display-table): Increase size to 12.
(box-horizontal, box-vertical, box-down-right, box-down-left)
(box-up-right, box-up-left): New display table slot names for
box-drawing characters.
(display-table-slot, set-display-table-slot): Extend doc string.
(describe-display-table): Display new display table slots.
(standard-display-unicode-special-glyphs): New function setting
up Unicode characters for display table entries.
* .gitignore: Don't ignore patch files, they are useful to see in
Magit status buffer when applying patches (git am).
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
* src/frame.c (make_terminal_frame): Error for minibuffer-only frames.
* src/term.c (Ftty_frame_restack): Signal error.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* src/xdisp.c (clear_garbaged_frames): Return true if any tty frame's
current matrix has been cleared.
(redisplay_internal): Consider all windows if clear_garbaged_frames
returns true.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
This reverts commit f62d70f52f4f6b7ed158d618bf790df21f171172.
|
| | | | |
| | | |
| | | |
| | | | |
This reverts commit 627cbf05b53756883a789ff45727acf23f5066a4.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* src/dispnew.c (combine_updates): Remove unused parameter inhibit_scrolling.
* src/xdisp.c (redisplay_internal): Adjust caller.
* src/dispextern.h: Change function prototype.
|
| | |\ \ \ |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* src/dispnew.c: Remove display_completed, redisplay_dont_pause,
redisplay-dont-pause was declared obsolete in Emacs 24. Remove anything
checking pending input, change function signatures accordingly, and so
on.
* src/keyboard.c (read_char): Don't use redisplay_dont_pause.
* src/minibuf.c (read_minibuf): Use new function signatures.
* src/xdisp.c: Don't check display_completed. Use new API.
* lisp/subr.el (redisplay-dont-pause): Remove declaration.
|