summaryrefslogtreecommitdiff
path: root/src/xterm.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge from origin/emacs-26Glenn Morris2018-12-101-4/+10
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 908af9d Indexing followup to recent changes 505ac9a Improve documentation of cursor-sensor.el (bug#33664) d817d2c * doc/lispref/commands.texi (Adjusting Point): Bug#33662 18442da Tramp multi-hop methods must be inline 1e3e24d ; * src/xterm.c (x_update_begin): Fix whitespace. 1d743d2 Fix scaling problem in Cairo builds 2b9e993 ; * doc/lispref/text.texi (Special Properties): Fix wording. ... e568202 * lisp/simple.el (next-line-or-history-element): Use current-... c7897c2 A few further fixes of window internals description # Conflicts: # doc/misc/tramp.texi
| * ; * src/xterm.c (x_update_begin): Fix whitespace.Eli Zaretskii2018-12-081-1/+1
| |
| * Fix scaling problem in Cairo buildsAri Roponen2018-12-081-4/+10
| | | | | | | | | | | | * src/xterm.c (x_begin_cr_clip) [USE_GTK]: (x_update_begin) [USE_CAIRO && USE_GTK]: Support scaling. (Bug#33442)
| * Update GNOME bugtracker URLsGlenn Morris2018-08-241-2/+2
| | | | | | | | | | | | | | | | * configure.ac, admin/notes/multi-tty, etc/PROBLEMS: * src/emacs.c (main): * src/xterm.c (x_connection_closed): Update GNOME bugtracker URLs. ; * src/gtkutil.c (xg_display_close): ; * src/image.c (svg_load_image): Update URLs in comments.
* | Pacify gcc -Wmaybe-uninitialized without X11-XCBPaul Eggert2018-11-111-1/+1
| | | | | | | | | | | | I ran into this problem on Ubuntu 18.04.1 LTS. * src/xterm.c (get_current_wm_state) [!USE_XCB]: Mark reply_data as UNINIT here too.
* | Improve bignum support for system typesPaul Eggert2018-08-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use bignums when Emacs converts to and from system types like off_t for file sizes whose values can exceed fixnum range. Formerly, Emacs sometimes generted floats and sometimes ad-hoc conses of integers. Emacs still accepts floats and conses for these system types, in case some stray Lisp code is generating them, though this usage is obsolescent. * doc/lispref/files.texi (File Attributes): * doc/lispref/hash.texi (Defining Hash): * doc/lispref/nonascii.texi (Character Sets): * doc/lispref/os.texi (User Identification): * doc/lispref/processes.texi (System Processes): * etc/NEWS: Document changes. * src/bignum.c (mpz_set_uintmax, make_biguint) (mpz_set_uintmax_slow, bignum_to_intmax, bignum_to_uintmax): New functions. (mpz_set_intmax_slow): Implement via mpz_limbs_write, to avoid the need for an extra pass through a negative number. * src/charset.c (Fencode_char): * src/composite.h (LGLYPH_SET_CODE): * src/dired.c (file_attributes): * src/dosfns.c, src/w32.c (list_system_processes) (system_process_attributes): * src/editfns.c (init_editfns, Fuser_uid, Fuser_real_uid) (Fgroup_gid, Fgroup_real_gid, Femacs_pid): * src/emacs-module.c (check_vec_index): * src/fns.c (Fsafe_length): * src/process.c (record_deleted_pid, Fprocess_id): * src/sysdep.c (list_system_processes, system_process_attributes): * src/xselect.c (x_own_selection, selection_data_to_lisp_data): * src/xterm.c (set_wm_state): * src/inotify.c (inotifyevent_to_event, add_watch) (inotify_callback): If an integer is out of fixnum range, use a bignum instead of converting it to a float or a cons of integers. * src/coding.c (Fdefine_coding_system_internal): * src/frame.c (frame_windows_min_size) (x_set_frame_parameters): * src/fringe.c (Fdefine_fringe_bitmap): * src/nsterm.m (mouseDown:): * src/syntax.c (find_defun_start): * src/w32fns.c (x_set_undecorated, w32_createwindow) (w32_wnd_proc, Fx_create_frame, Fx_show_tip) (w32_console_toggle_lock_key): * src/w32inevt.c (key_event): * src/w32proc.c (Fw32_get_locale_info): Do not mishandle floats by treating their addresses as their values. * src/data.c (store_symval_forwarding): * src/gnutls.c (Fgnutls_error_fatalp, Fgnutls_error_string): * src/keyboard.c (command_loop_1, make_lispy_event): * src/lread.c (read_filtered_event, read1) (substitute_object_recurse): * src/window.c (Fcoordinates_in_window_p, Fwindow_at) (window_resize_apply, Fset_window_vscroll): * src/xdisp.c (handle_single_display_spec, try_scrolling) (redisplay_window, calc_pixel_width_or_height) (calc_line_height_property, on_hot_spot_p): * src/xfaces.c (check_lface_attrs): * src/xselect.c (x_get_local_selection, cons_to_x_long) (lisp_data_to_selection_data, clean_local_selection_data) (x_check_property_data, x_fill_property_data): (x_send_client_event): Do not reject bignums. * src/data.c (INTBIG_TO_LISP, intbig_to_lisp) (uintbig_to_lisp): Remove. All uses removed. * src/data.c (cons_to_unsigned, cons_to_signed): * src/dbusbind.c (xd_signature, xd_extract_signed) (xd_extract_unsigned): * src/dispnew.c (sit_for): * src/dosfns.c, src/w32.c (system_process_attributes): * src/editfns.c (Fuser_full_name): * src/fileio.c (file_offset): * src/fileio.c (write_region): * src/font.c (font_unparse_xlfd, font_open_for_lface, Fopen_font): * src/frame.c (x_set_screen_gamma): * src/frame.h (NUMVAL, FRAME_PIXEL_X_FROM_CANON_X) (FRAME_PIXEL_Y_FROM_CANON_Y): * src/image.c (parse_image_spec, x_edge_detection) (compute_image_size): * src/json.c (json_to_lisp): * src/lcms.c (PARSE_LAB_LIST_FIELD, Flcms_cie_de2000) (PARSE_XYZ_LIST_FIELD, PARSE_JCH_LIST_FIELD) (PARSE_JAB_LIST_FIELD, PARSE_VIEW_CONDITION_FLOAT) (Flcms_temp_to_white_point): * src/nsimage.m (ns_load_image, setSizeFromSpec): * src/process.c (Fsignal_process, handle_child_signal): * src/sysdep.c (system_process_attributes): * src/xdisp.c (calc_line_height_property): Handle bignums. * src/data.c (Fnumber_to_string): Use proper predicate name in signal if the argument is not a number. * src/lisp.h (make_uint): New function. (INT_TO_INTEGER): New macro. (FIXED_OR_FLOATP, CHECK_FIXNUM_OR_FLOAT) (CHECK_FIXNUM_OR_FLOAT_COERCE_MARKER, INTEGER_TO_CONS) (make_fixnum_or_float): Remove; no longer used. * src/nsfns.m, src/w32fns.c, src/xfns.c (Fx_create_frame): Reject floating-point min-width or min-height. * src/process.c (handle_child_signal): Do not worry about floating-point pids, as they are no longer generated.
* | Pacify gcc -Og -WuninitializedPaul Eggert2018-08-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This addresses the -Og uninitialized variable warnings I ran into on Fedora 28, which uses 8.1.1 20180712 (Red Hat 8.1.1-5). It also changes some explicit initializations to UNINIT when the variable does not actually need to be initialized. * src/process.c (connect_network_socket): * src/sysdep.c (system_process_attributes): * src/xfns.c (x_real_pos_and_offsets): * src/xterm.c (get_current_wm_state) [USE_XCB]: Add UNINIT. * src/editfns.c (tzlookup): * src/fns.c (Fnconc): * src/font.c (font_parse_fcname): * src/frame.c (x_set_frame_parameters): Prefer UNINIT to explicit initialization.
* | Pacify Oracle Studio 12.6Paul Eggert2018-08-111-1/+0
| | | | | | | | | | * src/xfns.c (Fx_frame_restack): * src/xterm.c (x_io_error_quitter): Omit unreachable code.
* | More macro renamings for bignumTom Tromey2018-08-071-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/alloc.c, src/bidi.c, src/buffer.c, src/buffer.h, src/bytecode.c, src/callint.c, src/callproc.c, src/casefiddle.c, src/casetab.c, src/category.c, src/ccl.c, src/character.c, src/character.h, src/charset.c, src/charset.h, src/chartab.c, src/cmds.c, src/coding.c, src/composite.c, src/composite.h, src/data.c, src/dbusbind.c, src/decompress.c, src/dired.c, src/dispextern.h, src/dispnew.c, src/disptab.h, src/doc.c, src/dosfns.c, src/editfns.c, src/emacs-module.c, src/emacs.c, src/eval.c, src/fileio.c, src/floatfns.c, src/fns.c, src/font.c, src/font.h, src/fontset.c, src/frame.c, src/frame.h, src/fringe.c, src/ftcrfont.c, src/ftfont.c, src/gfilenotify.c, src/gnutls.c, src/gtkutil.c, src/image.c, src/indent.c, src/insdel.c, src/intervals.c, src/json.c, src/keyboard.c, src/keymap.c, src/kqueue.c, src/lcms.c, src/lisp.h, src/lread.c, src/macros.c, src/marker.c, src/menu.c, src/minibuf.c, src/msdos.c, src/print.c, src/process.c, src/profiler.c, src/search.c, src/sound.c, src/syntax.c, src/syntax.h, src/sysdep.c, src/term.c, src/termhooks.h, src/textprop.c, src/undo.c, src/w32.c, src/w32console.c, src/w32fns.c, src/w32font.c, src/w32inevt.c, src/w32proc.c, src/w32select.c, src/w32term.c, src/w32term.h, src/w32uniscribe.c, src/window.c, src/xdisp.c, src/xfaces.c, src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c, src/xml.c, src/xrdb.c, src/xselect.c, src/xsettings.c, src/xterm.c, src/xwidget.c Rename XINT->XFIXNUM, XFASTINT->XFIXNAT, XUINT->XUFIXNUM.
* | Rename integerp->fixnum, etc, in preparation for bignumsTom Tromey2018-07-121-43/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/json.c, src/keyboard.c, src/keyboard.h, src/keymap.c, src/kqueue.c, src/lcms.c, src/lisp.h, src/lread.c, src/macros.c, src/marker.c, src/menu.c, src/minibuf.c, src/msdos.c, src/print.c, src/process.c, src/profiler.c, src/search.c, src/sound.c, src/syntax.c, src/sysdep.c, src/term.c, src/terminal.c, src/textprop.c, src/undo.c, src/w16select.c, src/w32.c, src/w32console.c, src/w32cygwinx.c, src/w32fns.c, src/w32font.c, src/w32inevt.c, src/w32proc.c, src/w32select.c, src/w32term.c, src/w32uniscribe.c, src/widget.c, src/window.c, src/xdisp.c, src/xfaces.c, src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c, src/xrdb.c, src/xselect.c, src/xterm.c, src/xwidget.c: Rename INTEGERP->FIXNUM, make_number->make_fixnum, CHECK_NUMBER->CHECK_FIXNUM, make_natnum->make_fixed_natum, NUMBERP->FIXED_OR_FLOATP, NATNUMP->FIXNATP, CHECK_NATNUM->CHECK_FIXNAT.
* | Merge from origin/emacs-26Glenn Morris2018-07-021-0/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fc5cae7 ; Fix ChangeLog typo. e17a5e5 ; make change-history-commit f205928 * etc/HISTORY: Cite Brinkoff on early history. 4e58ca8 Document internal use of 'above-suspended' z-group frame para... 4bd43b0 Increase max-lisp-eval-depth adjustment while in debugger (bu... ab98352 Improve on last change in replace-buffer-contents 2f149c0 Fix a factual error in Introduction to Emacs Lisp 8ad50a3 ; * lisp/files.el (buffer-offer-save): Doc fix. (Bug#32000) c80f31f Minor improvements in documentation of imenu.el 8ebb683 Avoid errors with recentering in 'skeleton-insert' e980a3c * src/lisp.h: Omit obsolete comment re bytecode stack. eec71eb Speed up replace-buffer-contents 93c41ce Remove extra process call from vc-git-find-file-hook 7ea0873 ; Update some commentary 4a7f423 Speed up vc-git-dir-status-files 9134c84 Avoid compiler warning using coding.h Conflicts: src/editfns.c
| * Document internal use of 'above-suspended' z-group frame parameterMartin Rudalics2018-07-011-0/+4
| | | | | | | | | | | | * src/w32fns.c (w32_dialog_in_progress, x_set_z_group): * src/xterm.c (x_set_z_group): Clarify the internal use of 'above-suspended' when setting a frame's 'z-group' parameter.
| * Don't wait for visible frames to become visibleNoam Postavsky2018-06-031-1/+2
| | | | | | | | | | | | | | | | | | | | For discussion, see thread starting at https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00807.html. * src/xterm.c (x_make_frame_visible): Check FRAME_VISIBLE_P before calling x_wait_for_event. (cherry picked from commits 2a192e21cf3b04b7f830b4971c1508c611e13a3c and 00c1f771f2a51ffa675ec5a07ea330f2605cd302)
| * Fix some problems in the Cairo buildAri Roponen2018-06-021-38/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | * src/xterm.c (x_begin_cr_clip): Create image surface. (x_update_end) [USE_CAIRO]: Remove GTK3-specific code. (x_scroll_run) [USE_CAIRO]: Implement scrolling. * src/image.c (lookup_rgb_color) [USE_CAIRO]: Support Cairo. (jpeg_load_body) [USE_CAIRO]: Support Cairo. Use USE_CAIRO instead of CAIRO for #ifdef's. (imagemagick_load_image) [USE_CAIRO]: Support Cairo. (Bug#31288) (cherry picked from commit 2d0eff42b8f1122e00f948759ed01a3be1a8c3fc)
* | Fix --with-cairo buildAri Roponen2018-06-161-2/+2
| | | | | | | | | | | | * src/xterm.c (x_cr_destroy): Remove extra semicolon. (x_cr_export_frames): Fix a typo in calling record_unwind_protect_ptr. (Bug#31856)
* | Use record_unwind_protect_ptr to avoid allocationPaul Eggert2018-06-141-4/+2
| | | | | | | | | | | | | | | | | | | | | | * src/term.c (struct tty_pop_down_menu): New type. (tty_pop_down_menu, tty_menu_show): Use it, along with record_unwind_protect_ptr, to avoid allocating a Lisp_Misc. * src/xmenu.c (struct pop_down_menu): New type. (pop_down_menu, x_menu_show): Use it, likewise. * src/xterm.c (x_cr_destroy, x_cr_export_frames): Use record_unwind_protect_pointer to avoid possibly allocating a Lisp_Misc.
* | New mint_ptr representation for C pointersPaul Eggert2018-06-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/lisp.h (make_mint_ptr, mint_ptrp, xmint_pointer): New functions. * src/dbusbind.c (xd_lisp_dbus_to_dbus, Fdbus__init_bus): * src/emacs-module.c (module_free_global_ref, Fmodule_load) (module_assert_runtime, module_assert_env, value_to_lisp) (lisp_to_value, initialize_environment) (finalize_environment, finalize_runtime_unwind) (mark_modules): * src/font.c (otf_open, font_put_frame_data) (font_get_frame_data): * src/macfont.m (macfont_invalidate_family_cache) (macfont_get_family_cache_if_present) (macfont_set_family_cache): * src/nsterm.h (XNS_SCROLL_BAR): * src/nsterm.m (ns_set_vertical_scroll_bar) (ns_set_horizontal_scroll_bar): * src/w32fns.c (w32_monitor_enum) (w32_display_monitor_attributes_list): * src/xterm.c (x_cr_destroy, x_cr_export_frames): * src/xwidget.c (webkit_javascript_finished_cb) (save_script_callback, Fxwidget_webkit_execute_script) (kill_buffer_xwidgets): Use mint pointers instead of merely save pointers.
* | New focus management interfaceDaniel Colascione2018-06-111-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | focus-in-hook and focus-out-hook don't accurately reflect actual user-visible focus states. Add a new focus interface and mark the old one obsolete. * doc/lispref/frames.texi (Input Focus): Document new focus functions. Remove references to the now-obsolete focus hooks. * lisp/frame.el (frame-focus-state): New function. (after-focus-change-function): New variable. (focus-in-hook, focus-out-hook): Move to lisp from C; mark obsolete. * lisp/term/xterm.el (xterm-translate-focus-in) (xterm-translate-focus-out): Track tty focus in `tty-focus-state' terminal parameter; call `after-focus-change-function'. (xterm--suspend-tty-function): New function. * src/frame.c (Fhandle_switch_frame): Update docstring; don't call focus hooks. (focus-in-hook, focus-out-hook): Remove: moved to lisp. (syms_of_frame): Remove unread_switch_frame; add Vunread_switch_frame. * src/keyboard.c: (Finternal_handle_focus_in): New function. (make_lispy_event): Always report focus events to lisp; don't translate them to switch events sometimes. Lisp can take care of creating synthetic switch-frame events via `internal-handle-focus-in'. * src/w32term.c (x_focus_changed): Remove switch-avoidance logic: just directly report focus changes to lisp. * src/xterm.c (x_focus_changed): Remove switch-avoidance logic: just directly report focus changes to lisp.
* | Work around GCC bug 81401Paul Eggert2018-05-301-1/+7
| | | | | | | | | | | | * src/xterm.c (x_draw_glyphless_glyph_string_foreground): Make the buffer a byte longer than it needs to be, if --enable-gcc-warnings.
* | GNOME moved URLs for its active bug reportsPaul Eggert2018-05-261-2/+2
| | | | | | | | | | | | | | * src/emacs.c (main) [USE_GTK]: * src/gtkutil.c (xg_display_close): * src/xterm.c (x_connection_closed): Update GNOME bug report URLs.
* | Fix cairo scrolling for side-by-side windowsAri Roponen2018-05-061-2/+3
| | | | | | | | | | * src/xterm.c (x_scroll_run) [USE_CAIRO]: Fix scrolling for side-by-side split windows. (Bug#31288)
* | Fix some problems in the Cairo buildAri Roponen2018-05-051-38/+46
| | | | | | | | | | | | | | | | | | | | | | * src/xterm.c (x_begin_cr_clip): Create image surface. (x_update_end) [USE_CAIRO]: Remove GTK3-specific code. (x_scroll_run) [USE_CAIRO]: Implement scrolling. * src/image.c (lookup_rgb_color) [USE_CAIRO]: Support Cairo. (jpeg_load_body) [USE_CAIRO]: Support Cairo. Use USE_CAIRO instead of CAIRO for #ifdef's. (imagemagick_load_image) [USE_CAIRO]: Support Cairo. (Bug#31288)
* | * src/xterm.c (x_make_frame_visible): Fix typo in previous change.Noam Postavsky2018-03-291-1/+1
| |
* | Don't wait for visible frames to become visibleNoam Postavsky2018-03-291-1/+2
| | | | | | | | | | | | | | For discussion, see thread starting at https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00807.html. * src/xterm.c (x_make_frame_visible): Check FRAME_VISIBLE_P before calling x_wait_for_event.
* | Merge from origin/emacs-26Paul Eggert2018-03-201-1/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 23527013c7 ; Rewrap doc string 4328d5f744 Correct Info link markup 2fb52abd9e Improve documentation of 'with-help-window' ec08c62f03 Minor improvements in building.texi 663aafe1ff * lisp/textmodes/bibtex.el (bibtex-mark-entry): activate mark 05781b2e88 ; Spelling fix aa40014ba3 * doc/emacs/building.texi (Starting GUD): Mention 'guiler'. 23072e468f Yet more proofreading of the Emacs manual ba5a372540 * doc/emacs/rmail.texi: Fix broken link. 6b2210cc29 ; Spelling fix 067c8c4f5b Fix recently-added POP doc glitch fb3dc0e8aa More proofreading of the Emacs manual a776ce7be6 Fix typo in the Emacs manual's VC chapter 7f27d42f0b Pass json-readtable-error data as a list (bug#30489) 10bd3b3af8 Improve word motion docs (Bug#30815) 2b8507fbdc Replace "carriage-return" by "carriage return" in manuals 2616cd94f1 Minor copyedits in mule.texi 36a1d52814 Fix problems caused by fontconfig-2.13.0
| * Fix problems caused by fontconfig-2.13.0Eli Zaretskii2018-03-141-1/+5
| | | | | | | | | | | | * src/xterm.c (x_term_init): Call fixup_locale after xg_initialize, to countermand the call to setlocale in some versions of fontconfig. (Bug#30788)
* | Allow underline position variables be buffer-localAaron Jensen2018-03-101-7/+30
| | | | | | | | | | | | | | | | | | * src/nsterm.m (ns_draw_text_decoration): * src/w32term.c (x_draw_glyph_string): * src/xterm.c (x_draw_glyph_string): Allow underline-minimum-offset, underline-at-descent-line, and x-use-underline-position-properties be buffer local variables. (Bug#30553) * src/xdisp.c (syms_of_xdisp) <underline-minimum-offset>: Add DEFSYM.
* | Merge from origin/emacs-26Glenn Morris2018-02-221-0/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 83187cd (origin/emacs-26) Skip mouse-face overlap check when mouse-fa... a6d8f2b Fix capitalization of "Mail-Followup-To" f9640f9 * lisp/progmodes/grep.el (grep-compute-defaults): 3a26c8a Semantic manual fixes 106a9f6 More improvements in the Emacs manual 244db85 * doc/misc/viper.texi (File and Buffer Handling): Add missing... f0d6a16 Fix documentation of 'x-underline-at-descent-line' 69a8f45 * lisp/textmodes/flyspell.el (flyspell-get-word): Doc fix. 05214c6 Correct variable markup in manuals 355c644 Improve the "Sending Mail" chapter of Emacs manual Conflicts: src/nsterm.m src/w32term.c
| * Fix documentation of 'x-underline-at-descent-line'Eli Zaretskii2018-02-211-0/+2
| | | | | | | | | | | | | | | | * doc/emacs/display.texi (Display Custom): * src/nsterm.m (syms_of_nsterm): * src/xterm.c (syms_of_xterm): * src/w32term.c (syms_of_w32term): Mention the effect of 'line-spacing' on the underline position. (Bug#30553)
* | Doc tweak for x-use-underline-position-propertiesGlenn Morris2018-02-131-4/+3
| | | | | | | | | | | | * src/xterm.c (syms_of_xterm) <x-use-underline-position-properties>: Remove ancient information from doc. * etc/PROBLEMS: Related edit.
* | Merge from origin/emacs-26Glenn Morris2018-02-091-5/+11
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0276743 (origin/emacs-26) Doc string fix in latin-alt.el c9269af Minor improvements in package.texi 898a3e4 Minor improvement in Emacs user manual 8f7d718 * doc/lispref/anti.texi (Antinews): Replace 25.2 with 25.3. 989d0af Improve documentation of mini-window resizing 923e415 More changes in the Emacs manual 565adf2 Clarify that text-quoting-style doesn't affect *Info* (Bug#24... 2dd273b Mention that shell quoting of % on w32 may fail (Bug#19350) 19fa6d5 Fix --no-build-details for w32 and macOS 979944c * doc/lispref/anti.texi (Antinews): Add some more antinews. c2727e3 Fix crashes when run with --no-build-details dc08490 More changes for the manual 04c5bd5 Doc fixes for process functions (Bug#30349) e209034 Fix shr and CSS 4 color maps 5fe8192 Yet another round of improvements in the manual Conflicts: doc/emacs/files.texi test/lisp/subr-tests.el
| * Fix crashes when run with --no-build-detailsPaul Eggert2018-02-081-5/+11
| | | | | | | | | | | | * src/xrdb.c (get_environ_db): * src/xterm.c (same_x_server, x_term_init): Don’t assume Fsystem_name returns a string.
* | Merge from emacs-26Noam Postavsky2018-01-261-4/+9
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 463f96b481 * doc/lispref/searching.texi: Document regexp repetition l... 08a6195571 ; test/README: Document TEST_LOAD_EL parameter. 7bbea90b1a * src/syntax.c (char-syntax): Warn about ignoring text pro... 50fcbb5f61 ; * src/process.c (Fprocess_contact): Fix docstring typo. 81ae9c8c05 Load mm-util as needed for url-file and url-data (Bug#30258) 5a1ee67ae1 Another minor copyedit in the manual's "Scroll Bars" 226a651e9e Minor fix in documentation of 'equal' b26786c8d9 * lisp/dired-x.el (dired-guess-shell-alist-user): Doc fix.... 5699a824f0 Minor rewording in Emacs manual's "Help Mode" node f35ff0156e Fixes for Emacs manual in frames.texi 6cd4e8dcc5 * doc/misc/cl.texi (Efficiency Concerns): Fix 2012-10-27 t... 1412cf3edd Fix a few issues with latest GTK scaling changes 59db8dca03 Use scaled coordinates when calling into GTK 2892f05792 Scale monitor dimensions obtained from GTK
| * Fix a few issues with latest GTK scaling changesRobert Pluim2018-01-241-0/+2
| | | | | | | | | | | | | | * src/xfns.c (Fx_display_monitor_attributes_list): Call gdk_screen_get_monitor_scale_factor only for GTK versions 3.10..3.21. * src/xterm.c (x_set_offset): Call xg_get_scale for GTK only.
| * Use scaled coordinates when calling into GTKRobert Pluim2018-01-241-4/+7
| | | | | | | | | | | | | | | | | | | | | | This is part two of a two part fix for the GTK scaling problems. See the thread starting at http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00372.html for an explanation of why it has been added to Emacs 26. * src/gtkutil.c (xg_set_geometry): Scale down the coordinates that we pass to gtk_window_move and to gtk_window_parse_geometry. * src/xterm.c (x_set_offset): Likewise.
* | Fix some tooltip related problemsMartin Rudalics2018-01-181-14/+5
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace 'tooltip' frame parameter with a 'tooltip' member in the frame structure. For GTK+ builds use 'tip_last_frame' to find the frame for which the currently visible tooltip was made. For modeline help-echoing have tooltips show applicable actions only. * lisp/bindings.el (mode-line-default-help-echo): New function as default value of homonymous option. * src/dispextern.h (tip_frame, tip_window): Remove declarations. * src/frame.c (make_frame): Initialize new frame structure member 'tooltip'. (Fframe_list, other_frames): Rewrite with new macro FRAME_TOOLTIP_P. * src/frame.h (struct frame): New member 'tooltip'. (FRAME_TOOLTIP_P): New macro. * src/gtkutil.c (xg_prepare_tooltip, xg_hide_tooltip): Rewrite using boolean return values. * src/nsfns.m (tip_frame): Remove declaration. * src/w32fns.c (w32_display_monitor_attributes_list) (w32_display_monitor_attributes_list_fallback): Rewrite with new macro FRAME_TOOLTIP_P. (tip_last_string, tip_last_frame, tip_last_parms): New Lisp scalars replacing Lisp vector last_show_tip_args. (x_create_tip_frame): Set new frame's 'tooltip' structure member to true. (x_hide_tip): Additionally test tip_frame for liveness. (Fx_show_tip): Handle last_show_tip_args to tip_last_frame, tip_last_string and tip_last_parms conversion. (syms_of_w32fns): staticpro tip_last_frame, tip_last_string and tip_last_parms instead of last_show_tip_args. * src/w32term.c (w32_read_socket, x_new_font): Rewrite with new macro FRAME_TOOLTIP_P. * src/w32term.h (tip_window): Add external declaration. * src/xdisp.c (x_consider_frame_title, prepare_menu_bars) (should_produce_line_number): Rewrite with new macro FRAME_TOOLTIP_P. (note_mode_line_or_margin_highlight): If `mode-line-default-help-echo' specifies a function, call it to produce help echo string. * src/xfns.c (x_make_monitor_attribute_list) (Fx_display_monitor_attributes_list): Rewrite with new macro FRAME_TOOLTIP_P. (tip_last_string, tip_last_frame, tip_last_parms): New Lisp scalars replacing Lisp vector last_show_tip_args. (x_create_tip_frame): Set new frame's 'tooltip' structure member to true. (x_hide_tip): Rewrite with additional tests of frames for liveness and taking into account that for GTK+ tips the reference frame is now stored in tip_last_frame instead of tip_frame. (Fx_show_tip): Handle last_show_tip_args to tip_last_frame, tip_last_string and tip_last_parms conversion. For GTK+ store FRAME argument in tip_last-frame. (syms_of_xfns): staticpro tip_last_frame, tip_last_string and tip_last_parms instead of last_show_tip_args. * src/xterm.c (x_update_begin, handle_one_xevent, x_new_font) (x_set_window_size): Rewrite with new macro FRAME_TOOLTIP_P. * src/xterm.h (tip_window): Add external declaration. * etc/NEWS: Mention new modeline tooltips behavior.
* Update copyright year to 2018Paul Eggert2018-01-011-1/+1
| | | | Run admin/update-copyright.
* Avoid compilation warning in xterm.cEli Zaretskii2017-12-041-2/+2
| | | | | | * src/xterm.c (x_draw_underwave): Move the declaration of 'thickness' to the non-USE_CAIRO branch, to avoid compiler warning. (Bug#29567)
* maint: shorten https://lists.gnu.org/archive/html/... linksPaul Eggert2017-11-251-3/+3
|
* Fix misbehavior when drawing three-pixel high horizontal dividers (Bug#29353)Martin Rudalics2017-11-201-4/+8
| | | | | | | | | * src/xterm.c (x_draw_window_divider): * src/w32term.c (w32_draw_window_divider): Fix misbehavior when drawing three-pixel high horizontal dividers (Bug#29353). The misbehavior was noted by Keith David Bershatsky and analyzed by Alan Third.
* Use alignas to fix GCALIGN-related bugsPaul Eggert2017-11-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use alignas and unions to specify alignments of objects needing addresses that are at least a multiple of GCALIGNMENT. Using these standard C facilities should be safer than relying on ad hoc and poorly-understood features like GCC’s __attribute__ ((aligned (N))), the root cause for recent porting bugs like Bug#29040. The alignas macro was standardized by C11 and Gnulib supports alignas for pre-C11 platforms. I have tested this on Sun Studio 12 sparc (2007) and GCC 4.4.7 x86-64 (2012) as well as on more recent platforms like GCC 7.2.1 (2017) on Fedora 26 (both x86-64 and x86). * lib-src/make-docfile.c (close_emacs_globals): lispsym is now just an array of struct Lisp_Symbol, since struct Lisp_Symbol is now properly aligned. All uses changed. * src/alloc.c (NEXT_FREE_LISP_STRING): Just use the new u.next member; this is simpler and safer than casting a pointer that might not be aligned properly. (aligned_Lisp_Symbol): Remove. No longer needed, now that struct Lisp_Symbol is aligned properly. All uses replaced with struct Lisp_Symbol. * src/lisp.h (GCALIGNED): Remove, as it does not work as expected: it can cause the natural alignment to be ignored. All uses replaced by unions with a ‘char alignas (GCALIGNMENT)’ member as described below. (struct Lisp_Symbol, struct Lisp_Cons, struct Lisp_String): Change definition from ‘struct TAG { MEMBERS };’ to ‘struct TAG { union { struct { MEMBERS } s; char alignas (GCALIGNMENT) gcaligned; } u; };’. This guarantees ‘struct TAG’ to have an alignment that at least max (GCALIGNMENT, N) where N is its old alignment. All uses like ‘PTR->MEMBER’ changed to ‘PTR->u.s.MEMBER’; these uses were supposed to be mostly private anyway. Verify that the resulting ‘struct TAG’ is properly aligned for Emacs. (union vectorlike_header): New member ‘gcaligned’ to guarantee that this type, and its containing types like ‘struct Lisp_Subr’, ‘struct buffer’ and ‘struct thread_state’, are all properly aligned for Emacs. (struct Lisp_String): New union member ‘next’, for the benefit of NEXT_FREE_LISP_STRING. (union Aligned_Cons, union Aligned_String): Remove. All uses replaced by struct Lisp_Cons and struct Lisp_String, since they are now properly aligned. (USE_STACK_CONS, USE_STACK_STRING): Simplify now that we can assume struct Lisp_Cons and struct Lisp_String are properly aligned.
* Pacify GCC when configured --with-x-toolkit=noPaul Eggert2017-11-111-1/+4
| | | | | | | | Without these changes, Emacs does not build on Fedora 26 x86-64 when configured --with-x-toolkit=no --enable-gcc-warnings. * oldXMenu/Activate.c (XMenuActivate): Add FALLTHROUGH. * src/xterm.c (x_dispatch_event): Define only if USE_X_TOOLKIT || USE_MOTIF || USE_GTK.
* Fix comparisons with tip_frame in GTK buildsEli Zaretskii2017-11-111-2/+10
| | | | | | | * src/xterm.c (x_update_begin, x_new_font): * src/xfns.c (Fx_display_monitor_attributes_list): * src/frame.c (Fframe_list) [USE_GTK]: Don't consider tip_frame a tooltip frame unless its 'tooltip' parameter is non-nil. (Bug#26747)
* Fix startup display on CygwinKen Brown2017-10-271-0/+16
| | | | | * src/xterm.c (x_make_frame_visible) [CYGWIN]: Restore code that forces input to be read. (Bug#24091)
* Prefer HTTPS to HTTP for gnu.orgPaul Eggert2017-10-011-2/+2
| | | | | | | | | This fixes some URLs I omitted from my previous pass, notably those in lists.gnu.org. Although lists.gnu.org does not yet support TLS 1.1, TLS 1.0 is better than nothing. * lisp/erc/erc.el (erc-official-location): * lisp/mail/emacsbug.el (report-emacs-bug): Use https:, not http:.
* Bring back the busy wait after x_make_frame_visible (Bug#25521)Noam Postavsky2017-09-291-6/+34
| | | | | | | | | | But wait specfically for a MapNotify event, and only for a configurable amount of time. * src/xterm.c (syms_of_xterm) [x-wait-for-event-timeout]: New variable. (x_wait_for_event): Use it instead of hardcoding the wait to 0.1s. (x_make_frame_visible): Call x_wait_for_event at the end. * etc/NEWS: Announce x_wait_for_event.
* Prefer HTTPS to FTP and HTTP in documentationPaul Eggert2017-09-131-3/+3
| | | | | | | | | | | | | Most of this change is to boilerplate commentary such as license URLs. This change was prompted by ftp://ftp.gnu.org's going-away party, planned for November. Change these FTP URLs to https://ftp.gnu.org instead. Make similar changes for URLs to other organizations moving away from FTP. Also, change HTTP to HTTPS for URLs to gnu.org and fsf.org when this works, as this will further help defend against man-in-the-middle attacks (for this part I omitted the MS-DOS and MS-Windows sources and the test tarballs to keep the workload down). HTTPS is not fully working to lists.gnu.org so I left those URLs alone for now.
* Revert recent float→double Motif changePaul Eggert2017-09-041-33/+25
| | | | | | | | | | | Problem reported by Martin Rudalics in: http://lists.gnu.org/archive/html/emacs-devel/2017-09/msg00014.html * src/xterm.c (xm_scroll_callback, xaw_jump_callback) (x_set_toolkit_scroll_bar_thumb) (x_set_toolkit_horizontal_scroll_bar_thumb): Go back to using ‘float’ temporaries rather than ‘double’. Although quite possibly this masks an underlying bug, we lack time to look into that now.
* In xterm.c fix some recently introduced compiler warningsMartin Rudalics2017-08-311-4/+5
| | | | | | * src/xterm.c (xaw_jump_callback) (x_set_toolkit_scroll_bar_thumb): Fix some recently introduced -Wdouble-promotion warnings.
* Restrict fix of Bug#24963 and Bug#25887 to GTK buildsMartin Rudalics2017-08-311-2/+4
| | | | | | * src/xterm.c (handle_one_xevent): Restrict earlier fix of Bug#24963 and Bug#25887 to avoid that a non-GTK Emacs won't react to state changes received via ConfigureNotify.