aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | Fix X event waiting to handle multiple frames.Dmitry Antipov2013-09-161-0/+10
| | | | | | | | | | | | | | | | | | * frame.h (struct frame) [HAVE_X_WINDOWS]: New member wait_event_type. * xterm.c (pending_event_wait): Remove. Adjust users. (x_detect_focus_change): Pass frame arg. (handle_one_xevent): Find related frame early and clear per-frame wait_event_type only if this is an event for the relevant frame. (x_wait_for_event): Use per-frame wait_event_type.
* | Fix compilation for GNUStep due to font changes.Jan Djärv2013-09-151-0/+6
| | | | | | | | | | | | | | | | * font.c (syms_of_font): Check MAC_OS_X_VERSION_MAX_ALLOWED >= 1050 for syms_of_macfont. * nsfns.m (Fx_create_frame): Fix font driver registration for GNUStep.
* | Port the font backend from the Mac port.Jan Djärv2013-09-151-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac: Add check for OSX 10.5, required for macfont.o. * etc/NEWS: Mention the macfont backend. * src/Makefile.in (NS_OBJ, SOME_MACHINE_OBJECTS): Add macfont.o. * src/font.c (syms_of_font): Call syms_of_macfont. * src/font.h: Declare syms_of_macfont. * src/nsfns.m: Include macfont.h. (Fx_create_frame): Register macfont driver, make a better default font. (Fns_popup_font_panel): Get font from macfont driver, if used. * src/nsfont.m (ns_tmp_flags, ns_tmp_font): Remove. (nsfont_open): Set font driver type. Set font->ascent and font->descent. Figure out font instead of ns_tmp_font, and flags instead of ns_tmp_flags. Fix indentation. Remove call to ns_draw_text_decoration, moved to nsterm. * src/nsterm.m: Include macfont.h. (ns_tmp_flags, ns_tmp_font): Remove. (ns_compute_glyph_string_overhangs): Check for driver Qns. (ns_draw_glyph_string): Use local variables instead of ns_tmp_flags, ns_tmp_font. Call ns_draw_text_decoration here instead of nsfont.m. (changeFont:): Fix code style. Check for font driver type when getiing font. * src/nsterm.h (FONT_DESCENT, FONT_ASCENT): Define to (f)->ascent and (f)->descent.
* | Drop VERTICAL_SCROLL_BAR_WIDTH_TRIM. For X, it is zero since 1999,Dmitry Antipov2013-09-151-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | and it is always zero for others, so I assume that this is an ancient leftover which nobody will want to change any more. * xterm.h, w32term.h, nsterm.h (VERTICAL_SCROLL_BAR_WIDTH_TRIM): Remove. (VERTICAL_SCROLL_BAR_INSIDE_WIDTH): * frame.c (x_set_scroll_bar_width): * w32fns.c (w32_createscrollbar): * w32term.c (w32_set_vertical_scroll_bar): * xfns.c (x_set_scroll_bar_default_width): * xterm.c (XTflash, x_scroll_bar_create, XTset_vertical_scroll_bar) (x_scroll_bar_expose): Related users changed.
* | * xterm.c, xfns.c (toplevel): Remove #ifdef HAVE_X_WINDOWS becauseDmitry Antipov2013-09-151-0/+2
| | | | | | | | these modules are never compiled otherwise.
* | * xterm.h (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET) [USE_X_TOOLKIT]:Dmitry Antipov2013-09-151-0/+4
| | | | | | | | | | | | Define as such. * w32term.h (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET): Remove unused Xisms.
* | * frame.h (FRAME_SMALLEST_CHAR_WIDTH, FRAME_SMALLEST_FONT_HEIGHT):Dmitry Antipov2013-09-151-0/+3
| | | | | | | | | | Define once here... * nsterm.h, w32term.h, xterm.h: ...and not here.
* | * xterm.h (FRAME_X_SCREEN_NUMBER): Add comment.Dmitry Antipov2013-09-151-0/+5
| | | | | | | | (BLACK_PIX_DEFAULT, WHITE_PIX_DEFAULT): Use FRAME_X_SCREEN_NUMBER.
* | Fix src/ChangeLog entry of last commit.Eli Zaretskii2013-09-141-1/+1
| |
* | Fix bug #15375 with inaccurate docs of display margin width values.Eli Zaretskii2013-09-141-0/+5
| | | | | | | | | | | | | | | | doc/lispref/display.texi (Display Margins): State the units of measuring margin width. src/buffer.c (syms_of_buffer) <left-margin-width, right-margin-width>: Doc fix.
* | Unify Fx_focus_frame between all ports.Dmitry Antipov2013-09-131-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/frame.h (x_focus_frame): New prototype. * src/xfns.c (Fx_focus_frame): Remove. (syms_of_xfns): Do not defsubr it. (x_focus_frame): X implementation. * src/nsfns.m (Fx_focus_frame): Remove. (syms_of_nsfns): Do not defsubr it. (x_focus_frame): NS implementation. * src/w32term.c (Fx_focus_frame): Remove. (x_focus_on_frame): Rename to... (x_focus_frame): W32 implementation. * src/w32term.h (x_focus_on_frame): Remove prototype. * src/w32fns.c (Fx_focus_frame): Remove. (syms_of_w32fns): Do not defsubr it. * src/frame.c (Fx_focus_frame): Define here. (syms_of_frame): Defsubr here. * src/gtkutil.c (xg_tool_bar_callback): Use x_focus_frame. * lisp/frame.el (x-focus-frame): Mark as declared in frame.c.
* | Unify FRAME_window_system_DISPLAY_INFO macros between all ports.Dmitry Antipov2013-09-131-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All of them are replaced with FRAME_DISPLAY_INFO, defined in each port to reference the port-specific window system data. * msdos.h (FRAME_X_DISPLAY_INFO): Remove. (FRAME_DISPLAY_INFO): Define. * w32term.h (FRAME_W32_DISPLAY_INFO, FRAME_X_DISPLAY_INFO): Remove. (FRAME_DISPLAY_INFO): Define. Adjust users. * xterm.h (FRAME_X_DISPLAY_INFO): Remove. (FRAME_DISPLAY_INFO): Define. Adjust users. * frame.h (FRAME_RES_X, FRAME_RES_Y): Unify. * font.c, frame.c, gtkutil.c, image.c, menu.c, msdos.c, nsfns.m: * nsfont.m, nsterm.m, w32fns.c, w32font.c, w32menu.c, w32term.c: * w32xfns.c, widget.c, xdisp.c, xfaces.c, xfns.c, xfont.c, xmenu.c: * xselect.c, xterm.c: All related users changed.
* | * xterm.h (x_window_to_frame, x_any_window_to_frame)Dmitry Antipov2013-09-131-0/+11
| | | | | | | | | | | | | | | | | | | | (x_menubar_window_to_frame): Remove prototypes. * xfns.c (x_window_to_frame, x_any_window_to_frame) (x_menubar_window_to_frame, x_top_window_to_frame): Move from here... * xterm.c (x_window_to_frame, x_any_window_to_frame) (x_menubar_window_to_frame, x_top_window_to_frame): ...to here and convert all but the last to static.
* | lisp.mk (lisp): Add w32-common-fns.elc.Eli Zaretskii2013-09-121-0/+4
| |
* | * src/charset.c (char_charset): Document an exception for char-charset.Xue Fuqiao2013-09-121-0/+4
| |
* | * xterm.h (x_display_info): New field last_user_time...Dmitry Antipov2013-09-121-0/+6
| | | | | | | | | | * xterm.c (toplevel): ...to replace static last_user_time. (handle_one_xevent, x_ewmh_activate_frame): Adjust users.
* | * xterm.c (x_set_scroll_bar_thumb) [USE_LUCID && !HAVE_XAW3D]: ClipDmitry Antipov2013-09-121-0/+5
| | | | | | | | scroll bar values to prevent thumb from disappear and update comment.
* | * src/emacs.c (usage_message): Possessive apostrophe tweak.Glenn Morris2013-09-111-0/+4
| | | | | | | | Likewise in some comments.
* | * nsterm.m (syms_of_nsterm): Use Qns.Dmitry Antipov2013-09-111-0/+6
| | | | | | | | | | | | | | | | * w32fns.c (Fx_open_connection): Remove old '#if 0' code. * w32term.c (w32_create_terminal, syms_of_w32term): Use Qw32. * xfns.c (x_display_info_for_name, Fx_open_connection): Remove old '#if 0' code. (syms_of_xfns): Use Qx.
* | * termhooks.h (fullscreen_hook): Remove the leftover.Dmitry Antipov2013-09-111-0/+5
| | | | | | | | (struct terminal): Fix typo in comment.
* | Cleaning up a few X scroll bar bits.Dmitry Antipov2013-09-111-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * termhooks.h (enum scroll_bar_part): Add scroll_bar_nowhere member. * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS && USE_LUCID]: New member last_seen_part, going to replace... * xterm.c [USE_TOOLKIT_SCROLL_BARS]: ...global last_scroll_bar_part. (xt_action_hook) [USE_LUCID]: Adjust user. (xm_scroll_callback, xg_scroll_callback): Do not bloat with Lucid-specific scroll bar support. (xaw_jump_callback, xaw_scroll_callback): Prefer enum scroll_par_part to int and adjust to use last_seen_part member. (x_set_toolkit_scroll_bar_thumb) [USE_LUCID]: Adjust user. (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS && USE_LUCID]: Initialize last_seen_part.
* | * src/insdel.c (insert_from_buffer_1): Don't mark buffer as modified whenStefan Monnier2013-09-111-0/+5
| | | | | | | | insert-buffer-substring an empty string.
* | * xdisp.c (Ftool_bar_lines_needed): Declare as 'const' if ifdeffed out,Paul Eggert2013-09-111-0/+5
| | | | | | | | avoiding a GCC warning.
* | Ifdef away frame tool bar code when it is not really used.Dmitry Antipov2013-09-111-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * frame.h (struct frame) [HAVE_WINDOW_SYSTEM && !USE_GTK && !HAVE_NS]: Move tool_bar_window, desired_tool_bar_string, current_tool_bar_string and minimize_tool_bar_window_p under the above. (fset_current_tool_bar_string, fset_desired_tool_bar_string) (fset_tool_bar_window): Likewise. * dispnew.c (clear_current_matrices, clear_desired_matrices) (adjust_frame_glyphs_for_window_redisplay, free_glyphs, update_frame) (change_frame_size_1): * window.c (window_from_coordinates, Frecenter): Adjust users. * window.h (WINDOW_TOOL_BAR_P): Define to zero when frame tool bar code is not really used. * xdisp.c (build_desired_tool_bar_string, display_tool_bar_line) (tool_bar_lines_needed, MAX_FRAME_TOOL_BAR_HEIGHT, tool_bar_item_info) (get_tool_bar_item, handle_tool_bar_click, note_tool_bar_highlight) [!USE_GTK && !HAVE_NS]: Define as such. (Ftool_bar_lines_needed, redisplay_tool_bar, show_mouse_face) (note_mouse_highlight, expose_frame): * xfns.c (x_set_tool_bar_lines): * xterm.c (handle_one_xevent): Adjust users.
* | Fix corruption with multiple emacsclient -t instances.Paul Eggert2013-09-111-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | This bug was introduced by my 2013-08-26 patch, which incorrectly assumed that the terminfo implementation doesn't use termcap buffers. * term.c (init_tty) [TERMINFO]: Remove optimization, as these buffers apparently are used after all. * termchar.h (TERMCAP_BUFFER_SIZE) [TERMINFO]: Define here too. (struct tty_display_info): Define members termcap_term_buffer and termcap_strings_buffer even if TERMINFO. Fixes: debbugs:15222
* | Fix last change.Dmitry Antipov2013-09-111-0/+15
| | | | | | | | | | * data.c (Feqlsign, Flss, Fgtr, Fleq, Fgeq): Add convenient 'usage' docstring entry to pacify make-docfile.
* | * src/keyboard.c (read_char): Don't break immediate_echo.Stefan Monnier2013-09-101-0/+4
| | | | | | | | Fixes: debbugs:15332
* | * lisp/subr.el (with-demoted-errors): Add `format' argument.Stefan Monnier2013-09-101-2/+6
| | | | | | | | * src/eval.c (Feval): Document the new use of `lexical'.
* | Review and drop old frame resize hack.Dmitry Antipov2013-09-091-0/+11
| | | | | | | | | | | | | | | | | | | | * frame.h (struct frame): Remove force_flush_display_p. * dispnew.c (update_frame): Adjust user and don't call flush_frame here. The comment has said that there was an issues with redisplaying fringes, but I don't see any differences with and without this hack. Hopefully we can continue without it. * xdisp.c (clear_garbaged_frames): Adjust user and do not clear current frame matrices twice if resized_p is set.
* | Do not populate pure Xism x_sync to other ports.Dmitry Antipov2013-09-091-0/+8
| | | | | | | | | | | | | | * frame.h (x_sync): Move under HAVE_X_WINDOWS. * frame.c (other_visible_frames) [HAVE_X_WINDOWS]: Use as such. * nsfns.m, w32xfns.c (x_sync): Remove no-op. * w32term.h (x_sync): Remove prototype.
* | Cleanup frame flushing.Dmitry Antipov2013-09-091-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dispextern.h (struct redisplay_interface): Drop flush_display_optional because flush_display is enough for X and flushing via RIF is just a no-op for others. * frame.h (flush_frame): New function. * dispnew.c (update_frame): * minibuf.c (read_minibuf): * xdisp.c (echo_area_display, redisplay_preserve_echo_area): Use it. * keyboard.c (detect_input_pending_run_timers): Do not flush all frames but selected one in redisplay_preserve_echo_area. * nsterm.m (ns_flush): Remove no-op. (ns_redisplay_interface): Adjust user. * w32term.h (x_flush): Remove no-op. (w32_redisplay_interface): Adjust user. * xterm.c (x_flush): Simplify because we do not flush all frames at once any more. Adjust comment. (x_redisplay_interface): Adjust user.
* | Port --without-x --enable-gcc-warnings to Fedora 19.Paul Eggert2013-09-061-0/+6
| | | | | | | | | | | | | | | | | | | | * configure.ac (WERROR_CFLAGS): Omit redundant use of -Wmissing-field-initializers, -Wswitch, -Wtype-limits, -Wunused-parameter. If there is no window system, also omit -Wsuggest-attribute=const and -Wsuggest-attribute=noreturn; this is needed for Fedora 19. * src/gfilenotify.c (globals_of_gfilenotify): Call g_type_init only if using an older glib version that needs it.
* | * lisp.h (last_glyphless_glyph_frame, last_glyphless_glyph_face_id)Dmitry Antipov2013-09-061-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | (last_glyphless_glyph_merged_face_id): Remove declarations. * dispextern.h (merge_glyphless_glyph_face): Add prototype. * xdisp.c (last_glyphless_glyph_frame, last_glyphless_glyph_face_id) (last_glyphless_glyph_merged_face_id): Now static. (merge_escape_glyph_face): New function, refactored from... (get_next_display_element): ...here. (merge_glyphless_glyph_face): New function, refactored from... (produce_glyphless_glyph): ...here... * term.c (produce_glyphless_glyph): ...and here.
* | * src/eval.c (eval_sub): Only call Ffunction if necessary.Stefan Monnier2013-09-061-0/+4
| |
* | Attempt to make redisplay more selective when changing cursor type.Dmitry Antipov2013-09-061-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | * frame.h (struct frame): New bitfield cursor_type_changed. * xdisp.c (cursor_type_changed): Remove. (try_cursor_movement, redisplay_window, try_window_id) (set_frame_cursor_types, try_window_reusing_current_matrix): Adjust to use per-frame bitfield. (redisplay_internal): Look for cursor type change on each visible frame and consider all frames if cursor type has been changed on the frame other than selected. If cursor type has been changed on selected frame only, do not use fast update.
* | Fix ChangeLog typo.Dmitry Antipov2013-09-061-1/+1
| |
* | Attempt to make redisplay more selective when changing fonts.Dmitry Antipov2013-09-061-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * frame.h (struct frame): New bitfield fonts_changed. * dispextern.h (fonts_changed_p, adjust_glyphs): Remove declaration. (adjust_frame_glyphs): Add prototype. * dispnew.c (fonts_changed_p): Remove. (adjust_glyphs): Remove becase we do not adjust matrices on all frames at once any more. (adjust_frame_glyphs): Block and unblock input here. (adjust_glyph_matrix): Use fonts_changed. (change_frame_size_1): Use adjust_frame_glyphs. * font.c (font_open_entity): Use fonts_changed. * frame.c (set_menu_bar_lines, Fmake_terminal_frame): * w32fns.c (x_set_menu_bar_lines, x_set_tool_bar_lines, Fx_show_tip): * window.c (Fdelete_other_windows_internal, Fwindow_resize_apply) (Fsplit_window_internal, Fdelete_window_internal, grow_mini_window) (shrink_mini_window, Fresize_mini_window_internal) (window_scroll_pixel_based, Fset_window_configuration) (apply_window_adjustment, Fset_window_vscroll): * xfns.c (x_set_menu_bar_lines, x_set_tool_bar_lines, Fx_show_tip): Use adjust_frame_glyphs. * xdisp.c (redisplay_tool_bar, redisplay_window, try_window) (try_window_reusing_current_matrix, try_window_id, display_line) (IT_EXPAND_MATRIX_WIDTH): Use fonts_changed. (redisplay_internal): Consider fonts_changed and adjust frame matrices for each frame only if the frame is visible. If font has been changed on some frame during full redisplay, retry only visible frames where the font has been actually changed.
* | Cache current header and mode line height for each window.Dmitry Antipov2013-09-051-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * window.h (struct window): New fields mode_line_height and header_line_height. * window.c (make_window): Initialize them. * dispextern.h (CURRENT_MODE_LINE_HEIGHT) (CURRENT_HEADER_LINE_HEIGHT): Use them. Adjust comment. (current_mode_line_height, current_header_line_height): Remove declaration. * xdisp.c (current_mode_line_height, current_header_line_height): Remove. (pos_visible_p, init_xdisp): Adjust user. (redisplay_window): Invalidate mode_line_height and header_line_height if current and desired matrices do not agree.
* | * fontset.c, window.c, xdisp.c (toplevel): Use TERM_HEADER.Dmitry Antipov2013-09-051-0/+5
| | | | | | | | * xfaces.c (toplevel) [HAVE_X_WINDOWS]: Do not include xterm.h twice.
* | Make --without-x compatible with --enable-gcc-warnings.Dmitry Antipov2013-09-051-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac: If both --without-x and --enable-gcc-warnings are specified, use -Wno-unused-variable, -Wno-unused-but-set-variable and -Wno-unused-but-set-parameter. * src/font.c (register_font_driver): Move check under HAVE_WINDOW_SYSTEM. * src/font.h (struct font_driver): Move draw, get_bitmap and free_bitmap members under HAVE_WINDOW_SYSTEM. * src/keyboard.c (make_lispy_focus_out): Likewise. (record_menu_key): Move under HAVE_MENUS. * src/xdisp.c (toplevel): Move hourglass_shown_p, hourglass_atimer and THIN_SPACE_WIDTH under HAVE_WINDOW_SYSTEM. (syms_of_xdisp): Adjust user. (window_box_edges): Define only if HAVE_WINDOW_SYSTEM. (start_hourglass, cancel_hourglass): * src/xfaces.c (toplevel): Likewise with PT_PER_INCH, clear_font_table_count, CLEAR_FONT_TABLE_COUNT and CLEAR_FONT_TABLE_NFONTS. (set_font_frame_param, clear_face_gcs, realize_non_ascii_face): Declare only if HAVE_WINDOW_SYSTEM. (lface_same_font_attributes_p, clear_face_gcs): Define only if HAVE_WINDOW_SYSTEM.
* | * frame.c (check_minibuf_window): Update 'frame' with frame pointer.Dmitry Antipov2013-09-051-0/+6
| | | | | | | | | | * xterm.c (x_scroll_bar_handle_click) [!USE_TOOLKIT_SCROLL_BARS]: Don't pass C integer to XINT (tiny fix for 2013-09-03 change).
* | * src/cmds.c (Fself_insert_command): Don't pass a non-integer to XINT.Stefan Monnier2013-09-041-0/+4
| |
* | * alloc.c (make_event_array): First arg is now ptrdiff_t, not int.Paul Eggert2013-09-041-0/+5
| | | | | | | | This fixes a type error on hosts where ptrdiff_t is wider than int.
* | * src/keyboard.c (read_key_sequence_vs): New function.Stefan Monnier2013-09-041-0/+4
| | | | | | | | | | (Fread_key_sequence_vector, Fread_key_sequence): Use it to factor out common code.
* | * src/callint.c (Fcall_interactively): Always return a vector for 'K'.Stefan Monnier2013-09-041-0/+4
| |
* | Makefile improvements.Paul Eggert2013-09-031-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.in (lib): Depend on am--refresh, to avoid a race. (src): Remove duplicate dependency on FRC. Invoke just one submake, not two. Avoid the need for 'pwd'. * lwlib/Makefile.in (all): Put this first. Don't use double-colon rules, as they are not portable according to POSIX. Mark as phony. * oldXMenu/Makefile.in (all, tags): Don't use double-colon rules, as they are not portable according to POSIX. Mark as phony. * src/Makefile.in (config.status): Don't use double-colon rules, as they are not portable according to POSIX. Fix shell typo with `; I guess this rule has never been tested? (VCSWITNESS): New macro, to override any environment var.
* | * xterm.h (struct x_display_info): Do not track X connectionDmitry Antipov2013-09-041-0/+7
| | | | | | | | | | | | fd separately because it is always available from Display. * xterm.c (x_term_init, x_delete_terminal, x_delete_display): Adjust users.
* | * buffer.c (drop_overlay):Dmitry Antipov2013-09-031-0/+6
| | | | | | | | | | * fileio.c (restore_point_unwind): Prefer unchain_marker to Fset_marker (X, Qnil, ...) (which is the same but a bit slower).
* | * buffer.c (Fmake_overlay, Fmove_overlay):Dmitry Antipov2013-09-031-0/+7
| | | | | | | | | | | | * intervals.c (set_point_from_marker): * print.c (PRINTPREPARE): Prefer signal_error to plain error and report unsuitable marker too.
* | * xfns.c, image.c (XLIB_ILLEGAL_ACCESS): No longer needed.Dmitry Antipov2013-09-031-0/+1
| |