summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Process sentinels need to work under X and commandlinedickmao2021-05-133-8/+10
| | | | | | | | * src/process.c (add_non_keyboard_read_fd): Make this a public function. (add_process_read_fd): Fold old, static add_non_keyboard_read_fd guts into here. * src/xsmfns.c (ice_conn_watch_CB): Call add_non_keyboard_read_fd (bug#43834).
* Fix vertical cursor motion across tall text or small imagesEli Zaretskii2021-05-131-0/+42
| | | | | | | | | | | | | | | 'line-move-partial' should in general leave it to the display engine to scroll or recenter the window due to vertical motion of the cursor. The only purpose of this function is to produce vscroll suitable for scrolling across large (relatively to the window's height) images, where moving by display lines is not appropriate. * src/xdisp.c (Fdisplay__line_is_continued_p): New primitive. * lisp/simple.el (line-move-partial): Call 'display--line-is-continued-p' to decide whether to leave it to redisplay to scroll the window as appropriate. (Bug#48170)
* Make searching for files faster under WindowsNicolás Bértolo2021-05-131-1/+11
| | | | | | * src/lread.c (openp): Use faccessat to check that a file exists before opening it on Windows (bug#41646). This speeds up searching for files.
* Use an explicit line width of 1 on hollow cursors under XRadon Rosborough2021-05-131-2/+3
| | | | | * src/xterm.c (x_draw_hollow_cursor): Specify a line width of 1 explicitly to avoid problems on some X implementations (bug#42452).
* ; * src/image.c (xpm_format, xpm_valid_color_symbols_p): Fix last change.Eli Zaretskii2021-05-131-2/+3
|
* * src/image.c (xpm_image_p): Avoid another compiler warning.Eli Zaretskii2021-05-131-0/+2
|
* * src/image.c: Avoid compiler warnings in Cairo builds without XPM.Eli Zaretskii2021-05-131-3/+4
|
* Handle Bug#24526 without breaking Emacs on tiling WMs (Bug#48268)Martin Rudalics2021-05-126-6/+52
| | | | | | | | | | | | | | | | | | | | | | | Since tiling window managers may react allergically to resize requests immediately following MapNotify events on X, make sure that such requests are issued only when a new frame should not become visible and a size has been explicitly requested for it. * lisp/faces.el (x-create-frame-with-faces): Mark frame as 'was-invisible' if it should be initially invisible or iconified and has its size specified explicitly. * src/frame.c (make_frame): Initialize new frame's was_invisible flag. (Fframe__set_was_invisible): New internal function. * src/frame.h (struct frame): Specify size of new_size_p slot. New flag was_invisible. * src/w32fns.c (Fx_create_frame) * src/nsfns.m (Fx_create_frame) * src/xfns.c (Fx_create_frame): Set new frame's was_invisible flag. * src/xterm.c (handle_one_xevent): Call xg_frame_set_char_size after a PropertyNotify or MapNotify event only if F's was_invisible flag was set.
* Rename comp-deferred-compilationAndrea Corallo2021-05-111-3/+4
| | | | | | | | * lisp/progmodes/elisp-mode.el (emacs-lisp-native-compile-and-load): Rename comp-deferred-compilation -> native-comp-deferred-compilation. * src/comp.c (maybe_defer_native_compilation, syms_of_comp): Likewise.
* Fix assertions in nth_minibufferEli Zaretskii2021-05-111-0/+2
| | | | | * src/minibuf.c (nth_minibuffer): Avoid assertion violation when DEPTHth minibuffer doesn't exist. (Bug#48337)
* Base the "extraclean" Make rule on "maintainer-clean"Glenn Morris2021-05-091-4/+1
| | | | | | | | | | | | | | | | * Makefile.in (FIND_DELETE): New, set by configure. (extraclean_dirs): Remove. (extraclean): Make it just a small variation on maintainer-clean. * admin/charsets/Makefile.in (extraclean): * admin/grammars/Makefile.in (extraclean): * admin/unidata/Makefile.in (extraclean): * leim/Makefile.in (extraclean): * lib-src/Makefile.in (extraclean): * lisp/Makefile.in (extraclean): * lwlib/Makefile.in (extraclean): * nt/Makefile.in (extraclean): * src/Makefile.in (extraclean): Remove target. * lib/Makefile.in (extraclean): Merge into maintainer-clean.
* Prevent the selected window being a dead mini-window when switching framesAlan Mackenzie2021-05-081-3/+11
| | | | | | | | | | | | | | | This fixes bug #48249 and also a situation where, with recursive minibuffers enabled and minibuffer-follows-selected-frame t, switching frames when a minibuffer was open would leave the mini-window selected on the old frame. * lisp/window.el (record-window-buffer): Add extra parameter DO-MINIBUF, and amend the code such that minibuffers only get processed when that parameter is non-nil. * src/minibuf.c (zip_minibuffer_stacks, read_minibuf): Call Qrecord_window_buffer with the new argument set to Qt. (move_minibuffers_onto_frame): Set the selected window on the old frame when this would otherwise remain the mini-window.
* Rename comp-eln-load-path → native-comp-eln-load-pathAndrea Corallo2021-05-062-8/+8
| | | | | | | | | | | | * src/comp.c (Fcomp_el_to_eln_filename): Rename comp-eln-load-path → native-comp-eln-load-path. * src/lread.c (maybe_swap_for_eln): Likewise. * lisp/startup.el (native-comp-eln-load-path) (normal-top-level): Likewise. * lisp/emacs-lisp/comp.el (comp-spill-lap-function, comp-final) (comp-eln-load-path-eff, comp-trampoline-compile) (comp-clean-up-stale-eln, comp-run-async-workers) (comp-lookup-eln, batch-byte-native-compile-for-bootstrap): Likewise.
* Rename comp-warning-on-missing-sourceAndrea Corallo2021-05-062-2/+4
| | | | | | | | | * src/lread.c (maybe_swap_for_eln): Rename comp-warning-on-missing-source → native-comp-warning-on-missing-source. * src/comp.c (syms_of_comp): Likewise. * lisp/emacs-lisp/comp.el (native-comp-warning-on-missing-source): Likewise.
* Rename comp-native-driver-options → native-comp-driver-optionsAndrea Corallo2021-05-061-2/+2
| | | | | | | | | * src/comp.c (add_driver_options, syms_of_comp): Rename comp-native-driver-options → native-comp-driver-options. * lisp/emacs-lisp/comp.el (native-comp-driver-options) (comp-ctxt, comp-spill-lap-function, comp-final) (comp-run-async-workers): Likewise. * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Likewise.
* Rename comp-debug -> native-comp-debugAndrea Corallo2021-05-061-2/+2
| | | | | | | | | * src/comp.c (emit_ctxt_code, syms_of_comp): Rename comp-debug -> native-comp-debug. * lisp/emacs-lisp/comp.el (native-comp-debug, comp-ctxt) (comp-spill-lap-function, comp-run-async-workers): Likewise. * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Likewise. * test/src/comp-tests.el (comp-tests-bootstrap): Likewise.
* Rename comp-speed -> native-comp-speedAndrea Corallo2021-05-061-3/+3
| | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Rename comp-speed -> native-comp-speed. * lisp/emacs-lisp/comp.el (native-comp-speed, comp-ctxt, comp-func, comp-spill-lap-function, comp-trampoline-compile, comp-run-async-workers): Likewise. * src/comp.c (emit_ctxt_code, load_comp_unit, syms_of_comp): Likewise. * test/src/comp-tests.el (comp-tests-tco, comp-tests-fw-prop-1) (comp-tests-check-ret-type-spec, comp-tests-pure): Likewise.
* ; * src/doc.c (syms_of_doc): Fix last change.Eli Zaretskii2021-05-061-7/+7
|
* Improve formatting in text-quoting-style docstringStefan Kangas2021-05-061-11/+13
| | | | | * src/doc.c (syms_of_doc) <text-quoting-style>: Doc fix; improve formatting for readability.
* Fix wrong handling of minibuffers when frames get iconified/made invisibleAlan Mackenzie2021-05-062-58/+22
| | | | | | | | | | | | | | | | | This should fix bug #47766. * lisp/window.el (window-deletable-p): Add a quote where it was missing from minibuffer-follows-selected-frame. * src/frame.c (check_minibuf_window): Delete the function. (delete_frame): In place of calling check_minibuf_window, call move_minibuffers_onto_frame, possibly to move minibuffers onto the new current frame. (Fmake_frame_invisible, Ficonify_frame): Remove calls to check_minibuf_window. * src/minibuf.c (Factive_minibuffer_window): Search the frames for the active minibuffer rather than just assuming minibuf_window has been correctly updated.
* Rename feature `nativecomp' into `native-compile'Andrea Corallo2021-05-051-1/+1
| | | | | | | | | | | | | | | * test/src/comp-tests.el : Rename feature `nativecomp' into `native-compile'. * test/lisp/help-fns-tests.el (help-fns-test-lisp-defun): Likewise. * src/comp.c (syms_of_comp): Likewise. * lisp/startup.el (normal-top-level): Likewise. * lisp/loadup.el: Likewise. * lisp/help.el (help-function-arglist): Likewise. * lisp/emacs-lisp/package.el (package--native-compile-async) (package--delete-directory): Likewise. * lisp/emacs-lisp/nadvice.el (advice--add-function): Likewise. * lisp/emacs-lisp/comp.el (comp-ensure-native-compiler): Likewise. * lisp/emacs-lisp/advice.el (ad-add-advice): Likewise.
* Fix setting of 'width' and 'height' frame parametersMartin Rudalics2021-05-051-3/+6
| | | | | * src/frame.c (Fframe_parameters): Fix bogus setting of 'height' and 'width' parameters.
* Fix two GTK3 event handling issuesMartin Rudalics2021-05-051-24/+50
| | | | | | | | | | * src/xterm.c (handle_one_xevent): For GTK3 PropertyNotify and MapNotify events explicitly request the stored frame sizes when the frame changes from iconified to a non-hidden state (Bug#24526). For Expose events do not change the frame's visibility or iconified state. For FocusIn events on GTK3 do not apply the fix for Bug#42655. The latter two changes are to avoid that plain invisible frames get reported as iconified.
* Make the ELC+ELN lines line up with the other linesLars Ingebrigtsen2021-05-051-1/+1
|
* Fix infloop in lsp-modeEli Zaretskii2021-05-041-0/+5
| | | | | | | | * src/indent.c (line_number_display_width): Make sure the selected window's buffer is current before using display code on it: redisplay assumes that the window's buffer is current at all times. Reported by Evgeny Kurnevsky via lsp-mode's issue 1621, https://github.com/emacs-lsp/lsp-mode/issues/1621.
* Merge from origin/emacs-27Glenn Morris2021-05-041-3/+6
|\ | | | | | | | | | | | | 101a049f55 Improve doc string of 'tab-width'. 43c154404e * lisp/emacs-lisp/elp.el: Doc fixes. 1984213f62 * lisp/emacs-lisp/pp.el: Doc fixes. 6486c9dc73 * admin/make-tarball.txt: Note to update more files on web...
| * Improve doc string of 'tab-width'.Eli Zaretskii2021-04-301-3/+6
| | | | | | | | | | * src/buffer.c (syms_of_buffer) <tab-width>: Clarify doc string. (Bug#48058)
| * Fix crash when using menus and tramp on NSAlan Third2021-04-041-2/+16
| | | | | | | | | | | | | | | | ; Fixes bug#24472, bug#37557 and bug#37922. * src/nsterm.m (ns_select): Don't drain outerpool in this function. (cherry picked from commit f14869cd70e61b1908ec88a5e3d4bf21c7d538a0)
* | Remove as of recently unused GDK macroBasil L. Contovounesios2021-05-041-2/+0
| | | | | | | | | | | | | | | | | | Its only use was removed in the recent change of 2021-04-27 "Major rewrite of adjust_frame_size", announced in the following thread: https://lists.gnu.org/r/emacs-devel/2021-04/msg01162.html * src/gtkutil.c [USE_GTK && !HAVE_GTK3] (gdk_window_get_geometry): Remove unused macro to pacify -Wunused-macros build warning.
* | Fix a problem with x_set_tab_bar_lines (Bug#46827)Martin Rudalics2021-05-042-8/+13
| | | | | | | | | | | | | | | | | | * src/xfns.c (x_set_tab_bar_lines): Call x_change_tab_bar_height only if the number of tab bar lines changed from or to zero (Bug#46827). * src/xterm.c (x_make_frame_visible): Make frame_size_history update less noisy by doing it only if the frame wasn't visible before.
* | Fix unquoting of file names in subprocesses (Bug#48177)Michael Albinus2021-05-031-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/files.el (file-name-non-special): Improve handling of inhibit-file-name-handlers. * src/callproc.c (Fcall_process, call_process): Unquote infile, error_file and output_file. (Bug#48177) * test/lisp/files-tests.el (files-tests-file-name-non-special--subprocess) (files-tests-file-name-non-special-file-name-all-completions) (files-tests-file-name-non-special-file-name-completion): Adapt tests.
* | Fix incorrect resizing behaviour on macOS (bug#48157, bug#48162)Alan Third2021-05-031-14/+22
| | | | | | | | | | | | | | * src/nsterm.m ([EmacsView viewDidResize:]): The drawing buffer can be resized independently of Emacs's idea of the frame size. Co-authored-by: martin rudalics <rudalics@gmx.at>
* | Add two changes announced but not included in previous commitMartin Rudalics2021-05-021-18/+14
| | | | | | | | | | | | * src/frame.c (adjust_frame_size): Remove extra inhibit_horizontal/_vertical checks. Improve the implied resize check when INHIBIT equals 2.
* | Fix crash when resizing GNUstep buildsAlan Third2021-05-022-9/+8
| | | | | | | | | | | | | | | | | | The toolkit can send far too many resize notifications, so be more careful when we take action after receiving one. * src/nsfns.m (ns_set_tool_bar_lines): Remove unneeded NSTRACE. * src/nsterm.m ([EmacsView viewDidResize:]): Don't report resizes to Emacs when the same change has already been reported and delayed.
* | Make adjust_frame_size set up frame's new_width/_height too (Bug#17120)Martin Rudalics2021-05-026-27/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The purpose of this change is to have implied frame size changes pick up sizes requested by previous explicit size changes not only after they have been confirmed by the WM but already when they are initially passed to adjust_frame_size (Bug#17120). * src/dispextern.h (delayed_size_change): Remove extern. * src/dispnew.c (delayed_size_change): Make static again. (do_pending_window_change): Call change_frame_size only if F's new_size_p flag is set. (change_frame_size_1): Set/reset F's new_size_p flag * src/frame.c (adjust_frame_size): Remove extra inhibit_horizontal/_vertical checks. Improve the implied resizes check with INHIBIT equals 2. Set F's new_width and new_height and reset F's new_size_p flag when we run set_window_size_hook with INHIBIT 0 or 1. * src/frame.h (struct frame): New bit slot new_size_p. * src/gtkutil.c (xg_frame_resized): Use F's new_size_p flag instead of delayed_size_change to decide whether to call change_frame_size. (xg_frame_set_char_size): Call frame_size_history_extra before waiting for the ConfigureNotify event. * src/xterm.c (handle_one_xevent): Use F's new_size_p flag instead of delayed_size_change to decide whether to call change_frame_size.
* | Fix infinite loop on GNUstep when toolbar updatedAlan Third2021-05-011-19/+12
| | | | | | | | | | * src/nsterm.m ([EmacsView viewDidResize:]): Use Emacs's existing knowledge of the frame size to decide whether to resize or not.
* | Fix NS build warningsAlan Third2021-05-011-1/+0
| | | | | | | | * src/nsfns.m (Fx_create_frame): Remove unused variables.
* | Fix the unexec build on MS-WindowsEli Zaretskii2021-04-301-2/+9
| | | | | | | | | | | | | | * src/buffer.c (init_buffer) [USE_MMAP_FOR_BUFFERS]: If dumped with unexec, be sure to map new memory also for the " prin1" buffer. For the reasons and discussion, see https://lists.gnu.org/archive/html/emacs-devel/2021-04/msg01401.html.
* | * src/doc.c (Fsnarf_documentation): Fix bug#48019Stefan Monnier2021-04-291-1/+1
| | | | | | | | Don't presume that `custom-delayed-init-variables` holds a list.
* | ; * src/comp.c: Fix typos.Eli Zaretskii2021-04-271-2/+2
| |
* | ; Fix typosStefan Kangas2021-04-271-3/+3
| |
* | Major rewrite of adjust_frame_sizeMartin Rudalics2021-04-2719-1198/+908
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Have adjust_frame_size pass native frame sizes to backends instead of text sizes. Expand frame size history management. Drop PIXELWISE argument from change_frame_size and convert native to text sizes only when calling adjust_frame_size. Use convention in arguments that -1 instead of 0 means that no size change is required. When adjusting frame sizes pick up delayed size changes (Bug#46827). * lisp/frame.el (frame-notice-user-settings, make-frame): Don't set frame size history. (frame--size-history): Rewrite doc-string. Handle new formats of `frame-size-history' entries. * src/dispextern.h (delayed_size_change): Extern it. (change_frame_size): Drop last argument from extern. * src/dispnew.c (delayed_size_change): Make it global. (handle_window_change_signal): Reformat. Drop last argument from change_frame_size call. (do_pending_window_change, init_display_interactive): Drop last argument from change_frame_size call. (change_frame_size_1): NEW_WIDTH and NEW_HEIGHT now specify native sizes. Drop last argument PIXELWISE. Queue a change when it either differs from F's current pixel sizes or F's previously queued sizes. Inject frame_size_history_extra call when queuing. Adopt convention that for queued sizes -1 means that no size change is required. Convert from native to text sizes when calling adjust_frame_size. (change_frame_size): Drop last argument PIXELWISE and drop it also in change_frame_size_1 calls. * src/frame.c (frame_size_history_add): Remove. (frame_inhibit_resize): Remove call to frame_size_history_add. (set_menu_bar_lines, set_tab_bar_lines): Simplify. Drop last argument from change_frame_size call. (frame_windows_min_size): No more static. (keep_ratio): Minor rewrite using macros. (frame_size_history_adjust, frame_size_history_plain) (frame_size_history_extra): New functions. (adjust_frame_size): Major rewrite. Adopt new convention that negative values for new sizes mean no change. Pick up delayed size changes from F's new_width and new_height slots (Bug#46827). Call set_window_size_hook with native instead of text sizes. Do not sanitize window sizes any more. Call frame_size_history_adjust instead of frame_size_history_add. Always set F's resized_p slot to true. (make_frame): Initialize new_width and new_height slots to -1. Simplify setup of initial sizes and an adjust_frame_size call. (Fframe_parameters): Drop processing F's new_pixelwise slot. (check_frame_pixels): Reorder to make declarations appear first. (Fset_frame_height, Fset_frame_width, Fset_frame_size): Pass explicit width and height values to adjust_frame_size instead of -1. (gui_set_frame_parameters): Minor rewrite making sure that explicit sizes and the corresponding parameter are passed to adjust_frame_size. Remove frame_size_history_add call. (gui_figure_window_size): Drop last two arguments. Simplify assignment of initial size. Set new_height and new_width slots to -1. Use adjust_frame_size to set sizes instead of returning them to caller. (syms_of_frame): Drop symbols used by frame size history; these are now built on-the-fly. Also drop some menu bar related symbols in favor of Qmenu_bar_lines. * src/frame.h (struct frame): Remove new_pixelwise. (SET_FRAME_COLS, SET_FRAME_LINES, SET_FRAME_WIDTH) (SET_FRAME_HEIGHT): Remove macros. (frame_size_history_add): Remove externs. (frame_windows_min_size, frame_size_history_plain) (frame_size_history_extra): Add externs. (FRAME_WINDOWS_WIDTH, FRAME_WINDOWS_HEIGHT): Rename to FRAME_INNER_WIDTH and FRAME_INNER_HEIGHT. (gui_figure_window_size): Drop last two arguments from extern. * src/gtkutil.c (xg_frame_resized): Rename arguments to WIDTH and HEIGHT. Consult delayed_size_change to handle case where WIDTH and HEIGHT do not match F's new_width and new_height values. Call change_frame_size with native sizes and without PIXELWISE argument. Instead of frame_size_history_add call frame_size_history_extra. (xg_frame_set_char_size): WIDTH and HEIGHT are native sizes now; fix adjust_frame_size call accordingly. Instead of frame_size_history_add call frame_size_history_extra. (style_changed_cb): Call xg_frame_set_char_size with native instead of text sizes. (tb_size_cb): Remove frame_size_history_add call. Call adjust_frame_size with INHIBIT 5. (free_frame_tool_bar, xg_change_toolbar_position): Remove frame_size_history_add call. (update_frame_tool_bar): Call adjust_frame_size with INHIBIT 2 and let it handle frame_inhibit_implied_resize and fullheight/-width. Remove frame_size_history_add call. * src/keyboard.c (Fsuspend_emacs): Call change_frame_size with native sizes. * src/nsfns.m (ns_set_tool_bar_lines): Call adjust_frame_size with INHIBIT 2 and let it handle frame_inhibit_implied_resize and fullheight/-width. Remove frame_size_history_add call. (Fx_create_frame): Drop two last arguments in gui_figure_window_size call. Do not SET_FRAME_WIDTH and SET_FRAME_HEIGHT, the adjust_frame_size in gui_figure_window_size did that already. * src/nsterm.m (ns_set_window_size): Drop PIXELWISE argument and its processing; WIDTH and HEIGHT represent native pixel sizes now. Call change_frame_size with native sizes. Remove call to frame_size_history_add. ([EmacsView viewDidResize:]): Call change_frame_size with native sizes. * src/term.c (Fresume_tty): Call change_frame_size with native sizes. * src/termhooks.h (*set_window_size_hook): Drop last argument PIXELWISE. * src/w32fns.c (w32_change_tab_bar_height) (w32_change_tool_bar_height): Fix handling of these in the initial phase before they have been resized at least once. (Fx_create_frame, w32_create_tip_frame): Drop two last arguments in gui_figure_window_size call. Do not SET_FRAME_WIDTH and SET_FRAME_HEIGHT (or SET_FRAME_COLS and SET_FRAME_LINES), the adjust_frame_size in gui_figure_window_size did that already. * src/w32inevt.c (resize_event, maybe_generate_resize_event): Pass native sizes to change_frame_size. * src/w32term.c (w32_read_socket): When WM_WINDOWPOSCHANGED pass native sizes to change_frame_size. (w32_new_font): Recalculate FRAME_TAB_BAR_HEIGHT. Simplify code. (w32fullscreen_hook): Call change_frame_size with native sizes. (w32_set_window_size): Drop argument PIXELWISE and its processing; WIDTH and HEIGHT are native sizes now. Remove frame_size_history_add calls. Pass native sizes to change_frame_size. * src/widget.c (set_frame_size): Set width and height of widget directly. Call frame_size_history_plain instead of frame_size_history_add. (update_from_various_frame_slots): Call frame_size_history_extra. (EmacsFrameRealize): Call frame_size_history_plain. (EmacsFrameResize): Call change_frame_size with native sizes. Call frame_size_history_extra instead of frame_size_history_add. (EmacsFrameSetCharSize): Call frame_size_history_extra. Drop PIXELWISE argument in x_set_window_size call and specify pixels. (pixel_to_text_size): Remove function. * src/xdisp.c (resize_mini_window): Replace FRAME_WINDOWS_HEIGHT with FRAME_INNER_HEIGHT. (redisplay_tab_bar): Don't set tab_bar_redisplayed when we did not redisplay it. (redisplay_tool_bar): Don't call it for external tool bar. Don't set tool_bar_redisplayed when we did not redisplay it. (redisplay_window): When the tool bar is external call update_frame_tool_bar directly. * src/xfns.c (x_set_menu_bar_lines): Call adjust_frame_size only if number of menu bar lines changed and fix 6th argument. (x_change_tab_bar_height, x_change_tool_bar_height): Fix handling of these in the initial phase before they have been resized at least once. (Fx_create_frame, x_create_tip_frame): Drop two last arguments in gui_figure_window_size call. Do not SET_FRAME_WIDTH and SET_FRAME_HEIGHT (or SET_FRAME_COLS and SET_FRAME_LINES), the adjust_frame_size in gui_figure_window_size did that already. * src/xmenu.c (update_frame_menubar): Fix 6th arg of adjust_frame_size call. (free_frame_menubar): For Motif frames fix fullscreen and `frame-inhibit-implied-resize' handling. Fix 6th arg of adjust_frame_size calls. * src/xterm.c (x_net_wm_state): Remove call to frame_size_history_add. (handle_one_xevent): For PropertyNotify and UnmapNotify events add frame_size_history_plain calls. For MapNotify and ConfigureNotify events add a frame_size_history_extra call. For ConfigureNotify events also handle delayed size changes and call change_frame_size with native sizes. (x_new_font): Recalculate FRAME_TAB_BAR_HEIGHT. Simplify code. (x_handle_net_wm_state): Remove frame_size_history_add call. (x_check_fullscreen): Remove frame_size_history_add call. Call change_frame_size with native height. (x_set_window_size_1): WIDTH and HEIGHT are now native. Remove some frame_size_history_add calls and add frame_size_history_extra calls instead. If the frame is not visible call adjust_frame_size directly instead of calling change_frame_size. (x_set_window_size): Drop PIXELWISE argument. WIDTH and HEIGHT represent native sizes now. (x_make_frame_visible, x_make_frame_invisible): Call frame_size_history_plain. * src/xterm.h (x_set_window_size): Drop last argument from extern declaration.
* | Fix compilation warnings in non-toolkit buildsLars Ingebrigtsen2021-04-271-8/+8
| | | | | | | | | | | | | | | | | | | | | | * src/xterm.c (x_create_toolkit_scroll_bar) (x_create_horizontal_toolkit_scroll_bar): String constants for XtSetArg are defined as const strings (in /usr/include/X11/Xaw3d/ThreeD.h, for instance), but the argument in XtSetArg is defined as either a const char* or a regular char* in /usr/include/X11/Intrinsic.h. Cast the argument to String (which should be correct on all platforms, hopefully) to avoid a compilation warning (bug#47452).
* | * src/editfns.c (Fpropertize): Doc fix; reference Info manual.Stefan Kangas2021-04-261-0/+2
| |
* | ; Add 2021 to copyright yearsGlenn Morris2021-04-251-1/+2
| |
* | Merge branch 'feature/native-comp' into into trunkAndrea Corallo2021-04-2528-171/+6707
|\ \
| * | Improve detection of pdumper file and *.eln filesfeature/native-compEli Zaretskii2021-04-241-1/+9
| | | | | | | | | | | | | | | * src/emacs.c (load_pdump_find_executable): Resolve symlinks even if argv[0] includes leading directories. (Bug#46790)
| * | Improve diagnostics of loading *.eln filesEli Zaretskii2021-04-241-1/+5
| | | | | | | | | | | | | | | * src/pdumper.c (dump_do_dump_relocation): Improve diagnostics when loading preloaded *.eln files fails. (Bug#46790)
| * | Introduce `sxhash-equal-including-properties'.Andrea Corallo2021-04-211-9/+34
| | | | | | | | | | | | | | | | | | | | | * src/fns.c (collect_interval): Move it upwards. (Fsxhash_equal_including_properties): New function. (syms_of_fns): Register `sxhash-equal-including-properties'. * etc/NEWS: Add 'sxhash-equal-including-properties'.
| * | Merge remote-tracking branch 'savannah/master' into native-compAndrea Corallo2021-04-1915-104/+359
| |\ \