1. 30 Oct, 2010 1 commit
    • Eli Zaretskii's avatar
      Unify mouse highlight code of MSDOS and GUI sessions. · d009ae66
      Eli Zaretskii authored
       xdisp.c (coords_in_mouse_face_p): Move prototype out of the
       HAVE_WINDOW_SYSTEM conditional.
       (x_y_to_hpos_vpos, frame_to_window_pixel_xy): Move out of the
       HAVE_WINDOW_SYSTEM block.
       (try_window_id) [HAVE_GPM || MSDOS]: Call
       (draw_row_with_mouse_face): Implementation for HAVE_WINDOW_SYSTEM
       (show_mouse_face): Call it, instead of calling draw_glyphs directly.
       (show_mouse_face, clear_mouse_face, coords_in_mouse_face_p)
       (cursor_in_mouse_face_p, rows_from_pos_range)
       (mouse_face_from_buffer_pos, mouse_face_from_string_pos)
       (note_mode_line_or_margin_highlight, note_mouse_highlight)
       (x_clear_window_mouse_face, cancel_mouse_face): Move out of the
       HAVE_WINDOW_SYSTEM block.  Ifdef away window-system specific
       (note_mouse_highlight): Call popup_activated for MSDOS as well.
       Clear mouse highlight if pointer is over glyphs whose OBJECT is an
       (mouse_face_from_buffer_pos): Add parentheses around && within ||.
       xmenu.c (popup_activated): Don't define on MSDOS.
       dispnew.c (mirror_make_current): Set Y coordinate of the
       mode-line and header-line rows.
       termchar.h (struct tty_display_info): Define mouse_face_*
       members not only for MSDOS.  Delete stray whitespace.
       <mouse_face_beg_x, mouse_face_beg_y, mouse_face_overlay>: New
       struct members.
       dispextern.h (DPYINFO_DEFINED) [HAVE_X_WINDOWS]: Define.
       (DPYINFO_DEFINED) [HAVE_NS]: Define.
       (Display_Info) [!DPYINFO_DEFINED]: Define here.
       (FRAME_X_DISPLAY_INFO): Define to NULL if not defined.
       (frame_to_window_pixel_xy, note_mouse_highlight)
       (x_clear_window_mouse_face, cancel_mouse_face, clear_mouse_face)
       (show_mouse_face, cursor_in_mouse_face_p): Move prototypes out of
       HAVE_WINDOW_SYSTEM conditional.
       (draw_row_with_mouse_face): Declare prototype.
       msdos.h (Display_Info): Don't define here.
       msdos.c (show_mouse_face, clear_mouse_face)
       (fast_find_position, IT_note_mode_line_highlight)
       (IT_note_mouse_highlight): Functions deleted.
       (IT_frame_up_to_date, dos_rawgetc): Call note_mouse_highlight
       instead of IT_note_mouse_highlight.
       (draw_row_with_mouse_face, popup_activated): New functions.
  2. 12 Oct, 2010 1 commit
  3. 29 Sep, 2010 1 commit
    • Eli Zaretskii's avatar
      Fix int/EMACS_INT use in xdisp.c and print.c. · d585695f
      Eli Zaretskii authored
       print.c (print_object): Fix format string and argument types for
       printing a Lisp_Misc_Marker.
       xdisp.c (pos_visible_p, c_string_pos, number_of_chars)
       (load_overlay_strings, get_overlay_strings_1)
       (get_overlay_strings, forward_to_next_line_start)
       (back_to_previous_visible_line_start, reseat, reseat_to_string)
       (get_next_display_element, next_element_from_string)
       (next_element_from_c_string, next_element_from_buffer)
       (move_it_vertically_backward, move_it_by_lines, add_to_log)
       (message_dolog, message_log_check_duplicate, message2_nolog)
       (message3, message3_nolog, vmessage, set_message, set_message_1)
       (hscroll_window_tree, text_outside_line_unchanged_p)
       (set_cursor_from_row, set_vertical_scroll_bar, redisplay_window)
       (find_first_unchanged_at_end_row, row_containing_pos)
       (trailing_whitespace_p, display_mode_element, decode_mode_spec)
       (display_count_lines, x_produce_glyphs, note_mouse_highlight): Use
       EMACS_INT for buffer and string positions.
       dispextern.h (struct it) <string_nchars>: Declare EMACS_INT.
       (row_containing_pos): Adjust prototype.
       lisp.h (pos_visible_p, message2, message2_nolog, message3)
       (message2_nolog, set_message): Adjust prototypes.
  4. 27 Sep, 2010 1 commit
  5. 25 Sep, 2010 2 commits
    • Lars Magne Ingebrigtsen's avatar
    • Eli Zaretskii's avatar
      Fix int/EMACS_INT use in keyboard.c. · 41118bd3
      Eli Zaretskii authored
       keyboard.c <last_point_position, last_non_minibuf_size>: Declare EMACS_INT.
       (echo_truncate, adjust_point_for_property, read_char)
       (gen_help_event, make_lispy_event, modify_event_symbol)
       (Fexecute_extended_command, stuff_buffered_input): Use EMACS_INT
       for buffer positions and string length.
       keyboard.h (gen_help_event): Adjust prototype.
       termhooks.h <struct input_event>: Make `code' member EMACS_INT.
       commands.h <last_point_position>: Declare EMACS_INT.
       xdisp.c <help_echo_pos>: Define as EMACS_INT.
       (truncate_echo_area): Accept EMACS_INT argument.
       dispextern.h <help_echo_pos>: Declare EMACS_INT.
       lisp.h (truncate_echo_area): Adjust prototype.
       composite.c (composition_adjust_point): Return EMACS_INT.
       composite.h (composition_adjust_point): Adjust prototype.
  6. 24 Sep, 2010 2 commits
    • Eli Zaretskii's avatar
      Fix int/EMACS_INT use in ccl.c, cmds.c, data.c, dispnew.c. · ace1712c
      Eli Zaretskii authored
       keyboard.c (make_lispy_position): Use EMACS_INT for buffer
       xdisp.c (redisplay_internal, try_window_id)
       (set_cursor_from_row, find_first_unchanged_at_end_row): Use
       EMACS_INT for buffer positions.
       dispextern.h (set_cursor_from_row, mode_line_string)
       (marginal_area_string): Adjust prototypes.
       dispnew.c (increment_matrix_positions)
       (increment_row_positions, copy_glyph_row_contents)
       (mode_line_string, marginal_area_string): Use EMACS_INT for buffer
       dispextern.h (mode_line_string, marginal_area_string)
       (increment_matrix_positions, increment_row_positions): Adjust
       data.c (Faref, Faset): Use EMACS_INT for string length and
       cmds.c (internal_self_insert): Use EMACS_INT for the count of
       characters to insert.
       ccl.c (Fccl_execute_on_string): Use EMACS_INT for string
       position and size.
    • Eli Zaretskii's avatar
      Fix int/EMACS_INT in bidi.c. · 446470a9
      Eli Zaretskii authored
       dispextern.h (struct bidi_saved_info): Use EMACS_INT for buffer positions.
  7. 18 Sep, 2010 1 commit
    • Eli Zaretskii's avatar
      Fix bug #7038 with cursor motion in paragraphs w/o strong characters. · bea4f10c
      Eli Zaretskii authored
       xdisp.c (Fcurrent_bidi_paragraph_direction): Call
       bidi_paragraph_init with NO_DEFAULT_P non-zero.
       bidi.c (bidi_paragraph_init): Accept an additional argument
       NO_DEFAULT_P; all callers changed.  If NO_DEFAULT_P is non-zero,
       search back until a paragraph with a strong directional character
       is found, and use that to determine paragraph's base direction.
       dispextern.h (bidi_paragraph_init): Update prototype.
  8. 31 Aug, 2010 1 commit
  9. 09 Aug, 2010 1 commit
    • Dan Nicolaescu's avatar
      Use const char* instead of char*. · 8ea90aa3
      Dan Nicolaescu authored
      Reduce the number of warnings with -Wwrite-strings.
      * src/xrdb.c (get_environ_db, get_system_name):
      * src/unexelf.c (find_section):
      * src/term.c (string_cost, string_cost_one_line, per_line_cost)
      (get_named_tty, init_tty):
      * src/sysdep.c (sys_subshell):
      * src/sound.c (sound_perror, sound_warning, vox_open, vox_init)
      (alsa_sound_perror, alsa_open, alsa_configure, alsa_init):
      * src/search.c (Freplace_match):
      * src/process.c (Fmake_network_process, send_process, init_process):
      * src/lread.c (Fload, init_lread):
      * src/keymap.c (Fdescribe_buffer_bindings, describe_map_tree):
      * src/keyboard.c (parse_tool_bar_item, struct event_head):
      * src/gtkutil.h (xg_get_font_name):
      * src/gtkutil.c (get_dialog_title, create_dialog, xg_get_font_name)
      (make_widget_for_menu_item, make_menu_item, create_menus)
      * src/font.c (parse_matrix, font_parse_name):
      * src/floatfns.c (rounding_driver, float_error_fn_name):
      * src/filelock.c (get_boot_time_1, lock_file_1):
      * src/fileio.c (barf_or_query_if_file_exists, check_writable):
      * src/editfns.c (get_system_name, get_operating_system_release)
      (Fencode_time, Fset_time_zone_rule):
      * src/dispextern.h (string_cost, per_line_cost, get_named_tty, init_tty):
      * src/buffer.c (defvar_per_buffer): Use const.
  10. 08 Aug, 2010 1 commit
    • Dan Nicolaescu's avatar
      Use const char* instead of char*. · 675e2c69
      Dan Nicolaescu authored
      * src/xterm.c (x_create_toolkit_scroll_bar):
      * src/xfont.c (xfont_list_pattern):
      * src/xfns.c (x_default_scroll_bar_color_parameter)
      (xic_create_fontsetname, x_default_font_parameter)
      * src/xdisp.c (c_string_pos, number_of_chars, reseat_to_string)
      (store_mode_line_string, decode_mode_spec, display_string):
      * src/menu.c (digest_single_submenu):
      * src/keymap.h (initial_define_key, initial_define_lispy_key):
      * src/keymap.c (initial_define_key, initial_define_lispy_key):
      * src/image.c (image_error, image_keyword):
      * src/gtkutil.h (xg_create_widget, xg_create_scroll_bar):
      * src/gtkutil.c (xg_create_widget, xg_create_scroll_bar):
      * src/ftfont.c (struct fc_charset_table, ftfont_spec_pattern)
      (ftfont_list, ftfont_match):
      * src/frame.c (frame_parm_table):
      * src/font.h (font_intern_prop, font_parse_xlfd, font_parse_fcname)
      (font_unparse_fcname, font_unparse_fcname, font_open_by_name)
      (font_add_log, font_deferred_log):
      * src/font.c (font_intern_prop, font_parse_xlfd, font_parse_fcname)
      (font_unparse_fcname, font_unparse_fcname, font_open_by_name)
      (font_add_log, font_deferred_log):
      * src/emacs.c (argmatch):
      * src/dispextern.h (struct it):
      * src/coding.c (ENCODE_DESIGNATION):
      * src/charset.c (define_charset_internal): Use const.
  11. 07 Aug, 2010 1 commit
    • Juanma Barranquero's avatar
      Remove duplicate declarations. · 0e9c8657
      Juanma Barranquero authored
      * lib-src/ebrowse.c (usage, version, mark_virtual)
      * src/alloc.c (lisp_malloc)
      * src/buffer.c (set_buffer_internal, set_buffer_internal_1)
      * src/charset.h (emacs_mule_charset)
      * src/dispextern.h (inhibit_free_realized_faces, redraw_frame)
        (redraw_garbaged_frames, scroll_cost, update_frame, scrolling)
      * src/lisp.h (Fcheck_coding_system, Fget_text_property)
        (Qfunction, Qcompletion_ignore_case, QCwidth, QCsize)
  12. 05 Aug, 2010 1 commit
    • Dan Nicolaescu's avatar
      Add declarations to header files. · 99f3388e
      Dan Nicolaescu authored
      * src/keyboard.h (xmalloc_widget_value, digest_single_submenu): Remove
      declarations, menu.h has them.
      (QCbutton, QCtoggle, QCradio, QClabel, extra_keyboard_modifiers)
      (Vinput_method_function, Qinput_method_function)
      (Qevent_symbol_element_mask, last_event_timestamp):
      * src/dispextern.h (Voverflow_newline_into_fringe):
      * src/font.h (QCantialias, Qp, syms_of_ftfont, syms_of_xfns)
      (syms_of_ftxfont, syms_of_xftfont, syms_of_bdffont)
      (syms_of_w32font, syms_of_nsfont):
      * src/fontset.h (find_font_encoding, Qlatin):
      * src/frame.h (Qtooltip, Qrun_hook_with_args, Vmenu_bar_mode)
      (Vtool_bar_mode, set_frame_menubar):
      * src/ftfont.h (ftfont_font_format, ftfont_get_fc_charset):
      * src/xterm.h (Qx_gtk_map_stock):
      * src/keymap.h (meta_prefix_char): Add declarations.
      * src/lisp.h: Remove HAVE_SHM code, unused.
      (QCmap, QCrehash_size, QCrehash_threshold, QCsize, QCtest)
      (QCweakness, Qabove_handle, Qbackquote, Qbar, Qbelow_handle)
      (Qborder, Qbottom, Qbox, Qcircular_list, Qcomma, Qcomma_at)
      (Qcomma_dot, Qcursor, Qdefault, Qdown, Qend_scroll, Qeq, Qeql)
      (Qequal, Qfile_exists_p, Qfont_param, Qfringe, Qfunction)
      (Qfunction_documentation, Qhandle, Qhbar, Qheader_line, Qhollow)
      (Qidentity, Qleft_margin, Qmenu, Qmenu_bar_update_hook)
      (Qmode_line_inactive, Qmouse, Qoverriding_local_map)
      (Qoverriding_terminal_local_map, Qratio, Qregion, Qright_margin)
      (Qscroll_bar, Qtool_bar, Qtop, Qup, Qvertical_border, Qwhen)
      (Qwindow_scroll_functions, Vafter_load_alist)
      (Vauto_save_list_file_name, Vface_alternative_font_family_alist)
      (Vface_alternative_font_registry_alist, Vface_font_rescale_alist)
      (Vface_ignored_fonts, Vinhibit_redisplay, Vminibuffer_list)
      (Vprint_length, Vprint_level, Vscalable_fonts_allowed)
      (Vshell_file_name, Vsystem_name, Vwindow_scroll_functions)
      (Vwindow_system_version, Vx_no_window_manager, initial_argc)
      (initial_argv, last_nonmenu_event, load_in_progress)
      (noninteractive_need_newline, scroll_margin): Add declarations.
  13. 27 Jul, 2010 1 commit
    • Dan Nicolaescu's avatar
      Use const, move declarations to header files. · eec47d6b
      Dan Nicolaescu authored
      * src/buffer.c (Fset_buffer_multibyte): Remove local extern declaration.
      * src/character.c (strwidth, parse_str_to_multibyte): Add const.
      * src/character.h (strwidth, parse_str_to_multibyte): Likewise.
      * src/charset.c (add_to_log): Remove declaration.
      * src/composite.c (syms_of_composite): Remove local extern declarations.
      * src/data.c (Finteractive_form): Use const.
      * src/dired.c (scmp): Add const.
      (directory_files_internal): Remove local extern declaration.
      * src/dispextern.h (add_to_log): Remove declaration.
      (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
      (x_frame_get_and_record_arg, x_default_parameter): Add const.
      * src/dispnew.c: Remove duplicate #include <unistd.h>.
      (update_window, update_frame_1, init_display): Remove local extern
      * src/editfns.c (region_limit, syms_of_editfns): Remove local extern
      * src/emacs.c (main): Remove local extern declaration.
      * src/font.c (Qnormal, QCtype, QCfamily, QCweight, QCslant, QCwidth)
      (QCheight, QCsize, QCname): Remove declarations.
      * src/frame.c (x_get_resource_string, x_get_string_resource)
      (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
      (x_default_parameter): Use const.
      * src/image.c (QCwidth, QCheight, QCforeground, QCbackground, QCfile)
      (QCdata, QCtype, Qcenter): Remove declarations.
      * src/keyboard.h (do_mouse_tracking): Add declaration.
      * src/minibuf.c (Qmouse_face): Remove declaration.
      * src/msdos.c (IT_note_mouse_highlight): Remove local extern declaration.
      * src/xdisp.c (do_mouse_tracking): Remove declaration.
      (add_to_log): Use const.
      * src/xfaces.c (Qmouse_face): Remove declaration.
      (face_color_gray_p, tty_defined_color, defined_color)
      (face_color_gray_p, face_color_supported_p). Add const.
      * src/xfns.c: Include xlwmenu.h when USE_LUCID.
      (x_defined_color, xic_set_xfontset): Use const.
      (Fx_hide_tip): Remove local extern declaration.
      * src/xselect.c (selection_data_to_lisp_data)
      * src/xrdb.c (x_get_string_resource, file_p)
      (x_get_customization_string, magic_file_p, search_magic_path)
      (get_system_app, get_user_app, x_load_resources, x_get_resource)
      (x_get_string_resource): Use const.
      * src/xterm.c (xlwmenu_window_p, xlwmenu_redisplay): Remove declarations.
      (x_text_icon, x_check_errors, x_connection_closed): Use const.
      * src/xterm.h (x_get_customization_string, x_load_resources)
      (x_get_resource, x_text_icon, x_text_icon, x_check_errors)
      (x_check_errors, x_property_data_to_lisp, defined_color)
      (xic_set_xfontset, x_defined_color): Use const.
  14. 05 Jul, 2010 1 commit
    • YAMAMOTO Mitsuharu's avatar
      Fix ghost buffer boundary indicators in fringes (Bug#5634, Bug#6325). · 5a874e95
      YAMAMOTO Mitsuharu authored
      * dispextern.h (FRINGE_HEIGHT_BITS): New define.
      (struct glyph_row): New members left_fringe_offset and
      * xterm.c (x_draw_fringe_bitmap): Don't clip bottom aligned bitmap
      * w32term.c (w32_draw_fringe_bitmap): Likewise.
      * nsterm.m (ns_draw_fringe_bitmap): Likewise.
      * fringe.c (draw_fringe_bitmap_1): Don't clip bitmap here.
      Take account of	bitmap offset.
      (draw_window_fringes): Take account of window vscroll.
      (update_window_fringes): Likewise.  Extend top-aligned top indicator
      or bottom-aligned bottom indicator to adjacent rows if it doesn't fit
      in one row.  Don't set redraw_fringe_bitmaps_p outside row comparison.
      Set left_fringe_offset and right_fringe_offset (Bug#5634, Bug#6325).
  15. 02 Jul, 2010 1 commit
    • Jan D's avatar
      Remove P_ and __P macros. · 383e0970
      Jan D authored
      * lwlib/lwlib-Xaw.h: Remove P_ and __P macros.
      * lwlib/lwlib-Xlw.h:
      * lwlib/lwlib-Xm.h:
      * lwlib/lwlib-int.h:
      * lwlib/lwlib-utils.h:
      * lwlib/lwlib.h: Likewise.
      * src/buffer.h: Remove P_ and __P macros.
      * src/category.h:
      * src/ccl.h:
      * src/character.h:
      * src/charset.h:
      * src/cm.h:
      * src/coding.h:
      * src/composite.h:
      * src/dispextern.h:
      * src/disptab.h:
      * src/font.h:
      * src/fontset.h:
      * src/frame.h:
      * src/gtkutil.h:
      * src/indent.h:
      * src/intervals.h:
      * src/keyboard.h:
      * src/keymap.h:
      * src/lisp.h:
      * src/macros.h:
      * src/md5.h:
      * src/menu.h:
      * src/msdos.h:
      * src/nsterm.h:
      * src/puresize.h:
      * src/region-cache.h:
      * src/syntax.h:
      * src/syssignal.h:
      * src/systime.h:
      * src/termhooks.h:
      * src/w32term.h:
      * src/widget.h:
      * src/window.h:
      * src/xgselect.h:
      * src/xsettings.h:
      * src/xterm.h: Likewise.
  16. 25 May, 2010 1 commit
  17. 23 May, 2010 2 commits
  18. 18 May, 2010 1 commit
    • Eli Zaretskii's avatar
      Initial reimplementation of calculating line edge positions in bidi lines. · d36fe237
      Eli Zaretskii authored
       dispextern.h (struct glyph_row): New members minpos and maxpos.
       and maxpos members instead of start.pos and end.pos, respectively.
       xdisp.c (display_line): Compare IT_CHARPOS with the position in
       row->start.pos, rather than with MATRIX_ROW_START_CHARPOS.
       (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS.
       (try_window_reusing_current_matrix, try_window_id): Use
       ROW->minpos rather than ROW->start.pos.
       (init_from_display_pos, init_iterator): Use EMACS_INT for
       character and byte positions.
       (find_row_edges): Renamed from find_row_end.  Accept additional
       arguments for minimum and maximum buffer positions seen by
       display_line for this row.  Don't use iterator to find the
       position following the maximum one; instead, increment the
       position found by display_line directly.
       (display_line): Record minimum and maximum buffer positions for
       glyphs in this row.  Record the position of the newline that
       terminates the line.
       dispnew.c (increment_row_positions, check_matrix_invariants):
       Increment and check row->start.pos and row->end.pos, in addition
  19. 14 May, 2010 2 commits
  20. 23 Apr, 2010 1 commit
  21. 20 Apr, 2010 2 commits
    • Jan Djärv's avatar
      Gtk tool bars can be text, icons with text or just icons. · f904c0f9
      Jan Djärv authored
      * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
      current_tool_bar_style are new.
      (store_config_changed_event): Rename from store_font_changed_event.
      (XSETTINGS_TOOL_BAR_STYLE): New define.
      (SEEN_FONT, SEEN_TB_STYLE): New enum values.
      (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
      (something_changedCB): store_font_changed_event is now
      (parse_settings): Rename from parse_xft_settings.  Read
      non-xft xsettings outside #ifdef HAVE_XFT.
      (read_settings): Renamed from read_xft_settings.
      (apply_xft_settings): Take current settings as parameter.  Do not
      call read_(xft)_settings.
      (read_and_apply_settings): New function.
      (xft_settings_event): Do non-xft stuff out of HAVE_XFT.  Call
      read_and_apply_settings if there are settings to be read.
      (init_xsettings): Renamed from init_xfd_settings.
      Call read_and_apply_settings unconditionally.
      (xsettings_initialize): Call init_xsettings.
      (Ftool_bar_get_system_style): New function.
      (syms_of_xsettings): Define Qmonospace_font_name and
      Qtool_bar_style.  Initialize current_tool_bar_style to nil.
      defsubr Stool_bar_get_system_style. Fprovide on
      * xsettings.h (Ftool_bar_get_system_style): Declare.
      * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
      Qtext, Qboth, Qboth_horiz are new.
      (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
      Vtool_bar_style, tool_bar_max_label_size.
      * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
      * keyboard.c: QClabel is new.
      (parse_tool_bar_item): Take out QClabel from tool bar items.
      Try to construct a label if ther is no QClabel.
      (syms_of_keyboard): Intern :label as QClabel.
      * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
      (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
      * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
      * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
      (xg_make_tool_item, xg_show_toolbar_item): New function.
      (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
      Call xg_make_tool_item to make a tool bar item.
      Call xg_show_toolbar_item.  Use wtoolbar instead of x->toolbar_widget.
      * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
      into account for toolbars.
      * vc-dir.el (vc-dir-tool-bar-map): Add :label on some tool bar items.
      * tool-bar.el (tool-bar-setup): Add :label on some tool bar items.
      * loadup.el: Load dynamic-setting.el if feature dynamic-setting
      is present.
      * info.el (info-tool-bar-map): Add labels.
      * cus-start.el (all): Add tool-bar-style and tool-bar-max-label-size.
      * cus-edit.el (custom-commands): Add labels for tool bar.
      (custom-buffer-create-internal, Custom-mode): Adjust for
      labels in custom-commands.
      * dynamic-setting.el: Renamed from font-setting.el.
    • Stefan Monnier's avatar
      * buffer.h (struct buffer): Remove unused var `direction_reversed'. · b4bf28b7
      Stefan Monnier authored
      * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
      * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
  22. 19 Apr, 2010 1 commit
  23. 10 Apr, 2010 1 commit
    • YAMAMOTO Mitsuharu's avatar
      Don't abort try_window with fonts change when showing tooltip (Bug#2423). · 6eff5c3d
      YAMAMOTO Mitsuharu authored
      * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
      * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
      Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
      set in FLAGS.  Callers with non-zero CHECK_MARGINS changed to use
      * xfns.c (Fx_show_tip): Call try_window with TRY_WINDOW_IGNORE_FONTS_CHANGE.
  24. 31 Mar, 2010 1 commit
    • Stefan Monnier's avatar
      Get rid of the direct_output optimizations. · 855a0da7
      Stefan Monnier authored
      * keyboard.c (nonundocount): Remove extern declaration.
      (command_loop_1): Remove brittle optimisation for cheap and common operations.
      * xdisp.c (redisplay_internal): Don't bother checking
      redisplay_performed_directly_p any more.
      * sysdep.c (init_sys_modes): Don't call direct_output_forward_char any more.
      * dispnew.c (redisplay_performed_directly_p)
      (direct_output_for_insert, direct_output_forward_char):
      * dispextern.h (redisplay_performed_directly_p)
      (direct_output_for_insert, direct_output_forward_char): Remove.
      * cmds.c (nonundocount): Make it static.
  25. 28 Mar, 2010 1 commit
    • Eli Zaretskii's avatar
      Fix glyph_row reversed_p flag in empty lines between paragraphs. · c0546589
      Eli Zaretskii authored
       bidi.c (bidi_get_next_char_visually): Improve commentary.
       dispextern.h (PRODUCE_GLYPHS): Set the reversed_p flag in the
       iterator's glyph_row here.
       xdisp.c (handle_invisible_prop, set_iterator_to_next)
       (next_element_from_buffer): Don't set the reversed_p flag in the
       iterator's glyph_row here.
  26. 22 Mar, 2010 1 commit
    • Jan Djärv's avatar
      bug #5736: Allow X-resource menuBar to take on/off as documented. · 93318cbd
      Jan Djärv authored
      * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
      * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
      * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
      * xresources.texi (Table of Resources): Clarify toolBar number
      for Gtk+.
      * frames.texi (Menu Bars): menuBarLines => menuBar (bug#5736).
  27. 13 Mar, 2010 1 commit
    • Eli Zaretskii's avatar
      Continue work on cursor movement in continued lines. · 8eef7665
      Eli Zaretskii authored
       xdisp.c (try_cursor_movement): Give up if rows are
       bidi-reordered and point moved backwards.  Examine all the
       candidate rows that occlude point, to return the best match.
       (row_containing_pos): With bidi-reordered rows, don't return the
       first one that occludes point; rather, examine all candidates and
       return the best match, with he glyph that's closest to point.
       (display_line): When looking for min position, don't consider
       negative values of glyph->charpos.  (Fixes a crash with "C-x 3" at
       ZV.)  Record the position after EOL in it->eol_pos, and use it to
       set end_pos of the last row produced for a continued line.  Fix
       the condition for passing candidate rows to set_cursor_from_row:
       check ends_at_zv_p flag of the best candidate row, not of the
       current row.
       dispextern.h (struct it): New member eol_pos.
       .gdbinit (prowlims): Display the ends_at_zv_p flag.
  28. 19 Feb, 2010 1 commit
  29. 13 Jan, 2010 1 commit
  30. 02 Jan, 2010 1 commit
    • Eli Zaretskii's avatar
      Continue working on handling of properties in bidi iteration. · 241ab1c1
      Eli Zaretskii authored
      Region display and extension seems to work.
      Solved a crash in bidirectional display of etc/HELLO.
      (HELLO display still not 100% OK, e.g. near Kannada.)
       .gdbinit (pitx): Display some bidi information about the
       dispextern.h (BIDI_AT_BASE_LEVEL): Enclose definition in
       xdisp.c (handle_stop_backwards): Save and restore it->current
       and it->position, instead of expecting the caller to do that.
       (next_element_from_buffer): When moving across stop_charpos,
       record it in prev_stop.  When IT_CHARPOS backs up, call
       handle_stop_backwards only if above the base embedding level.
       This solves the crash while displaying etc/HELLO in bidi mode.
  31. 01 Jan, 2010 5 commits
    • Eli Zaretskii's avatar
    • Eli Zaretskii's avatar
      Retrospective commit from 2009-12-12. · e69a9370
      Eli Zaretskii authored
      Begin working on faces support.  First version of handle_stop_backwards.
      Rearrange struct bidi_it for more efficient push/pop ops.
       dispextern.h (struct it): New members prev_stop and
       xdisp.c (handle_stop_backwards): New function.
       (next_element_from_buffer): Handle the situation where we
       overstepped stop_charpos due to non-linearity of the bidi
       iteration.  Likewise for when we back up beyond the previous
       (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
       dispextern.h (BIDI_AT_BASE_LEVEL): New macro.
       bidi.c (bidi_copy_it): Fix compiler warning due to cast of a
       pointer to `int'.  Don't preserve the first_elt member, as it is
       no longer copied, because its position in the structure was
       changed, see below.
       dispextern.h (struct bidi_it): Move first_elt, new_paragraph,
       separator_limit, and paragraph_dir to after bidi_stack.  Add a
       note that anything beyond the level stack is not preserved when
       the bidi iterator state is copied/saved.
    • Eli Zaretskii's avatar
      Retrospective commit from 2009-10-24. · 29e3d8d1
      Eli Zaretskii authored
      Continue working on set_cursor_from_row.
      Cleanup of resolved_level and bidi_type members of struct glyph.
       xdisp.c (set_cursor_from_row): Fix off-by-one error when
       skipping over non-character glyphs at end of a reversed row.
       dispextern.h (struct glyph): The `resolved_level' member needs
       only 5 bits, not 6.  The `bidi_type' member needs only 3 bits.
       (bidi_type_t): Rearrange so that types that can appear in the
       resolved type are at the beginning and have values less than 8.
       bidi.c: Include setjmp.h.
    • Eli Zaretskii's avatar
      Retrospective commit from 2009-10-17. · 5e65aec0
      Eli Zaretskii authored
      Continue working on display of R2L glyph rows.  Reverse glyphs in
      term.c:append_glyph rather than in extend_face_to_end_of_line.
      Fix bidi iteration near BEGV and ZV.
       dispextern.h (struct glyph): New members resolved_level and
       xdisp.c (append_glyph, append_composite_glyph)
       (produce_image_glyph, append_stretch_glyph): Set them.
       term.c (append_glyph): Ditto.
       xdisp.c (display_line, next_element_from_buffer): Set the glyph
       row's reversed_p flag if the paragraph base direction is odd.
       (extend_face_to_end_of_line): Don't reverse the glyphs here.
       term.c (append_glyph): Reverse glyphs here.
       bidi.c (bidi_get_next_char_visually): Don't exit early when at ZV.
       (bidi_paragraph_init): Don't step over a newline if at BEGV.
       (bidi_paragraph_init): Handle empty buffers.
    • Eli Zaretskii's avatar
      Retrospective commit from 2009-10-08. · c143c213
      Eli Zaretskii authored
      Finish up working on paragraph's base direction.
      Start working on display of right-to-left glyph rows.
      Rewrite set_cursor_from_row to support bidi.
       xdisp.c (string_buffer_position_lim): New function.
       (string_buffer_position): Most of code moved to
       string_buffer_position_lim.  Last argument and return value are
       now EMACS_INT; all callers changed.
       (set_cursor_from_row): Rewritten to support bidirectional text and
       reversed glyph rows.
       dispextern.h <string_buffer_position>: Update prototype.
       bidi.c (bidi_paragraph_init): Fix initialization of POS.
       dispextern.h (struct glyph_row): New member reversed_p.
       buffer.c (syms_of_buffer): Remove DEFVAR_LISP_NOPRO for
       default-direction-reversed, default-bidi-display-reordering, and