diff options
Diffstat (limited to 'src/ChangeLog.10')
-rw-r--r-- | src/ChangeLog.10 | 27939 |
1 files changed, 27939 insertions, 0 deletions
diff --git a/src/ChangeLog.10 b/src/ChangeLog.10 new file mode 100644 index 00000000000..b7187263257 --- /dev/null +++ b/src/ChangeLog.10 @@ -0,0 +1,27939 @@ +2007-04-24 Chong Yidong <cyd@stupidchicken.com> + + * Branch for 22.1. + +2007-04-24 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (redisplay_window): Use BEG_UNCHANGED and END_UNCHANGED + values of the actual window. + +2007-04-23 Richard Stallman <rms@gnu.org> + + * process.c (Fstart_process): Doc fix. + +2007-04-23 Eli Zaretskii <eliz@gnu.org> + + * process.c (Fstart_process): Doc fix. + +2007-04-22 Richard Stallman <rms@gnu.org> + + * abbrev.c (Fdefine_abbrev): Doc fix. + + * keymap.c (Fdefine_key): Minor doc fix. + +2007-04-21 Glenn Morris <rgm@gnu.org> + + * keymap.c (Fdefine_key): Fix info ref in doc string. + +2007-04-20 Glenn Morris <rgm@gnu.org> + + * sysdep.c (init_system_name): Don't accept localhost.localdomain. + +2007-04-19 Juanma Barranquero <lekktu@gmail.com> + + * minibuf.c (Fminibuffer_contents, Fminibuffer_contents_no_properties) + (Fminibuffer_completion_contents, Fdelete_minibuffer_contents): + Doc fixes. + +2007-04-16 Chong Yidong <cyd@stupidchicken.com> + + * dispnew.c (adjust_frame_glyphs_for_frame_redisplay): + Set garbaged flag in presence of window margins. + (showing_window_margins_p): New function. + + * xdisp.c (cursor_row_p): Only end row on newline if it's a + display string. Suggested by Lennart Borgman. + +2007-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * alloc.c (mem_insert): Set min_heap_address and max_heap_address + if they are not yet initialized. + +2007-04-15 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (redisplay_window): When deciding whether or not to + recenter, don't use the reset values of BEG_UNCHANGED and + END_UNCHANGED. + +2007-04-13 Kim F. Storm <storm@cua.dk> + + * buffer.c (Fkill_buffer): gcpro BUF during kill_buffer_processes + and check that buffer is still alive upon return. + +2007-04-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c [!TARGET_API_MAC_CARBON]: Include Displays.h. + (mac_screen_config_changed): New variable. + (mac_handle_dm_notification, init_dm_notification_handler) + (mac_get_screen_info): New functions. + [MAC_OS8] (main): Call init_dm_notification_handler. + (mac_initialize) [MAC_OSX]: Likewise. + (XTread_socket): Call mac_get_screen_info if screen config changed. + (mac_initialized): Make static. + (mac_initialize_display_info): Remove function. + (mac_term_init): Call mac_get_screen_info. Add partial contents of + mac_initialize_display_info. + +2007-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (xrm_get_preference_database, Fmac_get_preference) + [TARGET_API_MAC_CARBON]: Use CFPreferencesAppSynchronize. + + * macterm.c [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): + Use GetGlobalMouse instead of GetMouse and LocalToGlobal. + (mac_initialize_display_info) [MAC_OSX]: Use CGRectZero. + (mac_initialize_display_info) [!MAC_OSX]: dpyinfo->height and + dpyinfo->width are those of whole screen. + +2007-04-10 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (note_mode_line_or_margin_highlight): Don't decrement + glyph pointer before start of glyph row. + +2007-04-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * s/darwin.h (__restrict, struct kboard): Remove outdated workarounds. + (C_SWITCH_SYSTEM): Remove `-I../mac/src'. + +2007-04-09 Martin Rudalics <rudalics@gmx.at> + + * indent.c (Fmove_to_column): Set next_boundary with correct start pt. + +2007-04-08 Richard Stallman <rms@gnu.org> + + * xdisp.c (syms_of_xdisp) <message-log-max>: Default 100. + +2007-04-07 Chong Yidong <cyd@stupidchicken.com> + + * editfns.c (Ftranspose_regions): Validate interval before setting + text properties. + +2007-04-03 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (main): Fix instructions for building Emacs for profiling. + +2007-04-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_update_menubar): Call g_list_next after moving + menu bar item. + +2007-04-02 Juanma Barranquero <lekktu@gmail.com> + + * print.c (Fprin1_to_string): Use macro SPECPDL_INDEX. + +2007-04-01 Chong Yidong <cyd@stupidchicken.com> + + * keymap.c (Fcommand_remapping): New optional argument. + (where_is_internal): Use new keymaps argument. + (Fkey_binding): Caller changed. + + * keyboard.c (command_loop_1): Caller changed. + +2007-03-31 Eli Zaretskii <eliz@gnu.org> + + * window.c (Fget_lru_window): Doc fix. + +2007-03-30 Chong Yidong <cyd@stupidchicken.com> + + * undo.c (Fprimitive_undo): Give clearer error message when trying + to change text properties outside accessible part of buffer. + +2007-03-29 Kim F. Storm <storm@cua.dk> + + * process.c (wait_reading_process_output) [HAVE_PTYS]: + When EIO happens, clear channel from descriptor masks before raising + SIGCHLD signal to avoid busy loop between read and sigchld_handler. + (sigchld_handler): Remove sleep (2007-03-11 & 2007-03-26 changes). + +2007-03-29 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (Fset_buffer_major_mode): Check that BUFFER is valid. + + * process.c (Fformat_network_address): Return nil when the + argument vector contains invalid values. + +2007-03-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Define USE_PTHREAD. + [USE_PTHREAD]: Include pthread.h. + (malloc_init_once_control, _malloc_mutex) [USE_PTHREAD]: New variables. + (malloc_initialize_1): New function created from __malloc_initialize. + (__malloc_initialize): Use it. + (LOCK, UNLOCK): New macros to make malloc etc. thread safe. + (_malloc_internal, _free_internal, _realloc_internal): Use them. + + * lread.c (readchar): Extend BLOCK_INPUT block to ferror/clearerr. + +2007-03-27 Juanma Barranquero <lekktu@gmail.com> + + * process.c (Fformat_network_address): Make args array big enough + to format IPv6 addresses. + +2007-03-27 Glenn Morris <rgm@gnu.org> + + * m/hp800.h: Restore HP-UX support (removed 2007-01-29). + +2007-03-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (Fx_display_mm_height, Fx_display_mm_width): Scale whole + screen size in pixels by millimeters per pixel of main display. + + * macselect.c (get_scrap_target_type_list, x_own_selection): + Move assignments outside predicate macros. + (Vselection_converter_alist): Doc fix. + + * macterm.c (create_text_encoding_info_alist): Move assignments + outside predicate macros. + (mac_initialize_display_info) [MAC_OSX]: dpyinfo->height and + dpyinfo->width are those of whole screen. + +2007-03-26 Sam Steingold <sds@gnu.org> + + * process.c (sigchld_handler): Delay by 1ms instead of 1s to + alleviate sluggishness (the original problem is still fixed). + +2007-03-25 Kim F. Storm <storm@cua.dk> + + * intervals.c (merge_properties): Use explicit loop instead of + Fplist_member to avoid QUIT. Don't use Fcdr. + (intervals_equal): Likewise. Rewrite loop to perform length check + on the fly rather than calling Flength. Don't use Fcar. + +2007-03-24 Eli Zaretskii <eliz@gnu.org> + + * editfns.c (Fgoto_char): Doc fix. + + * indent.c (Findent_to): Doc fix. + +2007-03-24 Chong Yidong <cyd@stupidchicken.com> + + * editfns.c (Ftranspose_regions): Use set_text_properties_1 + instead of Fset_text_properties to avoid GC. Signal after change. + +2007-03-24 Eli Zaretskii <eliz@gnu.org> + + * xfns.c (Fx_show_tip): Doc fix. + + * macfns.c (Fx_show_tip): Doc fix. + + * w32fns.c (Fx_show_tip): Doc fix. + +2007-03-23 Kim F. Storm <storm@cua.dk> + + * intervals.c (merge_properties, intervals_equal): + Use Fplist_member instead of Fmemq to find properties. + +2007-03-23 Glenn Morris <rgm@gnu.org> + + * unexhp9k800.c: Restore file with clarified legal status. + * m/sr2k.h: Restore since dependency unexhp9k800.c is restored. + +2007-03-22 Chong Yidong <cyd@stupidchicken.com> + + * widget.c (EmacsFrameSetCharSize): Catch X errors. + +2007-03-22 Kenichi Handa <handa@m17n.org> + + * fileio.c (Fcopy_file): Call barf_or_query_if_file_exists with + non-encoded file name. + (Frename_file): Likewise. + (Fadd_name_to_file): Likewise. + (Fmake_symbolic_link): Likewise. + +2007-03-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * Makefile.in (alloca.o, gtkutil.o): Depend on systime.h. + (dired.o, editfns.o, fileio.o, msdos.o): Depend on atimer.h. + (dosfns.o, window.o, fns.o, macselect.o): Depend on atimer.h and + systime.h. + (term.o, print.o, lread.o): Depend on blockinput.h, atimer.h, and + systime.h. + (macfns.o): Remove duplicate dependency on systime.h. + + * dispnew.c (Fopen_termscript): Add BLOCK_INPUT around fclose. + (Fsend_string_to_terminal): Add BLOCK_INPUT around fwrite. + + * fileio.c (do_auto_save_unwind): Add BLOCK_INPUT around fclose. + (Fdo_auto_save): Add BLOCK_INPUT around fwrite. + + * keyboard.c (record_char): Add BLOCK_INPUT around fwrite. + (Fopen_dribble_file): Add BLOCK_INPUT around fclose. + + * lread.c: Include blockinput.h. + (readchar, Fget_file_char): Add BLOCK_INPUT around getc. + (unreadchar): Add BLOCK_INPUT around ungetc. + (load_unwind): Add BLOCK_INPUT around fclose. + + * print.c: Include blockinput.h. + (Fredirect_debugging_output): Add BLOCK_INPUT around fclose. + + * process.c (Fmake_network_process) [HAVE_GETADDRINFO]: + Clear immediate_quit before calling freeaddrinfo. + Add BLOCK_INPUT around freeaddrinfo. + + * term.c: Include blockinput.h. + (write_glyphs, insert_glyphs): Add BLOCK_INPUT around fwrite. + +2007-03-19 Richard Stallman <rms@gnu.org> + + * keyboard.c (NUM_RECENT_KEYS): Bump up to 300. + + * buffer.c (syms_of_buffer): Doc fix. + +2007-03-18 Chong Yidong <cyd@stupidchicken.com> + + * image.c (pbm_load): Signal error for invalid image size. + +2007-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (note_mouse_movement): Don't return immediately for + LeaveNotify case. + + * macmenu.c (popup_activated_flag): New variable. + (x_activate_menubar, mac_menu_show): Set it during menu tracking. + (popup_activated): New function. + + * xdisp.c (redisplay_internal, note_mouse_highlight): + Check popup_activated for MAC_OS. + +2007-03-17 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (syms_of_buffer) <buffer-display-table>: Doc fix. + Reported by Nikolaj Schumacher <n_schumacher@web.de>. + +2007-03-17 Richard Stallman <rms@gnu.org> + + * dired.c (file_name_completion): gcpro NAME. + +2007-03-17 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (try_window_id): Increment matrix positions if the + buffer's byte count has increased, but not the character count. + +2007-03-12 Andreas Schwab <schwab@suse.de> + + * lisp.h: Declare check_obarray. + + * process.c (Fdelete_process): Properly handle deletion of first + element of deleted_pid_list. + (create_process): Declare pid as pid_t. + +2007-03-12 Kim F. Storm <storm@cua.dk> + + * process.c (sigchld_handler): Change type of pid to pid_t. + Scan deleted_pid_list explicitly to avoid using Fmember which don't + know about mark bits and make_fixnum_or_float which may malloc. + Reported by Andreas Schwab. + + * keyboard.c (read_key_sequence): Store original event into keybuf + when replaying sequence with local keymap(s) from string. + +2007-03-12 Glenn Morris <rgm@gnu.org> + + * editfns.c (Fdecode_time, Fencode_time): Doc fix ("daylight + savings" to "daylight saving"). + +2007-03-11 Sam Steingold <sds@gnu.org> + + * process.c (sigchld_handler): Sleep before wait3 to avoid a busyloop. + +2007-03-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (Fx_server_vendor): Change vendor string to "Apple Inc.". + +2007-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c [USE_CARBON_EVENTS] (mac_handle_mouse_event): + Ignore mouse wheel movement on title bar or tool bar. + +2007-03-10 Chong Yidong <cyd@stupidchicken.com> + + * keyboard.c (help_form_saved_window_configs): New var. + (read_char_help_form_unwind): New function. + (read_char): Don't restore window configuration if a mouse click + arrives while the help form is being displayed. + +2007-03-10 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Don't automatically select a new window + start for a contination line during mouse-click. + +2007-03-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): Ignore buttons > 3 for the tool bar. + +2007-03-09 Juanma Barranquero <lekktu@gmail.com> + + * keymap.c (Fdescribe_buffer_bindings): Check that BUFFER is valid. + +2007-03-08 Richard Stallman <rms@gnu.org> + + * keyboard.c (syms_of_keyboard): Doc fix. + +2007-03-08 Chong Yidong <cyd@stupidchicken.com> + + * minibuf.c (Ftry_completion): Don't short circuit if + completion-ignore-case is non-nil. + +2007-03-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (mac_set_scroll_bar_width, mac_frame_parm_handlers): + Undo 2006-03-06 changes. + + * macterm.c (XTset_vertical_scroll_bar) [MAC_OSX]: Don't show scroll + bar if its width is smaller than that of Aqua small scroll bar. + +2007-03-07 Stefan Monnier <monnier@iro.umontreal.ca> + + * minibuf.c (read_minibuf): Bind inhibit-read-only a bit longer so as + to handle correctly prompts with read-only property. + +2007-03-06 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * sound.c (wav_play): Check header->data_length to see how much we + shall read. + (alsa_period_size): Convert ALSA period size in frames to bytes. + (alsa_write): Return if frames is zero. + +2007-03-06 Kenichi Handa <handa@m17n.org> + + * xselect.c (Vselection_coding_system): Documentation improved. + +2007-03-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (x_scroll_bar_create, XTread_socket): Replace #if + USE_TOOLKIT_SCROLL_BARS with #ifdef USE_TOOLKIT_SCROLL_BARS. + (x_set_window_size): Call SET_FRAME_GARBAGED. Clear window if + internal border width has changed. + + * macterm.h (struct mac_output): New member `internal_border_width'. + +2007-03-04 Richard Stallman <rms@gnu.org> + + * window.c (Fdisplay_buffer): Doc fix. + +2007-03-03 Glenn Morris <rgm@gnu.org> + + * Makefile.in: Don't clear out LIB_X11_LIB, since XFT_LIBS does + not include -lX11 on Solaris. + +2007-03-02 Stuart D. Herring <herring@lanl.gov> + + * keymap.c (Fkey_binding): Don't consider one-element lists as events. + +2007-03-01 Kenichi Handa <handa@m17n.org> + + * process.c (send_process_object): Check the process status and + signal an error if something is wrong. + +2007-02-28 Chong Yidong <cyd@stupidchicken.com> + + * insdel.c (Fcombine_after_change_execute): Return nil if + combine_after_change_buffer has been invalidated. + +2007-02-25 Dan Nicolaescu <dann@ics.uci.edu> + + * m/xtensa.h: New file. + +2007-02-24 Nick Roberts <nickrob@snap.net.nz> + + * .gdbinit (xprintstr): Ensure GDB (> 6.6) prints symbol name + as strings and not character arrays. + +2007-02-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_drag) + (x_set_toolkit_scroll_bar_thumb): Add bar->min_handle as margin to + scroll bar handle size in order to avoid `scroll backward' problem. + (x_scroll_bar_create, XTset_vertical_scroll_bar) + [USE_TOOLKIT_SCROLL_BARS]: Initialize bar->min_handle. + + * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: + New member `min_handle'. + +2007-02-23 Kim F. Storm <storm@cua.dk> + + * print.c (print): Reset print_number_index if Vprint_number_table + is nil. + +2007-02-23 Eli Zaretskii <eliz@gnu.org> + + * w32.c (stat, get_long_basename, is_unc_volume): Use _mbspbrk + instead of strpbrk. + +2007-02-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (mac_menu_show): Call unbind_to early. Use variable + `menu_item_selection' as in W32 version. + [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Add explicit + braces to avoid ambiguous `else'. + + * macterm.c (mac_display_info_for_display): Remove function. + (mac_flush_display_optional) [USE_CG_DRAWING]: New function. + (x_redisplay_interface) [USE_CG_DRAWING]: Set it as handler for + flush_display_optional. + [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_press): + New argument MOUSE_POS. All uses changed. Set bar->dragging to + negative integer if scroll bar handle is pressed. + [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_release): + Negative bar->dragging means scroll bar handle is not dragged. + [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_drag): Get initial + offset of scroll bar handle from negative bar->dragging. + (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Modifiers for scroll + bar click is compared against mapped one. Set down/up_modifier + for scroll bar click event with control key. + + * macterm.h (x_display_info_for_display): Remove extern. + (SCROLL_BAR_UNPACK, SET_SCROLL_BAR_CONTROL_HANDLE): Don't limit + value to be unpacked to 32-bit on LP64 model. + +2007-02-23 Kenichi Handa <handa@m17n.org> + + * process.c (send_process_object_unwind): New function. + (send_process_object): New function. + (Fprocess_send_region): Call send_process_object. + (Fprocess_send_string): Likewise. + +2007-02-22 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (w32_menu_show): Mark the frame's menu as inactive + when popup menu finishes. + + * w32fns.c (menubar_in_use): New flag. + (w32_wnd_proc) <WM_INITMENU, WM_EXITMENULOOP, WM_TIMER, WM_COMMAND>: + Use it. + + * w32menu.c (Fx_popup_menu): Don't free menu strings here. + (w32_menu_show): Do it here instead. + + * w32fns.c (w32_wnd_proc) <WM_INITMENU>: Set menubar_active frame + parameter. + + * w32menu.c (current_popup_menu): Make available globally. + (menubar_selection_callback): Free menu strings before pushing the + menu event into the keyboard buffer. Remove menu_command_in_progress. + + * w32fns.c (current_popup_menu): Use from w32menu.c. + (w32_wnd_proc) <WM_EXITMENULOOP, WM_TIMER>: Use menubar_active + and current_popup_menu to determine whether a menubar menu has + been cancelled. + + * w32term.h (w32_output): Remove menu_command_in_progress. + +2007-02-22 Kim F. Storm <storm@cua.dk> + + * dispnew.c (update_frame, update_single_window): Set force_p here if + redisplay_dont_pause is set or Vredisplay_preemption_period is nil... + (update_window, update_frame_1): ... instead of here. + (update_text_area): Clear mouse face on header lines. + +2007-02-21 Kim F. Storm <storm@cua.dk> + + * minibuf.c (Fassoc_string): Doc fix. Allow symbol for KEY too. + +2007-02-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (WINDOW_RESOURCE, TERM_WINDOW_RESOURCE): Remove macros. + [USE_MAC_TSM] (mac_handle_text_input_event): Remove unused variable + `mapped_modifiers'. + (XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Use Keyboard + Layout Services routines to get current Unicode keyboard layout. + +2007-02-20 Chong Yidong <cyd@stupidchicken.com> + + * frame.c (x_set_screen_gamma): Apply gamma value to the frame's + bgcolor. + +2007-02-19 Kim F. Storm <storm@cua.dk> + + * minibuf.c (Fassoc_string): Allow symbols as keys. + + * w32term.c (w32_set_scroll_bar_thumb): Don't resize scroll-bar + handle while dragging, except when we get close to eob. + Fix position and size calculations so we don't scroll backwards + just by clicking on the handle. + +2007-02-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * Makefile.in (${emacsapp}Contents/Resources/Emacs.rsrc) + [HAVE_CARBON]: Remove target. + (macosx-app) [HAVE_CARBON]: Don't depend on it. + +2007-02-17 Juanma Barranquero <lekktu@gmail.com> + + * callproc.c (syms_of_callproc) <doc-directory>: + <configure-info-directory>: + (Fgetenv_internal): Fix typos in docstrings. + + * doc.c (Fsubstitute_command_keys): Fix typo in docstring. + +2007-02-16 Andreas Schwab <schwab@suse.de> + + * frame.c (Fmodify_frame_parameters): Return a value. + + * editfns.c (Fformat): Add support for '+' flag. + * doprnt.c (doprnt1): Likewise. Fix overflow checking. + +2007-02-14 Chong Yidong <cyd@stupidchicken.com> + + * s/umips.h: Unused file removed. + +2007-02-14 Juanma Barranquero <lekktu@gmail.com> + + * xfaces.c (Fcolor_distance): Don't continue checking a color for + errors after it has been correctly parsed as an RGB list. + +2007-02-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (do_ewmh_fullscreen): Also check for _NET_WM_STATE_FULLSCREEN. + +2007-02-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (Fx_focus_frame): Move current process to foreground if + it is not. + [TARGET_API_MAC_CARBON] (Fx_file_dialog): Replace #if MAC_OSX with + #ifdef MAC_OSX. + (Fmac_set_font_panel_visible_p) [USE_MAC_FONT_PANEL]: Rename from + Fmac_set_font_panel_visibility. All uses changed. Rename argument + VISIBLE to FLAG. + + * macterm.c (MakeMeTheFrontProcess) [MAC_OSX]: Remove function. + (mac_initialize) [MAC_OSX]: Call SetFrontProcess instead of + MakeMeTheFrontProcess. + +2007-02-12 Chong Yidong <cyd@stupidchicken.com> + + * frame.c (x_set_screen_gamma): Clear face cache. + +2007-02-11 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (Fgenerate_new_buffer_name, Fbuffer_modified_tick): + Reflow docstrings. + +2007-02-10 Eli Zaretskii <eliz@gnu.org> + + * window.c (Fwindow_height, Fwindow_hscroll) + (Fwindow_redisplay_end_trigger, Fwindow_point, Fwindow_start) + (Fwindow_end, Fwindow_display_table, Fwindow_text_height): + Document the effect of WINDOW arg being nil. + +2007-02-08 Kim F. Storm <storm@cua.dk> + + * minibuf.c (read_minibuf): Fix 2007-01-30 change. + Use Qlambda as interim value of Vminibuffer_completing_file_name. + (Fcompleting_read): Use non-filename maps if value is Qlambda (or Qnil). + (syms_of_minibuf) <minibuffer-completing-file-name>: Document lambda. + +2007-02-07 Juanma Barranquero <lekktu@gmail.com> + + * makefile.w32-in ($(TRES)): Use literal "../nt/emacs.rc" instead + of $(ALL_DEPS). + +2007-02-07 Eli Zaretskii <eliz@gnu.org> + + * makefile.w32-in ($(TRES)): Depend on stamp_BLD, since $(TRES) is + put into $(BLD). + +2007-02-06 Chong Yidong <cyd@stupidchicken.com> + + * frame.c (Fmodify_frame_parameters): Don't bind + Qinhibit_default_face_x_resources, which has no effect. + (Qinhibit_default_face_x_resources): Symbol deleted. + +2007-02-03 Eli Zaretskii <eliz@gnu.org> + + * indent.c (Fmove_to_column): Document that the argument COLUMN is + taken from prefix numeric argument. + +2007-02-03 Juanma Barranquero <lekktu@gmail.com> + + * lread.c (syms_of_lread) <load-history>: Doc fix. + +2007-01-29 Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de> (tiny change) + + * xterm.c [!USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_expose): + Use the foreground color of the scroll-bar face when drawing + the scroll-bar's border. + +2007-02-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (do_ewmh_fullscreen): Check that what != NULL before + calling wm_supports. + +2007-02-01 Juanma Barranquero <lekktu@gmail.com> + + * lread.c (syms_of_lread) <user-init-file>: Doc fix. + Wording by Eli Zaretskii. + +2007-01-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (update_frame_tool_bar): Initialize h/vmargin to 0. + +2007-01-30 Richard Stallman <rms@gnu.org> + + * minibuf.c (read_minibuf): + Save and clear Vminibuffer_completing_file_name. + (read_minibuf_unwind): Restore it. + (Vminibuffer_completion_table, Qminibuffer_completion_table) + (Vminibuffer_completion_predicate, Qminibuffer_completion_predicate) + (Vminibuffer_completion_confirm, Qminibuffer_completion_confirm) + (Vminibuffer_completing_file_name): Definitions moved up. + +2007-01-29 Chong Yidong <cyd@stupidchicken.com> + + * m/hp800.h: Restore, removing HP-UX support. + +2007-01-29 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * Makefile.in: Use a variable, XFT_LIBS, instead #define LIB_X11_LIB. + +2007-01-28 Richard Stallman <rms@gnu.org> + + * minibuf.c (Ftry_completion, Fall_completions) + (Fcompleting_read, Ftest_completion): + Rename arg ALIST or TABLE to COLLECTION. + +2007-01-27 Chong Yidong <cyd@stupidchicken.com> + + * unexhp9k800.c: Remove due to lack of legal papers. + + * m/sr2k.h, m/hp800.h: Remove due to dependence on above. + +2007-01-27 Eli Zaretskii <eliz@gnu.org> + + * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Doc fix. + + * minibuf.c (Fcompleting_read): Doc fix. + +2007-01-26 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_initialize): Call XftInit if HAVE_XFT. + + * Makefile.in: Use XFT_LIBS if defined. + +2007-01-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Use + BLOCK_INPUT/UNBLOCK_INPUT. + + * blockinput.h (interrupt_input_blocked): Declare volatile. + + * keyboard.c (interrupt_input_blocked): Declare volatile. + + * syssignal.h (SIGNAL_THREAD_CHECK): Use pthread_equal. + +2007-01-24 Kim F. Storm <storm@cua.dk> + + * keymap.c (describe_map): Don't consider prefix keys to be shadowed. + +2007-01-23 Juanma Barranquero <lekktu@gmail.com> + + * editfns.c (Finsert_char): Doc fix. + (Fget_internal_run_time, Fdecode_time): Fix typos in docstrings. + +2007-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag): + Don't pass keyboard modifiers to mac_store_drag_event, but put + them as kEventParamKeyModifiers Apple event parameter. + +2007-01-21 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (try_window): Revert previous change. + + * dispnew.c (update_text_area): Revert 2006-09-17 change. + Always redraw non-mode-line rows with mouse-face. + +2007-01-20 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (try_window): Clear mouse-face highlights first. + + * window.c (set_window_buffer): Revert 2006-11-22 change. + +2007-01-20 Eli Zaretskii <eliz@gnu.org> + + * .gdbinit (ppt, xtype, xmisctype, xint, xptr, xmarker, xframe) + (xbuffer, xcons, xcar, xcdr): Fix doc strings. + +2007-01-20 Chong Yidong <cyd@stupidchicken.com> + + * keyboard.c (read_key_sequence): Extract local map only if the + given position is in an accessible buffer region. + +2007-01-19 Nick Roberts <nickrob@snap.net.nz> + + * .gdbinit: Reformat documentation so that first sentence + displays properly with "help user-defined" (like apropos). + +2007-01-18 Bruno Haible <bruno@clisp.org> (tiny change) + + * epaths.in: Move PATH_DOC from local/info to local/share/info. + +2007-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]: + Create movable modal window instead of movable alert window. + (create_and_show_dialog) [!MAC_OSX]: Use DeactivateControl instead + of DisableControl. + + * macselect.c (Fmac_resume_apple_event): Set error number when + descriptor type of reply is non-null. + +2007-01-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]: + Use DisableControl for disabled items. Set default button to first + enabled one. Use icon of application in execution. + +2007-01-13 Eli Zaretskii <eliz@gnu.org> + + * process.c (Fdelete_process, Fprocess_id, sigchld_handler): + Copy PID into EMACS_INT to avoid GCC warnings. + + * fns.c (maybe_resize_hash_table): Copy new size of hash table + into EMACS_INT to avoid GCC warnings. + + * editfns.c (Fuser_uid, Fuser_real_uid): Copy values returned by + geteuid and getuid into EMACS_INT to avoid GCC warnings. + + * dired.c (Ffile_attributes): Fix last change. + +2007-01-12 Eli Zaretskii <eliz@gnu.org> + + * dired.c (Ffile_attributes): Copy some members of `struct stat' + into int's to avoid GCC warnings about limited range of short in + arguments to FIXNUM_OVERFLOW_P. + +2007-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (HAVE_DIALOGS): Define if TARGET_API_MAC_CARBON. + (mac_handle_dialog_event, install_dialog_event_handler) + (create_and_show_dialog) [TARGET_API_MAC_CARBON]: New functions. + (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN) + (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH) + (DIALOG_MAX_INNER_WIDTH, DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE) + (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH) + (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE) + (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN) + (DIALOG_ICON_TOP_MARGIN) [TARGET_API_MAC_CARBON]: New macros. + (mac_dialog) [TARGET_API_MAC_CARBON]: Remove function. + (mac_dialog_show) [TARGET_API_MAC_CARBON]: Use create_and_show_dialog. + + * macterm.c (x_free_frame_resources) [USE_CG_DRAWING]: + Call mac_prepare_for_quickdraw. + (quit_char, make_ctrl_char) [TARGET_API_MAC_CARBON]: Move externs + outside #ifdef MAC_OSX. + (mac_quit_char_key_p) [TARGET_API_MAC_CARBON]: Move function + outside #ifdef MAC_OSX. + (mac_check_bundle) [MAC_OSX]: Remove unused function. + + * macterm.h (mac_quit_char_key_p): Move extern outside #ifdef MAC_OSX. + (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Parenthesize definitions. + +2007-01-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Use pthread_equal, + block/unblock SIGIO. + +2007-01-10 Stefan Monnier <monnier@iro.umontreal.ca> + + * editfns.c (Fformat): Allow integer-format to work with floats of size + larger than most-positive-fixnum (but still smaller than MAXINT). + + * dired.c (Ffile_attributes): Use floats for large uids/gids. + +2007-01-09 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (syms_of_emacs) <path-separator>: Doc fix. + +2007-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * callproc.c (Fcall_process_region) [HAVE_MKSTEMP]: Add BLOCK_INPUT + around mkstemp. + + * image.c (XDrawLine) [MAC_OS]: Remove macro. + (XCreateGC_pixmap) [!HAVE_NTGUI]: Likewise. + (x_disable_image) [!HAVE_NTGUI]: Use XCreateGC instead of + XCreateGC_pixmap. + + * macgui.h (Display): Typedef to opaque type. + + * macmenu.c (mac_dialog_modal_filter) [MAC_OSX]: New function. + (Fx_popup_dialog) [MAC_OSX]: Use standard alert if called from + Fmessage_box, Fyes_or_no_p, or Fy_or_n_p. + [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030] (menu_quit_handler): + Use mac_quit_char_key_p. + + * macterm.c (XDrawLine): Rename from mac_draw_line_to_pixmap. + (XCreateGC): Change type of 2nd argument to void *. + (XFreeGC) [USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: + Fix last change. + (mac_to_emacs_modifiers): Change return type to int. + [USE_CARBON_EVENTS] (mac_event_to_emacs_modifiers): Likewise. + (mac_mapped_modifiers): New function. + (XTread_socket): Use it. + [USE_TSM] (mac_handle_text_input_event): Likewise. + (do_window_update) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. + (mac_quit_char_modifiers, mac_quit_char_keycode) [MAC_OSX]: + Remove variables. + (mac_determine_quit_char_modifiers, init_quit_char_handler) + [MAC_OSX]: Remove functions. + (make_ctrl_char) [MAC_OSX]: Add extern. + (mac_quit_char_key_p) [MAC_OSX]: New function. + (mac_initialize) [MAC_OSX]: Don't call init_quit_char_handler. + + * macterm.h (FONT_MAX_WIDTH): Remove unused macro. + (XCreateGC): Change type in extern. + (XDrawLine): Rename from mac_draw_line_to_pixmap. + (mac_quit_char_key_p) [MAC_OSX]: Add extern. + +2007-01-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c (init_keyboard): Initialize interrupt_input_blocked and + interrupt_input_pending. + + * xterm.h (x_display_info): New: net_supported_atoms, + nr_net_supported_atoms and net_supported_window. + + * xterm.c (last_user_time): New variable. + (handle_one_xevent): Set last_user_time from events that have Time. + Set net_supported_window to 0 when reparented. + (wm_supports): New function. + (do_ewmh_fullscreen): Use wm_supports to check for _NET_WM_STATE. + (x_term_init): Initialize net_supported_atoms, nr_net_supported_atoms + and net_supported_window. + +2007-01-05 Kim F. Storm <storm@cua.dk> + + * indent.c (Fvertical_motion): Fix it overshoot check for overlay + strings without embedded newlines immediately followed by newline. + +2007-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * editfns.c (Fformat_time_string, Fdecode_time, Fencode_time) + (Fcurrent_time_string, Fcurrent_time_zone): Add BLOCK_INPUT around + gmtime/localtime/emacs_memftimeu/mktime. + + * mac.c (Fmac_set_file_creator): Use MAC_EMACS_CREATOR_CODE + instead of 'EMAx'. + [!MAC_OSX] (sys_open, sys_creat, sys_fopen): Likewise. + + * macgui.h (struct _XGC) [USE_CG_DRAWING + && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New members cg_fore_color + and cg_back_color. + + * macmenu.c (Vshow_help_function) [TARGET_API_MAC_CARBON]: Add extern. + (restore_show_help_function, menu_target_item_handler) + [TARGET_API_MAC_CARBON]: New functions. + (install_menu_target_item_handler): New function. + (add_menu_item) [TARGET_API_MAC_CARBON]: Set help string as menu + item property. + + * macterm.c (CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR) + (CG_SET_FILL_COLOR_WITH_GC_FOREGROUND) + (CG_SET_FILL_COLOR_WITH_GC_BACKGROUND) + (CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR) + (CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND): New macros. + (mac_cg_color_space_rgb) [USE_CG_DRAWING]: New variable. + (mac_cg_color_black) [USE_CG_DRAWING + && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New variable. + (init_cg_color) [USE_CG_DRAWING]: New function. + (mac_draw_line, mac_draw_rectangle) [USE_CG_DRAWING]: Use + CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND instead of CG_SET_STROKE_COLOR. + (mac_erase_rectangle, mac_clear_window, mac_draw_cg_image) + (mac_fill_rectangle, mac_draw_image_string_cg) [USE_CG_DRAWING]: + Use CG_SET_FILL_COLOR_WITH_GC_FOREGROUND or + CG_SET_FILL_COLOR_WITH_GC_BACKGROUND instead of CG_SET_FILL_COLOR. + (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Likewise. + (XCreateGC, XFreeGC, XSetForeground, XSetBackground) [USE_CG_DRAWING + && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use gc->cg_fore_color and/or + gc->cg_back_color. + (install_drag_handler, remove_drag_handler): Make extern. + (install_menu_target_item_handler): Add extern. + (install_window_handler): Call install_menu_target_item_handler. + [MAC_OS8] (main): Use MAC_EMACS_CREATOR_CODE instead of 'EMAx'. + (mac_initialize) [USE_CG_DRAWING]: Call init_cg_color. + + * macterm.h (MAC_EMACS_CREATOR_CODE): New enumerator. + +2007-01-04 Juanma Barranquero <lekktu@gmail.com> + + * window.c (Fwindow_end): Fix use of >= operator. + +2007-01-03 Richard Stallman <rms@gnu.org> + + * window.c (Fwindow_end): Check BUF_OVERLAY_MODIFF like BUF_MODIFF. + +2007-01-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.h (xg_menu_item_cb_data_): Remove highlight_id and + unhighlight_id. + + * gtkutil.c (menuitem_highlight_callback): Invoked widget is the + parent of the menu item. Get menu item widget from event. + (xg_create_one_menuitem, xg_update_menu_item): highlight_id and + unhighlight_id has been removed. + (create_menus): Connect enter/leave-notify-event to the menu instead + of individual items. + +2006-12-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (update_frame_tool_bar): Connect create-menu-proxy with + xg_tool_bar_menu_proxy. + (xg_tool_bar_menu_proxy): New function. + (xg_tool_bar_proxy_callback): New function. + +2006-12-30 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_tool_bar_button_cb): Save last modifier on widget. + (xg_tool_bar_callback): Remove check for button. + (update_frame_tool_bar): Put an event box in the tool bar and a button + in the event box. Attach enter/leave-notify-event to the event box. + +2006-12-30 Richard Stallman <rms@gnu.org> + + * keymap.c (Fdefine_key): Doc fix. + +2006-12-29 Kim F. Storm <storm@cua.dk> + + * frame.h (struct frame): New member minimize_tool_bar_window_p. + + * xdisp.c (auto_resize_tool_bars_p): Replace with ... + (Vauto_resize_tool_bars): ... this. + (syms_of_xdisp): DEFVAR_LISP and initialize it. Update doc string + to describe new value `grow-only', and use of C-l. + (display_tool_bar_line): Only use default face for border below + toolbar if not grow-only (to get acceptable visual appearence). + Explicitly set visible_height for empty toolbar lines. + (redisplay_tool_bar): Handle `grow-only' setting. Check and clear + minimize_tool_bar_window_p flag. + + * window.c (Frecenter): Set minimize_tool_bar_window_p flag + when called without arg to redraw with minimum toolbar height. + Update doc string. + +2006-12-29 Jason Rumney <jasonr@gnu.org> + + * s/ms-w32.h (tzname): Do not define in msvc8. + (utime): Do not define in msvc8. + + * regex.c (regerror): Change parameter name err_code. + +2006-12-26 Richard Stallman <rms@gnu.org> + + * search.c (Fsearch_forward): Doc fix. + + * callint.c (Finteractive): Doc fix. + +2006-12-25 Kim F. Storm <storm@cua.dk> + + * s/ms-w32.h (BROKEN_DATAGRAM_SOCKETS): Define it. + +2006-12-23 Eli Zaretskii <eliz@gnu.org> + + * keyboard.c (some_mouse_moved): Fix last change. + +2006-12-22 Eli Zaretskii <eliz@gnu.org> + + * callproc.c (syms_of_callproc) <shell-file-name>: Doc fix. + +2006-12-22 Mark Davies <mark@mcs.vuw.ac.nz> + + * m/amdx86-64.h, m/hp800.h: Add support for NetBSD. + * m/sh3el.h: New file. + +2006-12-22 Eli Zaretskii <eliz@gnu.org> + + * makefile.w32-in (emacs, temacs): Depend on stamp_BLD instead of + $(BLD). + ($(OBJ0) $(OBJ1) $(WIN32OBJ)): New dependency on stamp_BLD. + (bootstrap-temacs): Pass $(XMFLAGS) to sub-make. + ($(OBJ0) $(OBJ1) $(WIN32OBJ)): Add lastfile.$(O) and firstfile.$(O). + (clean): Delete stamp_BLD. + +2006-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (mac_update_title_bar) [TARGET_API_MAC_CARBON]: + Call mac_update_proxy_icon also when buffer modification flag changed. + [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): Don't update alias, + but compare FSRef/FSSpec of resolved alias. + +2006-12-21 Kim F. Storm <storm@cua.dk> + + * w32.c (_sys_wait_accept): Fix handle leak. + +2006-12-20 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * sound.c: Include <alsa/asoundlib.h> if ALSA_SUBDIR_INCLUDE is + defined. + +2006-12-20 Kim F. Storm <storm@cua.dk> + + * s/ms-w32.h (BROKEN_NON_BLOCKING_CONNECT): Define it. + +2006-12-19 Juanma Barranquero <lekktu@gmail.com> + + * keyboard.c (syms_of_keyboard) <double-click-time>: + * mac.c (Fmac_code_convert_string): + * search.c (Fsearch_forward): Doc fixes. + +2006-12-19 Kim F. Storm <storm@cua.dk> + + Rework 2006-12-04 change. A SIGUSR1 (SIGUSR2) signal now generates + a sigusr1 event instead of [signal usr1] sequence, and signal events + are now supposed to be handled via special-event-map. + + * keyboard.c (kbd_buffer_store_event_hold): Undo 2006-12-04 change. + (make_lispy_event): Don't generate Qsignal prefix for code 0. + Abort if signal code is unknown. + (store_user_signal_events): Don't make Qsignal prefix (code 0). + (Qsignal): Move declaration back to process.c. + (syms_of_keyboard): Don't intern or staticpro it here. + + * process.c (Qsignal): Declare here. + (syms_of_process): Intern or staticpro it. + + * emacs.c (main): Rename user signals to sigusr1 and sigusr2. + + * .gdbinit: Pass on SIGUSR1 and SIGUSR2 to Emacs. + +2006-12-19 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (syms_of_buffer) <buffer-display-table>: + <scroll-up-aggressively, scroll-down-aggressively>: Doc fixes. + +2006-12-17 Richard Stallman <rms@gnu.org> + + * fileio.c (Fread_file_name_internal): Pass Vread_file_name_predicate + to Ffile_name_completion. + + * dired.c (file_name_completion): New arg PREDICATE. Some cleanup. + (Ffile_name_completion): New arg PREDICATE. + +2006-12-17 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (Fkill_buffer): Doc fix. + (syms_of_buffer) <kill-buffer-query-functions>: Doc fix. + +2006-12-16 Juanma Barranquero <lekktu@gmail.com> + + * minibuf.c (Ftry_completion): Check that obarray buckets are symbols. + +2006-12-16 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (w32-window-exists-p): New function. + (syms_of_w32fns): Defsubr it. + + * prefix-args.c [STDC_HEADERS]: Include stdlib.h. + +2006-12-16 Juanma Barranquero <lekktu@gmail.com> + + * minibuf.c (Ftry_completion): Use `check_obarray' if ALIST is a vector. + +2006-12-15 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (USAGE3): Clarify documentation of --color. + +2006-12-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (wakeup_from_rne_enabled_p) [TARGET_API_MAC_CARBON]: + New variable. + (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE): New macros. + [!MAC_OSX] (select): Use them. + [MAC_OSX] (select_and_poll_event, sys_select): Likewise. + (mac_wakeup_from_rne) [TARGET_API_MAC_CARBON]: New function. + + * macfns.c (mac_atsu_font_face_attributes) [USE_ATSUI]: Add extern. + (Fmac_atsu_font_face_attributes) [USE_ATSUI]: New function. + (syms_of_macfns) [USE_ATSUI]: Defsubr it. + + * macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag): + Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event. + + * macterm.c (mac_query_char_extents) [USE_ATSUI]: Don't call + ATSUGetGlyphBounds if not necessary. + (Vmac_atsu_font_table) [USE_ATSUI]: Remove variable. + (syms_of_macterm) [USE_ATSUI]: Don't defvar it. + (fm_get_style_from_font, atsu_find_font_from_family_name) + (atsu_find_font_family_name, mac_atsu_font_face_attributes) + [USE_ATSUI]: New functions. + (init_font_name_table) [USE_ATSUI]: Use atsu_find_font_family_name. + (mac_load_query_font) [USE_ATSUI]: Use atsu_find_font_from_family_name. + Don't get metrics for Latin-1 right half characters. + (mac_load_query_font): Don't load font if space width is not positive. + [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event): + Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event. + (XTread_socket): Call SelectWindow when unfocused frame is clicked. + + * macterm.h (mac_wakeup_from_rne) [TARGET_API_MAC_CARBON]: Add extern. + +2006-12-15 Kim F. Storm <storm@cua.dk> + + * keyboard.c (ignore_mouse_drag_p): New global var. + (some_mouse_moved): Return 0 if it is non-zero. + (make_lispy_event): Generate click event on mouse up if + ignore_mouse_drag_p is non-zero, even if mouse moved. + Clear ignore_mouse_drag_p on mouse down/up. + + * xdisp.c (redisplay_window): Set ignore_mouse_drag_p if tool-bar + is resized to avoid generating a mouse drag event. + +2006-12-14 Juanma Barranquero <lekktu@gmail.com> + + * w32fns.c (w32_wnd_proc): Force non-tooltip frames to respect the + minimum tracking size. Remove non-working old hack to do the same. + +2006-12-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * emacs.c (handle_user_signal): Move function to keyboard.c. + (main): Use add_user_signal for SIGUSR1 and SIGUSR2. + + * keyboard.c (make_lispy_event): Use find_user_signal_name. + (read_avail_input): Store pending user signal events. + (struct user_signal_info): New struct. + (user_signals): New variable. + (add_user_signal, store_user_signal_events) + (find_user_signal_name): New functions. + (handle_user_signal): Move function from emacs.c. Don't store + USER_SIGNAL_EVENT here, but increment number of pending signals. + + * keyboard.h (add_user_signals): Add extern. + +2006-12-11 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (syms_of_buffer) <cursor-in-non-selected-windows>: + <default-scroll-up-aggressively, default-scroll-down-aggressively>: + <line-spacing, left-margin>: Doc fixes. + + * xdisp.c (syms_of_xdisp) <mode-line-inverse-video>: Doc fix. + +2006-12-10 Kim F. Storm <storm@cua.dk> + + * xdisp.c (show_mouse_face): Never use text cursor in tool-bar. + +2006-12-10 Juanma Barranquero <lekktu@gmail.com> + + * abbrev.c (syms_of_abbrev) <last-abbrev-text>: + * buffer.c (syms_of_buffer) <default-major-mode>: + * keymap.c (Flookup_key): + * lread.c (Feval_buffer, Feval_region): + * macterm.c (syms_of_macterm) <x-use-underline-position-properties>: + <x-underline-at-descent-line, mac-emulate-three-button-mouse>: + * marker.c (Fmarker_insertion_type): + * minibuf.c (syms_of_minibuf) <minibuffer-completion-table>: + * msdos.c (syms_of_msdos) <delete-exited-processes>: + * w32term.c (syms_of_w32term) <x-use-underline-position-properties>: + <x-underline-at-descent-line>: + * xdisp.c (format-mode-line): + * xterm.c (syms_of_xterm) <x-use-underline-position-properties>: + <x-underline-at-descent-line>: Doc fixes. + +2006-12-10 Andreas Schwab <schwab@suse.de> + + * systime.h (EMACS_GET_TIME): Remove check for + HAVE_STRUCT_TIMEZONE which is never defined. + +2006-12-10 Alan Mackenzie <acm@muc.de> + + * syntax.c (Fpartial_parse_sexp): Correct Docco: Elt 8 of the + result is now neither the last elt nor optional for OLDSTATE. + +2006-12-09 Eli Zaretskii <eliz@gnu.org> + + * process.c (Fsignal_process): Doc fix. Use XFLOAT_DATA to + extract the process ID from a Lisp float. + +2006-12-09 Chong Yidong <cyd@stupidchicken.com> + + * xterm.c (XTframe_raise_lower): Comment out _NET_ACTIVE_WINDOW code. + +2006-12-08 Eli Zaretskii <eliz@gnu.org> + + * frame.h (PIX_TYPE): Redefine as `unsigned long', for 64-bit + platforms where long is 64-bit. + + * msdos.h (PIX_TYPE): Redefine as `unsigned long'. + +2006-12-08 NAKAJI Hiroyuki <nakaji@jp.freebsd.org> (tiny change) + + * m/amdx86-64.h: Add support for Solaris 10 on x86-64. + +2006-12-08 Kenichi Handa <handa@m17n.org> + + * xterm.c (x_query_font): Use xstricmp instead off strcasecmp. + +2006-12-08 Juanma Barranquero <lekktu@gmail.com> + + * emacs.c (syms_of_emacs) <system-type>: Doc fix. + +2006-12-07 Kim F. Storm <storm@cua.dk> + + * process.c (parse_signal): Use xstricmp instead of strcasecmp. + (Fsignal_process): Don't use strncasecmp. + +2006-12-05 Glenn Morris <rgm@gnu.org> + + * abbrev.c (Qforce): New Lisp_Object. + (Fdefine_abbrev): Do not overwrite non-system abbrevs with system + abbrevs, unless 'force is applied. + (syms_of_abbrev): Add Qforce. + +2006-12-04 Kim F. Storm <storm@cua.dk> + + * process.c (parse_signal): Rename macro from handle_signal. + (Fsignal_process): Also accept lower-case variants of signal + names (to align with signal names generated by Emacs itself). + + * emacs.c (handle_USR1_signal, handle_USR2_signal): Replace by... + (handle_user_signal): ... this, which generates two USER_SIGNAL_EVENTs + first with code == 0 [signal] and one with code == sig number. + (main): Use it as handler for SIGUR1 and SIGUSR2. + + * keyboard.c (kbd_buffer_store_event_hold): Don't throw-on-input + if first event in [signal xxx] sequence. + (lispy_user_signals, Qusr1_signal, Qusr2_signal): Remove. + (syms_of_keyboard): Don't intern and staticpro them. + (Qsignal): Declare here. + (syms_of_keyboard): Intern and staticpro it. + (make_lispy_event): Use it. Intern symbols on the fly for other + USER_SIGNAL_EVENTs events. + + * process.c (Qsignal): Declare extern. + (syms_of_process): Don't intern/staticpro it here. + + * process.c (read_process_output): Abort if carryover < 0. + +2006-12-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * config.in: Regenerate. + + * fileio.c [__NetBSD__]: Don't define `unix'. + (Funix_sync, syms_of_fileio): Use `#ifdef HAVE_SYNC' instead of + `#ifdef unix'. + +2006-12-04 Glenn Morris <rgm@gnu.org> + + * Makefile.in (version): New variable, set by configure. + (bootstrapclean, mostlyclean): Also remove emacs-${version}. + +2006-12-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (update_frame_tool_bar): Handle modifying a toolbar item + without an image. + +2006-12-01 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (Fw32_shell_execute): Doc fix. + +2006-11-30 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (move_it_to): Correctly count tab glyphs for continued + lines ending in tab. + +2006-11-30 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_raise_frame): Move setting of _NET_ACTIVE_WINDOW + property ... + (XTframe_raise_lower): ... to here. + +2006-11-30 Kenichi Handa <handa@m17n.org> + + * regex.c (regex_compile): Fix previous change. + +2006-11-29 Juanma Barranquero <lekktu@gmail.com> + + * sound.c (Fplay_sound_internal): Remove spurious newline in docstring. + +2006-11-28 Chong Yidong <cyd@stupidchicken.com> + + * config.in: Regenerate. + +2006-11-28 Kenichi Handa <handa@m17n.org> + + * regex.c (regex_compile): Don't call SET_LIST_BIT with a + multibyte character. + +2006-11-27 Chong Yidong <cyd@stupidchicken.com> + + * s/aix4-2.h: Undefine _NO_PROTO. Suggested by Joe Buehler. + +2006-11-27 Kim F. Storm <storm@cua.dk> + + * window.c (set_window_buffer): Refactor recent changes. + +2006-11-27 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_msg_worker): Declare correctly. + (w32_initialize): Don't cast w32_msg_worker. + + * w32fns.c (w32_msg_worker): Define as WINAPI and arg as void pointer. + +2006-11-26 Chong Yidong <cyd@stupidchicken.com> + + * m/amdx86-64.h: Look for standard libs in /usr/lib64 only if that + directory exists. + +2006-11-25 Eli Zaretskii <eliz@gnu.org> + + * w16select.c (Fw16_set_clipboard_data): Fix the call to sit_for + as per the calling sequence change on 2006-07-11. + +2006-11-25 Chong Yidong <cyd@stupidchicken.com> + + * window.c (set_window_buffer): Use BLOCK_INPUT. + +2006-11-24 Juanma Barranquero <lekktu@gmail.com> + + * fns.c (substring_both): Add missing address operator. + +2006-11-24 Stefan Monnier <monnier@iro.umontreal.ca> + + * fns.c: Use AREF/ASIZE macros. + (concat): Provide the full ANSI prototype. + +2006-11-24 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix. + +2006-11-23 William Smith <William.Smith@global360.com> (tiny change) + + * strftime.c (HAVE_SYS__MBSTATE_T_H): Fix typo. + +2006-11-22 Alfred M. Szmidt <ams@gnu.org> (tiny change) + + * s/openbsd.h (LD_SWITCH_SYSTEM): Remove /usr/pkg/lib and + /usr/pkg/lib from the library search path. + (LD_SWITCH_X_DEFAULT): New macro. + +2006-11-22 Chong Yidong <cyd@stupidchicken.com> + + * window.c (set_window_buffer): Clear mouse highlight if it is in + this window. + +2006-11-21 Chong Yidong <cyd@stupidchicken.com> + + * xfaces.c (realize_default_face): Check if the default font name + exists on this display before trying to use it. + +2006-11-21 Richard Stallman <rms@gnu.org> + + * fileio.c: Break line before &&, not after. + +2006-11-20 Eli Zaretskii <eliz@gnu.org> + + * fns.c (concat) [!__GNUC__]: Add prototype. + +2006-11-20 Kenichi Handa <handa@m17n.org> + + * fileio.c (Fread_file_name_internal): Use SBYTES (not SCHARS) to + check the tailing slash of a filename. + +2006-11-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change) + + * indent.c (Fvertical_motion): Include composition in the case of + overshoot expected. + +2006-11-19 Andreas Schwab <schwab@gnu.org> + + * xfaces.c (Fdisplay_supports_face_attributes_p): Initialize supports. + + * xmenu.c (Fx_popup_menu): Initialize selection. + +2006-11-18 Andreas Schwab <schwab@suse.de> + + * s/gnu-linux.h (GC_MARK_SECONDARY_STACK): Update call to mark_memory. + +2006-11-17 Tetsurou Okazaki <okazaki@be.to> (tiny change) + + * xterm.c (do_ewmh_fullscreen): Declare variable before XSETFRAME + to avoid gcc 2.96 error. + +2006-11-17 NIIMI Satoshi <sa2c@sa2c.net> (tiny change) + + * search.c (simple_search): In the loop of backward searching, + check also the byte position against the limit. + +2006-11-14 Romain Francoise <romain@orebokech.com> + + * minibuf.c (Fcompleting_read): Fix typo in docstring. + +2006-11-14 Kenichi Handa <handa@m17n.org> + + * coding.c (code_convert_region): Initialize coding->heading_ascii. + (decode_coding_string, code_convert_region): Likewise. + +2006-11-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * config.in: Regenerate. + + * macfns.c (Fx_display_mm_height, Fx_display_mm_width) + [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 + && MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if + CGDisplayScreenSize is available. + + * macmenu.c (menu_quit_handler, install_menu_quit_handler): + Replace `#ifdef HAVE_CANCELMENUTRACKING' with + `#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030'. + (install_menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 + && MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if + CancelMenuTracking is available. + + * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg) + [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030 + && MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if + CGContextShowGlyphsWithAdvances is available. + +2006-11-13 Jason Rumney <jasonr@gnu.org> + + * s/ms-w32.h: Define HAVE_INET_SOCKETS. + +2006-11-13 Nozomu Ando <nand@mac.com> + + * alloc.c (mark_memory): New argument OFFSET. All uses changed. + Fix address calculations for case END < START. + (mark_stack): Impose Lisp_Object alignment on jmp_buf. + +2006-11-12 Juanma Barranquero <lekktu@gmail.com> + + * coding.c (Fencode_sjis_char, Fencode_big5_char): + Improve argument/docstring consistency. + + * editfns.c (Fmessage): Doc fixes. + + * process.c (syms_of_process) <delete-exited-processes>: Doc fix. + +2006-11-12 Chong Yidong <cyd@stupidchicken.com> + + * xmenu.c (popup_activated): Define outside HAVE_MENUS. + +2006-11-12 Romain Francoise <romain@orebokech.com> + + * xselect.c (selection-coding-system): Fix docstring. + +2006-11-12 Juanma Barranquero <lekktu@gmail.com> + + * category.c (Fchar_category_set): Improve arg/docstring consistency. + + * data.c (Flogxor): + * fns.c (Frandom, Flength, Fsafe_length, Fstring_bytes) + (Fstring_equal, Fcompare_strings, Fstring_lessp, Fcopy_sequence) + (Fstring_make_unibyte): Fix typos in docstrings. + +2006-11-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h (struct x_display_info): Fix indentation. + + * xterm.c (do_ewmh_fullscreen, XTfullscreen_hook): New functions. + (x_check_fullscreen): Call do_ewmh_fullscreen. + (x_initialize): Set fullscreen_hook to XTfullscreen_hook. + + * frame.c (x_set_fullscreen): Call fullscreen_hook if set. + + * term.c: Define fullscreen_hook. + (syms_of_term): Initialize fullscreen_hook to NULL. + + * termhooks.h: Add fullscreen_hook. + +2006-11-08 Juanma Barranquero <lekktu@gmail.com> + + * bytecode.c (Fbyte_code): + * data.c (Fmakunbound): Use SYMBOL_CONSTANT_P macro. + +2006-11-06 Juanma Barranquero <lekktu@gmail.com> + + * lread.c (syms_of_lread): + * xsmfns.c (syms_of_xsmfns): Fix typo in docstring. + +2006-11-06 Martin Rudalics <rudalics@gmx.at> + + * macmenu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS. + + * w32menu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS. + Return nil if building without menus. + + * xmenu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS. + Return nil if building without menus. + +2006-11-05 Mark Davies <mark@mcs.vuw.ac.nz> (tiny change) + + * s/netbsd.h (POSIX_SIGNALS): Define. + +2006-11-05 Martin Rudalics <rudalics@gmx.at> + + * macmenu.c (Fmenu_or_popup_active_p): New function. + (syms_of_macmenu): Defsubr it. + + * w32menu.c (Fmenu_or_popup_active_p): New function. + (syms_of_w32menu): Defsubr it. + (popup_activated_flag, popup_activated): Remove. + + * xdisp.c (note_mouse_highlight) [HAVE_NTGUI]: Don't bother to + check popup_activated. + + * xmenu.c (Fmenu_or_popup_active_p): New function. + (syms_of_xmenu): Defsubr it. + +2006-11-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * unexmacosx.c (malloc_cookie): Remove unused variable. + (region_list_head, region_list_tail, lca, nlc, infile_lc_highest_addr) + (text_seg_lowest_offset, mh, curr_header_offset, infd, outfd) + (emacs_zone, data_segment_old_fileoff, data_segment_scp) + (num_unexec_regions, unexec_regions): Make variables static. + (print_regions, find_emacs_zone_regions): Make static. + (unexec_region_info): New typedef. + (unexec_regions): Change type from vm_range_t[] to unexec_region_info[]. + All uses changed. + (unexec_regions_recorder): Subtract size of trailing null pages from + filesize. Show filesize. + (unexec_regions_merge): Don't merge if null pages of preceding region + is not too small. Use long format in printf. + (copy_segment, copy_data_segment): Show filesize. + (copy_data_segment): Write filesize bytes of region data. + Adjust filesize in segment command accordingly. + (dump_it): Use long format in printf. + +2006-11-05 Juanma Barranquero <lekktu@gmail.com> + + * dosfns.c (Finsert_startup_screen): + * fns.c (Ffeaturep, syms_of_fns): + * frame.c (syms_of_frame): Fix typos in docstrings. + + * unexcw.c (unexec): Fix typo in output message. + +2006-11-04 Ralf Angeli <angeli@caeruleus.net> + + * w32fns.c (w32_createwindow): Remove code for handling -geometry + command line option and `initial-frame-alist' which is superfluous + after the last change to `w32_createwindow'. + +2006-11-04 Slawomir Nowaczyk <slawek@cs.lth.se> (tiny change) + + * w32proc.c (sys_wait): Only wait for processes with fd<0. + Others should be handled by sys_select instead. Fixes problems + with (progn (start-process "" nil "ls") (call-process "ls")). + +2006-11-04 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change) + + * xmenu.c (Fmenu_bar_open): Declare variable before BLOCK_INPUT to + avoid gcc 2.95 error. + +2006-11-04 Chong Yidong <cyd@stupidchicken.com> + + * gtkutil.c (update_frame_tool_bar): If icon image is invalid and + wicon is null, insert an empty button. + +2006-11-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_raise_frame): Send _NET_ACTIVE_WINDOW when raising the + window. + +2006-11-02 Juanma Barranquero <lekktu@gmail.com> + + * emacs.c (Fkill_emacs): Fix typo in docstring. + +2006-11-02 Nozomu Ando <nand@mac.com> + + * unexmacosx.c (mach_header, segment_command, vm_region, section) + [_LP64]: New defines. + (VM_REGION_BASIC_INFO_COUNT, VM_REGION_BASIC_INFO, LC_SEGMENT) + (MH_MAGIC) [_LP64]: Redefine. + (delta): Remove variable. + (curr_file_offset, pagesize): New variables. + (ROUNDUP_TO_PAGE_BOUNDARY): New macro. + (data_segment_old_fileoff): Initialize explicitly. + (print_region, unexec_regions_recorder, print_load_command_name) + (copy_segment, copy_data_segment): Use long format in printf. + (MAX_UNEXEC_REGIONS): Increase to 400. + (unexec_regions_recorder): Don't warn too many regions here. + (find_emacs_zone_regions): Warn too many regions here. + (print_load_command_name) [_LP64]: Show correct load command name. + (copy_segment, copy_data_segment): Use variable `curr_file_offset'. + Show starting virtual memory address. Don't show ending file offset. + (copy_symtab, copy_dysymtab, copy_twolevelhints): New argument DELTA. + (dump_it): Use new local variable `linkedit_delta' and pass to them. + Error if trying to handle multiple DATA segments. + (unexec): Initialize variable `pagesize'. + +2006-11-01 Juanma Barranquero <lekktu@gmail.com> + + * eval.c (Fcatch): Doc fix. + +2006-10-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c [MAC_OS] (image_load_qt_1, xpm_scan, xpm_make_color_table_v) + (xpm_put_color_table_v, xpm_get_color_table_v, xpm_make_color_table_h) + (xpm_put_color_table_h, xpm_get_color_table_h, xpm_str_to_color_key) + (xpm_load_image): Add const qualifier to arguments. + [MAC_OS] (xpm_color_key_strings): Make static const. + + * mac.c (create_apple_event_from_event_ref) + (create_apple_event_from_drag_ref, skip_white_space, parse_comment) + (parse_include_file, parse_binding, parse_component) + (parse_resource_name, parse_value, parse_resource_line) + (xrm_merge_string_database, xrm_get_resource) + (xrm_get_preference_database): Add const qualifier to arguments. + [MAC_OSX] (sys_select): Make variable `context' static const. + + * macfns.c (mac_color_map): Make static const. + (mac_color_map_lookup): Add const qualifier to arguments. + + * macmenu.c (install_menu_quit_handler): Make variable `typesList' + static const. + (name_is_separator): Add const qualifier to arguments. + + * macselect.c (init_service_handler): Make variable `specs' static + const. + + * macterm.c (mac_create_bitmap_from_bitmap_data): Make variable + `swap_nibbles' static const. + (atsu_get_text_layout_with_text_ptr): Make variables `lengths', + `tags', `sizes', `values' static const. + (mac_draw_string_common): Make variables `context' static. + Make variables `tags', `sizes', and `values' static const. + (pcm_get_status, x_detect_focus_change, x_scroll_bar_handle_click) + (xlfdpat_create, xlfdpat_block_match_1, xlfdpat_match) + (mac_to_x_fontname, parse_x_font_name, add_mac_font_name) + (mac_do_list_fonts, is_fully_specified_xlfd, do_grow_window) + (mac_store_event_ref_as_apple_event, mac_make_rdb): Add const + qualifier to arguments. + (xlfd_scalable_fields, keycode_to_xkeysym_table) + (fn_keycode_to_keycode_table): Make static const. + (mac_load_query_font): Make variables `tags', `sizes', `values', + `types', and `selectors' static const. + (mac_handle_command_event, mac_handle_window_event): + Make variables `names' and `types' static const. + (init_command_handler, install_window_handler): Make variables + `specs*' static const. + (mac_handle_font_event, mac_handle_text_input_event) + (mac_store_service_event): Make variables `names' and `types' + const. Make variables `names_*' and `types_*' static const. + + * macterm.h (create_apple_event_from_event_ref) + (create_apple_event_from_drag_ref, xrm_merge_string_database) + (xrm_get_resource, xrm_get_preference_database): Add const + qualifier to arguments in externs. + +2006-10-31 Kenichi Handa <handa@m17n.org> + + * xfns.c (xic_create_xfontset): Fix previous change. + +2006-10-30 Chong Yidong <cyd@stupidchicken.com> + + * s/openbsd.h (LD_SWITCH_SYSTEM): Add /usr/pkg/lib and + /usr/pkg/lib to library search path. + +2006-10-29 Mark Davies <mark@mcs.vuw.ac.nz> (tiny change) + + * ralloc.c (relinquish): Use a long for excess space counter to + handle 64-bit case correctly. + +2006-10-29 Jeramey Crawford <jeramey@jeramey.com> + + * m/amdx86-64.h: Add defines for OpenBSD x86-64. + +2006-10-29 Juanma Barranquero <lekktu@gmail.com> + + * window.c (Fdisplay_buffer): Fix typo in docstring. + +2006-10-27 Ben North <ben@redfrontdoor.org> (tiny change) + + * w32term.c (x_draw_glyph_string_foreground): Set background mode + to TRANSPARENT before using overstrike to simulate bold faces. + + * xfaces.c (best_matching_font): Fix logic to decide whether to + use overstriking to simulate bold-face (it was reversed). + +2006-10-23 Kim F. Storm <storm@cua.dk> + + * xdisp.c (remember_mouse_glyph): Do nothing if glyphs are not + initialized. + + * keyboard.c (read_char): Make an element (t . EVENT) in + unread-command-events add EVENT to the current command's key sequence. + (syms_of_keyboard) <unread-command-events>: Update doc. + +2006-10-21 Richard Stallman <rms@gnu.org> + + * minibuf.c (Vread_expression_map): Define here. + (Qread_expression_history): New variable. + (syms_of_minibuf): Initialize them. + (Feval_minibuffer): Use Vread_expression_map and + Qread_expression_history. + +2006-10-21 Kenichi Handa <handa@m17n.org> + + * xfns.c (xic_create_fontsetname): If ADSTYLE field is not a wild + card, change it to "*". + (xic_create_xfontset): Call XCreateFontSet for each single + fontname in fontsetname. + +2006-10-19 Chong Yidong <cyd@stupidchicken.com> + + * callint.c (callint_message): Convert to a Lisp string. + (syms_of_callint): Initialize it. + (callint_message_size): Var deleted. + (Fcall_interactively): Use Fformat instead of doprnt to construct + prompt string. + +2006-10-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * xdisp.c (display_mode_line): Clear enabled_p flag on mode-line row. + +2006-10-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (Vmac_carbon_version_string) [TARGET_API_MAC_CARBON]: + New variable. + (syms_of_macfns) [TARGET_API_MAC_CARBON]: Defvar it. + +2006-10-19 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xselect.c (x_handle_selection_request): If the converted_selection + is nil or XCDR (converted_selection) is nil, decline the request. + +2006-10-16 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (get_utf8_string): Remove warnings with casts. + (xg_tool_bar_button_cb): Ditto. + (xg_tool_bar_callback): Ditto. + +2006-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * dispnew.c (adjust_frame_glyphs_for_frame_redisplay): Remove unused + variable ch_dim. + (adjust_frame_glyphs_for_window_redisplay): Likewise. Don't allocate + menu bar window matrices on non-X systems. + + * mac.c (Fmac_get_preference, Fmac_code_convert_string): Add GCPROs. + + * macterm.c (mac_query_char_extents): Don't return glyph ID if layout + adjustment is needed. + (mac_load_query_font): Check if width and height are positive. + +2006-10-14 Richard Stallman <rms@gnu.org> + + * sysdep.c (init_sys_modes): Delete DEFVAR_LISP in the wrong place. + +2006-10-13 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (decode_mode_spec): Ignore %c and %l constructs in frame + title. + +2006-10-12 Chong Yidong <cyd@stupidchicken.com> + + * keymap.c (Fkey_binding): Check Lisp_Object types before doing + XCAR and XINT. + +2006-10-12 Romain Francoise <romain@orebokech.com> + + * image.c (xbm_read_bitmap_data): Delete extra semicolon. + +2006-10-10 Stefan Monnier <monnier@iro.umontreal.ca> + + * eval.c: Include xterm.h for x_fully_uncatch_errors and friends. + + * dispextern.h: Declare x_create_bitmap_from_xpm_data. + + * xterm.c (x_check_expected_move): Remove unused var `count'. + + * xmenu.c (syms_of_xmenu): Use Ffset rather than Fdefalias, since + Fdefalias is not declared in any *.h file. + +2006-10-09 Chong Yidong <cyd@stupidchicken.com> + + * dispnew.c (sit_for): Sit forever if TIMEOUT is t. + + * keyboard.c (command_loop_1): Handle non-number values of + `minibuffer-message-timeout'. + (Fexecute_extended_command): Fix typo. + + * minibuf.c (temp_echo_area_glyphs): Sit for + `minibuffer-message-timeout' seconds. + +2006-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_draw_image_string, mac_draw_image_string_16): + Add argument OVERSTRIKE_P. + (mac_draw_string_common, mac_draw_image_string_cg): Likewise. + Support overstrike. + (mac_draw_string, mac_draw_string_16): Remove functions. + (x_draw_glyph_string_foreground): Use overstrike when needed. + (x_draw_composite_glyph_string_foreground): Likewise. + Use mac_draw_image_string_16 instead of mac_draw_string_16. + (mac_load_query_font): Rename from XLoadQueryFont. Take argument + F instead of DPY. All uses changed. Don't save/restore font. + +2006-10-07 Ralf Angeli <angeli@caeruleus.net> + + * w32fns.c (w32_createwindow): Honour left and top positions if + supplied explicitly. + +2006-10-06 Kim F. Storm <storm@cua.dk> + + * xdisp.c (pos_visible_p): Fix value when EOB is visible. + +2006-10-05 Chong Yidong <cyd@stupidchicken.com> + + * frame.c (Qinhibit_face_set_after_frame_default): New var. + (syms_of_frame): Initialize it. + (x_set_frame_parameters): Avoid resetting :font attributes to the + new-frame defaults. + +2006-10-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * lisp.h (clear_regexp_cache): Declare. + + * search.c (compile_pattern): Only check `cp->syntax_table' if needed. + (compile_pattern_1): Remember `used_syntax' in `cp->syntax_table'. + (clear_regexp_cache): Only flush those regexps which depend on + a syntax-table. + + * regex.c (regex_compile): Set the new `used_syntax' bit. + + * regex.h: Remove file local variables. + (struct re_pattern_buffer): New field `used_syntax'. + +2006-10-03 Kim F. Storm <storm@cua.dk> + + * process.c (list_processes_1): Run sentinels before removing dead + processes. Also remove `closed' network connections. + +2006-10-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * xdisp.c (handle_fontified_prop): Don't fontify at EOB. + +2006-09-30 Eli Zaretskii <eliz@gnu.org> + + * config.in: Regenerated. + +2006-09-29 Juri Linkov <juri@jurta.org> + + * buffer.c (syms_of_buffer): Reorder coding systems in the + docstring of %z to the real order displayed in the modeline. + +2006-09-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (Fdefine_key): Yet another int/Lisp_Object mixup (YAILOM). + +2006-09-26 Chong Yidong <cyd@stupidchicken.com> + + * indent.c (Fvertical_motion): Do move back if the Lisp string + being displayed contains newlines. + +2006-09-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_compute_glyph_string_overhangs, XLoadQueryFont) + [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw before QDTextBounds. + +2006-09-26 Kenichi Handa <handa@m17n.org> + + * keymap.c (Fsingle_key_description): For an invalid char, return + "Invalid char code NNNNN". + +2006-09-25 Chong Yidong <cyd@stupidchicken.com> + + * callint.c (Fcall_interactively): Doc fix. + +2006-09-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (x_underline_at_descent_line): New variable. + (syms_of_macterm): DEFVAR_BOOL it. + (x_draw_glyph_string): Use it. + (XLoadQueryFont): Calculate min_bounds.descent and max_bounds.descent. + +2006-09-25 Kenichi Handa <handa@m17n.org> + + * keymap.c (Fsingle_key_description): Return unique names for + generic characters. + +2006-09-24 Richard Stallman <rms@gnu.org> + + * search.c (compile_pattern_1): Don't BLOCK_INPUT. + +2006-09-24 Eli Zaretskii <eliz@gnu.org> + + * makefile.w32-in ($(BLD)/fns.$(O), $(BLD)/w32proc.$(O)): + Depend on nt/inc/langinfo.h and nt/inc/nl_types.h. + + * w32proc.c (nl_langinfo): New function. + + * w32fns.c (w32-pass-alt-to-system, w32-alt-is-meta) + (w32-pass-lwindow-to-system, w32-enable-num-lock) + (w32-enable-caps-lock, w32-scroll-lock-modifier) + (w32-lwindow-modifier, w32-rwindow-modifier) + (w32-apps-modifier, w32-mouse-button-tolerance): Doc fix. + +2006-09-23 Juanma Barranquero <lekktu@gmail.com> + + * minibuf.c (Finternal_complete_buffer, Fread_minibuffer) + (Fdisplay_completion_list): Fix typos in docstrings. + +2006-09-23 Romain Francoise <romain@orebokech.com> + + * s/gnu-linux.h (MAIL_USE_FLOCK): Check for HAVE_LIBLOCKFILE too. + +2006-09-23 Kenichi Handa <handa@m17n.org> + + * keymap.c (Fmap_keymap): Docstring mentions about generic character. + +2006-09-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * regex.c (analyse_first): For eight-bit-control chars, mark both the + char's value and its leading byte in the fastmap. + (re_search_2): When fast-scanning without translation, be careful to + check that we only match the leading byte of a multibyte char. + + * charset.h (PREV_CHAR_BOUNDARY): Make it work from within a char's + byte sequence. + (AT_CHAR_BOUNDARY): New macro. + +2006-09-22 Kenichi Handa <handa@m17n.org> + + * fns.c (optimize_sub_char_table): Don't optimize a sub-char-table + whose default value is non-nil. + +2006-09-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_file_with_chooser): Only show C-l help for + Gtk+ versions < 2.10. + + * xfns.c (syms_of_xfns): Fix typo in help text for + x-gtk-file-dialog-help-text. + +2006-09-21 Kim F. Storm <storm@cua.dk> + + * fns.c (Fmemq): Refill doc string. + (Fmemql): New defun, like memq but using eql. + (syms_of_fns): Defsubr it. + +2006-09-20 Kim F. Storm <storm@cua.dk> + + * xdisp.c (pos_visible_p): CHARPOS < 0 means return info for + last visible glyph in window. + + * window.c (Fset_window_hscroll, Fwindow_line_height): + Doc fix. Use "off-window" instead of "off-screen". + (Fpos_visible_in_window_p): Likewise. + If POS is t, return info for last visible glyph in window. + +2006-09-19 Chong Yidong <cyd@stupidchicken.com> + + * search.c (struct regexp_cache): New entry syntax_table. + (compile_pattern_1): Set it. + (syms_of_search): Initialize it. + (compile_pattern): Require the syntax_table entry of the cache + element to match the current syntax table entry. + +2006-09-19 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (Fwindow_end): Fix recent change. + +2006-09-19 Kim F. Storm <storm@cua.dk> + + * window.c (Fset_window_hscroll, Fpos_visible_in_window_p): + Doc fix. Use "off-screen" instead of "invisible". + (Fwindow_line_height): Make line numbers 0-based. Make line arg + optional; if nil, use current cursor row. Handle text terminals + properly. Return nil if non-interactive or pseudo-window. + +2006-09-19 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c: Include alloca.h if available. + (Fkey_binding): Only use AREF after checking it's a vector. + Remove unused var `window'. + +2006-09-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * emacs.c (shut_down_emacs) [!subprocesses]: Don't set + inhibit_sentinels. + + * mac.c [!MAC_OSX] (select): Fix argument name. + + * macmenu.c (enum mac_menu_kind, min_menu_id): New enumerator and + menu ID for Apple menu. + (menubar_selection_callback): Remove function. + (find_and_call_menu_selection): New function from xmenu.c. + (x_activate_menubar): Use it. + (set_frame_menubar): Don't use f->output_data.mac->menubar_active. + + * macterm.c (menubar_selection_callback): Remove extern. + (M_APPLE): Change to 234. + (do_apple_menu) [!TARGET_API_MAC_CARBON]: Make non-static. + (do_menu_choice): Remove function. + + * macterm.h (struct mac_output): Remove member menubar_active. + (do_menu_choice): Remove extern. + (do_apple_menu) [!TARGET_API_MAC_CARBON]: Add extern. + +2006-09-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (syms_of_xfns): Rename x_gtk_show_chooser_help_text to + x_gtk_file_dialog_help_text. + + * gtkutil.c (xg_uses_old_file_dialog): Rename x-use-old-gtk-file-dialog + to x-gtk-use-old-file-dialog. + (xg_get_file_with_chooser): Rename x_gtk_show_chooser_help_text to + x_gtk_file_dialog_help_text. + + * xfns.c (syms_of_xfns): Ditto. + +2006-09-18 Kim F. Storm <storm@cua.dk> + + * window.c (Fwindow_line_visibility): Remove. + (Fwindow_line_height): New defun replacing it. + (syms_of_window): Defsubr it. + +2006-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (SELECT_USE_CFSOCKET) [MAC_OSX]: Set default to 1. + [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Fix pointer type. + +2006-09-17 Jay Belanger <belanger@truman.edu> + + * gmalloc.c: + * md5.c: + * md5.h: + * strftime.c: Replace "GNU Library General Public License" by "GNU + General Public License" throughout. + +2006-09-17 Kim F. Storm <storm@cua.dk> + + * dispnew.c (update_text_area): Undo 2000-07-18 change. + Always redrawing whole row if line has mouse-face in it causes + excessive flickering of the mode line. + +2006-09-17 Chong Yidong <cyd@stupidchicken.com> + + * search.c (clear_regexp_cache): New function. + + * syntax.c (Fmodify_syntax_entry): Clear regexp cache. + +2006-09-16 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_file_with_chooser): + Check x-gtk-show-chooser-help-text before adding the help text. + + * xfns.c (syms_of_xfns): New variable: x-gtk-show-chooser-help-text. + + * gtkutil.c (get_utf8_string): Try harder to convert to UTF8. Gtk+ + will simply crash if we fail. + +2006-09-16 Richard Stallman <rms@gnu.org> + + * regex.c (re_compile_pattern): Set gl_state.current_syntax_table. + +2006-09-15 Kim F. Storm <storm@cua.dk> + + * window.c (Fwindow_line_visibility): New defun for line-move-partial. + (syms_of_window): Defsubr it. + (Fwindow_end): Use window's buffer rather than current buffer. + +2006-09-15 Jay Belanger <belanger@truman.edu> + + * COPYING: Replace "Library Public License" by "Lesser Public + License" throughout. + +2006-09-15 David Kastrup <dak@gnu.org> + + * Makefile.in (keymap.o): Add "keymap.h" and "window.h" dependencies. + + * keymap.c: include "window.h". + (Fcommand_remapping): New optional POSITION argument. + (Fkey_binding): New optional POSITION argument. Completely rework + handling of mouse clicks to get the same order of keymaps as + `read-key-sequence' and heed POSITION. Also temporarily switch + buffers to location of mouse click and back. + + * keyboard.c (command_loop_1): Adjust call of `Fcommand_remapping' + for additional argument. + (parse_menu_item): Adjust call of `Fkey_binding' for additional + argument. + (read_key_sequence): If there are both `local-map' and `keymap' + text properties at some buffer position, heed both. + + * keymap.h: Declare additional optional arguments of + `Fcommand_remapping' and `Fkey_binding'. + +2006-09-15 Juanma Barranquero <lekktu@gmail.com> + + * indent.c (Fcurrent_column, Findent_to): Fix typos in docstring. + +2006-09-14 Andreas Schwab <schwab@suse.de> + + * print.c: Whitespace fixup. + +2006-09-14 Kim F. Storm <storm@cua.dk> + + * xdisp.c (produce_image_glyph): Automatically crop wide images at + right window edge so we can draw the cursor on the same row to + avoid confusing redisplay by placing the cursor outside the visible + window area. + +2006-09-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * xterm.c (x_initialize): Don't install Xt event timer here. + (x_timeout_atimer_activated_flag): New var. + (x_activate_timeout_atimer): New function to install Xt timer. + (x_send_scroll_bar_event, x_process_timeouts): Use it. + + * xmenu.c (x_menu_set_in_use, popup_activate_callback) + (create_and_show_popup_menu, create_and_show_dialog): Use it. + + * xterm.h (x_activate_timeout_atimer): Add prototype. + +2006-09-13 Richard Stallman <rms@gnu.org> + + * print.c (print_string): When printcharfun is t, + copy string contents and call strout on the copy. + + * keyboard.c (read_char): If end_time specified, don't put the + event into this_command_keys. + (read_key_sequence): If Voverriding_terminal_local_map is specified, + don't check Voverriding_local_map at all. + +2006-09-12 Stefan Monnier <monnier@iro.umontreal.ca> + + * textprop.c (Fnext_property_change, Fnext_single_property_change) + (Fprevious_property_change, Fprevious_single_property_change): + Avoid changing limit, so we can correctly catch the case where the + property is constant up to limit. + +2006-09-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (mac_window) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: + * macterm.c (XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: + Undo 2006-09-08 change. + +2006-09-11 Chong Yidong <cyd@stupidchicken.com> + + * keymap.c (Fkey_binding): Use string position for string objects. + +2006-09-11 Kim F. Storm <storm@cua.dk> + + * keymap.c (Fkey_binding): Fix last change. + + * editfns.c (Fmessage): Recommend using (message "%s" ...). + +2006-09-10 Chong Yidong <cyd@stupidchicken.com> + + * keymap.c (Fkey_binding): Check for local keymap for mouse click + events. + +2006-09-10 Kim F. Storm <storm@cua.dk> + + * keyboard.c (Finput_pending_p): Check Vunread_input_method_events + and Vunread_post_input_method_events. + + * dispnew.c (Fredisplay): Document return value. + +2006-09-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (Fx_close_connection): Call xg_display_close when USE_GTK. + + * gtkutil.c (xg_display_close): Always change default display if needed, + check for < Gtk+ version 2.10 before calling gdk_display_close. + +2006-09-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c [MAC_OSX] (sys_select): Check argument `nfds' more rigidly. + Make variable `ofds' static. Remove variable `maxfd'. + + * macfns.c (Fx_file_dialog): Remove unused variable `f'. + Call check_mac. + + * macmenu.c (Vmenu_updating_frame, syms_of_macmenu): + * w32menu.c (Vmenu_updating_frame, syms_of_w32menu): + Apply 2006-09-08 change for xmenu.c. + + * xfns.c (Fx_file_dialog): Call check_x. + +2006-09-10 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_window_cursor_type): Use hollow cursor on + non-transparent images. + +2006-09-09 Eli Zaretskii <eliz@gnu.org> + + * editfns.c (Fsystem_name): Mention "host" in the doc string. + (syms_of_editfns) <system-name>: Likewise. + +2006-09-08 Martin Rudalics <rudalics@gmx.at> + + * xdisp.c (mouse_autoselect_window): Remove. + (Vmouse_autoselect_window): New variable. DEFVAR_LISP it. + + * dispextern.h (mouse_autoselect_window): Remove extern. + (Vmouse_autoselect_window): Add extern. + + * macterm.c (XTread_socket): Test Vmouse_autoselect_window + instead of mouse_autoselect_window. + + * msdos.c (dos_rawgetc): Likewise. + + * w32term.c (w32_read_socket): Likewise. + + * xterm.c (handle_one_xevent): Likewise. + +2006-09-08 Richard Stallman <rms@gnu.org> + + * xdisp.c (Vmenu_updating_frame): Define here. + (syms_of_xdisp): DEFVAR it here. + (update_menu_bar): Always return hooks_run. + Set Vmenu_updating_frame. + + * xdisp.c (redisplay_internal): Test Vinhibit_redisplay + before calculating SELECTED_FRAME. + + * xmenu.c (Vmenu_updating_frame): Don't define here. + (syms_of_xmenu): Don't DEFVAR it here. + + * xterm.c (x_error_quitter): For BadName error, just return. + + * eval.c (find_handler_clause): Give up on debugger if INPUT_BLOCKED_P. + + * casetab.c (init_casetab_once): Call set_case_table. + + * emacs.c (shut_down_emacs): Set inhibit_sentinels. + + * process.c (inhibit_sentinels): New variable. + (exec_sentinel): Test inhibit_sentinels. + (init_process): Initialize it. + + * process.h (inhibit_sentinels): Add decl. + + * search.c (looking_at_1, string_match_1, search_command): + Make syntax table's canon table point to eqv table. + +2006-09-08 Andreas Schwab <schwab@suse.de> + + * print.c (strout): Fix whitespace. + +2006-09-08 Kim F. Storm <storm@cua.dk> + + * xterm.c (x_draw_glyph_string): Fix 2006-08-24 change. + +2006-09-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c [!MAC_OSX]: Don't include keyboard.h. + [!MAC_OSX] (select): Try detect_input_pending before ReceiveNextEvent + in the same BLOCK_INPUT block, in case that some input has already + been read asynchronously. Pretend to be interrupted by a signal + if some input is available. + [MAC_OSX] (select_and_poll_event, sys_select): Likewise. + (SELECT_POLLING_PERIOD_USEC) [SELECT_USE_CFSOCKET]: Change to 100000. + Now used for ReceiveNextEvent timeout instead of select timeout. + (EVENT_CLASS_SOCK) [SELECT_USE_CFSOCKET]: Remove macro. + [SELECT_USE_CFSOCKET] (socket_callback): Add non-blocking connect + support. Quit event loop. + [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Add non-blocking + connect support. Reuse previously allocated CFRunLoopSource. + (Fmac_process_hi_command) [TARGET_API_MAC_CARBON]: New function. + (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it. + + * macfns.c (mac_window) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: + Specify kWindowAsyncDragAttribute. + + * macterm.c (mac_handle_origin_change, mac_handle_size_change) + (mac_get_ideal_size): New functions. + (x_set_offset, x_set_window_size, x_make_frame_visible) + (do_zoom_window, mac_handle_window_event, XTread_socket): Use them. + (install_window_handler, mac_handle_window_event) + [USE_CARBON_EVENTS]: Handle kEventWindowGetIdealSize and + kEventWindowBoundsChanged. + (XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Don't call + DragWindow. + +2006-09-07 Andreas Schwab <schwab@suse.de> + + * m/ibms390x.h (START_FILES, LIB_STANDARD): Override to + use lib64 instead of lib. + +2006-09-06 Stefan Monnier <monnier@iro.umontreal.ca> + + * Makefile.in: Avoid double quotes when possible. + +2006-09-06 Kenichi Handa <handa@m17n.org> + + * editfns.c (Fformat_time_string): Use make_unibyte_string to make + a Lisp string from the result of emacs_memftimeu call. + +2006-09-06 Kim F. Storm <storm@cua.dk> + + * xdisp.c (pos_visible_p): Remove exact_mode_line_heights_p arg; + so calculate heights even when pos-visible-in-window-p is called + with partially = t. Don't overshoot last_visible_y in move_it_to. + Return row height and row number in new rowh and vpos args. + (cursor_row_fully_visible_p): First line is always "fully visible". + (try_window): Don't clear matrix if vscrolled. + + * lisp.h (pos_visible_p): Update prototype. + + * window.c (Fpos_visible_in_window_p): Adapt to new pos_visible_p. + Return row height and row number for partially visible rows. + Modify return value to a 2 element list for fully visible rows and + 6 for partially visible row. + (window_scroll_pixel_based): Use pos_visible_p directly instead of + Fpos_visible_in_window_p. Fix auto vscrolling for partially + visible lines. Only vscroll backwards if already vscrolled + forwards. Unconditionally vscroll forwards if PT is first (and + only) line. Set new window start instead of scrolling at + start/end of tall line. + +2006-09-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (install_window_handler, mac_handle_window_event) + [USE_CARBON_EVENTS]: Handle kEventWindowClose. + [USE_MAC_TSM] (mac_handle_text_input_event): Set modifiers for + ASCII keystroke event. + +2006-09-04 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_file_with_chooser): Don't mention specific keys in + the file chooser message. Only call gtk_file_chooser_set_current_name + when action is SAVE. + +2006-09-04 Andreas Schwab <schwab@suse.de> + + * Makefile.in: Double all single and back quotes in C-style + comments to help fontifier. + +2006-09-03 Jason Rumney <jasonr@gnu.org> + + * w32.c (shutdown_handler): New function to exit cleanly on shutdown. + (globals_of_w32): Register it as a signal handler. + +2006-09-02 Juri Linkov <juri@jurta.org> + + * marker.c (Fmarker_position): Doc fix. + +2006-09-03 Eli Zaretskii <eliz@gnu.org> + + * window.c (syms_of_window) <split-height-threshold>: + <window-min-height, window-min-width>: Doc fix. + +2006-09-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_file_with_chooser): Change file chooser message + for writing files. Call gtk_file_chooser_set_current_name to keep + default filename. + + * minibuf.c (Finternal_complete_buffer): Move after DEFUN:s it calls. + +2006-09-02 Jindrich Makovicka <makovick@gmail.com> (tiny change) + + * fns.c (concat) [__GNUC__]: Declare with + `__attribute__((noinline))'. + + * eval.c (apply1, call2) [__GNUC__]: Declare with + `__attribute__((noinline))'. + +2006-09-02 Stuart D. Herring <herring@lanl.gov> + + * minibuf.c (Finternal_complete_buffer): New function. + (syms_of_minibuf): Defsubr it. + (Fread_buffer): Use it, instead of Vbuffer_alist. + +2006-09-01 Martin Rudalics <rudalics@gmx.at> + + * buffer.h (struct buffer_text): New field chars_modiff. + (CHARS_MODIFF, BUF_CHARS_MODIFF): New macros. + * buffer.c (Fbuffer_chars_modified_tick): New function returning + value of BUF_CHARS_MODIFF. + (syms_of_buffer): Defsubr it. + (Fget_buffer_create): Initialize BUF_CHARS_MODIFF. + * insdel.c (modify_region): New argument preserve_chars_modiff. + Set CHARS_MODIFF to MODIFF provided preserve_chars_modiff is zero. + (insert_1_both, insert_from_string_1, insert_from_buffer_1) + (adjust_after_replace, adjust_after_replace_noundo) + (replace_range, replace_range_2, del_range_2): Reset CHARS_MODIFF. + * lisp.h (modify_region): Add fourth argument in extern. + * casefiddle.c (casify_region): Call modify_region with fourth + argument zero to assert that CHARS_MODIFF is updated. + * editfns.c (Fsubst_char_in_region, Ftranslate_region_internal) + (Ftranspose_regions): Likewise. + * textprop.c (Fadd_text_properties, Fset_text_properties) + (Fremove_text_properties, Fremove_list_of_text_properties): + Call modify_region with fourth argument 1 to avoid that + CHARS_MODIFF is updated. + +2006-08-31 Richard Stallman <rms@gnu.org> + + * editfns.c (Fformat): Don't sign-extend for %o or %x. + +2006-08-29 Chong Yidong <cyd@stupidchicken.com> + + * indent.c (Fvertical_motion): Don't move back if we were + displaying a Lisp string, either. + +2006-08-28 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_window_cursor_type) [!HAVE_WINDOW_SYSTEM]: + Don't attempt to replace cursor on image glyphs. + +2006-08-28 Kenichi Handa <handa@m17n.org> + + * coding.c (Fdetect_coding_region, Fdetect_coding_string): + Fix docstring about ISO-2022 control characters. + +2006-08-28 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_window_cursor_type): Replace BOX cursor on images + with a hollow box cursor if image is larger than 32x32 (or the default + frame font if that is bigger). Replace any other cursor on images + with hollow box cursor, as redisplay doesn't support bar and hbar + cursors on images. + +2006-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Undo previous + change. Move mutex lock/unlock operations inside BLOCK_INPUT. + + * dired.c (directory_files_internal_unwind, directory_files_internal) + (file_name_completion): Add BLOCK_INPUT around opendir/closedir. + + * image.c [MAC_OS] (image_load_qt_1): Use ComponentResult instead + of OSErr. + + * keyboard.c (in_sighandler): Remove variable. + (Fcurrent_idle_time): Add missing `doc:'. + (input_available_signal, init_keyboard): Undo previous change. + + * keyboard.h (in_sighandler): Remove extern. + + * mac.c (create_apple_event_from_event_ref, select) + (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator) + (Fmac_set_file_type, cfstring_create_normalized) + (mac_get_system_locale, select_and_poll_event, sys_select): + Use OSStatus instead of OSErr. + + * macfns.c [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): + Don't use FRAME_FILE_NAME. Use (FS)UpdateAlias. + (Fx_create_frame): Apply 2006-07-03 for xfns.c. + + * macselect.c (get_scrap_from_symbol, clear_scrap, put_scrap_string) + (put_scrap_private_timestamp, scrap_has_target_type, get_scrap_string) + (get_scrap_private_timestamp, get_scrap_target_type_list) + (x_own_selection, x_get_foreign_selection) + (Fx_disown_selection_internal, Fx_selection_owner_p) + (Fx_selection_exists_p): Use OSStatus instead of OSErr. + + * macterm.c (mac_draw_string_common, mac_query_char_extents) + (x_iconify_frame, XLoadQueryFont, install_window_handler) + (mac_handle_command_event, init_command_handler, init_menu_bar): + Use OSStatus instead of OSErr. + (x_free_frame_resources) [TARGET_API_MAC_CARBON]: Don't use + FRAME_FILE_NAME. + (x_query_font): Apply 2006-08-04 change for xterm.c. + (Qhi_command): Rename from Qhicommand. All uses changed. + + * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]: Remove member + file_name. + (FRAME_FILE_NAME): Remove macro. + (install_window_handler, create_apple_event_from_event_ref): + Return OSStatus instead of OSErr. + +2006-08-26 Kim F. Storm <storm@cua.dk> + + * buffer.c (Fset_buffer_multibyte): + * editfns.c (Fcurrent_time, Fget_internal_run_time): + * macfns.c (Fxw_color_values): + * w32fns.c (Fxw_color_values): + * xfns.c (Fxw_color_values): Simplify; use list3. + + * fileio.c (Fmake_directory_internal, Fdelete_directory) + (Fdelete_file): Simplify; use list1. + (Frename_file, Fadd_name_to_file, Fmake_symbolic_link): + Simplify; remove NO_ARG_ARRAY stuff, use list2. + +2006-08-25 Richard Stallman <rms@gnu.org> + + * buffer.c (Fswitch_to_buffer): Fix previous change. + +2006-08-25 Kim F. Storm <storm@cua.dk> + + * keyboard.c (Fcurrent_idle_time): Simplify. + +2006-08-25 Richard Stallman <rms@gnu.org> + + * fns.c (sxhash_string): Rotate properly; don't lose bits. + +2006-08-24 Francesc Rocher <francesc.rocher@gmail.com> + + * xdisp.c (overline_margin): New variable. + (x_produce_glyphs): Use it. + (syms_of_xdisp): DEFVAR_INT it. + + * xterm.c (x_underline_at_descent_line): New variable. + (syms_of_xterm): DEFVAR_BOOL it. + (x_draw_glyph_string): Use it. + Draw underline and overline up to the end of line if the face + extends to the end of line. + + * macterm.c: Likewise. + + * w32term.c: Likewise. + +2006-08-24 Nick Roberts <nickrob@snap.net.nz> + + * buffer.c (Fswitch_to_buffer): Move buffer to front of + buffer-alist if necessary. + +2006-08-22 Kim F. Storm <storm@cua.dk> + + * xdisp.c (update_tool_bar): Redisplay toolbar also when only + number of items changes. + +2006-08-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * buffer.c (Fset_buffer_multibyte): Record proper undo entry. + +2006-08-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c: Clarify difference between in_sighandler and + handling_signal. + +2006-08-21 Kim F. Storm <storm@cua.dk> + + * macterm.c (x_draw_stretch_glyph_string): + * w32term.c (x_draw_stretch_glyph_string): + * xterm.c (x_draw_stretch_glyph_string): It is ok to draw a + stretch glyph in left marginal areas on header and mode lines. + +2006-08-21 Kenichi Handa <handa@m17n.org> + + * keyboard.c (syms_of_keyboard): Docstring of + Vunread_post_input_method_events and Vunread_input_method_events + fixed. + +2006-08-20 Chong Yidong <cyd@stupidchicken.com> + + * keyboard.c (show_help_echo): Preserve mouse movement flag if + tracking mouse. + +2006-08-20 Richard Stallman <rms@gnu.org> + + * xfaces.c (load_pixmap): Add quotes in error message. + + * keyboard.c (Fcurrent_idle_time): New function. + (syms_of_keyboard): defsubr it. + +2006-08-18 Nick Roberts <nickrob@snap.net.nz> + + * window.c (Fset_window_fringes): Do nothing on a tty. + (Fwindow_fringes): Put ? operator after the line break. + +2006-08-16 Andreas Schwab <schwab@suse.de> + + * print.c (debug_output_compilation_hack): Fix return type. + +2006-08-16 Richard Stallman <rms@gnu.org> + + * print.c (debug_output_compilation_hack): New function. + +2006-08-16 Kenichi Handa <handa@m17n.org> + + * fileio.c (choose_write_coding_system): Use LF for end-of-line + in auto-saving. + +2006-08-15 Chong Yidong <cyd@stupidchicken.com> + + * keyboard.c (read_char): Don't change idle timer state at all if + end_time is supplied. + +2006-08-15 Kenichi Handa <handa@m17n.org> + + * coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New arg RET. If SRC + is exhausted, return with RET. + (detect_coding_emacs_mule, detect_coding_iso2022) + (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8) + (detect_coding_utf_16, detect_coding_ccl): Adjusted for the above + change. + +2006-08-14 Chong Yidong <cyd@stupidchicken.com> + + * keyboard.c (read_char): Don't reset idle timers if a time limit + is supplied. + +2006-08-14 Kim F. Storm <storm@cua.dk> + + * .gdbinit (pitx): Print iterator position. + Limit stack dump in case iterator is not initialized. + +2006-08-12 Eli Zaretskii <eliz@gnu.org> + + * frame.c (Fmouse_position, Fmouse_pixel_position) + (Fset_mouse_position, Fset_mouse_pixel_position): Doc fix. + +2006-08-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xselect.c (Fx_register_dnd_atom): New function. + (syms_of_xselect): Defsubr it. + (x_handle_dnd_message): Check that message_type is in + dpyinfo->x_dnd_atoms before generating lisp event. + + * xterm.h (struct x_display_info): Add x_dnd_atoms* to keep track + of drag and drop Atoms. + + * xterm.c (x_term_init): Initialize dpyinfo->x_dnd_atoms*. + +2006-08-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c: Define in_sighandler. + (input_available_signal): Set in_sighandler. + (init_keyboard): Initialize in_sighandler. + + * keyboard.h: Declare in_sighandler. + + * alloc.c (UNBLOCK_INPUT_ALLOC, BLOCK_INPUT_ALLOC): Use in_sighandler + to check if mutex should be locked or not. + +2006-08-09 Richard Stallman <rms@gnu.org> + + * keyboard.c (keyremap_step): No-op if fkey->parent = nil. + (read_key_sequence): Always start fkey.start and fkey.end at 0, + and likewise for keytran. + +2006-08-09 Kenichi Handa <handa@m17n.org> + + * coding.c (syms_of_coding): Improve the docstring + of file-coding-system-alist. + +2006-08-07 Andreas Schwab <schwab@suse.de> + + * puresize.h (BASE_PURESIZE): Increase to 1120000. + +2006-08-06 Chong Yidong <cyd@stupidchicken.com> + + * buffer.c (Vchange_major_mode_hook, Qchange_major_mode_hook): New vars. + (Fkill_all_local_variables): Use it. + (syms_of_buffer): Defvar it. + +2006-08-05 Eli Zaretskii <eliz@gnu.org> + + * w32.c (w32_valid_pointer_p): New function. + + * w32.h: Add prototype for w32_valid_pointer_p. + + * alloc.c: Include w32.h. + (valid_lisp_object_p) [WINDOWSNT]: Call w32_valid_pointer_p to do + the job. + + * keyboard.c (kbd_buffer_get_event): Return Qnil when current time + is exactly equal to end_time, not only when it is past that. + +2006-08-04 Chong Yidong <cyd@stupidchicken.com> + + * keyboard.c (read_char): Rebalance specpdl after receiving jump. + + * process.c: Reapply 2006-08-01 change. + +2006-08-04 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (w32_query_font): Fix last change: use stricmp. + +2006-08-04 Stefan Monnier <monnier@iro.umontreal.ca> + + * editfns.c (Fsubst_char_in_region): Redo the setup work after running + the before-change-functions since they may have altered the buffer. + +2006-08-04 Ralf Angeli <angeli@caeruleus.net> + + * w32fns.c (w32_createwindow): Handle -geometry command line option + and the geometry settings in the Registry. + +2006-08-04 Kenichi Handa <handa@m17n.org> + + * w32fns.c (w32_query_font): Compare names by ignoring case. + + * xterm.c (x_query_font): Compare names by ignoring case. + +2006-08-03 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (w32_menu_show, w32_dialog_show): Call Fsignal to quit + when no option selected. + +2006-08-03 Chong Yidong <cyd@stupidchicken.com> + + * process.c: Revert last change. + +2006-08-01 Kim F. Storm <storm@cua.dk> + + * process.c (wait_reading_process_output_unwind): New function. + Restores waiting_for_user_input_p to saved value. + (wait_reading_process_output): Unwind protect waiting_for_user_input_p + instead of save/restore old value on stack. + +2006-07-30 Thien-Thi Nguyen <ttn@gnu.org> + + * editfns.c: Undo 2006-06-27 change. + +2006-07-29 Eli Zaretskii <eliz@gnu.org> + + * coding.c (Ffind_operation_coding_system): Revert the change from + 2006-05-29. + + * alloc.c [WINDOWSNT]: Include fcntl.h, to fix last change. + +2006-07-28 Richard Stallman <rms@gnu.org> + + * xfaces.c (lookup_named_face, Fdisplay_supports_face_attributes_p): + Add conditional aborts for clarity. + + * xdisp.c (update_menu_bar): New arg HOOKS_RUN. Callers changed. + Used to avoid running the hooks over and over for each frame. + (prepare_menu_bars): Pass value from update_menu_bar + as HOOKS_RUN of next call. + + * keyboard.c (safe_run_hooks_1): Don't crash if Vrun_hooks is nil. + +2006-07-28 Kim F. Storm <storm@cua.dk> + + * alloc.c (valid_pointer_p): New function (from valid_lisp_object_p). + (valid_lisp_object_p): Use it to check for valid SUBRP obj. + +2006-07-26 Chong Yidong <cyd@stupidchicken.com> + + * keyboard.c (read_char): New arg END_TIME specifying timeout. + All callers changed. Turn off echoing if END_TIME is non-NULL. + (kbd_buffer_get_event): New arg END_TIME. + + * lread.c (read_filtered_event): New arg SECONDS to wait until. + (Fread_char, Fread_event, Fread_char_exclusive): New arg SECONDS. + + * lisp.h: Update read-char, read-event, and read_filtered_event + prototypes. + + * keyboard.h: Include systime.h. Update read_char prototype. + +2006-07-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * alloc.c (find_string_data_in_pure): New function. + (make_pure_string): Use it to reuse existing string data if possible. + + * puresize.h (BASE_PURESIZE): Decrease to 1102000. + +2006-07-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (Fdefine_key): If the key binding definition looks like an + XEmacs-style key sequence, convert it to Emacs's format. + +2006-07-22 Ralf Angeli <angeli@caeruleus.net> + + * w32fns.c (w32_createwindow): If `left' and/or `top' frame + parameters are bound to some values, use that instead of + CW_USEDEFAULT. + +2006-07-21 Eli Zaretskii <eliz@gnu.org> + + * w32.c (convert_time): Use explicit long double constants to + ensure long double arithmetics is used throughout. + +2006-07-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * alloc.c (pure_bytes_used_lisp, pure_bytes_used_non_lisp): New vars. + (init_alloc_once): Initialize them. + (pure_alloc): Allocate non-Lisp objects from the end of pure storage + without alignment. + + * puresize.h (BASE_PURESIZE): Decrease to 1141000. + +2006-07-18 Francis Litterio <franl@world.std.com> + + * w32term.c (x_calc_absolute_position): Fix frame positioning + with negative X/Y coordinates. + +2006-07-18 Dan Nicolaescu <dann@ics.uci.edu> + + * xterm.c (x_connection_closed, x_error_quitter): Mark as NO_RETURN. + + * textprop.c (text_read_only): Likewise. + + * lread.c (end_of_file_error): Likewise. + + * lisp.h (circular_list_error, memory_full, buffer_memory_full): + Likewise. + + * eval.c (unwind_to_catch): Likewise. + + * buffer.h (buffer_slot_type_mismatch): Likewise. + +2006-07-18 Kim F. Storm <storm@cua.dk> + + Cleanup Fsignal calls that never returns; now only use it for Qquit. + + * eval.c (xsignal): New func. Like Fsignal, but marked no-return. + (xsignal0, xsignal1, xsignal2, xsignal3): New no-return functions. + (signal_error): New no-return function (from xfaces.c). + (Fthrow): Use xsignal2 instead of Fsignal + abort. + (error): Use xsignal1 instead of Fsignal + abort. + (FletX, Flet, grow_specpdl): Use signal_error. + (Feval, Ffuncall, funcall_lambda): Use xsignal1, xsignal2. + + * alloc.c (buffer_memory_full, memory_full): Use xsignal. Remove loop. + (list1): New function. + + * lisp.h (list1): Add EXFUN. + (xsignal, xsignal0, xsignal1, xsignal2, xsignal3, signal_error): + Add prototypes. Mark them as no-return. + + * buffer.c (Fbuffer_local_value, Fbarf_if_buffer_read_only): + Use xsignal1. + + * callint.c (check_mark): Use xsignal0. + + * casefiddle.c (casify_object): wrong_type_argument is no-return. + + * cmds.c (Fforward_char, Fdelete_char): Use xsignal0. + + * coding.c (Fcheck_coding_system): Use xsignal1. Remove loop. + (Fdefine_coding_system_internal): Use xsignal1. + + * data.c (circular_list_error): Use xsignal. + (wrong_type_argument): Use xsignal2. Don't care about return value. + (args_out_of_range, args_out_of_range_3): Use xsignal2, xsignal3. + Remove loop around Fsignal. + (indirect_variable, Fsymbol_value, set_internal, Fdefault_value) + (indirect_function, Findirect_function, Fstring_to_number) + (Fmakunbound, Ffmakunbound, Fsymbol_function, Ffset): Use xsignal1. + (arith_driver, float_arith_driver, Frem, Fmod, arith_error): + Use xsignal0. + + * doc.c (Fdocumentation): Use xsignal1. + + * editfns.c (region_limit, Fget_internal_run_time): Use xsignal0. + + * fileio.c (report_file_error): Use xsignal. + (barf_or_query_if_file_exists, Fcopy_file, Fdelete_file) + (Finsert_file_contents): Use xsignal2. + (syms_of_fileio): Use list2, list3. + + * floatfns.c (arith_error, range_error, domain_error): Use xsignal2. + (range_error2, domain_error2): Use xsignal3. + (rounding_driver, fmod_float): Use xsignal0. + (float_error): Use xsignal1. + (matherr): Use xsignal. + + * fns.c (Flength): wrong_type_argument is no-return. + (hashfn_user_defined, Fmake_hash_table): Use signal_error. + (Fmd5): Use xsignal1. + + * frame.c (x_set_line_spacing, x_set_screen_gamma): Use signal_error. + + * keyboard.c (recursive_edit_1): Use xsignal1. + + * keymap.c (Fmap_keymap): Use xsignal1. + + * lread.c (Fload): Use xsignal2, signal_error. + (end_of_file_error): Use xsignal0, xsignal1. + (read0): Use xsignal1. + (invalid_syntax): New error function marked no-return. + (read_integer, read1, read_list): Use it. + + * macselect.c (x_get_local_selection): Use signal_error. + + * msdos.c (Fmsdos_set_mouse_buttons): Use xsignal2. + + * search.c (compile_pattern_1): Use xsignal1. + (signal_failure): Remove (was only called once). + (search_command): Use xsignal1 instead of signal_failure. + + * syntax.c (scan_lists): Use xsignal3. + + * textprop.c (text_read_only): Use xsignal0, xsignal1. + + * unexsol.c (unexec): Use xsignal. + + * window.c (window_scroll_pixel_based, window_scroll_line_based): + Use xsignal0. + + * xfaces.c (signal_error): Move to eval.c. + (resolve_face_name): Use xsignal1. + + * xfns.c (x_decode_color): Use signal_error. + + * xselect.c (x_get_local_selection, copy_multiple_data) + (x_get_window_property_as_lisp_data) + (lisp_data_to_selection_data, CHECK_CUT_BUFFER) + (Fx_get_cut_buffer_internal): Use signal_error. + +2006-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (XTread_socket): Undo previous change. + +2006-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (keycode_to_xkeysym): Remove function. All uses now + directly lookup keycode_to_xkeysym_table. + [USE_MAC_TSM] (mac_handle_text_input_event): Don't construct + ASCII_KEYSTROKE_EVENT for non-zero keycode_to_xkeysym_table entries. + (XTread_socket): Use character codes to construct keypad key events. + (mac_initialize_display_info) [MAC_OSX]: Use CGDisplaySamplesPerPixel. + (x_delete_display): Apply 2006-07-04 change for xterm.c. + +2006-07-17 Richard Stallman <rms@gnu.org> + + * keyboard.c (Vcommand_error_function): New variable. + (syms_of_keyboard): Defvar it. + (cmd_error_internal): Simplify, and handle Vcommand_error_function. + + * dispnew.c (init_display): Mention DISPLAY as well as TERM in err msg. + +2006-07-17 Kim F. Storm <storm@cua.dk> + + * xdisp.c (handle_single_display_spec): Ensure the right value of + it->position is saved by push_it. + (pop_it): Restore it->object for GET_FROM_BUFFER and GET_FROM_STRING. + (reseat_1): Don't setup it->object twice. + (set_iterator_to_next): No need to set it->object after pop_it. + (move_it_to): Explicitly check to see if last move reached to_charpos. + +2006-07-17 Thien-Thi Nguyen <ttn@gnu.org> + + * xdisp.c (display_mode_line): Preserve match data. + +2006-07-14 Kim F. Storm <storm@cua.dk> + + * w32.c (pfn_WSACreateEvent, pfn_WSACloseEvent): New func ptrs. + (init_winsock): Load them. Use ws2_32.dll. + (sys_listen): Undo last change. Just set FILE_LISTEN flag. + (sys_accept): Undo last change. Instead, set child status to + STATUS_READ_ACKNOWLEDGED and reset char_avail event so next + sys_select will wakeup the reader thread. + (_sys_wait_accept): New function used by reader thread to wait for + an incoming connection on a server socket. + + * w32.h (_sys_read_ahead, _sys_wait_accept): Add prototypes. + + * w32proc.c (reader_thread): Use _sys_wait_accept to wait on a + server socket (FILE_LISTEN flag). + +2006-07-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * sound.c (alsa_init): Call snd_pcm_close after successful snd_pcm_open. + +2006-07-14 Kim F. Storm <storm@cua.dk> + + * w32.c: Fix high cpu load for server sockets. + (pfn_WSAEventSelect): New function ptr. + (init_winsock): Load it. + (sys_listen): Set FILE_LISTEN flag. Set event mask for socket's + char_avail event object to FD_ACCEPT. + (sys_accept): Check FILE_LISTEN flag. Set event mask on new + socket's char_avail event object to FD_READ|FD_CLOSE. + + * w32.h (FILE_LISTEN): New filedesc flag value. + +2006-07-13 Kim F. Storm <storm@cua.dk> + + * bytecode.c (Fbyte_code): Use CAR, CDR for Bcar, Bcdr. + Use CAR_SAFE, CDR_SAFE for Bcar_safe, Bcdr_safe. + Simplify loops and use CAR for Bnth and Belt. + + * data.c (Findirect_function): Optimize for no indirection. + + * eval.c (Fthrow): Remove loop around Fsignal. + (Feval, Fapply, Ffuncall): Optimize for no function indirection. + Use original function name in all signaled errors. + Simplify Fsignal calls (no return). + (funcall_lambda): Simplify Fsignal calls (no return). + +2006-07-13 Andreas Schwab <schwab@suse.de> + + * syntax.c (scan_sexps_forward): Use EMACS_INT for out_bytepos and + out_charpos. + +2006-07-13 Kenichi Handa <handa@m17n.org> + + * editfns.c (Fformat): Fix calculation of text property positions + of format string. + +2006-07-12 Kim F. Storm <storm@cua.dk> + + * lisp.h (CHECK_TYPE): New macro for generic type checking. + (CAR_SAFE, CDR_SAFE): New macros. + (ARRAYP, CHECK_ARRAY): New macros. + (CHECK_VECTOR_OR_STRING, CHECK_SUBR): New macros. + (CHECK_WINDOW_CONFIGURATION): New macro. + (CHECK_LIST_CONS, CHECK_LIST_END): New checks for list traversal. + (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST) + (CHECK_STRING, CHECK_STRING_CAR, CHECK_CONS, CHECK_SYMBOL) + (CHECK_CHAR_TABLE, CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE) + (CHECK_BUFFER, CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS) + (CHECK_NUMBER, CHECK_NATNUM, CHECK_MARKER, CHECK_OVERLAY) + (CHECK_NUMBER_COERCE_MARKER, CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT) + (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER): Use CHECK_TYPE. + + * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): + * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Use CHECK_TYPE. + + * callint.c (Fcall_interactively): + * casefiddle.c (casify_object): + * editfns.c (general_insert_function): + * fns.c (Flength, Felt, Ffillarray): + * data.c (Fcar, Fcdr): Remove loop around wrong_type_argument. + + * data.c (wrong_type_argument): Remove loop around Fsignal. + (Farrayp, Fsequencep): Use ARRAYP. + (Fcar): Use CAR. + (Fcar_safe): Use CAR_SAFE. + (Fcdr): Use CDR. + (Fcdr_safe): Use CDR_SAFE. + (Fsetcar, Fsetcdr): Use CHECK_CONS. + (Fsubr_arity, Fsubr_name): Use CHECK_SUBR. + (Faset): Use CHECK_ARRAY. + + * fns.c (Felt): Use CHECK_ARRAY. + (concat): Use CHECK_NUMBER. + (Fsubstring, substring_both): Use CHECK_VECTOR_OR_STRING. + (Fmemq): Use CHECK_LIST. + (Fassq, Fassoc, Frassq, Frassoc): Use CAR. + (assq_no_quit): Use CAR_SAFE. + (Fnthcdr, Fmember, Fdelq, Fdelete, Fnreverse, Fnconc): + Use CHECK_LIST_CONS. + (Freverse, Fplist_get, Flax_plist_get): Use CHECK_LIST_END. + + * bytecode.c (Fbyte_code): Use CHECK_VECTOR. + + * casetab.c (check_case_table): + * category.c (check_category_table): + * marker.c (Fcopy_marker): + * syntax.c (check_syntax_table): + * xfaces.c (load_pixmap): Use CHECK_TYPE. + + * fns.c (Fcopy_sequence, concat): + * fringe.c (Fdefine_fringe_bitmap): + * lread.c (check_obarray): Cleanup wrong_type_argument use. + + * keyboard.c (access_keymap_keyremap): Use ARRAYP. + + * keymap.c (Fdefine_key, Flookup_key): + * macros.c (Fstart_kbd_macro): Use CHECK_VECTOR_OR_STRING. + + * mac.c (Fmac_get_preference): Use CHECK_LIST_END. + + * search.c (Fset_match_data): Use CHECK_LIST. + + * sunfns.c (sun_item_create): Use CHECK_LIST_CONS. + + * window.c (Fwindow_configuration_frame, Fset_window_configuration): + (compare_window_configurations): Use CHECK_WINDOW_CONFIGURATION. + +2006-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * Makefile.in (dired.o, editfns.o, fileio.o): Depend on blockinput.h. + + * dired.c: Include blockinput.h. + (Ffile_attributes): Add BLOCK_INPUT around getpwuid/getgrgid. + + * editfns.c: Include blockinput.h. + (Fuser_login_name, Fuser_full_name): Add BLOCK_INPUT around + getpwuid/getpwnam. + + * fileio.c: Include blockinput.h. + (Fexpand_file_name, search_embedded_absfilename): Add BLOCK_INPUT + around getpwnam. + (search_embedded_absfilename): Remove spurious xfree. + +2006-07-11 Kim F. Storm <storm@cua.dk> + + * dispnew.c (sit_for): Reduce number of args from 5 to 3. + Now just one TIMEOUT arg that can be a Lisp float or Lisp int. + Combine args DISPLAY and INITIAL_DISPLAY into one arg DO_DISPLAY. + Signal error if TIMEOUT is not a number. + Undo 2006-06-14 change for non-preemptive display if TIMEOUT < 0. + The rework of sit_for args also fixes several incorrect Qt args + which should have been 1. + (Fredisplay): Pass 1 instead of Qt to swallow_events and + detect_input_pending_run_timers. + + * lisp.h (sit_for): Update prototype. + (Fredisplay): Add EXFUN. + + * dispextern.h (sit_for): Remove prototype. + + * callint.c (Fcall_interactively): + * minibuf.c (temp_echo_area_glyphs): + * keyboard.c (command_loop_1, read_char, Fexecute_extended_command): + * fileio.c (Fdo_auto_save): Update/simplify sit_for calls. + +2006-07-11 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (forw_comment): Also use EMACS_INT for buffer positions. + +2006-07-11 Kim F. Storm <storm@cua.dk> + + * dispnew.c (Fredisplay): Add FORCE argument to force redisplay when + input is available. Fix test for redisplay_dont_pause non-nil. + Specbind redisplay-dont-pause to t if FORCE non-nil. + +2006-07-10 Chong Yidong <cyd@stupidchicken.com> + + * puresize.h (BASE_PURESIZE): Increment to 1211000. + + * dispnew.c (Fredisplay): New function, equivalent to (sit-for 0). + (Fsit_for): Function deleted. + + * keyboard.c (command_loop_1, Fexecute_extended_command): + Call sit_for instead of Fsit_for. + + * minibuf.c (temp_echo_area_glyphs): Likewise. + +2006-07-09 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (Fforward_comment): Revert the reversion. + (back_comment, scan_lists): Also use EMACS_INT for buffer positions. + +2006-07-09 John Paul Wallington <jpw@pobox.com> + + * syntax.c (Fforward_comment): Revert previous change. + +2006-07-09 Kim F. Storm <storm@cua.dk> + + * window.c (Fforce_window_update): Doc fix. + +2006-07-08 Stephen Gildea <gildea@stop.mail-abuse.org> + + * fileio.c (do_auto_save_make_dir): Make the auto-save-list-file + directory unreadable for better user privacy. + +2006-07-07 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (Fforward_comment): Fix int-32 vs EMACS_INT-64 mixup. + + * lread.c (read_filtered_event): Remove `register' qualifier because it + causes compilation problem with gcc-4.0.2-20051125 on amd64. + (readevalloop): Remove unused var `bpos'. + Yet another int/Lisp_Object mixup (YAILOM). + +2006-07-07 Eli Zaretskii <eliz@gnu.org> + + * keyboard.c (Fexecute_extended_command): Mention the argument + PREFIXARG in the doc string. + +2006-07-07 Kim F. Storm <storm@cua.dk> + + * fringe.c (Fdefine_fringe_bitmap): Doc fix. + +2006-07-05 Chong Yidong <cyd@stupidchicken.com> + + * insdel.c (prepare_to_modify_buffer): For an indirect buffer, do + clash detection using the base buffer. + + * puresize.h (BASE_PURESIZE): Increment to 1210500. + +2006-07-04 Kim F. Storm <storm@cua.dk> + + * xterm.c (x_delete_display): Don't free or derefence NULL pointers. + +2006-07-04 Kenichi Handa <handa@m17n.org> + + * fontset.c (Fset_overriding_fontspec_internal): Check if we need + to update Voverriding_fontspec_alist. + +2006-07-03 Richard Stallman <rms@gnu.org> + + * xfns.c (Fx_create_frame): Move unwind_create_frame setup down. + + * xfaces.c (Fface_attribute_relative_p): Doc fix. + + * textprop.c (Fget_char_property_and_overlay): Doc fix. + + * eval.c (Fdefvaralias): Doc fix. + +2006-07-03 Kim F. Storm <storm@cua.dk> + + * dispnew.c (sit_for): Fix preempt condition. + +2006-07-02 Stefan Monnier <monnier@iro.umontreal.ca> + + * lread.c (read_filtered_event): Treat select-window just like + switch-frame. + +2006-07-02 Kim F. Storm <storm@cua.dk> + + * xdisp.c (display_tool_bar_line): Skip glyphs which are too big + to ever fit the tool-bar, + (MAX_FRAME_TOOL_BAR_HEIGHT): New macro. + (tool_bar_lines_needed): Use unused mode-line row as temp_row. + (redisplay_tool_bar): Only clear desired matrix if we actually + change the tool-bar window height. Only try to make the tool-bar + window bigger if there is actually room for it. + +2006-06-30 Ralf Angeli <angeli@caeruleus.net> + + * w32term.c (x_make_frame_visible): Use SystemParametersInfo with + SPI_GETWORKAREA to find the dimensions of the screen work area, + and adjust vertical position of the frame in order to avoid being + covered by the task bar. + + * w32fns.c (w32_createwindow): Use CW_USEDEFAULT instead of + f->left_pos and SH_SHOW instead of f->top_pos in the call to + CreateWindow. Record the actual position in f->left_pos and + f->top_pos. + +2006-06-30 John Paul Wallington <jpw@pobox.com> + + * w32console.c (syms_of_ntterm) <w32-use-full-screen-buffer>: + Doc fix - default value has changed. + +2006-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c [!TARGET_API_MAC_CARBON]: Don't include FixMath.h or Scrap.h. + + * macfns.c (Fx_create_frame): Apply 2006-06-24 change for xfns.c. + + * macgui.h (USE_MAC_TSM) [TARGET_API_MAC_CARBON]: Set default to 1. + + * macterm.c (Qeql): Add extern. + (x_set_mouse_pixel_position) [MAC_OSX]: Use CGWarpMouseCursorPosition. + (fm_style_face_attributes_alist) [USE_ATSUI]: New variable. + (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it. + Change keys of Vmac_atsu_font_table from strings to numbers. + (fm_style_to_face_attributes) [USE_ATSUI]: New function. + (init_font_name_table) [USE_ATSUI]: Use it. + (saved_ts_script_language_on_focus) [USE_MAC_TSM]: New variable. + (syms_of_macterm) [USE_MAC_TSM]: Initialize and staticpro it. + [USE_MAC_TSM] (mac_tsm_resume): Restore script and language codes + only when saved_ts_script_language_on_focus coincides with + Vmac_ts_script_language_on_focus. + [USE_MAC_TSM] (mac_tsm_suspend): Save value of + Vmac_ts_script_language_on_focus to saved_ts_script_language_on_focus. + (XTread_socket) [USE_MAC_TSM]: Add Mac OS Classic support. + [USE_MAC_TSM] (mac_handle_text_input_event, init_tsm): Likewise. + +2006-06-27 Chong Yidong <cyd@stupidchicken.com> + + * editfns.c (Fdelete_field, Ffield_string, Ffield_beginning) + (Ffield_string_no_properties, Ffield_end): Mention + args-out-of-range error condition in docstring. + +2006-06-27 Kim F. Storm <storm@cua.dk> + + * xdisp.c (handle_composition_prop): Set stop_charpos before push_it. + +2006-06-25 Kim F. Storm <storm@cua.dk> + + * s/gnu-linux.h (SIGNALS_VIA_CHARACTERS): Define for Linux kernel + version 2.4 and later. + +2006-06-24 Chong Yidong <cyd@stupidchicken.com> + + * xfns.c (Fx_create_frame): Set font parameter directly instead of + using x_default_parameter, since x_get_args clears the parm alist. + +2006-06-24 Eli Zaretskii <eliz@gnu.org> + + * dired.c (directory_files_internal) [WINDOWSNT]: Find files + case-insensitively. + +2006-06-24 Aidan Kehoe <kehoea@parhasard.net> + + * lread.c (read_escape): When an unknown Unicode code point is + encountered as a string or character escape, signal an error. + +2006-06-23 Kim F. Storm <storm@cua.dk> + + * .gdbinit (pitx): Dump iterator stack. + + * xdisp.c (handle_composition_prop): Push iterator on stack. + (set_iterator_to_next): Pop iterator at end of composition. + +2006-06-23 Martin Rudalics <rudalics@gmx.at> + + * fileio.c (Frename_file) [DOS_NT]: Don't try to move directory to + itself on DOS_NT platforms, if the old and new names are identical + but for the letter-case. + +2006-06-21 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct it): Add `position' member to iterator stack. + Rename `pos' member to `current'. Rearrange and add comments. + + * xdisp.c (handle_stop): Set it->ignore_overlay_strings_at_pos_p + if we get any overlays. + (set_cursor_from_row): Don't clobber `end' if we rescan from + start_string. + (push_it, pop_it): Save it->position. + +2006-06-19 Richard Stallman <rms@gnu.org> + + * window.c (size_window): New arg FIRST_ONLY. All callers changed. + (adjust_window_trailing_edge): Specially compute FIRST_PARALLEL + for the case of a top-level window and the following minibuffer. + Don't exit because of no `next' when there is a parent. + Use the FIRST_ONLY feature when resizing following windows. + + * syntax.c (init_syntax_once): Give most control chars' syntax Spunct. + +2006-06-17 Kim F. Storm <storm@cua.dk> + + * dispnew.c (update_frame): Check for input pending on entry. + (update_window, update_frame_1): Break loop if input is detected. + +2006-06-16 Francis Litterio <flitterio@gmail.com> + + * xterm.c (x_check_expected_move, handle_one_xevent) + (x_set_offset, x_check_fullscreen): Extensive changes to make + frame positioning deterministic under X. + + * xterm.h (x_output): Add members left_before_move and + top_before_move. Removed members expected_left and expected_top. + +2006-06-16 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct it): Add union to iterator stack to save + image, composition, and stretch specific paramters. + + * xdisp.c (next_overlay_string): Fix assert. + (push_it, pop_it): Handle composition and stretch specific values. + Only handle it->slice in image (for now). + (back_to_previous_visible_line_start): Continue search if newline is + part of a compisition. Simplify. + (reseat_1): Set it->object to buffer. + (set_iterator_to_next): Set it->object to string or buffer, when + setting it->method to GET_FROM_STRING or GET_FROM_BUFFER. + (next_element_from_composition): Set it->object to buffer if not + from string. + (set_cursor_from_row): Only save start of string if not already + done to handle multiple strings in a row. + + * .gdbinit (pitx): Show composition parameters. + (pgx, pg): New commands to print a glyph structure. + (pgi, pgn): New commands to print specific/next glyph. + (pgrowx, pgrow): New commands to print all glyphs in a row. + +2006-06-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (Fx_display_mm_height, Fx_display_mm_width) + [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use CGDisplayScreenSize. + + * macterm.c (do_app_resume, do_app_suspend): Remove functions. + (mac_tsm_resume, mac_tsm_suspend) [USE_MAC_TSM]: New functions. + (mac_handle_window_event, XTread_socket) [USE_MAC_TSM]: Use them. + (Vmac_ts_script_language_on_focus) [USE_MAC_TSM]: New variable. + (syms_of_macterm) [USE_MAC_TSM]: Defvar it. + (saved_ts_language, saved_ts_component) [USE_MAC_TSM]: New variables. + (mac_initialize_display_info) [MAC_OSX]: Use Quartz Display + Services functions to get size of main display in pixels. + +2006-06-14 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (back_to_previous_visible_line_start): + Reset it->continuation_lines_width. + +2006-06-14 Richard Stallman <rms@gnu.org> + + * eval.c (Fdefconst): Mark variable as risky. + + * callproc.c (Fcall_process): Doc fix. + + * window.c (adjust_window_trailing_edge): Don't break out of the loop + because there's no next window, if there are parallel windows. + Do break out when WINDOW is nil. + +2006-06-14 Kim F. Storm <storm@cua.dk> + + * dispextern.h (IT_STACK_SIZE): New macro specifying size of + iterator stack (instead of hardcoded number). Increase from 2 to + 4 to make room for propertized overlay strings before and after a + display string, image or composition. + (struct it): Add image_id and method members to iterator stack. + + * xdisp.c (init_from_display_pos): Don't set it->method and + overlay_string_index after pop_it. Add asserts. + (handle_stop): Look for overlay strings around a display string, + image, or composition. Handle properties on those strings. + (next_overlay_string): Don't set string, pos or method after pop_it. + (get_overlay_strings_1): Split from get_overlay_strings; don't + modify it if no overlay strings are found. + (get_overlay_strings): Use get_overlay_strings_1. Always set + it->string and it->method. + (push_it): Push it->image_id and it->method. Push it->object + instead of it->string if method is GET_FROM_IMAGE. + (pop_it): Pop it->image_id and it->method. Ppo it->object + instead of it->string if method is GET_FROM_IMAGE. + Reset it->current.string_pos if popped it->string is nil. + (reseat_1): Remove comment dated 19 May 2003. It expressed doubt + whether a given change was correct; but the change is correct. + Clear it->string_from_display_prop_p. + (set_iterator_to_next): Rely on it->method and it->image_id from + iterator stack, instead of setting them explicitly after pop_it. + + * dispnew.c (sit_for): Undo 2006-06-01 change. Instead, a + negative time forces redisplay even when input is available. + (Fsit_for): Doc fix. + +2006-06-13 Kim F. Storm <storm@cua.dk> + + * dispnew.c: Modify preemptive redisplay to be based on periodic + checks for input. + (PERIODIC_PREEMPTION_CHECKING): Define to 1 iff EMACS_HAS_USECS. + (Vredisplay_preemption_period): New variable. + (syms_of_display): DEFVAR_LISP and initialize it. + (preemption_period, preemption_next_check): New variables. + (update_frame, update_single_window): Initialize them based on + Vredisplay_preemption_period if !force_p. + (update_window, update_frame_1): Use them to determine when to + check for input. + +2006-06-03 Aidan Kehoe <kehoea@parhasard.net> + + * lread.c (read_escape): Provide a Unicode character escape + syntax; \u followed by exactly four or \U followed by exactly + eight hex digits in a comment or string is read as a Unicode + character with that code point. + +2006-06-09 Eli Zaretskii <eliz@gnu.org> + + * window.c (window_scroll_pixel_based): Signal "Beginning of + buffer" when scroll-down at the beginning of an empty buffer. + +2006-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event): + Exclude 0x7f from ASCII range. + +2006-06-05 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_set_scroll_bar_thumb, x_scroll_bar_create) + (w32_set_vertical_scroll_bar, w32_scroll_bar_handle_click) + (x_scroll_bar_report_motion): Remove workarounds for + versions of Windows NT < 3.51. + [!SIF_ALL]: Remove. + (pfnSetScrollInfo, pfnGetScrollInfo): Remove. + (w32_initialize): Don't dynamically load Get/SetScrollInfo. + +2006-06-04 David Kastrup <dak@gnu.org> + + * dispnew.c: Mention `redisplay-dont-pause' in doc string of + `sit-for'. + +2006-06-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (x_set_icon_name): Apply 2006-06-02 change for xfns.c. + + * macgui.h (USE_MAC_TSM): Set default to 1 on Mac OS X. + + * macterm.c (tsm_document_id) [USE_MAC_TSM]: New variable. + (Qtext_input, Qupdate_active_input_area, Qunicode_for_key_event) + [USE_MAC_TSM]: Likewise. + (syms_of_macterm) [USE_MAC_TSM]: Intern and staticpro them. + (Qbefore_string) [USE_MAC_TSM]: Add extern. + (do_app_resume, do_app_suspend) [USE_MAC_TSM]: Call + ActivateTSMDocument/DeactivateTSMDocument. + (mac_store_event_ref_as_apple_event): Call mac_post_mouse_moved_event. + (mac_handle_window_event) [USE_MAC_TSM]: Handle + kEventWindowFocusAcquired/kEventWindowFocusRelinquish. + (mac_handle_text_input_event) [USE_MAC_TSM]: New function. + (install_window_handler) [USE_MAC_TSM]: Install it. Register + kEventWindowFocusAcquired/kEventWindowFocusRelinquish. + (keycode_to_xkeysym_table): Add entry for f16. + (XTread_socket) [USE_MAC_TSM]: Set/reset read_socket_inev + before/after passing keystroke event to toolbox dispatcher. + (init_tsm) [USE_MAC_TSM]: New function. + (mac_initialize) [USE_MAC_TSM]: Call it. + (Vmac_ts_active_input_overlay) [USE_MAC_TSM]: New defvar. + + * macterm.h (EVENT_PARAM_TEXT_INPUT_SEQUENCE_NUMBER): New enumerator. + +2006-06-02 John Paul Wallington <jpw@gnu.org> + + * xfns.c (x_set_name_internal): Set icon to `text', derived from + name, when frame's icon_name isn't a string rather than only when + it is nil. + +2006-06-03 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (x_set_icon_name): Don't use arg if it's not a string + and not nil. + +2006-06-02 Chong Yidong <cyd@stupidchicken.com> + + * xfns.c (x_set_icon_name): No-op if arg is non-nil and not a + string. + +2006-06-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * xdisp.c (next_element_from_composition): Set it->object to + it->string if composition is coming from string. + (set_cursor_from_row): Don't return 0 unless row displays a + continued line. + (dump_glyph): Dump composite glyph. + +2006-06-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (menu_nav_ended): Check that menubar_widget is not NULL. + +2006-06-01 Richard Stallman <rms@gnu.org> + + * window.c (Fsplit_window): Doc fix. + +2006-06-01 Micha,Ak(Bl Cadilhac <michael.cadilhac@lrde.org> + + * process.c (deleted_pid_list): New variable to store the pids + of deleted processes. Declare it only if SIGCHLD is defined. + (init_process): Initialize it. + (syms_of_process): Staticpro it. + (Fdelete_process): Add pid of the deleted process to it. Check after + the addition and before the kill if the process is already stopped, + in which case it is deleted from the list and not killed. + (sigchld_handler): Define it only if SIGCHLD is. Search the process + that signaled Emacs in `deleted_pid_list' before `Vprocess_alist'. + Original idea by Stefan Monnier. + +2006-06-01 Kim F. Storm <storm@cua.dk> + + * dispnew.c (sit_for): Perform redisplay even if input is pending + when redisplay-dont-pause is non-nil. + +2006-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_handle_visibility_change): Set buf.arg to Qnil. + (XTread_socket): Remove obsolete comment. + +2006-06-01 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (syms_of_xmenu): Make accelerate-menu an alias for + menu-bar-open. + +2006-06-01 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (Fmenu_bar_open, syms_of_xmenu): Change menu-bar-start to + menu-bar-open. + + * gtkutil.c (menu_nav_ended): Change x-menu-bar-start to menu-bar-open. + +2006-05-31 Juri Linkov <juri@jurta.org> + + * minibuf.c (Vhistory_add_new_input): New variable. + (read_minibuf): Use it. + (syms_of_minibuf) <history-add-new-input>: New Lisp variable. + (syms_of_minibuf) <history-delete-duplicates>: Doc fix. + +2006-05-31 Kim F. Storm <storm@cua.dk> + + * process.c (select_wrapper): Add wrapper around select to work around + "incomplete backtrace" bug in gdb 5.3, when emacs is stopped inside + select called from wait_reading_process_output. + +2006-05-30 Andreas Schwab <schwab@suse.de> + + * xmenu.c (Fmenu_bar_start): Return a value. + +2006-05-30 Richard Stallman <rms@gnu.org> + + * coding.c (Ffind_operation_coding_system): Doc fix. + +2006-05-30 Eli Zaretskii <eliz@gnu.org> + + * w32term.c (x_draw_hollow_cursor): Fix last change. + +2006-05-29 Kim F. Storm <storm@cua.dk> + + * w32term.c (x_draw_stretch_glyph_string): Fix last change. + +2006-05-29 Eli Zaretskii <eliz@gnu.org> + + * coding.c (Ffind_operation_coding_system): Doc fix. + +2006-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): + Call mac_set_font_info_for_selection if font panel is made visible. + + * macterm.c (font_panel_shown_p) [USE_MAC_FONT_PANEL]: New variable. + (mac_font_panel_visible_p, mac_show_hide_font_panel) + [USE_MAC_FONT_PANEL]: New functions. + [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): + Return immediately if font panel is not visible. + + * macterm.h (mac_font_panel_visible_p, mac_show_hide_font_panel): + Add externs. + +2006-05-29 Dan Nicolaescu <dann@ics.uci.edu> + + * search.c (matcher_overflow): Mark as NO_RETURN. + + * xterm.c (x_connection_closed): Likewise. + + * sysdep.c (croak): Likewise. + + * sound.c (sound_perror, alsa_sound_perror): Likewise. + + * lisp.h (die, nsberror): Likewise. + +2006-05-29 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * sound.c (alsa_open, alsa_configure, alsa_write): + Move assignment to err out of if-statement. + + * gtkutil.c (menu_nav_ended): New function. + (create_menus): Connect menu_nav_ended to "selection-done" to fix + grabs. + + * xmenu.c (Fmenu_bar_start): New function for USE_GTK and USE_X_TOOLKIT. + +2006-05-28 Dan Nicolaescu <dann@ics.uci.edu> + + * charset.h (invalid_character): Mark as NO_RETURN. + +2006-05-29 Kenichi Handa <handa@m17n.org> + + * coding.c (Ffind_operation_coding_system): Call a function by + safe_call1 instead of call1. + +2006-05-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (struct saved_window): Add `dedicated'. + (Fset_window_configuration, save_window_save): Save/restore the + `dedicated' flag. + +2006-05-28 Kim F. Storm <storm@cua.dk> + + * xdisp.c (set_cursor_from_row): If cursor cannot be set in row, + don't update w->cursor and return 0. Return 1 on success. + (try_cursor_movement): Repeat set_cursor_from_row on successive rows + until it succeeds. + + * dispextern.h (set_cursor_from_row): Update prototype. + +2006-05-28 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_phys_cursor_geometry): Return computed x and y through + parameters. Adjust x and width in case cursor in on a partially + visible stretch glyph on the left edge. + (erase_phys_cursor): Don't erase into left fringe/margin in case + previous cursor glyph is a partially visible stretch glyph on left. + + * dispextern.h (get_phys_cursor_geometry): Update prototype. + + * xterm.c (x_draw_stretch_glyph_string): Fix problems with invisible + cursor and erasing cursor on partially visible stretch glyph on left. + (x_draw_hollow_cursor): Compute x via get_phys_cursor_geometry. + + * macterm.c: Likewise. + + * w32term.c: Likewise. + +2006-05-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macselect.c (mac_handle_apple_event): + Return errAEEventNotHandled if key binding is not found. + +2006-05-26 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (main) [PROFILING]: Enable also for __MINGW32__. + [__MINGW32__]: MinGW-specific declaration of `etext'. + + * w32heap.c (etext, edata): Remove unused definitions. + +2006-05-26 Chong Yidong <cyd@stupidchicken.com> + + * fileio.c (Fcopy_file): Delete argument MUSTBENEW. + Incorporate the exclusive file-opening functionality into the behavior + when OK-IF-ALREADY-EXISTS is nil. + (Frename_file): Call Fcopy_file without MUSTBENEW argument. + +2006-05-26 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * sound.c (alsa_configure): Move get period/buffer_size after + setting hwparams. + +2006-05-26 Kenichi Handa <handa@m17n.org> + + * coding.c (Ffind_operation_coding_system): Allow (FILENAME + . BUFFER) in TARGET. + +2006-05-25 Chong Yidong <cyd@stupidchicken.com> + + * image.c (png_load): Don't call fclose on NULL. + +2006-05-25 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Fyes_or_no_p): + * callint.c (Fcall_interactively): Fread_from_minibuffer now takes + only seven args. + +2006-05-25 Juri Linkov <juri@jurta.org> + + * lisp.h (Fread_from_minibuffer): Decrement number of args. + + * minibuf.c (read_minibuf): Remove arg KEEP_ALL. Callers changed. + (Fread_from_minibuffer): Remove arg KEEP_ALL. Callers changed. + + * buffer.c (mode-line-format): Fix docstring. + +2006-05-25 Richard Stallman <rms@gnu.org> + + * emacs.c (main, Fdump_emacs): Don't test __linux or __linux__. + +2006-05-24 Luc Teirlinck <teirllm@auburn.edu> + + * puresize.h (BASE_PURESIZE): Increase to 1210000. + +2006-05-24 Alan Mackenzie <acm@muc.de> + + * lread.c (Vload_history): Enhance doc-string to say that the file + is the absolute truename of the loaded file. + + * lread.c (Vafter_load_alist): doc-string: state that an element + now has a regexp to match file names, not a file name as such. + + * lread.c (readevalloop): Call file-truename on the name for + load-history, except at preloading time. + + * lread.c (Fload): At preloading time, preserve the extension of + the filename which goes into load-history. New var hist_file_name. + + * lread.c (Fload): Do eval-after-load stuff by calling the lisp + function do-after-load-evaluation. + +2006-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (ae_attr_table): New variable. + (syms_of_mac): Intern and staticpro its elements. + (mac_aelist_to_lisp): Also convert Apple event attributes. + (mac_ae_put_lisp): New function. + (create_apple_event_from_event_ref) [MAC_OSX]: Use typeUTF8Text. + + * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor etc. + + * macselect.c (Qemacs_suspension_id): New variable. + (syms_of_macselect): Intern and staticpro it. + (struct suspended_ae_info): New struct. + (deferred_apple_events, defer_apple_events) + (Fmac_process_deferred_apple_events): Use it. + (suspended_apple_events): New variable. + (mac_handle_apple_event_1): New function. + (mac_handle_apple_event): Use it. Don't process previously + suspended events. + (cleanup_suspended_apple_events, get_suspension_id) + (cleanup_all_suspended_apple_events): New functions. + (init_apple_event_handler): Call cleanup_all_suspended_apple_events + at exit. + (Fmac_cleanup_expired_apple_events, Fmac_ae_set_reply_parameter) + (Fmac_resume_apple_event): New defuns. + (syms_of_macselect): Defsubr them. + + * macterm.c (fn_keycode_to_keycode_table, XTread_socket) [MAC_OSX]: + Fix last change. Don't map `fn' modifier if pressed with F1 ... F12. + + * macterm.h (TYPE_FILE_NAME): Change from macro to enumerator. + (KEY_EMACS_SUSPENSION_ID_ATTR): New enumerator. + (keyReplyRequestedAttr) [MAC_OS_X_VERSION_MAX_ALLOWED < 1030]: Likewise. + (gestaltSystemVersionMajor, gestaltSystemVersionMinor) + (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]: + Likewise. + (typeUTF8Text, kEventParamWindowMouseLocation) + [MAC_OSX && MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Likewise. + (x_get_focus_frame, mac_ae_put_lisp): Add externs. + +2006-05-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (fn_keycode_to_xkeysym_table, convert_fn_keycode): Remove. + (fn_keycode_to_keycode_table) [MAC_OSX]: New variable. + (mac_set_unicode_keystroke_event) [TARGET_API_MAC_CARBON]: New function. + (XTread_socket) [TARGET_API_MAC_CARBON]: Use it. + (XTread_socket) [MAC_OSX]: Try 'uchr' Unicode keyboard-layout + resource to backtranslate key with modifiers. + (XTread_socket): Don't set read_socket_inev around AEProcessAppleEvent. + +2006-05-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c: Remove declarations already in xterm.h. + + * xterm.h: Add extern declarations for x_clear_errors, + x_fully_uncatch_errors, x_catching_errors and + x_alloc_lighter_color_for_widget. Remove duplicated declarations. + +2006-05-21 Richard Stallman <rms@gnu.org> + + * xfaces.c (best_matching_font): Abort for best == NULL + before we start to use it. + + * buffer.c (syms_of_buffer, Fmake_overlay): Doc fixes. + +2006-05-20 Kim F. Storm <storm@cua.dk> + + * xfaces.c (best_matching_font): Fix crash in 2006-05-17 change. + +2006-05-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (convert_fn_keycode): Fix last change. + +2006-05-19 Eli Zaretskii <eliz@gnu.org> + + * w32.c (init_environment): Perform the processing of environment + variables on a copy of default variables and their values, not on + the original. Simplify code that calls ExpandEnvironmentStrings + and make buf1[] and buf2[] more visible for easier debugging. + +2006-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * frame.c (x_set_border_width): Remove #ifndef MAC_OS. + + * image.c [MAC_OS] (gif_load): Allocate Lisp string first. + + * macfns.c (Fx_focus_frame): Don't check dpyinfo->x_focus_frame. + + * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON && MAC_OSX]: + Forward keyUp events to toolbox_dispatcher. + + * window.c (foreach_window): Check WINDOWP (FRAME_ROOT_WINDOW (f)). + +2006-05-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * config.in: Regenerated (HAVE_ALSA). + + * sound.c (alsa_sound_perror, alsa_open, alsa_period_size) + (alsa_configure, alsa_close, alsa_choose_format, alsa_write) + (snd_error_quiet, alsa_init): New functions. + (vox_init): Return 0 if unable to open device. + (Fplay_sound_internal): Test for alsa first and use vox (oss) as + a fallback. + (struct sound_device): Add period_size. + (wav_play, au_play): Use period_size if set. + + * Makefile.in (CFLAGS_SOUND): New flags for ALSA. + (ALL_CFLAGS): Add CFLAGS_SOUND. + +2006-05-18 Kenichi Handa <handa@m17n.org> + + * callproc.c (Fcall_process): Reject encoding arguments by + ascii-incompatible coding systems (e.g. utf-16). + + * coding.c (Qascii_incompatible): New variable. + (syms_of_coding): Setup Qascii_incompatible. + (setup_coding_system): Be sure to initialize coding->common_flags. + Check `ascii-incompatible' property of the coding system. + + * coding.h (CODING_ASCII_INCOMPATIBLE_MASK): New macro. + +2006-05-18 Kim F. Storm <storm@cua.dk> + + * xdisp.c (display_tool_bar_line): Restore entire tool-bar + geometry when backtracking in case last image doesn't fit on line. + +2006-05-18 MIYOSHI Masanori <miyoshi@meadowy.org> (tiny change) + + * xdisp.c (display_tool_bar_line): Don't adjust tool-bar height by + more than height of one frame default line. + +2006-05-17 Richard Stallman <rms@gnu.org> + + * xfaces.c (better_font_p): Any font beats no font. + (best_matching_font): Simplify based on above change. + + * buffer.c (Fprevious_overlay_change, Fnext_overlay_change): Doc fixes. + +2006-05-16 Kim F. Storm <storm@cua.dk> + + * xterm.c (handle_one_xevent): Check that f is not NULL before + calling x_kill_gs_process. + +2006-05-14 Richard Stallman <rms@gnu.org> + + * textprop.c (Fnext_single_char_property_change) + (Fprevious_single_char_property_change): Don't allow returning + value beyond LIMIT in any cases. + (Fnext_char_property_change, Fprevious_char_property_change): Doc fix. + + * intervals.c (get_local_map): Abort if POSITION outside BEGV, ZV. + +2006-05-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): Check that f is not NULL before + calling _XEditResCheckMessages. + +2006-05-14 Kim F. Storm <storm@cua.dk> + + * xterm.c (handle_one_xevent): Fix crash in 2006-03-24 change. + +2006-05-13 Eli Zaretskii <eliz@gnu.org> + + * frame.c (x_set_border_width): Fix error message to say "frame", + not "window". + + * Makefile.in (SOME_MACHINE_LISP): Add fringe.elc. + +2006-05-12 Chong Yidong <cyd@stupidchicken.com> + + * intervals.c (set_point_both): Fix mixup before before and after + in variable names. + + * editfns.c (Fline_beginning_position): Inhibit point-motion hooks + while setting point temporarily. + +2006-05-11 Richard Stallman <rms@gnu.org> + + * lread.c (readevalloop): Abort if START non-nil for non-buffer input. + +2006-05-11 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_tool_bar): Handle large tool-bar-border values. + +2006-05-11 Kenichi Handa <handa@m17n.org> + + * fileio.c (Finsert_file_contents): Fix for the case of IO error + while handling replace operation. + +2006-05-10 Kenichi Handa <handa@m17n.org> + + * xfaces.c (realize_default_face) [HAVE_X_WINDOWS]: If the font + chosen for the default face was different from the frame font, + adjust the frame font. + +2006-05-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c (Qduration) [MAC_OS]: Undo previous change. + (syms_of_image) [MAC_OS]: Likewise. + [MAC_OS] (gif_load): Emulate Graphic Control Extension block. + + * macfns.c (x_to_mac_color): Fix shift amount change. + (mac_set_font) [USE_MAC_FONT_PANEL]: Use x_get_focus_frame. + [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): Doc fix. + + * macselect.c (Vmac_service_selection) [MAC_OSX]: Rename from + Vmac_services_selection. All uses changed. + (mac_store_service_event): Rename from mac_store_services_event in + extern and calls. + + * macterm.c (Qservice) [MAC_OSX]: Rename from Qservices. All uses + changed. + [MAC_OSX] (mac_store_service_event): Rename from + mac_store_services_event. All callers changed. + [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): Add args + FACE_ID and C. All callers changed. + (x_free_frame_resources) [USE_MAC_FONT_PANEL]: Call + mac_set_font_info_for_selection when focus frame is destroyed. + (XTread_socket): Revert to FrontNonFloatingWindow/FrontWindow. + + * macterm.h (mac_set_font_info_for_selection): Add 2nd and 3rd + args in extern. + +2006-05-09 Chong Yidong <cyd@stupidchicken.com> + + * keymap.c (describe_map): Avoid generating duplicate entries if + the shadowed binding has the same definition. + +2006-05-09 Kenichi Handa <handa@m17n.org> + + * keymap.c (push_key_description): Handle invalid character key. + +2006-05-08 Kenichi Handa <handa@m17n.org> + + * callproc.c (Fcall_process): Use system_eol_type for encoding + arguments if eol_type is not yet decided. + + * coding.h (system_eol_type): Extern it. + + * coding.c (setup_coding_system): For invalid coding-system, set + coding->eol_type to CODING_EOL_UNDECIDED. + (encode_coding): Cancel previous change. + (shrink_encoding_region): Likewise. + (code_convert_region1): Likewise. + (code_convert_string1): Likewise. + (code_convert_string_norecord): Likewise. + + * fileio.c (choose_write_coding_system): Use system_eol_type for + encoding if eol_type is not yet decided. + + * process.c (setup_process_coding_systems): Use system_eol_type + for encoding if eol_type is not yet decided. + (read_process_output): Likewise. + (send_process): Likewise. + +2006-05-07 Juanma Barranquero <lekktu@gmail.com> + + * minibuf.c (syms_of_minibuf) <history-length>: Fix typo in doc. + +2006-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (Fmac_clear_font_name_table): Move defun to macfns.c. + (syms_of_mac): Likewise for defsubr. + + * macfns.c (mac_set_font): New function. + (mac_frame_parm_handlers, syms_of_macfns): Replace x_set_font with it. + (mac_window) [TARGET_API_MAC_CARBON && MAC_OSX]: Specify + kWindowToolbarButtonAttribute when creating window. + (Fmac_clear_font_name_table): Move from macfns.c. + (syms_of_macfns): Likewise for defsubr. + [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): New defun. + (syms_of_macfns) [USE_MAC_FONT_PANEL]: Defsubr it. + + * macgui.h (USE_MAC_FONT_PANEL): Define to 1 if USE_ATSUI is set + and build is done on Mac OS X 10.2 and later. + + * macselect.c (mac_do_receive_drag): Remove unused variable `index'. + (mac_store_services_event): Change return type in extern. + + * macterm.c (XLoadQueryFont) [USE_ATSUI]: Set font->mac_fontnum to + FMFontFamily value. + [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): New function. + (x_new_focus_frame) [USE_MAC_FONT_PANEL]: Use it. + (QCfamily, QCweight, QCslant, Qnormal, Qbold, Qitalic): Add extern. + (QWindow) [MAC_OSX]: Likewise. + (Qfont) [USE_MAC_FONT_PANEL]: Likewise. + (Vmac_atsu_font_table) [USE_ATSUI]: New variable. + (syms_of_macterm) [USE_ATSUI]: Defvar it. + (Qtoolbar_switch_mode) [MAC_OSX]: New variable. + (Qpanel_closed, Qselection) [USE_MAC_FONT_PANEL]: Likewise. + (syms_of_macterm): Intern and staticpro them. + (init_font_name_table) [USE_ATSUI]: Add data to Vmac_atsu_font_table. + [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event): + New function. + [USE_CARBON_EVENTS] (mac_handle_command_event): Use it. + [MAC_OSX] (mac_store_services_event): Likewise. + [USE_CARBON_EVENTS] (mac_handle_window_event) [MAC_OSX]: Handle + kEventWindowToolbarSwitchMode event. + (install_window_handler) [USE_CARBON_EVENTS && MAC_OSX]: Register it. + [MAC_OSX] (mac_store_services_event): Change return type to OSStatus. + [USE_MAC_FONT_PANEL] (mac_handle_font_event): New function. + (install_window_handler) [USE_MAC_FONT_PANEL]: Install it. + (XTread_socket): Select window on mouse click if x_focus_frame is NULL. + + * macterm.h (mac_set_font_info_for_selection): Add extern. + +2006-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c (Qduration) [MAC_OS]: New variable. + (syms_of_image) [MAC_OS]: Intern and staticpro it. + [MAC_OS] (gif_load): Save image extension data in img->data.lisp_val. + [MAC_OSX] (image_load_quartz2d): Use cfstring_create_with_utf8_cstring + instead of cfstring_create_with_string. + +2006-05-06 Kim F. Storm <storm@cua.dk> + + * .gdbinit (xframe): Print frame name. + (xlist): New command to print a list (max 10 elements). + (xpr): Print lisp object of any type. + (pitx): Print it->pixel_width. + +2006-05-05 Kenichi Handa <handa@m17n.org> + + * xdisp.c (handle_composition_prop): Fix for the case of empty + composition component. + +2006-05-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * keyboard.c (make_lispy_event) [MAC_OS]: Get Apple event info + from event->arg. + + * termhooks.h (enum event_kind) [MAC_OS]: Update comment for + MAC_APPLE_EVENT. + + * macterm.h (mac_make_lispy_event_code): Remove extern. + (mac_post_mouse_moved_event): Add extern. + (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to + `const AEDesc *' in externs. + (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]: New extern. + + * mac.c (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to + `const AEDesc *'. + [TARGET_API_MAC_CARBON] (create_apple_event): New function. + [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): Use it. + Use xrealloc instead of repeated xmalloc/xfree. + [TARGET_API_MAC_CARBON] (create_apple_event_from_drag_ref): + New function. + + * macmenu.c (restore_menu_items, cleanup_popup_menu): Return a value. + + * macselect.c: Update copyright year. + (mac_store_apple_event): Change return type to void in extern. + (mac_handle_apple_event): Don't get return value from + mac_store_apple_event. + [TARGET_API_MAC_CARBON] (Vmac_dnd_known_types): New variable. + (syms_of_macselect) [TARGET_API_MAC_CARBON]: Defvar it. + [TARGET_API_MAC_CARBON] (mac_do_track_drag): Move function from + macterm.c. Use Vmac_dnd_known_types as acceptable flavors. + [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. New + implementation using create_apple_event_from_drag_ref. + [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP) + (mac_do_receive_dragUPP): Move variables from macterm.c. + (install_drag_handler, remove_drag_handler): New functions. + + * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON]: Try window + path select also for proxy icon click. + [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): New function. + [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback): Use it. + (xlfdpat_create): Remove unused label `error' and trailing sentences. + (mac_do_track_drag, mac_do_receive_drag): Move functions to macselect.c. + (mac_do_track_dragUPP, mac_do_receive_dragUPP): Move variables to + macselect.c. + (install_drag_handler, remove_drag_handler): Add extern. + (mac_store_apple_event): Change return type to void. All uses changed. + Create Lisp object from Apple event and store it into input event. + (mac_make_lispy_event_code): Remove function. + [TARGET_API_MAC_CARBON] (mac_store_drag_event): New function. + (install_window_handler): Call install_drag_handler. + (remove_window_handler): Call remove_drag_handler. + +2006-05-03 Richard Stallman <rms@gnu.org> + + * sound.c (Fplay_sound_internal): Dynamically allocate + current_sound_device and current_sound. + (sound_cleanup): Free them. + + * minibuf.c (read_minibuf): Don't use read_minibuf_noninteractive + when inside a keyboard macro. + +2006-05-02 Andreas Schwab <schwab@suse.de> + + * xmenu.c (restore_menu_items): Return a value. + +2006-05-01 Martin Rudalics <rudalics@gmx.at> + + * syntax.c (Fforward_comment): Detect generic comment at beginning of + buffer when moving backwards. + +2006-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * dispnew.c (update_window): Don't set changed_p when mode/header + line is updated. + + * xdisp.c (prepare_menu_bars) [MAC_OS]: Call mac_update_title_bar. + (get_glyph_face_and_encoding, get_char_face_and_encoding): + Don't distinguish known faces from others. + + * mac.c (mac_coerce_file_name_ptr): Try typeFSRef if coercion + through typeFileURL failed. + + * macfns.c (mac_update_title_bar): New function. + [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): New function. + (show_hourglass, hide_hourglass) [USE_CG_DRAWING]: + Call mac_prepare_for_quickdraw. + + * macgui.h (USE_ATSUI): Set default to 1 if MAC_OSX is defined. + (USE_CG_DRAWING): Don't define if compiled on Mac OS X 10.1. + (enum pcm_status): New enum. + (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID) + (XCharStructRow): Remove. Now validity is represented by + non-negativeness of sum of ascent and descent. + (struct MacFontStruct): Change type of member `rows'. + (struct _XGC) [USE_CG_DRAWING]: Add member `clip_rects'. + + * macterm.c (mac_draw_line, mac_draw_line_to_pixmap): + Adjust endpoints of strictly horizontal/vertical lines. + (mac_set_clip_rectangles) [USE_CG_DRAWING]: Set clip_rects. + (pcm_init, pcm_get_status): New functions. + (x_per_char_metric, XLoadQueryFont): Use them instead of + XCharStructRow and related macros. + (x_draw_relief_rect): Don't adjust arguments of mac_draw_line. + (x_free_frame_resources) [TARGET_API_MAC_CARBON]: Free FRAME_FILE_NAME. + (XTread_socket) [TARGET_API_MAC_CARBON]: Handle proxy icon drag + and window path pop-up menu on title bar. + (mac_use_core_graphics) [USE_CG_DRAWING]: Set default to 1. + + * macterm.h (mac_update_title_bar): Add extern. + (struct mac_output) [TARGET_API_MAC_CARBON]: New member `file_name'. + (FRAME_FILE_NAME): New macro. + + * unexmacosx.c (unexec): Error if trying unexec from dumped executable. + +2006-04-30 Richard Stallman <rms@gnu.org> + + * keymap.c (Fdefine_key): Improve error message + when KEY begins with a non-prefix key. + +2006-04-30 Martin Rudalics <rudalics@gmx.at> + + * syntax.c (Fforward_comment): Don't forget to break out of the loop + when we skipped backward over a generic comment. + +2006-04-27 Nick Roberts <nickrob@snap.net.nz> + + * .gdbinit (pp1, pv1): Only print value as expression is now + printed out by gud-print. + (pv1): Correct doc string. + +2006-04-26 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (store_in_keymap): Change `def' arg to not be `register'. + Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8): + keymap.c:895: error: address of register variable `def' requested. + +2006-04-26 Jason Rumney <jasonr@gnu.org> + + * w32term.c (construct_mouse_wheel): Handle negative coordinates. + + * w32fns.c (w32_wnd_proc) <WM_LBUTTONDOWN, WM_RBUTTONDOWN>: + <WM_LBUTTONUP, WM_RBUTTONUP>: Call signal_user_input in the cases + where we preempt mouse_button_timer. + +2006-04-25 Miles Bader <miles@gnu.org> + + * editfns.c (Ffield_beginning, find_field): Undo change of 2006-04-23. + +2006-04-24 Stefan Monnier <monnier@iro.umontreal.ca> + + * process.h: Include headers for pid_t. + +2006-04-24 Kim F. Storm <storm@cua.dk> + + * xdisp.c (fill_stretch_glyph_string): Set s->nchars = 1 for code which + does last_glyph=s->first_glyph+s->nchars-1, e.g. if stretch has relief. + (produce_stretch_glyph): Assume that face box height and width is + already included in stretch glyph size so caller doesn't have to + consider the extra space otherwise added (fixes problem in ses.el). + + * frame.c (x_set_font): Clear f->n_tool_bar_rows and current frame + matrices to force recalculation of tool-bar height after font change. + + * xdisp.c (tool_bar_lines_needed): New local `temp_row' for clarity. + Clear it when done, so we don't accidentally draw a second copy of + the tool-bar after resetting f->n_tool_bar_rows. + (redisplay_tool_bar): Update tool-bar-lines frame parameter whenever + we recalculate f->n_tool_bar_rows. + +2006-04-23 Lars Hansen <larsh@soem.dk> + + * editfns.c (find_field): Fix comment. + (Ffield_beginning): Fix bug when POS is at field beginning. + +2006-04-22 Eli Zaretskii <eliz@gnu.org> + + * puresize.h (BASE_PURESIZE): Increase to 1205000. + +2006-04-21 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Fix last change. Don't recenter if + window start is at BEGV. + + * dispextern.h (struct image): New member `corners'. + (TOP_CORNER, LEFT_CORNER, BOT_CORNER, RIGHT_CORNER): New macros. + + * image.c (four_corners_best): New arg CORNERS specifies what pixels + to look at in case image has margin. + (x_create_bitmap_mask): Pass NULL for CORNERS to four_corners_best. + (image_background, image_background_transparent) + (x_build_heuristic_mask): Pass img->corners to four_corners_best. + (gif_load): Set img->corners according to image's margin spec. + Use img->corners values directly where applicable. + Save image extension data in img->data.lisp_val. + (gif_clear_image): New function to free img->data.lisp_val. + (gif_type): Use it instead of generic x_clear_image. + (Fimage_extension_data): New defun. + (syms_of_image): Defsubr it. + +2006-04-21 John Sullivan <john@wjsullivan.net> (tiny change) + + * window.c (Fdisplay_buffer): Doc fix. + +2006-04-21 Eli Zaretskii <eliz@gnu.org> + + * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Increase to 25000. + +2006-04-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c [MAC_OS] (xpm_load_image): Fill in background field + while we have ximg handy. + + * macmenu.c (restore_menu_items, save_menu_items): New functions + from xmenu.c. + (set_frame_menubar, digest_single_submenu): Apply 2006-04-18 + changes for xmenu.c. + + * macterm.c (x_per_char_metric): Return NULL if glyph width is 0. + (add_mac_font_name): New function. + (init_font_name_table): Use it. Adopt the first found font from + those having the same family name. + +2006-04-21 Nick Roberts <nickrob@snap.net.nz> + + * xdisp.c (note_mouse_highlight): Use build_string. + +2006-04-20 Lars Hansen <larsh@soem.dk> + + * textprop.c (Fremove_list_of_text_properties): + Ensure modify_region is called only when buffer is modified and that + signal_after_change is allways called in that case. + + * print.c (PRINTFINISH): Call signal_after_change. + +2006-04-20 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Fix last change. + + * xdisp.c (redisplay_window): If current window start is not at the + beginning of a line, select a new window start if buffer is modified + and window start is in the modified region, but the first change is + before window start. + +2006-04-18 Richard Stallman <rms@gnu.org> + + * xmenu.c (restore_menu_items, save_menu_items): New fns. + (set_frame_menubar): Use save_menu_items. Save updated vector in + the frame before unwinding it. Don't use unuse_menu_items. + Don't use discard_menu_items. + (digest_single_submenu): Abort if an item is not in a pane. + (init_menu_items): Put the error check at the top. + + * keymap.c (describe_map): Make "shadowed" warning more verbose. + + * window.c (adjust_window_trailing_edge): Correctly distinguish + series vs parallel cases, even when window has no parent. + + * abbrev.c (record_symbol): New function. + (Finsert_abbrev_table_description): Sort the abbrevs alphabetically. + +2006-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c (x_create_bitmap_from_data) [MAC_OS]: Don't check return + value of xmalloc. + + * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc) + (create_apple_event_from_event_ref, xrm_get_preference_database) + (cfstring_create_normalized): Don't check return value of xmalloc. + + * macselect.c (get_scrap_target_type_list, defer_apple_events) + (copy_scrap_flavor_data, mac_handle_service_event): Don't check + return value of xmalloc/xrealloc. + + * macterm.c (XCreateGC, x_per_char_metric, xlfdpat_create) + (init_font_name_table, init_font_name_table, mac_do_list_fonts) + (XLoadQueryFont, mac_store_apple_event): Don't check return value + of xmalloc. + +2006-04-17 Kim F. Storm <storm@cua.dk> + + * window.c (coordinates_in_window): On the vertical border, + calculate the row number measured from the top of the window, not + the top of the frame. + (window_loop): Test w->dedicated with !NILP instead of EQ Qt. + (window_scroll_pixel_based): Fix off-by-one bug in 2002-12-23 change. + +2006-04-16 Eli Zaretskii <eliz@gnu.org> + + * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Reduce to 24000. + +2006-04-16 Romain Francoise <romain@orebokech.com> + + * puresize.h (BASE_PURESIZE): Decrement back to 1200000. + +2006-04-16 Andreas Schwab <schwab@suse.de> + + * puresize.h (PURESIZE_RATIO): Reduce to 10/6. + +2006-04-15 Romain Francoise <romain@orebokech.com> + + * puresize.h (BASE_PURESIZE): Increment to 1210000. + +2006-04-13 Micha,Ak(Bl Cadilhac <michael.cadilhac@lrde.org> + + * print.c (Fprin1_to_string): Mention in the `doc' that the + behavior is modified by `print-level' and `print-length'. + +2006-04-13 Kenichi Handa <handa@m17n.org> + + * coding.c (setup_coding_system): If eol-type is not yet decided + and system_eol_type is not LF, set CODING_REQUIRE_ENCODING_MASK. + If coding_system is nil, return 0. + (code_convert_region1): Even if coding_system is nil, don't skip + conversion if system_eol_type is not LF. + (code_convert_string1): Likewise. + (code_convert_string_norecord): Likewise. + +2006-04-13 Kenichi Handa <handa@m17n.org> + + * coding.c (setup_coding_system): Fix previous change. + (encode_coding): If eol_type is not yet decided, use system_eol_type. + (shrink_encoding_region): If eol_type is not yet decided and + system_eol_type is not LF, don't shrink. + +2006-04-13 Nick Roberts <nickrob@snap.net.nz> + + * xdisp.c (note_mouse_highlight): Add help echo for dragging vertical + line. + +2006-04-12 Richard Stallman <rms@gnu.org> + + * keyboard.c (read_key_sequence): Explicitly avoid keybuf[-1]. + + * process.c (conv_lisp_to_sockaddr): If FAMILY unknown, just return. + (Fprocess_send_eof): Abort if fail to open null device. + +2006-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * fns.c [HAVE_MENUS && MAC_OS]: Include macterm.h. + + * image.c [MAC_OS] (xpm_load_image): Add parentheses around + assignment used as truth value. Add explicit braces to avoid + ambiguous `else'. + [MAC_OS] (gif_load): Remove unused variable `gcpro1'. + + * lisp.h (syms_of_fontset, Fset_fontset_font): Put extern and + EXFUN in #ifdef HAVE_WINDOW_SYSTEM. + (syms_of_xfns, syms_of_xsmfns, syms_of_xselect, syms_of_xterm): + Put externs in #ifdef HAVE_X_WINDOWS. + (syms_of_macfns, syms_of_macselect, syms_of_macterm) + (syms_of_macmenu, syms_of_mac) [MAC_OS]: Add externs. + (init_mac_osx_environment) [MAC_OSX]: Add extern. + + * mac.c (init_process): Remove undef. + (select) [MAC_OSX]: Undefine before including sysselect.h. + (posix_pathname_to_fsspec, fsspec_to_posix_pathname) [MAC_OSX]: + Remove functions and prototypes. + (parse_value): Add parentheses around + inside shift. + (path_from_vol_dir_name): Make static. + (get_temp_dir_name): Remove unused variables `cpb' and `dir_name'. + [!MAC_OSX] (get_path_to_system_folder): Likewise. + (Fmac_get_file_creator, Fmac_get_file_type): Remove unused + variable `cCode'. + (Fmac_coerce_ae_data): Remove unused variables `fref' and `fs'. + (Fmac_get_preference): Add explicit braces to avoid ambiguous `else'. + + * macfns.c (x_to_mac_color): Remove unused variable `tail'. + (x_set_mouse_color): Remove unused variable `dpy'. + (Fx_create_frame): Remove unused variable `x_frame_count'. + (Fx_server_version): Add explicit braces to avoid ambiguous `else'. + (x_sync): Move from macterm.c. + (Fx_file_dialog): Remove unused variable `default_filter_index'. + + * macmenu.c (min_menu_id): Make element type explicit. + + * macselect.c (get_flavor_type_from_symbol): Remove unused + variable `val'. + (get_scrap_private_timestamp, x_get_foreign_selection) + (copy_scrap_flavor_data): Add explicit braces to avoid ambiguous `else'. + (Fmac_process_deferred_apple_events): Remove unused variables + `keyword', `reply', `apple_event', `count', and `err'. + + * macterm.c: Don't include gnu.h. + (x_io_error_quitter, x_draw_image_foreground_1): Remove prototypes. + (x_sync): Move to macfns.c. + [USE_CG_DRAWING] (mac_define_fringe_bitmap): Remove unused + variable `mask_bits'. + (mac_compute_glyph_string_overhangs): Avoid ambiguous `else'. + (x_draw_image_glyph_string): Remove unused variable `pixmap'. + (x_mac_to_emacs_modifiers): Remove function. + (XTset_vertical_scroll_bar, mac_handle_visibility_change) + (x_make_frame_visible, xlfdpat_create, mac_handle_command_event): + Add explicit braces to avoid ambiguous `else'. + (x_make_frame_visible): Remove unused variables `type', + `original_top', and `original_left'. + (mac_do_list_fonts, XTread_socket): Add parentheses around && within ||. + (x_load_font): Remove unused variables `full_name', and `value'. + (do_get_menus, do_init_managers, do_check_ram_size) [!MAC_OS8]: + Remove functions. + (do_zoom_window): Reorganize variables with respect to conditionals. + (init_command_handler): Remove unused variable `err'. + [MAC_OSX] (mac_check_bundle): Remove unused variable `child'. + + * macterm.h (x_set_mouse_position, x_set_mouse_pixel_position) + (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources) + (x_destroy_window, x_wm_set_size_hint, x_delete_display, XFreeGC) + (do_menu_choice, have_menus_p, x_real_positions) + (x_set_menu_bar_lines, x_pixel_width, x_pixel_height, x_char_width) + (x_char_height, x_sync, x_set_tool_bar_lines, x_activate_menubar) + (free_frame_menubar): Add externs. + + * unexmacosx.c: Include config.h before using HAVE_MALLOC_MALLOC_H. + (malloc, realloc, free): Add undefs. + (read_load_commands): Remove unused variable `n' and `j'. + (copy_data_segment): Remove unused variable `r'. + + * xdisp.c (get_glyph_string_clip_rects): Add parentheses around && + within ||. Add explicit braces to avoid ambiguous `else'. + (dump_glyph_row): Remove label for `inverse_p' from legend. + + * xfaces.c (Finternal_merge_in_global_face, try_font_list): + Add explicit braces to avoid ambiguous `else'. + +2006-04-11 Micha,Ak(Bl Cadilhac <michael.cadilhac@lrde.org> + + * dispnew.c (init_display): Don't init X display if the user asked + for a non-X display. + +2006-04-12 Kenichi Handa <handa@m17n.org> + + * coding.c (setup_coding_system): Use system_eol_type for default + coding->eol_type. + +2006-04-11 Dan Nicolaescu <dann@ics.uci.edu> + + * lisp.h (wrong_type_argument): Mark as NO_RETURN. + + * data.c (wrong_type_argument): Try to avoid compiler warnings due + to the fact the function is now marked as NO_RETURN. + +2006-04-10 Eli Zaretskii <eliz@gnu.org> + + * s/ms-w32.h (pid_t) [_MSC_VER]: New typedef. + +2006-04-10 Romain Francoise <romain@orebokech.com> + + * xrdb.c (gethomedir): Use xstrdup. + +2006-04-10 Andreas Schwab <schwab@suse.de> + + * xrdb.c (gethomedir): Make sure to always return a pointer that + can be passed to free. + +2006-04-09 Richard Stallman <rms@gnu.org> + + * lisp.h (Fkill_emacs): Undo previous change. + +2006-04-08 Richard Stallman <rms@gnu.org> + + * search.c (boyer_moore): Test ch >= 0400, not >. + +2006-04-09 Dan Nicolaescu <dann@ics.uci.edu> + + * puresize.h (pure_write_error): Mark as NO_RETURN. + + * lisp.h (args_out_of_range, args_out_of_range_3, Fkill_emacs): + Likewise. + +2006-04-08 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Ignore mouse movements + if a menu is active on this frame. + +2006-04-08 Dan Nicolaescu <dann@ics.uci.edu> + + * lisp.h (report_file_error): Mark as NO_RETURN. + +2006-04-08 Eli Zaretskii <eliz@gnu.org> + + * alloc.c [STDC_HEADERS]: Include stddef.h. + + * lisp.h (PSEUDOVECSIZE): Fix last change. + +2006-04-08 Stefan Monnier <monnier@iro.umontreal.ca> + + * process.h (struct Lisp_Process): Replace Lisp_Objects `pid', + `raw_status_high', and `raw_status_low' with plain integers, and move + them to the end of the structure. + + * alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the + pseudovector's size field so only the Lisp_Object fields get GC'd. + + * process.c (update_status, make_process, Fdelete_process) + (Fprocess_status, list_processes_1, start_process_unwind) + (create_process, Fmake_network_process, server_accept_connection) + (wait_reading_process_output, send_process, Fprocess_running_child_p) + (process_send_signal, proc_encode_coding_system, Fprocess_send_eof) + (sigchld_handler, status_notify): Adjust to new non-Lisp fields for + `pid' and `raw_status'. + (Fprocess_id, Fsignal_process): Same, and additionally use floats when + representing PIDs that are larger than most-positive-fixnum. + + * keymap.c (describe_map): Only use XINT if we checked INTEGERP. + + * lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros. + +2006-04-08 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos. + +2006-04-03 Paul Eggert <eggert@cs.ucla.edu> + + * editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to + ../lib-src/b2m.c and ../lib-src/editfns.c. + (Fcurrent_time_string): Use it. + Document that the year might not consume 4 columns if it's outside + the range 1000-9999. + Check for asctime failure. + Don't assume that the output string length is always exactly 24. + +2006-04-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (XTread_socket): Initialize variable `f' before its use. + +2006-04-03 Kenichi Handa <handa@m17n.org> + + * image.c: Include "charset.h" and "coding.h". + (x_find_image_file): Return an encoded file name. + +2006-04-01 Eli Zaretskii <eliz@gnu.org> + + * configure: Regenerated. + +2006-03-31 Kenichi Handa <handa@m17n.org> + + * xfns.c (xg_set_icon): Delete superfluous UNGCPRO. + +2006-03-30 Dan Nicolaescu <dann@ics.uci.edu> + + * xdisp.c (syms_of_xdisp): Fix variable name. + +2006-03-30 Kenichi Handa <handa@m17n.org> + + * xterm.c (x_term_init): Delete superfluous UNGCPRO. + +2006-03-29 Juanma Barranquero <lekktu@gmail.com> + + * keyboard.c (process_tool_bar_item): Reorder dummy args. + +2006-03-29 Stefan Monnier <monnier@iro.umontreal.ca> + + * keyboard.c (tool_bar_items): Use map_keymap. + (process_tool_bar_item): Add dummy args to fit the required interface. + +2006-03-25 Eli Zaretskii <eliz@gnu.org> + + * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag + to zero before calling debug_print or safe_debug_print. + + * print.c (print_output_debug_flag): New global variable. + (Fexternal_debugging_output) [WINDOWSNT]: Don't call + OutputDebugString if print_output_debug_flag is zero. + +2006-03-24 Paul Eggert <eggert@cs.ucla.edu> + + * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it. + (Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900. + (Fdecode_time): Cast tm_year to EMACS_INT. + (Fcurrent_time_string): Report an invalid time specification if + the argument is invalid. Also, check for out-of-range time stamps. + +2006-03-24 Kim F. Storm <storm@cua.dk> + + * xterm.c (handle_one_xevent): + * w32term.c (w32_read_socket): + * macterm.c (XTread_socket): Don't let key-press clear mouse face + on in toolbar window if mouse-highlight is an integer. + + * fns.c (sxhash_list): Include last non-nil CDR in hash. + +2006-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (enum mac_menu_kind): New enum. + (min_menu_id): New variable. + (POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID) + (MIN_SUBMENU_ID): Remove defines. All uses are replaced with + min_menu_id and enumerators in enum mac_menu_kind. + (fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND. + All uses changed. Add range check for menu ID. + (fill_menubar): Add range check for menu ID. + [HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of + GetEventParameter. + (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler + for each menu kind. + +2006-03-22 Kim F. Storm <storm@cua.dk> + + * xdisp.c: Undo 2006-03-21 change. + + * term.c: Define aliases for append_glyph and produce_stretch_glyph + when `static' is defined to avoid name clash with those in xdisp.c. + + * process.c (Faccept_process_output): Fix to comply with lisp + reference. Change arg "timeout" to "seconds" and allow both + integer and float value. Change arg "timeout-msec" to "millisec" + and interpret" as milliseconds rather than microseconds. Fix doc + string accordingly. + +2006-03-21 Ken Raeburn <raeburn@raeburn.org> + + * xdisp.c (store_next_glyph): Rename from append_glyph. + (generate_stretch_glyph): Rename from produce_stretch_glyph. + All callers changed accordingly. + +2006-03-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c: x_session_initialized new variable. + (x_term_init): Use x_session_initialized to check if + x_session_initialize should be called. + (x_initialize): Initialize x_session_initialized. + +2006-03-21 Kim F. Storm <storm@cua.dk> + + * fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow + bitmap here, but ... + (update_window_fringes): ... here, so we can test if it has changed. + +2006-03-20 Andreas Schwab <schwab@suse.de> + + * dispnew.c (init_display): Check DISPLAY here. + + * emacs.c (main): Don't check here. + + * xterm.c (x_display_ok): Don't use DISPLAY env var. + +2006-03-20 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (window_scroll_pixel_based): Yet another int/Lisp_Object + mixup (YAILOM). + +2006-03-20 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (main): Fix last change. + +2006-03-20 Kenichi Handa <handa@m17n.org> + + * fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it. + + * keymap.c (map_keymap): Set tail to Qnil before GCPRO it. + + * xfns.c (xg_set_icon): Remove unnecessary GCPRO. + + * xterm.c (x_term_init): Remove unnecessary GCPRO. + +2006-03-19 Kim F. Storm <storm@cua.dk> + + * xdisp.c (set_cursor_from_row): Fix cursor property on overlay string, + so it doesn't associate overlay string with following glyph by default. + Allow integer property value to specify explicit number of buffer + positions associate with overlay string. + +2006-03-18 Chong Yidong <cyd@stupidchicken.com> + + * xterm.c (x_display_ok): Fix minor bug and compilation warnings. + +2006-03-18 Nozomu Ando <nand@mac.com> + + * m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define. + (LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define. + (START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]: + Don't redefine. + + * m/mips.h: Don't use unexmips on NetBSD. + (LIBS_MACHINE): Move definition lower, so it doesn't use + LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP, + C_SWITCH_MACHINE, and C_DEBUG_SWITCH. + + * unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h. + (unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc + option is broken (e.g., MIPS/NetBSD). + +2006-03-18 Craig McDaniel <craigmcd@gmail.com> (tiny change) + + * sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB. + Remove the HAVE_X_WINDOWS conditional. + +2006-03-18 Vivek Dasmohapatra <vivek@etla.org> (tiny change) + + * emacs.c (main): If user asks for a display that is unavailable, + simulate -nw. + + * xterm.c (x_display_ok): New function. + + * xterm.h: Add prototype for x_display_ok. + +2006-03-18 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (Fw32_select_font): Doc fix. + +2006-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c [MAC_OS] (XPutPixel, XGetPixel) + [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized + version when depth is 32. + (mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]: + New function. + (prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it. + (x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage. + + * macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: + Create GWorld in ARGB pixel format. + (mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]: + Remove functions. + (x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image + instead of mac_copy_area/mac_copy_area_with_mask. + +2006-03-15 Kim F. Storm <storm@cua.dk> + + * xdisp.c (extend_face_to_end_of_line): Always add space glyph to + empty row. Fixes memory corruption revealed by 2006-03-02 change. + (display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0. + (tool_bar_lines_needed): Fix tool-bar display in case the tool-bar + width is exactly the same as the window width. Don't count a final + empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line). + +2006-03-15 Juanma Barranquero <lekktu@gmail.com> + + * fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being + conditional on HAVE_NTGUI, not WINDOWS_NT. + +2006-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype. + + * fringe.c (mac_init_fringe) [MAC_OS]: New function. + + * macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe. + (max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables. + (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap) + (mac_draw_cg_image) [USE_CG_DRAWING]: New functions. + (mac_draw_bitmap) [USE_CG_DRAWING]: Remove function. + (x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image + instead of mac_draw_bitmap. + (x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for + define_fringe_bitmap and destroy_fringe_bitmap. + +2006-03-14 Chong Yidong <cyd@stupidchicken.com> + + * xterm.c (x_uncatch_errors): Block input for entire function. + +2006-03-12 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Fx_create_frame): Remove call to + Qface_set_after_frame_default (from xfns.c 2003-05-26). + + * w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when + finished with the menu. + + * w32term.c: Sync 2005-10-24 xterm.c changes. + (last_mouse_glyph_frame): New var. + (note_mouse_movement): Say mouse moved if current frame differs + from last_mouse_glyph_frame, and update last_mouse_glyph_frame. + (w32_mouse_position): Set last_mouse_glyph_frame. + Remove OLD_REDISPLAY_CODE block. + +2006-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1. + + * macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context. + (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype. + + * mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. + + * macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c. + + * macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground) + (x_draw_composite_glyph_string_foreground) + (x_draw_image_foreground): Undo previous changes. + (x_draw_hollow_cursor): Likewise. Subtract 1 from the last + argument of mac_draw_rectangle. + (CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros. + (mac_draw_string_common, mac_draw_image_string_cg): Use them. + (FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro. + (mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw) + [USE_CG_DRAWING]: New functions. + (mac_draw_line, mac_erase_rectangle, mac_clear_window) + (mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common) + (mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part. + (mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common) + (mac_copy_area, mac_scroll_area, x_scroll_bar_create) + (x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size) + (XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw. + +2006-03-12 L$,1 q(Brentey K,Aa(Broly <lorentey@elte.hu> + + * xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'. + +2006-03-11 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (signal_user_input): New function. + (post_character_message): Use it for keyboard input. + (w32_msg_pump): Use it for mouse input. + +2006-03-11 Luc Teirlinck <teirllm@auburn.edu> + + * window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y. + (window_scroll_pixel_based, syms_of_window): Adapt to above change. + +2006-03-11 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (w32_wnd_proc): Ignore middle and extra button events + if a menu is already active (the menubar_active flag is on). + +2006-03-11 David Ponce <david@dponce.com> + + * xfns.c (x_create_tip_frame): Preserve received parms by copying them. + +2006-03-11 Eli Zaretskii <eliz@gnu.org> + + * w32term.c: Add x_fully_uncatch_errors and x_catching_errors to + the list of unused display error handling functions. + + * eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if + HAVE_X_WINDOWS. + (internal_condition_case, internal_condition_case_1) + (internal_condition_case_2): Call x_catching_errors only if + HAVE_X_WINDOWS. + + * vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally. + Don't include sys/resource.h unless defined. + +2006-03-11 Richard Stallman <rms@gnu.org> + + * keymap.c (describe_map): Shorten string to indicate shadowed binding. + + * vm-limit.c (get_lim_data, lim_data, data_space_start): + Move from mem-limits.h. + (enum warnlevel): New data type. + (check_memory_limits): Rewrite the logic about warnings. + Use standard `struct rlimit'. Check return values for nonsense. + (memory_warnings): Always clear lim_data. + + * mem-limits.h (get_lim_data, lim_data, data_space_start): + Move to vm-limit.c. + + * xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions. + + * eval.c (unwind_to_catch): Call x_fully_uncatch_errors. + (internal_condition_case_1, internal_condition_case_2): + Abort if within unclosed x_catch_errors. + +2006-03-11 Romain Francoise <romain@orebokech.com> + + * process.c (Vprocess_adaptive_read_buffering): Doc fix. + +2006-03-11 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change) + + * lisp.h: Remove duplicate prototypes. Make the prototype of + getloadavg be conditioned on HAVE_GETLOADAVG being undefined. + +2006-03-11 Eli Zaretskii <eliz@gnu.org> + + * xterm.c (x_draw_hollow_cursor): Subtract 1 from the last + argument of XDrawRectangle. + + * xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1. + + * macterm.c (mac_draw_rectangle): Don't add 1 to width and height. + (x_draw_glyph_string_foreground) + (x_draw_composite_glyph_string_foreground) + (x_draw_image_foreground): Don't subtract 1 from width and height + arguments to mac_draw_rectangle. + (x_draw_hollow_cursor): Add 1 to w->phys_cursor_width. + +2006-03-10 Kim F. Storm <storm@cua.dk> + + * alloc.c (USE_POSIX_MEMALIGN): Fix last change. + +2006-03-09 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (USE_POSIX_MEMALIGN): New macro. + (ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it. + +2006-03-09 Kenichi Handa <handa@m17n.org> + + * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding + ASCII component of a composition. + +2006-03-08 Luc Teirlinck <teirllm@auburn.edu> + + * window.c: Declare preserve_y as a static global variable. + (window_scroll_pixel_based): No longer declare preserve_y; + it is global now. + (syms_of_window): Set preserve_y to -1. + +2006-03-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap + depth is 32. + [MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap + depth is 32. + +2006-03-06 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (handle_invisible_prop): Don't update it->position with + a buffer position if we're in a display string. + +2006-03-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH) + (MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines. + + * macfns.c (x_default_scroll_bar_color_parameter) + (x_set_scroll_bar_foreground, x_set_scroll_bar_background): + Remove unnecessary prototypes. + (x_set_scroll_bar_default_width): + Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH. + (mac_set_scroll_bar_width): New function. + (mac_frame_parm_handlers): Set it as handler for scroll-bar-width. + + * macterm.c (get_control_part_bounds): Fix type of return value. + (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create) + (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show + scroll bar if it is not tall enough to display scroll bar thumb. + [USE_CARBON_EVENTS] (mac_convert_event_ref) + (mac_handle_command_event, mac_handle_window_event) + (mac_handle_mouse_event): Check error code of GetEventParameter. + (convert_fn_keycode) [MAC_OSX]: Likewise. + +2006-03-05 Andreas Schwab <schwab@suse.de> + + * xselect.c (x_catch_errors_unwind): Fix missing return value. + +2006-03-02 Kim F. Storm <storm@cua.dk> + + * frame.h (struct frame): New member n_tool_bar_rows. + + * xdisp.c: Minimize the unpleasent visual impact of the requirement + that non-toolkit tool-bars must occupy an integral number of screen + lines, by distributing the rows evenly over the tool-bar screen area. + (Vtool_bar_border): New variable. + (syms_of_xdisp): DEFVAR_LISP it. + (display_tool_bar_line): Add HEIGHT arg for desired row height. + Make tool-bar row the desired height. Use default face for border + below tool-bar. + (tool_bar_lines_needed): Add N_ROWS arg. Use it to return number of + actual tool-bar rows. + (redisplay_tool_bar): Calculate f->n_tool_bar_rows initially. + Adjust the height of the tool-bar rows to fill tool-bar screen area. + (redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area + is resized. + +2006-03-01 Luc Teirlinck <teirllm@auburn.edu> + + * search.c (Fregexp_quote): Do not precede a literal `]' with two + backslashes to try to make clear that it has a literal meaning; it + does not do that. (It could close a character alternative + containing a backslash.) + +2006-02-28 Chong Yidong <cyd@stupidchicken.com> + + * xselect.c (x_catch_errors_unwind): New function. + (x_reply_selection_request): Put x_uncatch_errors in an unwind. + (Fx_get_atom_name): Call x_uncatch_errors earlier. + + * window.c (Qscroll_up, Qscroll_down): New syms. + (window_scroll_pixel_based): Make preserve_y static to avoid + getting point stuck when scrolling 1 line. + +2006-02-26 Chong Yidong <cyd@stupidchicken.com> + + * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument. + + * xterm.c (x_load_font, x_term_init, XTmouse_position) + (handle_one_xevent, x_connection_closed, x_list_fonts): + No arg for x_uncatch_errors. + + * xselect.c (x_own_selection, x_decline_selection_request) + (x_reply_selection_request, x_get_foreign_selection) + (Fx_get_atom_name, Fx_send_client_event): Likewise. + + * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame): + Likewise. + +2006-02-26 Luc Teirlinck <teirllm@auburn.edu> + + * lread.c: Declare Vload_file_rep_suffixes instead of + deleted variable default_suffixes. + (Fget_load_suffixes): New function. + (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes. + No longer use deleted variable default_suffixes. Update docstring. + (syms_of_lread): defsubr Sget_load_suffixes. + Expand `load-suffixes' docstring. + Delete default_suffixes and DEFVAR_LISP the new variable + `load-file-rep-suffixes'. + + * w32.c (check_windows_init_file): Use Fget_load_suffixes instead + of Vload_suffixes. + + * lisp.h: EXFUN Fget_load_suffixes. + Extern Vload_file_rep_suffixes. + + * eval.c (specpdl_ptr): Remove volatile qualifier for consistency + with lisp.h. + +2006-02-26 Stefan Monnier <monnier@iro.umontreal.ca> + + * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile + qualifier which was trying to avoid the bug that was fixed by + yesterday's changes to xterm.c. + +2006-02-25 Chong Yidong <cyd@stupidchicken.com> + + * xterm.h (x_catch_errors) Return value changed to void. + (x_uncatch_errors): Delete unused count argument. + + * xterm.c (x_catch_errors): Don't use record_unwind_protect, since + it can be called in a signal handler. + (x_catch_errors_unwind): Function deleted. + (x_uncatch_errors): Deallocate last x_error_message_stack struct. + (x_check_errors): Call x_uncatch_errors before signalling error. + + (x_load_font, x_term_init, XTmouse_position, handle_one_xevent) + (x_connection_closed, x_list_fonts): Use new versions of + x_catch_errors and x_uncatch_errors. + + * xselect.c (x_own_selection, x_decline_selection_request) + (x_reply_selection_request, x_get_foreign_selection) + (Fx_get_atom_name, Fx_send_client_event): Likewise. + + * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame): + Likewise. + + * eval.c (record_unwind_protect): Add an assertion. + +2006-02-25 Stefan Monnier <monnier@iro.umontreal.ca> + + * process.c (Fmake_network_process): Init the process's mark. + +2006-02-25 Kim F. Storm <storm@cua.dk> + + * buffer.c (modify_overlay): Force redisplay if we modify an + overlay at the end of the buffer. + +2006-02-24 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns + nil the image file has been removed, in that case use the (cached) + pixmap. + +2006-02-24 Kenichi Handa <handa@m17n.org> + + * fileio.c (Finsert_file_contents): When a text is replaced + partially, be sure to set point before the inserted characters. + +2006-02-23 Zhang Wei <id.brep@gmail.com> (tiny change) + + * xfns.c (Fx_file_dialog): Return a decoded file name. + +2006-02-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * dispnew.c (update_text_area): Avoid needless redraw of rightmost + glyph whose face is extended to the text area end. + + * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control + values if control is not visible or values are not changed. + +2006-02-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (Fwindow_list): Check `window' before doing XWINDOW. + The default `window' should not be "on a different frame". + +2006-02-22 Kim F. Storm <storm@cua.dk> + + * indent.c (Fvertical_motion): Only try to move back if we can. + +2006-02-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member + n_clip_rects. + + * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for + xmenu.c. + + * macterm.c (GC_CLIP_REGION): Remove macro. + (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION. + All uses changed. Don't do clipping if n_clip_rects is zero. + (mac_set_clip_rectangles): Use xassert instead of abort. + Set n_clip_rects. Don't make clip_region empty when number of + clipping rectangles is zero. + (mac_reset_clip_rectangles): Set n_clip_rects directly instead of + calling mac_set_clip_rectangles. + (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to + avoid multiple redraws. + +2006-02-22 Kim F. Storm <storm@cua.dk> + + * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display. + +2006-02-21 Kim F. Storm <storm@cua.dk> + + * fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix. + +2006-02-21 Zhang Wei <brep@newsmth.org> + + * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before + returning it. + +2006-02-21 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change) + + * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'. + (standard_bitmaps): Use it. + +2006-02-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_draw_string_common): Remove arg MODE. New arg + BG_WIDTH. All uses changed. Draw background if BG_WIDTH is not zero. + (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH. + [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from + mac_draw_string_cg. New arg BG_WIDTH. All uses changed. + Draw background if BG_WIDTH is not zero. Use float constants as + divisors instead of double. Use alloca instead of xmalloc/xfree. + (x_draw_glyph_string_background, x_draw_glyph_string_foreground) + [!MAC_OS8 || USE_ATSUI]: Background may be drawn using + mac_draw_image_string* functions. + (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of + some fonts when srcCopy text transfer mode might be used. + (mac_begin_clip, mac_end_clip): Check if region is empty. + (mac_set_clip_rectangles): When resetting clip region, make it + empty instead of disposing of it. + +2006-02-20 Kim F. Storm <storm@cua.dk> + + * Makefile.in: Add fringe.elc to WINDOW_SUPPORT. + + * buffer.h (struct buffer): New members fringe_indicator_alist and + fringe_cursor_alist. + + * buffer.c (init_buffer_once): Set dummy default values for + fringe-indicator-alist and fringe-cursor-alist. The proper + default values are set by pre-loading fringe.el. + (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and + fringe-cursor-alist buffer-local variables and defvar_lisp_nopro + corresponding default- variables. + + * fringe.c (enum fringe_bitmap_type): Remove. Change all uses + to use `int'. + (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS): + Define explicitly. + (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom) + (Qhollow_small): New variables. + (syms_of_fringe): Intern and staticpro them. + (question_mark_bits): Rename from unknown_bits. + (left_curly_arrow_bits): Rename from continuation_bits. + (right_curly_arrow_bits): Rename from continued_bits. + (left_triangle_bits): Rename from ov_bits. + (right_triangle_bits): Add. + (filled_rectangle_bits): Rename from filled_box_cursor_bits. + (hollow_rectangle_bits): Rename from hollow_box_cursor_bits. + (filled_square_bits): Add. + (vertical_bar_bits): Rename from bar_cursor_bits. + (horizontal_bar_bits): Rename from hbar_cursor_bits. + (empty_line_bits): Rename from zv_bits. + (standard_bitmaps): Update to use new names. + (draw_fringe_bitmap_1): Make static. + (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions + to map from logical cursors and indicators to physical bitmaps. + (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow + bitmaps using symbol names instead of bitmap numbers. + (update_window_fringes): Use logical indicator symbol names + instead of bitmap numbers for logical. Add bitmap cache. + (LEFT_FRINGE, RIGHT_FRINGE): New helper macros. + +2006-02-20 Chong Yidong <cyd@stupidchicken.com> + + * regex.c: Revert 2006-02-19 change. + (xmalloc, xrealloc): Define these when not linked to Emacs. + Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case. + +2006-02-19 Luc Teirlinck <teirllm@auburn.edu> + + * regex.c (extend_range_table_work_area): Fix typo. + +2006-02-19 Richard M. Stallman <rms@gnu.org> + + * xterm.c (x_catch_errors): Use xmalloc. + + * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc. + (regex_compile): Likewise. + (regcomp): Use xmalloc. + + * gtkutil.c (malloc_widget_value): Use xmalloc. + + * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h. + (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit. + + * xmenu.c (digest_single_submenu): When pane_string is empty, + do initialize save_wv. + +2006-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * xdisp.c (update_menu_bar) [MAC_OS]: Don't set + w->update_mode_line if arg F is not the selected frame. + + * macmenu.c (popup_activated_flag, submenu_id) + (next_menubar_widget_id): Remove variables. + (initialize_frame_menubar): Remove function. + (pop_down_menu, mac_menu_show): Simplify save value. + (dispose_menus): New function. + (pop_down_menu, fill_menubar): Use it. + (fill_submenu): Remove function. All uses changed to fill_menu. + (add_menu_item): Remove args SUBMENU and FORCE_DISABLE. New arg + POS. Don't call SetMenuItemHierarchicalID here. + (fill_menu): Add arg SUBMENU_ID. Return submenu_id that is to be + used next. Call SetMenuItemHierarchicalID here. + (fill_menubar): Add arg DEEP_P. All uses changed. Clean up menu + objects if needed. Reuse existing menu bar titles if possible. + (set_frame_menubar): Don't clean up menu objects here. + +2006-02-18 Chong Yidong <cyd@stupidchicken.com> + + * window.c (window_min_size_1): Ensure room for the scroll bar and + fringes. + +2006-02-17 Romain Francoise <romain@orebokech.com> + + * puresize.h (BASE_PURESIZE): Increment to 1200000. + +2006-02-17 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (Fmake_symbol): Comment-out left-over assert from before the + addition of the BLOCK_INPUTs. + +2006-02-17 Juanma Barranquero <lekktu@gmail.com> + + * window.c (Fset_window_scroll_bars): Doc fix. + +2006-02-17 Kenichi Handa <handa@m17n.org> + + * xdisp.c (display_mode_element): Call display_string with correct + PREC arg (which must be a number of characters, not column width). + +2006-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac. + + * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac. + + * macmenu.c (set_frame_menubar): Don't call DrawMenuBar. + +2006-02-14 Richard M. Stallman <rms@gnu.org> + + * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST. + + * m/ibms390x.h: New file. + +2006-02-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the + value of x-gtk-whole-detached-tool-bar. + (xg_tool_bar_attach_callback): Set show-arrow to TRUE. + + * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar. + +2006-02-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_x_to_emacs_modifiers): Make non-static. + + * xterm.h: Declare x_x_to_emacs_modifiers. + + * gtkutil.c (xg_tool_bar_button_cb): New function. + (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to + store modifiers in event. + (update_frame_tool_bar): Connect button-release-event to + xg_tool_bar_button_cb. + +2006-02-13 Richard M. Stallman <rms@gnu.org> + + * .gdbinit (xwindow): Update the code to show the window box. + +2006-02-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame). + +2006-02-12 Richard M. Stallman <rms@gnu.org> + + * cmds.c (internal_self_insert): Handle weird auto-fill-function. + +2006-02-11 Eli Zaretskii <eliz@gnu.org> + + * keyboard.c (Venable_disabled_menus_and_buttons): New variable. + (syms_of_keyboard): DEVFAR_LISP and initialize it. + (parse_tool_bar_item, parse_menu_item): If that variable is + non-nil, don't disable menu items and tool-bar buttons. + +2006-02-11 Juanma Barranquero <lekktu@gmail.com> + + * doc.c (Fsubstitute_command_keys): Doc fix. + +2006-02-10 Thien-Thi Nguyen <ttn@gnu.org> + + * data.c (Findirect_function): Rewrite docstring. + Fix omission bug: Declare new arg NOERROR. + +2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor + if window_desc is not set yet. + (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07 + and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame + parameter `visibility' is `icon'. + (Fx_create_frame, x_create_tip_frame): Use "fontset-standard" + instead of "fontset-mac". + (Fx_focus_frame): New defun. + (syms_of_macfns): Defsubr it. + + * macterm.c (mac_define_frame_cursor): Don't change pointer shape + for unfocused frame. + (x_raise_frame): Call BringToFront instead of SelectWindow. + (x_lower_frame): Use NULL instead of nil. + (x_make_frame_visible): Don't call SelectWindow. + (XTread_socket): Increment handling_signal at the start, decrement + it at the end. + [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use + CFPreferencesGetAppIntegerValue instead of Fmac_get_preference. + +2006-02-10 Kim F. Storm <storm@cua.dk> + + * data.c (Findirect_function): Add NOERROR arg. All callers changed + to pass Qnil for NOERROR. + + * keymap.c (current_minor_maps_error): Remove. + (current_minor_maps): Pass Qt for NOERROR to Findirect_function + instead of using internal_condition_case_1+current_minor_maps_error. + +2006-02-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): Must note mouse movement even for nil + frames for GTK, in that case it is the tool bar. This is so that + highlighted text get reset properly. + +2006-02-09 Juanma Barranquero <lekktu@gmail.com> + + * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes. + +2006-02-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * window.c (adjust_window_trailing_edge): Check that shrinking + does not set a window to size zero or less. + +2006-02-08 Miles Bader <miles@gnu.org> + + * editfns.c (Fconstrain_to_field): Use Fget_char_property instead + of Fget_text_property (other field functions work with overlays as + well as text-properties). + +2006-02-07 Kenichi Handa <handa@m17n.org> + + * dispextern.h (unibyte_display_via_language_environment): Extern it. + + * xterm.h (unibyte_display_via_language_environment): + * w32term.h (unibyte_display_via_language_environment): + * macterm.h (unibyte_display_via_language_environment): Delete extern. + +2006-02-07 Kenichi Handa <handa@m17n.org> + + * term.c (append_glyph): Refer to it->char_to_display instead of it->c. + (produce_glyphs): Set the character to print in + it->char_to_display. Handle unibyte-display-via-language-environment. + (produce_stretch_glyph): Set character to print in it->char_to_display. + +2006-02-06 Kenichi Handa <handa@m17n.org> + + * lread.c (openp): Initialize encoded_fn before GCPRO it. + +2006-02-05 Ken Raeburn <raeburn@raeburn.org> + + * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup. + + * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]: + Cast bitfield value to EMACS_INT, to suppress gcc warning. + + * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before + defining. + +2006-02-03 Kim F. Storm <storm@cua.dk> + + * xdisp.c: Cache last merged escape glyph face. + (last_escape_glyph_frame, last_escape_glyph_face_id) + (last_escape_glyph_merged_face_id): New variables. + (get_next_display_element): Use/update them. + (redisplay_internal): Reset them before redisplay. + + * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix. + Only recheck faces after displaying ellipsis. + +2006-02-02 Kenichi Handa <handa@m17n.org> + + * coding.c (decode_composition_emacs_mule): Fix handling of + incorrect format data. + +2006-01-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (update_frame_tool_bar): Use new tool bar function + gtk_toolbar_insert() so we can have tool bars of different sizes. + +2006-01-30 Luc Teirlinck <teirllm@auburn.edu> + + * data.c (Flistp): Doc fix. + +2006-01-30 Juanma Barranquero <lekktu@gmail.com> + + * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll): + Fix typos in docstrings. + +2006-01-28 Luc Teirlinck <teirllm@auburn.edu> + + * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings. + +2006-01-27 Chong Yidong <cyd@stupidchicken.com> + + * alloc.c (make_interval, allocate_string) + (allocate_string_data, make_float, Fcons, allocate_vectorlike) + (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing + global variables. + +2006-01-27 Eli Zaretskii <eliz@gnu.org> + + * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use + the MSDOS definition. + +2006-01-26 Richard M. Stallman <rms@gnu.org> + + * alloc.c (check_pure_size): Make overflow message an "error message". + + * keymap.c (Fmap_keymap): Doc fix. + + * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist + unless they were cleared out. + + * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there. + +2006-01-26 L$,1 q(Brentey K,Aa(Broly <lorentey@elte.hu> + + * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries. + (find_field): Set before_field to after_field when pos is at BEGV. + (Fline_beginning_position, Fline_end_position): + Clarify confusing doc string. + + * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc + string. + +2006-01-26 Kenichi Handa <handa@m17n.org> + + * callproc.c (Fcall_process): GCPRO error_file. Encode infile, + current_dir, and error_file. On reporting an error, decode them + back. + +2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca> + + * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well. + (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>: + Don't check for quit, since any loop will go through fail or jump. + +2006-01-24 Chong Yidong <cyd@stupidchicken.com> + + * alloc.c (allocate_string_data): Update next_free immediately, to + reduce risk of memory clobberage. + +2006-01-24 L$,1 q(Brentey K,Aa(Broly <lorentey@elte.hu> + + * xdisp.c (handle_invisible_prop): Set it->position to fix cursor + display when point moves across an ellipsis. If there are + adjacent invisible texts, don't lose the second one's ellipsis. + (x_produce_glyphs): Doc fix. + +2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca> + + * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup. + +2006-01-23 Kim F. Storm <storm@cua.dk> + + * xdisp.c (handle_single_display_spec): Fix handling of space + property on char from string: set *position rather than + it->current.pos. + (produce_stretch_glyph): Reduce width of stretch glyphs so they + don't get wider than the window (unless truncate-lines is on). + +2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * xterm.c: Avoid allocating Lisp data from a signal handler. + (x_error_message): New var to replace x_error_message_string. + (x_error_catcher, x_catch_errors, x_catch_errors_unwind) + (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler) + (syms_of_xterm): Use it instead of x_error_message_string. + + * alloc.c (lisp_align_free): Add an assertion. + (make_interval, allocate_string, make_float, Fcons, Fmake_symbol) + (allocate_misc): If ENABLE_CHECKING is on, check we're not called from + a signal handler. + +2006-01-21 Luc Teirlinck <teirllm@auburn.edu> + + * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix. + +2006-01-21 Romain Francoise <romain@orebokech.com> + + * xdisp.c (get_window_cursor_type): Fix last change. + Update copyright year. + +2006-01-20 Eli Zaretskii <eliz@gnu.org> + + * lread.c (Fload): Don't leak the file descriptor returned by + openp if we are going to signal an error. + + * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it + directly to _close. + (sys_dup): Protect against new_fd larger than fd_info[] can handle. + (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly + to _read. + (sys_write): If FD is outside [0..MAXDESC) limits, pass it + directly to _write. + + * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer + if it is NULL. + +2006-01-20 Kenichi Handa <handa@m17n.org> + + * puresize.h (BASE_PURESIZE): Increment to 1190000. + +2006-01-19 Chong Yidong <cyd@stupidchicken.com> + + * xdisp.c (get_window_cursor_type): Use cursor type specified by + the selected buffer for the echo area too. + +2006-01-19 Richard M. Stallman <rms@gnu.org> + + * keymap.c (Fmap_keymap): Doc fix. + + * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions. + + * keyboard.c (echo_char): Don't omit the space between first two + echoed chars. + + * minibuf.c (read_minibuf): Fix previous change. + +2006-01-19 Kenichi Handa <handa@m17n.org> + + * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF. + +2006-01-17 Richard M. Stallman <rms@gnu.org> + + * frame.c (x_frame_get_and_record_arg): Don't record Qunbound + value in f->param_alist. + +2006-01-15 Andreas Schwab <schwab@suse.de> + + * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP. + +2006-01-13 Richard M. Stallman <rms@gnu.org> + + * Makefile.in: Define new macro WINDOW_SUPPORT. + (lisp): Use it. + (SOME_MACHINE_LISP): Add conditionally loaded files. + +2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr) + [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering. + (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in + decomposed form. + + * process.c [HAVE_INTTYPES_H]: Include inttypes.h. + (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE). + (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK + macro. Also try member ifr_addr when getting netmask. + +2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (Fexpand_file_name): Remove redundant tests. + Fix elimination of // so that it doesn't prevent elimination of an + immediately following /. or /.. + +2006-01-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_toggle_notify_cb): New function. + (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to + xg_toggle_notify_cb. + (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when + parameter value changes so the toggle button gets updated. + +2006-01-06 Nick Roberts <nickrob@snap.net.nz> + + * .gdbinit: Fix typo. + +2006-01-05 Eli Zaretskii <eliz@gnu.org> + + * .gdbinit: Fix last change. + +2006-01-05 Kim F. Storm <storm@cua.dk> + + * process.c (Fmake_network_process): Use AF_INET instead of + AF_UNSPEC when AF_INET6 is not defined. + +2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc): + Don't check that the other type is known file-related one. + + * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor, + gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac + OS X 10.4 and later. + +2006-01-04 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file, + let GTK do all image processing. Importing Emacs own pixmaps to GTK + looks bad for inactive tool bar items with some Gnome themes. + +2006-01-04 Eli Zaretskii <eliz@gnu.org> + + * .gdbinit: Avoid a warning message when x_error_quitter is not + compiled in. + + * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support + for w32. + +2006-01-04 Kim F. Storm <storm@cua.dk> + + * process.c: Add IPv6 support. + (Qipv4, Qipv6): New vars. + (syms_of_process): Intern and staticpro them. + (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address + with or without port number. Handle 4 element vector as IPv4 address + without port number. + (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size) + (conv_lisp_to_sockaddr): Handle IPv6 addresses. + (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly + request that address family only. :family nil or omitted means to + determine address family from the specified :host and :service. + (ifflag_table): Add missing OpenBSD IFF_ flags. + (server_accept_connection): Handle IPv6 addresses. + (init_process): Add (:family ipv4) and (:family ipv6) sub-features. + + * .gdbinit: Undo last change. Instead, look at Vsystem_type to + determine which breakpoints to set. + +2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup. + + * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c). + +2006-01-03 Romain Francoise <romain@orebokech.com> + + * emacs.c (main): Update copyright year. + +2006-01-03 Ken Raeburn <raeburn@gnu.org> + + * callproc.c (delete_temp_file): Bind file-name-handler-alist to + nil for the call to internal_delete_file. + +2006-01-01 Ken Raeburn <raeburn@gnu.org> + + * callproc.c (Fcall_process_region): Bind file-name-handler-alist + to nil for the call to Fwrite_region. + +2005-12-31 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (read_minibuf): Clear out all other minibuffer windows. + +2005-12-31 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake. + +2005-12-30 Luc Teirlinck <teirllm@auburn.edu> + + * textprop.c (set_text_properties): Reword description of return value. + Return Qnil if caller wants to remove all text properties from a + string and the string already has no intervals. + +2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * term.c (visible_cursor): New boolean var. + (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on + visible_cursor. + (syms_of_term): Export the new var as "visible-cursor". + +2005-12-30 Eli Zaretskii <eliz@gnu.org> + + * .gdbinit: Tell users not to worry about GDB warnings that some + functions do not exist in the binary. + +2005-12-30 Andreas Schwab <schwab@suse.de> + + * process.c (Fnetwork_interface_info): Correctly terminate the + loop over ifflag_table. + +2005-12-29 Richard M. Stallman <rms@gnu.org> + + * lread.c (readevalloop): Test for reading a whole buffer + before actually reading anything. Handle all cases, including + START = END = nil and an already-narrowed buffer. + Convert END to a marker if it is a number. + + * keymap.c (describe_map): Put sparse map elements into an array, + sort them, then output a sequence of identical bindings on one line. + (struct describe_map_elt): New data type. + (describe_map_compare): New function. + +2005-12-28 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_file_with_chooser): Change message shown + in file chooser. + +2005-12-27 Richard M. Stallman <rms@gnu.org> + + * lread.c (readevalloop): Set PT and ZV in the proper buffer, + not the current one. + + * minibuf.c (Fminibuffer_message): Doc fix. + (read_minibuf): Set current_buffer->enable_multibyte_characters sooner. + + * eval.c (do_autoload): Ignore elements of Vautoload_queue + where car is not symbol. + +2005-12-27 Kenichi Handa <handa@m17n.org> + + * charset.c (lisp_string_width): Check multibyteness of STRING. + +2005-12-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_show_hidden_files): New variable. + (syms_of_xfns): Defvar it. + + * gtkutil.c (xg_toggle_visibility_cb): New function. + (xg_get_file_with_chooser): Add toggle hidden files and a message + to the new file chooser dialog. Show hidden files if + x_show_hidden_files is non-zero. + +2005-12-26 Richard M. Stallman <rms@gnu.org> + + * keyboard.h: Undo previous change. + + * Makefile.in (undo.o): Undo previous change. + + * undo.c: Undo previous change. + +2005-12-26 Luc Teirlinck <teirllm@auburn.edu> + + * keyboard.h: extern last_point_position_window. + + * undo.c: include keyboard.h. + + * Makefile.in (undo.o): Depend on keyboard.h. + +2005-12-26 Richard M. Stallman <rms@gnu.org> + + * commands.h (last_point_position_window): Declare. + + * undo.c: Depend on window.h. + (record_point): Save old point from the correct window. + + * keyboard.c (last_point_position_window): New variable. + (command_loop_1): Set last_point_position_window. + (syms_of_keyboard): Init it. + + * Makefile.in (undo.o): Depend on window.h. + +2005-12-25 Richard M. Stallman <rms@gnu.org> + + * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue + to undo a `provide'. + + * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue. + +2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr> + + * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD): + define for FreeBSD on this platform. + +2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.h (TYPE_FILE_NAME): New define. + (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs. + + * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname): + Add prototypes. Make static. + (mac_aedesc_to_lisp): Initialize err to noErr. + (mac_coerce_file_name_ptr, mac_coerce_file_name_desc) + (init_coercion_handler): New functions. + (Fmac_coerce_ae_data): Use coercion of Apple event data for + translation from/to file names. + + * macterm.c: Don't include sys/param.h. + (init_coercion_handler): Add extern. + [MAC_OS8] (main): Call init_coercion_handler. + (mac_initialize) [MAC_OSX]: Likewise. + [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of + Apple event data for translation from/to file names. + + * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise. + + * image.c [MAC_OS] (find_image_fsspec): Likewise. + +2005-12-23 Martin Rudalics <rudalics@gmx.at> + + * insdel.c (insert, insert_and_inherit, insert_before_markers) + (insert_before_markers_and_inherit): Make sure FROM is correct + when `after-change-functions' are called. + +2005-12-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (Fx_uses_old_gtk_dialog): New function. + + * gtkutil.c (xg_uses_old_file_dialog): New function. + (xg_get_file_name): Use xg_uses_old_file_dialog. + + * gtkutil.h: Declare xg_uses_old_file_dialog. + +2005-12-22 Richard M. Stallman <rms@gnu.org> + + * xmenu.c (xmenu_show): Call inhibit_garbage_collection. + +2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak. + + * macgui.h (XCharStruct): Remove member `valid_p'. + (STORE_XCHARSTRUCT): Don't set member `valid_p'. + (XCharStructRow): New typedef. + (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID): + New macros. + (struct MacFontStruct): Add member `bounds'. Remove member + `per_char'. All uses for QuichDraw Text fonts are changed to + `bounds.per_char'. ATSUI font bounds are represented as an array + `bounds.rows' of XCharStructRow's, each of which consists of a + bitmap of valid entries and an array of char bounds. + + * macterm.c (mac_per_char_metric): Add prototype. + (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype. + (mac_query_char_extents): New function. + (x_per_char_metric): Use it. + (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations. + [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): + Use mac_per_char_metric instead of x_per_char_metric. + (mac_text_extents_16): New function. + (mac_compute_glyph_string_overhangs): Use it. + (mac_unload_font): Free member `bounds' in struct MacFontStruct. + +2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca> + + * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR. + (Fminibuffer_completion_help): Remove duplicates before display. + +2005-12-21 L$,1 q(Brentey K,Aa(Broly <lorentey@elte.hu> + + * print.c (print_preprocess): Don't lose print_depth levels while + iterating. + +2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (Qmac_apple_event): Add extern. + (set_frame_menubar, mac_menu_show keymp_panes) + (single_keymap_panes, list_of_panes, list_of_item) + (single_menu_item): Add argument types to prototypes. + (mac_dialog_show) [HAVE_DIALOGS]: Likewise. + (struct skp): New struct (from xmenu.c). + (single_keymap_panes, single_menu_item, list_of_panes) + (list_of_item): Sync with xmenu.c. + (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from + POSITION if it is mac-apple-event event. + (menubar_selection_callback): Don't use menu_command_in_progress. + (set_frame_menubar): First parse all submenus, then make + widget_value trees from them. Don't allocate any widget_value + objects until we are done with the parsing. + (parse_single_submenu, digest_single_submenu): New functions. + (single_submenu): Function deleted, replaced by those two. + (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't create + or dispose of EventHandlerUPP. Install hander to all submenus. + (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING + instead of ENCODE_SYSTEM. + (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for + integer values. + [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c). + (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to + format menu item string. Don't use NULL for integer value. + + * macterm.h (struct mac_output): Remove unused member + menu_command_in_progress. + +2005-12-20 Juri Linkov <juri@jurta.org> + + * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if + position is non-nil, else set it to nil. + + * macmenu.c (Fx_popup_menu): Add `else' to set + Vmenu_updating_frame to nil only if position is nil. + + * w32menu.c (Fx_popup_menu): Add `else' to set + Vmenu_updating_frame to nil only if position is nil. + +2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * keyboard.c (make_lispy_event): Drag-and-drop items are now + stored in member `args' of struct input_event. + + * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT. + + * xselect.c (x_handle_dnd_message): Drag-and-drop items are now + stored in member `args' of struct input_event. + + * w32term.c (construct_drag_n_drop): Likewise. + + * macterm.c (mac_do_receive_drag): Likewise. + (x_use_underline_position_properties): Undo 2005-07-13 change. + (syms_of_macterm) <x-use-underline-position-properties>: Likewise. + (mac_use_core_graphics, mac_wheel_button_is_mouse_2) + (mac_pass_command_to_system, mac_pass_control_to_system): + New boolean variables renamed from Lisp_Object ones + Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2, + Vmac_pass_command_to_system, and Vmac_pass_control_to_system. + All uses changed. + (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs. + Make them user options. + (mac_handle_command_event, mac_store_services_event): + Call create_apple_event_from_event_ref without 5th argument. + (backtranslate_modified_keycode): Mask off modifier keys that are + mapped to some Emacs modifiers before passing it to KeyTranslate. + (syms_of_macterm): Make variables `mac-emulate-three-button-mouse', + `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options. + Fix docstrings of `mac-*-modifier'. + + * mac.c (create_apple_event_from_event_ref): Remove arg `types'. + (do_applescript): Change argument types to Lisp_Object. + All uses changed. + + * macterm.h (create_apple_event_from_event_ref): Remove 5th + argument from extern. + +2005-12-18 Dan Nicolaescu <dann@ics.uci.edu> + + * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine + the answer, return `lambda', not nil. + +2005-12-17 Eli Zaretskii <eliz@gnu.org> + + * makefile.w32-in (bootstrap-temacs): Warn that parts of commands + enclosed in $(ARGQUOTE)s should not be split between two lines, as + that will break with GNU Make >3.80, when sh.exe is used and + arg quoting is with '..'. + +2005-12-17 Chong Yidong <cyd@stupidchicken.com> + + * print.c (print_preprocess): Just signal an error if print_depth + is exceeded. + +2005-12-17 Eli Zaretskii <eliz@gnu.org> + + * .gdbinit: Set a breakpoint on w32_abort. + +2005-12-16 Juri Linkov <juri@jurta.org> + + * minibuf.c (Fminibuffer_completion_contents): New Lisp function + created from minibuffer_completion_contents. + (minibuffer_completion_contents): Remove. + (do_completion, Fminibuffer_complete_word) + (Fminibuffer_completion_help): Replace minibuffer_completion_contents + with Fminibuffer_completion_contents. + (syms_of_minibuf): Add Sminibuffer_completion_contents. + (Fdisplay_completion_list): Doc fix. + (display_completion_list_1): Use `nil' for second arg of + `Fdisplay_completion_list'. + +2005-12-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (compute_tip_xy): Handle negative dx and dy. + + * w32fns.c (compute_tip_xy): Ditto. + + * macfns.c (compute_tip_xy): Ditto. + +2005-12-14 Chong Yidong <cyd@stupidchicken.com> + + * print.c (print_preprocess): Go to a deeper print_depth to avoid + print_object loop. + +2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change) + + * coding.c (code_convert_region_unwind): GCPRO arg. + +2005-12-12 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x, + i.e. dy is offset from top of frame instead of bottom. + + * macfns.c (compute_tip_xy): Ditto. + + * w32fns.c (compute_tip_xy): Ditto. + + * gtkutil.c (SSDATA): New macro to remove compiler warnings. + (xg_get_image_for_pixmap, xg_create_frame_widgets) + (xg_get_file_with_chooser): Use SSDATA instead of SDATA. + + * xmenu.c (menubar_selection_callback): Do nothing if the callback + is for an unselected radio menu item. + +2005-12-11 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix. + + * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once. + + * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE. + (Flookup_key): Doc fix. + (syms_of_keymap) <function-key-map>: Doc fix. + + * fns.c (Frequire): Treat evaluating from a source file + like loading the file. + + * floatfns.c (Flog): Doc fix. + + * fileio.c (Finsert_file_contents): Set Vdeactivate_mark + when we change the buffer. + +2005-12-11 Juri Linkov <juri@jurta.org> + + * minibuf.c (display_completion_list_1): + Call `minibuffer_completion_contents' instead of using `nil' as + second arg of `Fdisplay_completion_list'. + (keys_of_minibuf): Unbind SPC in + Vminibuffer_local_filename_completion_map (see also related + change on 2005-12-06). + +2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * emacs.c (main) [MAC_OS8]: Undo previous change. + + * macselect.c (syms_of_macselect) <mac-apple-event-map>: + Initialize to nil. Keymap is now created in lisp/term/mac-win.el. + +2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * Makefile.in (macselect.o): Depend on keymap.h. + + * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before + syms_of_macselect. + + * image.c (init_image) [MAC_OS]: Don't call EnterMovies. + [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies. + + * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable. + (syms_of_keyboard) [MAC_OS]: Initialize it. + (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT. + + * mac.c (Qundecoded_file_name): New variable. + (syms_of_mac): Initialize it. + (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions. + [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun. + (Fmac_coerce_ae_data): New defun. + (syms_of_mac): Defsubr it. + + * macselect.c: Include keymap.h. + (mac_ready_for_apple_events): New variable. + (Vmac_apple_event_map, Qmac_apple_event_class) + (Qmac_apple_event_id): New variables. + (syms_of_macselect): Initialize them. + (Qundefined, mac_store_apple_event): Add externs. + (struct apple_event_binding): New struct. + (find_event_binding_fun, find_event_binding) + (mac_find_apple_event_spec, defer_apple_events) + (mac_handle_apple_event, init_apple_event_handler) + (copy_scrap_flavor_data): New functions. + (Fmac_process_deferred_apple_events): New defun. + (syms_of_macselect): Defsubr it. + (mac_store_services_event): Fix extern. + (mac_handle_service_event): Don't allocate Lisp objects during + asynchronous input processing. Use mac_store_services_event + instead of mac_store_application_menu_event. + + * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout) + (Qpreferences): Remove variables. + (syms_of_macterm): Don't initialize them. + (Qhicommand) [USE_CARBON_EVENTS]: New variable. + (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it. + (init_required_apple_events, do_ae_open_application) + (do_ae_print_documents, do_ae_open_documents) + (do_ae_quit_application): Remove functions and prototypes. + (mac_ready_for_apple_events, Qundefined, init_apple_event_handler) + (mac_find_apple_event_spec): Add externs. + (mac_store_application_menu_event): Remove function. + (mac_store_apple_event, mac_make_lispy_event_code): New functions. + (mac_handle_command_event): Create Apple event from Carbon event. + Use mac_store_apple_event instead of mac_store_application_menu_event. + [MAC_OSX] (mac_store_services_event): Likewise. + (struct SelectionRange, SelectionRange): Remove struct and typedef. + [MAC_OS8] (main): Call init_apple_event_handler instead of + init_required_apple_events. + (mac_initialize) [MAC_OSX]: Likewise. + [!USE_CARBON_EVENTS] (mac_wait_next_event): + Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop. + + * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp): + Add externs. + (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise. + (Fmac_get_preference): Add EXFUN. + + * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT + event. + +2005-12-09 Richard M. Stallman <rms@gnu.org> + + * xfns.c (Fx_create_frame): Reinstate previous change. + +2005-12-09 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching + GDB to the abort dialog. + +2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change) + + * indent.c (Fvertical_motion): Force move if starting on + stretch glyph. + +2005-12-08 Richard M. Stallman <rms@gnu.org> + + * lread.c (read_escape) <\s>: Don't treat strings specially. + + * xfns.c (Fx_create_frame): Comment out previous change. + +2005-12-07 L$,1 q(Brentey K,Aa(Broly <lorentey@elte.hu> + + * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame, + when needed. + +2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca> + + * minibuf.c (keys_of_minibuf): Just unbind SPC in + Vminibuffer_local_filename_completion_map rather than forcing it + explicitly to the same binding as the global map. + +2005-12-06 Ken Raeburn <raeburn@gnu.org> + + * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args. + * bytecode.c (Fbyte_code): Likewise. + * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise. + * minibuf.c (Fminibuffer_complete_and_exit): Likewise. + * undo.c (truncate_undo_list): Likewise. + +2005-12-05 Richard M. Stallman <rms@gnu.org> + + * window.c (enlarge_window): Eliminate arg preserve_before. + Assume it is 0. All callers changed. + (Fenlarge_window, Fshrink_window): Likewise. + +2005-12-02 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't + fit below. + +2005-12-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h: Add prototype for xg_set_icon_from_xpm_data. + + * xfns.c (x_real_positions): int ign => unsigned int. + (xg_set_icon_from_xpm_data): Remove unused variable err. + (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast + to remove compiler warning. + (compute_tip_xy): Put tip above pointer if it doesn't fit below. + +2005-12-02 David Reitter <david.reitter@gmail.com> + + * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is + non-nil, use the new keymaps Vminibuffer_local_filename_completion_map + and Vminibuffer_local_must_match_filename_map keymaps. + (keys_of_minibuf): Bind SPC in the new file-name completion keymaps. + + * keymap.c (Vminibuffer_local_filename_completion_map) + (Vminibuffer_local_must_match_filename_map): New variables. + (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their + parent to be Vminibuffer_local_completion_map and + Vminibuffer_local_must_match_map, respectively. + + * commands.h (Vminibuffer_local_filename_completion_map) + (Vminibuffer_local_must_match_filename_map): Declare the new keymaps. + +2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (Fset_window_configuration): Don't accidentally copy the + window-point of one window to another. + +2005-11-30 L$,1 q(Brentey K,Aa(Broly <lorentey@elte.hu> + + * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer. + +2005-11-30 Kim F. Storm <storm@cua.dk> + + * alloc.c: Include fcntl.h. Define O_WRONLY if not defined. + (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by + passing it to `emacs_write'. + +2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change) + + * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'. + +2005-11-27 Richard M. Stallman <rms@gnu.org> + + * window.c (adjust_window_trailing_edge): New function. + (Fadjust_window_trailing_edge): New function. + (syms_of_window): Defsubr it. + (window_deletion_count): New variable. + (delete_window): Update window_deletion_count. + +2005-11-26 Eli Zaretskii <eliz@gnu.org> + + * minibuf.c (syms_of_minibuf): Mention the extension of + `completion-auto-help's meaning by complete.el. + +2005-11-26 Henrik Enberg <henrik.enberg@telia.com> + + * xfaces.c (Finternal_set_lisp_face_attribute_from_resource): + Handle :inherit property as a lisp expression. + +2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (Qcontrol): Rename from Qctrl. All uses changed. + (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper, + Qsuper, and Qmodifier_value. + (Vmac_control_modifier, Vmac_option_modifier) + (Vmac_command_modifier, Vmac_function_modifier) + (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2) + (Vmac_pass_command_to_system, Vmac_pass_control_to_system) + (Vmac_charset_info_alist): Doc fixes. + +2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * emacs.c (main) [MAC_OSX]: Change working directory to home + directory if `-psn_*' option is specified. + + * mac.c (DECODE_UTF_8): Remove macro. + [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function + created from cfstring_to_lisp. + [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it. + (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise. + + * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]: + Add prototype. + +2005-11-21 Ken Raeburn <raeburn@gnu.org> + + * keymap.c (shadow_lookup): Use make_number to pass a number to + Fsubstring. + +2005-11-21 Juri Linkov <juri@jurta.org> + + * puresize.h (BASE_PURESIZE): Increment to 1180000. + +2005-11-20 Chong Yidong <cyd@stupidchicken.com> + + * xfaces.c (Finternal_set_lisp_face_attribute): + Use :ignore-defface for new frame defaults when `unspecified' is + supplied. + (Finternal_get_lisp_face_attribute): Hide :ignore-defface. + (merge_face_vectors): Don't do :ignore-defface overwriting here. + (Finternal_merge_in_global_face): Do it here. + +2005-11-20 Juri Linkov <juri@jurta.org> + + * charset.c (invalid_character): Use Lisp-readable syntax + for octal and hex. Reorder decimal, octal and hex values. + +2005-11-20 Nick Roberts <nickrob@snap.net.nz> + + * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that + this type is recognised when debugging. + +2005-11-19 Andreas Schwab <schwab@suse.de> + + * .gdbinit (nextcons, xcdr, xfloat): Update for changes in + Lisp_Cons and Lisp_Float. + +2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold): + New variable. + [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun. + (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it. + [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if + font size is smaller than or equal to cg_text_anti_aliasing_threshold. + +2005-11-17 Chong Yidong <cyd@stupidchicken.com> + + * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail. + + * xfaces.c (Qignore_defface): New variable. + (syms_of_xfaces): Provide `:ignore-defface'. + (IGNORE_DEFFACE_P): New macro. + (check_lface_attrs, lface_fully_specified_p) + (Finternal_set_lisp_face_attribute) + (Fface_attribute_relative_p, Fmerge_face_attribute): + Handle Qignore_defface as a possible value. + (merge_face_vectors): The merged face is `unspecified' if the + mergee specifies `:ignore-defface'. + +2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca> + + * lread.c (readevalloop): Add missing GCPROs. + +2005-11-16 Chong Yidong <cyd@stupidchicken.com> + + * xfns.c (xg_set_icon_from_xpm_data): New function. + + * gnu.h (gnu_xpm_bits): Rename from gnu_bits. + (gnu_xbm_bits): Rename from gnu_bits (xbm version). + + * xterm.c (x_bitmap_icon): Use the xpm if available. + + * image.c (x_create_bitmap_from_xpm_data): New function. + (x_create_bitmap_from_xpm_data): Initialize XpmAttributes. + +2005-11-15 Luc Teirlinck <teirllm@auburn.edu> + + * Makefile.in (lisp, shortlisp): Add rfn-eshadow. + +2005-11-16 Nick Roberts <nickrob@snap.net.nz> + + * .gdbinit: Make SIGTSTP work like SIGINT normally does. + +2005-11-15 Andreas Schwab <schwab@suse.de> + + * lisp.h (struct Lisp_Cons): Make cdr a union. + (XCDR_AS_LVALUE): Adjust. + (struct Lisp_Float): Make data a union. + (XFLOAT_DATA): Adjust. + + * alloc.c (free_float): Make free list chaining aliasing-safe. + (make_float): Likewise. + (free_cons): Likewise. + (Fcons): Likewise. + (check_cons_list): Likewise. + (Fmake_symbol): Likewise. + (allocate_misc): Likewise. + (free_misc): Likewise. + (gc_sweep): Likewise. + +2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (HASHKEY_QUERY_CACHE): New define. + (xrm_create_database, xrm_q_put_resource): Empty query cache. + (xrm_get_resource): Use query cache. + + * image.c (init_image) [MAC_OS]: Don't call EnterMovies if + inhibit_window_system is set. + +2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macgui.h (USE_CG_TEXT_DRAWING): New define. + (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font + and cg_glyphs. + + * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function. + (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it. + (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and + cg_glyphs in struct MacFontStruct if synthesized bold or italic is + not used and font substitution never occurs for ASCII and Latin-1 + characters. + (XLoadQueryFont): Maximum and minimum metrics are now those among + ASCII characters. + (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style + height adjustments for Courier, Helvetica, and Times. + + * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'. + +2005-11-11 David Reitter <david.reitter@gmail.com> + + * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey, + macMetaKey, macAltKey. Introduce Qctrl, Qmeta, + Vmac_control_modifier / mac-control-modifier, + Vmac_option_modifier / mac-option-modifier, + Vmac_command_modifier / mac-command-modifier. + (mac_to_emacs_modifiers): Use the new style modifier + variables. Return UInt32 (modifiers are longs now.) + (backtranslate_modified_keycode): New function (refactoring). + (XTread_socket): Use new modifier variables and refactored function. + (mac_determine_quit_char_modifiers): Remove macMetaKey (there is + no dedicated meta key. Not in use anyway.) + (convert_fn_keycode): Map Fn-keys to their original keycode + using a table (english keyboard only). + +2005-11-11 Kim F. Storm <storm@cua.dk> + + * .gdbinit (pitx): Fix output format if n_overlay_strings > 0. + Add post hook to "backtrace" to always dump lisp call stack to + increase chance of people sending it to us when reporting bugs. + + * doc.c (Fsubstitute_command_keys): Doc fix. + + * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p. + + * xdisp.c (handle_stop): Skip overlay string handling if + ignore_overlay_strings_at_pos_p is set. + (set_iterator_to_next): At end of display vector, set + ignore_overlay_strings_at_pos_p if dpvec came from an overlay + string, so we skip those overlay strings at current pos. + +2005-11-10 Lars Hansen <larsh@soem.dk> + + * fileio.c (file-regular-p): Doc fix. + +2005-11-10 Kim F. Storm <storm@cua.dk> + + * alloc.c (valid_lisp_object_p): New function to validate that + an object is really a valid Lisp_Object. + + * lisp.h (valid_lisp_object_p): Add prototype. + + * print.c (safe_debug_print): New function to be called from gdb + to print Lisp objects; use valid_lisp_object_p to avoid crashing + if user tries to print something which is not a Lisp object. + + * .gdbinit (pp, pp1): Use safe_debug_print. + (pv, pv1): New commands to print value of a lisp variable. + +2005-11-10 Nick Roberts <nickrob@snap.net.nz> + + * .gdbinit (pp1): New user-defined function. + +2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak. + + * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale + related variables for dumped executable. + + * unexmacosx.c (unexec_write_zero): New function. + (copy_data_segment): Clear uninitialized local variables in + statically linked libraries. + + * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common. + +2005-11-09 Juri Linkov <juri@jurta.org> + + * keymap.c (shadow_lookup): If Flookup_key returns a number, + call it again with a sub-key-sequence, and if its return value + is non-nil (sub-key is bound), return nil. + +2005-11-08 Kim F. Storm <storm@cua.dk> + + * process.c (Fsignal_process): Recognize signal names with and + without SIG prefix, e.g. SIGHUP and HUP. + + * search.c (search_buffer): No need to initialize base_pat. + +2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (Fget_lru_window, Fget_largest_window, window_loop): + Don't abuse the `mini' arg. Use the `obj' arg instead. + +2005-11-04 Kim F. Storm <storm@cua.dk> + + * xdisp.c (show_mouse_face): Clear mouse face to eol. + +2005-11-03 Dan Nicolaescu <dann@ics.uci.edu> + + * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc, + font-lock.elc and jit-lock.elc. + +2005-11-03 Richard M. Stallman <rms@gnu.org> + + * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL. + (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG. + (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG. + + * sheap.c (STATIC_HEAP_SIZE): Increment both definitions. + + * alloc.c (refill_memory_reserve): Move decl out of conditionals. + +2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (Fdisplay_buffer): Fix last change to not use + a dedicated window. + +2005-11-01 Kim F. Storm <storm@cua.dk> + + * fringe.c (update_window_fringes): Undo 2005-10-27 change. + Instead, rotate the bottom angle bitmap 180 degrees to indicate + that the bottom row does not end in a newline. + +2005-11-01 Andreas Schwab <schwab@suse.de> + + * unexelf.c (unexec): Handle .plt section in BSS segment. + +2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM). + + * window.c (window_loop): For LRU and LARGEST, let the `mini' argument + determine whether to consider dedicated windows as well. + (Fget_lru_window, Fget_largest_window): Add `dedicated' argument. + (Fdisplay_buffer): Do consider dedicated windows in those cases where + we will split the window rather than reuse it. + Don't try to use windows on other displays. + +2005-10-31 Dan Nicolaescu <dann@ics.uci.edu> + + * puresize.h (BASE_PURESIZE): Increment to 1170000. + +2005-10-31 Romain Francoise <romain@orebokech.com> + + * macfns.c: Update copyright year. + * m/gould.h: Likewise. + +2005-10-30 Kim F. Storm <storm@cua.dk> + + * xdisp.c (display_line): Restore it->current_x and call + extend_face_to_end_of_line when last glyph doesn't fit on line. + (set_glyph_string_background_width): Remove specific tests here + to see if face background should extend to end of line. Simplify. + +2005-10-30 Richard M. Stallman <rms@gnu.org> + + * alloc.c (BYTES_USED): Use uordblks, not arena. + (bytes_used_when_reconsidered): New variable. + (emacs_blocked_free): Set that. + +2005-10-29 Chong Yidong <cyd@stupidchicken.com> + + * alloc.c (emacs_blocked_free): Fix typo. + +2005-10-29 Richard M. Stallman <rms@gnu.org> + + * data.c (Fmake_variable_frame_local): Doc fix. + + * xdisp.c (handle_fontified_prop): Do nothing if memory full. + (format_mode_line_unwind_data): New arg SAVE_PROPTRANS + controls whether to save and restore mode_line_proptrans_alist. + Callers changed. + (unwind_format_mode_line): Work with that feature. + (redisplay_internal): Don't call prepare_menu_bars if memory full. + (move_elt_to_front): New function. + (display_mode_element): Use move_elt_to_front. + Don't bother munging text props on a null string. + Delete obsolete elts from mode_line_proptrans_alist. + (decode_mode_spec): Test Vmemory_full, not spare_memory. + (Fformat_mode_line): Clear mode_line_proptrans_alist after saving. + + * lisp.h (memory_full_cons_threshold): Declare. + (internal_lisp_condition_case): Declare. + + * alloc.c (syms_of_alloc) <memory-full>: Doc fix. + (Fmemory_full_p): Function deleted. + (syms_of_alloc): Don't defsubr it. + (memory_full_cons_threshold): New variable. + (spare_memory): Now a vector of 7 elts. + (buffer_memory_full): Don't set Vmemory_full here. + (xfree): Don't try to refill here. + (emacs_blocked_free): Record BYTES_USED in local var. + (memory_full): Now free all the slots in spare_memory. + (refill_memory_reserve): Allocate each slot in spare_memory. + (init_alloc_once): Call refill_memory_reserve. + + * keyboard.c (command_loop_1): Don't set Vmemory_full here. + + * eval.c (internal_lisp_condition_case): New function. + (Fcondition_case): Use internal_lisp_condition_case. + (Feval): Test Vmemory_full and memory_full_cons_threshold. + (Ffuncall): Likewise. + + * bytecode.c (Fbyte_code): Use internal_lisp_condition_case. + +2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (Fparse_partial_sexp): Fix docstring. + +2005-10-28 Romain Francoise <romain@orebokech.com> + + * puresize.h (BASE_PURESIZE): Increment to 1130000. + +2005-10-28 Richard M. Stallman <rms@gnu.org> + + * xfns.c (syms_of_xfns): Provide `x' as feature. + + * xdisp.c (decode_mode_spec): Define %e to indicate memory full. + + * editfns.c (Fformat): Don't include string padding + between info[n].start and info[n].end. + + * alloc.c (spare_memory): No longer static. + (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve. + + * puresize.h (BASE_PURESIZE): Increment to 1120000. + +2005-10-27 Chong Yidong <cyd@stupidchicken.com> + + * data.c (Fmake_variable_frame_local): Add clarification to docstring. + + * fringe.c (update_window_fringes): Handle case where buffer ends + with a newline. + +2005-10-27 Kenichi Handa <handa@m17n.org> + + * coding.h (DECODE_SYSTEM): Fix argument name; name->str. + +2005-10-24 Kenichi Handa <handa@m17n.org> + + * charset.h (charset_mule_unicode_0100_24ff) + (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff): + Extern them. + + * charset.c (charset_mule_unicode_0100_24ff) + (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff): + New variables. + (Fsetup_special_charsets): Initialize them. + + * xterm.c (handle_one_xevent): Handle keysyms directly mapped to + supported Unicode characters. + +2005-10-25 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_to_x_font): Avoid forcing font widths. + +2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c [MAC_OS] (image_load_qt_1): Check image size. + Use GraphicsImportGetImageDescription instead of + GraphicsImportGetNaturalBounds. + [MAC_OSX] (image_load_quartz2d): Check image size. + [MAC_OS] (xpm_load_image): Likewise. + + * macterm.c (last_mouse_glyph_frame): New var. + (note_mouse_movement): Say mouse moved if current frame differs + from last_mouse_glyph_frame, and update last_mouse_glyph_frame. + (XTmouse_position): Set last_mouse_glyph_frame. + (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event. + (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo. + Use EndianU16_BtoN. + (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls. + (x_per_char_metric, XLoadQueryFont) + [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get + glyph bounds. + (mac_to_x_fontname, mac_do_list_fonts) + (mac_initialize_display_info): Change screen resolutions to 72dpi. + +2005-10-25 Masatake YAMATO <jet@gyve.org> + + * minibuf.c (Fdisplay_completion_list): Small doc fix. + +2005-10-24 Kim F. Storm <storm@cua.dk> + + * xterm.c: Undo 2005-10-23 change. + (last_mouse_glyph_frame): New var. + (note_mouse_movement): Say mouse moved if current frame differs + from last_mouse_glyph_frame, and update last_mouse_glyph_frame. + (XTmouse_position): Set last_mouse_glyph_frame. + (handle_one_xevent): Clear last_mouse_glyph_frame [instead of + last_mouse_glyph] on mouse up/down event. + + * editfns.c (Fcompare_buffer_substrings): Fix last change. + +2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca> + + * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars. + +2005-10-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (note_mouse_movement): Always call note_mouse_highlight + so tool tips don't interfere with press on tool bar button. + +2005-10-23 Richard M. Stallman <rms@gnu.org> + + * casetab.c (Fset_case_table): Doc fix. + + * lread.c (build_load_history): Replace STREAM arg with ENTIRE. + (readevalloop): Compute ENTIRE properly. + (syms_of_lread) <load-history>: Doc fix. + +2005-10-21 Richard M. Stallman <rms@gnu.org> + + * lread.c (Fload): Simplify gcpro structure. + Gcpro FOUND as well as FILE, but not EFOUND. + Unless preloading, record FOUND instead of FILE in Vload_history. + Rename repeat local FILE to MSG_FILE. + (syms_of_lread) <load-history>: Doc fix. + +2005-10-21 Kenichi Handa <handa@m17n.org> + + * search.c (boyer_moore): Add parens to fix and/or precedence bug. + +2005-10-20 Kim F. Storm <storm@cua.dk> + + * buffer.c (clone_per_buffer_values): Remove unused var tem. + (init_buffer): Remove unused vars dotstat, pwdstat. + + * ccl.c (check_ccl_update): Remove unused var vp. + + * fileio.c (auto_save_error): Call SAFE_FREE. + + * fns.c (Fchar_table_range): Remove unused var i. + + * minibuf.c (display_completion_list_1): New wrapper function + for Fdisplay_completion_list. + (Fminibuffer_completion_help): Use it. + + * term.c (encode_terminal_code): Remove unused var src_start. + + * window.c (Fwindow_tree): Remove unused var alist. + + * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y. + +2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change) + + * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments. + +2005-10-20 Olli Savia <ops@iki.fi> (tiny change) + + * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO. + +2005-10-20 Andreas Schwab <schwab@suse.de> + + * minibuf.c (Fdisplay_completion_list): Doc fix. + +2005-10-19 Kim F. Storm <storm@cua.dk> + + * image.c (check_image_size): Handle integer Vmax_image_size value + directly as max pixel value. Use default frame size for null frame. + (syms_of_image) <max-image-size>: Describe integer value. + +2005-10-19 Romain Francoise <romain@orebokech.com> + + * emacs.c (main): Update copyright year. + +2005-10-18 Chong Yidong <cyd@stupidchicken.com> + + * image.c (Vmax_image_size): New variable. + (check_image_size): New function. + (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load) + (gif_load, gs_load): Use it. + (lookup_image): Try loading again if previous load failed. + (xbm_read_bitmap_data): Add a new argument, a pointer to the frame + to display in, NULL if none. + (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new + argument. + +2005-10-18 Richard M. Stallman <rms@gnu.org> + + * search.c (Fstring_match): Doc fix. + +2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (note_mouse_movement): Use PtInRect. + (XTread_socket): Also ignore mouse motion just before a button + release event. Don't process button release event when mouse is + not grabbed. + +2005-10-16 Masatake YAMATO <jet@gyve.org> + + * minibuf.c (Fdisplay_completion_list): Add new optional + argument COMMON_SUBSTRING. Bind `completion-common-substring' + to the optional argument during running `completion-setup-hook'. + +2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp): + Allow nil as argument. + [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil + for encoding arguments as UTF-16 in native byte order, no BOM. + + * macfns.c (Fx_create_frame): Add debugging code. + (Fx_show_tip): Set frame pixel width and height. + + * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro. + (FRAME_NORMAL_GC): New macro. + (mac_draw_line, mac_clear_area, mac_clear_window) + (mac_fill_rectangle, mac_draw_string, mac_draw_string_16) + (mac_draw_image_string, mac_draw_image_string_16): Rename from + XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString, + XDrawString16, XDrawImageString, and XDrawImageString16, respectively. + All uses changed. + (mac_draw_line, mac_erase_rectangle, mac_clear_area) + (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle) + (mac_invert_rectangle, mac_draw_string_common, mac_draw_string) + (mac_draw_string_16, mac_draw_image_string) + (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask) + (mac_scroll_area): Drawing functions now take frame as destination. + All uses changed. + (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT. + (x_draw_fringe_bitmap): Set clipping area in face->gc. + + * macterm.h (mac_clear_area): Add extern. + +2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14 + changes for xterm.c. + + * w32term.c (note_mouse_movement, w32_read_socket): Likewise. + +2005-10-14 Kenichi Handa <handa@m17n.org> + + * search.c (search_buffer): Give up BM search on case-fold-search + if one of a target character has a case-equivalence of different + charset even if that target charcter is an ASCII. + + * casefiddle.c (casify_object): Fix for the case that case + conversion change the byte length. + +2005-10-14 Kim F. Storm <storm@cua.dk> + + * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise. + (handle_one_xevent): Only clear help_echo_string; restore it if + note_mouse_movement didn't record any mouse movement. + + * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use. + (remember_mouse_glyph): Clear RECT if mouse is over an image glyph. + + * keyboard.c (make_lispy_position): Adjust wx for left margin if + ON_TEXT. + (Fposn_at_x_y): Fix calculation of x coordinate. + (Fposn_at_point): Return nil if point is hscrolled out of view. + +2005-10-13 Andreas Schwab <schwab@suse.de> + + * sysdep.c (request_sigio, unrequest_sigio): Do nothing in + non-interactive mode. + +2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change. + +2005-10-12 Kim F. Storm <storm@cua.dk> + + * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down. + +2005-10-12 Romain Francoise <romain@orebokech.com> + + * buffer.c (init_buffer): Rename `rc' to `len' for clarity. + +2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to + get end of text rows. Obtain header-line/mode-line rows directly. + + * xterm.c, w32term.c, macterm.c (note_mouse_movement): + Restore help_echo_string if mouse is moved inside last_mouse_glyph. + +2005-10-12 Kim F. Storm <storm@cua.dk> + + * xdisp.c (remember_mouse_glyph): New generic version based on + glyph_rect and remember_mouse_glyph from xterm.c enhanced to + properly handle all different window areas. + + * dispextern.h (remember_mouse_glyph): Add prototype. + + * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions. + (note_mouse_movement, XTmouse_position): Use generic + remember_mouse_glyph, add last_mouse_glyph arg. + + * w32term.c (note_mouse_movement): Fix last_mouse_glyph check. + (glyph_rect, remember_mouse_glyph): Remove w32 specific versions. + (note_mouse_movement, w32_mouse_position): Use generic + remember_mouse_glyph, add last_mouse_glyph arg. + + * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph. + (glyph_rect, remember_mouse_glyph): Remove mac specific versions. + (XTmouse_position): Adapt to use generic remember_mouse_glyph + instead of pixel_to_glyph_coords. + + * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN. + Fix x position for ON_TEXT when left margin width > 0. + +2005-10-11 Kim F. Storm <storm@cua.dk> + + * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR. + + * keyboard.c (make_lispy_position): Fix buffer calculations for + mouse click or movement in right fringe and the margins. + +2005-10-11 Juanma Barranquero <lekktu@gmail.com> + + * image.c (fn_jpeg_stdio_src): Don't define it. + (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'. + (our_common_init_source): Rename from `our_init_source'. + (our_common_term_source): Rename from `our_term_source'. + (our_memory_fill_input_buffer): Rename from + `our_fill_input_buffer'. + (our_memory_skip_input_data): Rename from `our_skip_input_data'. + (jpeg_memory_src): Use the new names. + (struct jpeg_stdio_mgr): New struct. + (JPEG_STDIO_BUFFER_SIZE): New constant. + (our_stdio_fill_input_buffer, our_stdio_skip_input_data) + (jpeg_file_src): New functions. + (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'. + +2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (PER_CHAR_METRIC): Remove unused macro. + (fm_font_family_alist): New variable. + (syms_of_macterm): Initialize and staticpro it. + (decode_mac_font_name): Replace '-' in family name with '_' if it + occurs just once. Lower family name. + (parse_x_font_name): Rename from x_font_name_to_mac_font_name. + All uses changed. Remove argument MF and code conversion for it. + Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS + to CHARSET. Parse font size. Lower family name. Return integer + value for status of parsing. + (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name. + Don't use Fdowncase because family name is already lowered by + decode_mac_font_name. + (init_font_name_table): Always call decode_mac_font_name. + Add pair of family name and its reference to fm_font_family_alist. + (mac_clear_font_name_table): Clear fm_font_family_alist. + (XLoadQueryFont): Move font size parsing part to parse_x_font_name. + Lookup fm_font_family_alist to get font family reference. + (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family + name is already lowered by parse_x_font_name. + +2005-10-11 Kim F. Storm <storm@cua.dk> + + * xterm.c (glyph_rect): Return 0 if position is outside text area. + + * keyboard.c (make_lispy_position): Fix buffer position calculation for + mouse click or movement in fringe. + +2005-10-10 Jason Rumney <jasonr@gnu.org> + + * xterm.c (remember_mouse_glyph): New function. + (note_mouse_movement): Use it to remember the current glyph if changed. + (XTmouse_position): Fix calculation of fake glyph under mouse. + Move code to calculate glyph under mouse into remember_mouse_glyph. + +2005-10-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * emacs.c (USAGE3, standard_args): -nb => -nbi. + +2005-10-10 Juanma Barranquero <lekktu@gmail.com> + + * frame.c (Fredirect_frame_focus): Fix typos in docstring. + (next_frame, prev_frame, set_term_frame_name): Make static. + + * window.c (Fwindow_tree): Fix spelling. + +2005-10-09 Romain Francoise <romain@orebokech.com> + + * window.c (Fwindow_end): Don't try to redisplay if non-interactive. + +2005-10-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * emacs.c (standard_args): Remove options -i, -itype, --icon-type. + Add options -nb, --no-bitmap-icon. + + * xfns.c (Fx_create_frame): Make bitmapIcon have default on. + +2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macgui.h (MAX_CLIP_RECTS): New define. + (struct _XGC): New member clip_region. + (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and + clip_rects. + + * macterm.c (GC_CLIP_REGION): New macro. + (saved_port_clip_region): New variable. + (mac_begin_clip, mac_end_clip): New functions. + (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle) + (mac_draw_rectangle, mac_draw_string_common, mac_copy_area) + (mac_copy_area_with_mask, mac_scroll_area): Use them. + (mac_set_clip_rectangle, mac_reset_clipping): Remove functions. + [USE_ATSUI] (atsu_get_text_layout_with_text_ptr) + [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable. + (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping + rectangles stored in gc. + (XFreeGC): Dispose of clipping region. + (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions. + (x_draw_fringe_bitmap, x_set_glyph_string_clipping) + (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string) + (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor) + (x_draw_bar_cursor): Use them. + (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to + get multiple clipping rectangles. + + * macterm.h (mac_term_init): Add types to extern. + (struct mac_output): Remove members mWP and pending_menu_activation. + Put members scroll_bar_foreground_pixel and + scroll_bar_background_pixel in #if 0. + (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc. + + * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT. + Add debugging code. + +2005-10-08 Kim F. Storm <storm@cua.dk> + + * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04. + +2005-10-07 Kim F. Storm <storm@cua.dk> + + * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows) + [!HAVE_WINDOW_SYSTEM]: Don't declare them... + (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them. + +2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * dispextern.h (struct glyph_string): Rename member for_overlaps_p + to for_overlaps. Now occupy 3 bits. + (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH) + (OVERLAPS_ERASED_CURSOR): New defines. + (struct redisplay_interface): Add new OVERLAPS arg to member + fix_overlapping_area. + (x_fix_overlapping_area): Add new OVERLAPS arg. + (get_glyph_string_clip_rects): Add extern. + + * dispnew.c (redraw_overlapping_rows): + Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part. + + * xdisp.c: Rename member for_overlaps_p in struct glyph_string to + for_overlaps. + (get_glyph_string_clip_rects): New function created from + get_glyph_string_clip_rect. Set clipping rectangles according to the + value of for_overlaps. Enable to store multiple clipping rectangles. + (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects. + (fill_composite_glyph_string, fill_glyph_string, draw_glyphs): + Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed. + (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs. + (draw_phys_cursor_glyph): Set width of erased cursor to use it for + calculating clipping rectangles later. Call x_fix_overlapping_area + with new OVERLAPS arg to draw only erased cursor area. + (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg + to draw overlaps in both preceding and succeeding rows. + + * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in + struct glyph_string to for_overlaps. + +2005-10-04 Richard M. Stallman <rms@gnu.org> + + * alloc.c (refill_memory_reserve): Conditionalize the body, + not the function's existence. + +2005-10-04 Kim F. Storm <storm@cua.dk> + + * window.c (window_split_tree): New function. + (Fwindow_split_tree): New defun. + (syms_of_window): Defsubr it. + +2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_invert_rectangle): New function. + (XTflash): Use it. + +2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca> + + * regex.h (re_char): Don't expose it in the interface. + (re_set_whitespace_regexp): Adjust the arg's type to not use it. + + * regex.c (re_char): Move it back here. + (re_set_whitespace_regexp): Change the arg's type to not use it. + + * keyboard.c (make_lispy_event): If point has moved between down and up + event, make it a drag, not a click, to mirror what + mouse-drag-region expects. + +2005-10-02 Dan Nicolaescu <dann@ics.uci.edu> + + * lisp.h (fatal): Undo previous change. + * term.c (fatal): Undo previous change. + +2005-10-01 Richard M. Stallman <rms@gnu.org> + + * xfaces.c (face_color_gray_p): Colors close to black count as gray. + +2005-10-01 Kim F. Storm <storm@cua.dk> + + * xdisp.c (try_window): Skip scroll-margin check if ZV is visible. + +2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler. + + * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c. + (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code. + (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]: + Try ATSUI-compatible 12pt Monaco font first. + + * macgui.h (struct _XCharStruct): New member valid_p. + (STORE_XCHARSTRUCT): Set valid_p. + (struct MacFontStruct) [USE_ATSUI]: New member mac_style. + + * macterm.c (mac_draw_string_common, x_per_char_metric) + (mac_compute_glyph_string_overhangs, init_font_name_table) + (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support. + (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function. + (x_draw_glyph_string_background) + (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use + XDrawImageString. Always draw background and foreground separately. + (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit + functions for one-byte chars when using ATSUI-compatible fonts. + (atsu_font_id_hash) [USE_ATSUI]: New variable. + (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it. + (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and + max_char_or_byte2 more in detail. + (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions. + +2005-09-30 Dan Nicolaescu <dann@ics.uci.edu> + + * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type. + * xterm.c (handle_one_xevent, handle_one_xevent): Likewise. + + * unexelf.c (fatal): Fix prototype. + + * term.c (fatal): Implement using varargs. + + * regex.c (re_char): Move typedef ... + * regex.h (re_char): ... here. + (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes. + + * emacs.c (malloc_set_state): Fix return type. + (endif): Fix type. + + * lisp.h (fatal): Add argument types. + + * dispextern.h (fatal): Delete prototype. + + * systime.h (make_time): Prototype moved from ... + * editfns.c (make_time): ... here. + + * editfns.c: Move systime.h include after lisp.h. + * dired.c: + * xsmfns.c: + * process.c: Likewise. + + * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook): + Add parameter types. + (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes. + (emacs_blocked_free): Change definition to match __free_hook. + (emacs_blocked_malloc): Change definition to match __malloc_hook. + (emacs_blocked_realloc): Change definition to match __realloc_hook. + +2005-09-30 Romain Francoise <romain@orebokech.com> + + * minibuf.c (Fread_buffer): Follow convention for reading from the + minibuffer with a default value. Doc fix. + +2005-09-29 Juri Linkov <juri@jurta.org> + + * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box): + Rename argument name `string' to `format-string'. + (Fformat): Doc fix. + +2005-09-28 Kim F. Storm <storm@cua.dk> + + * image.c (gif_load): Fix size of allocated image buffer + for images where a sub-image may be larger than the image's + total height/width specifications. + +2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macgui.h (struct _XCharStruct): Each member now takes short value. + +2005-09-27 Dan Nicolaescu <dann@ics.uci.edu> + + * xfaces.c (lookup_derived_face): Add parameter type. + + * xdisp.c (cursor_row_fully_visible_p): Add parameter type. + + * marker.c (verify_bytepos): Add parameter type. + + * process.c (get_operating_system_release): Move prototype ... + + * systime.h (get_operating_system_release): ... here. + + * xterm.c (handle_one_xevent): Refer to union field to match the + type required by the function definition. + (set_vertical_scroll_bar): Move prototype ... + + * xterm.h: ... here. + + * fns.c (internal_equal, seed_random): Fix prototypes. + (internal_equal): Add missing parameter. + +2005-09-25 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (update_menu_bindings): Variable deleted. + (syms_of_keyboard): Don't defvar it. + (parse_menu_item): Don't test it. + +2005-09-23 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fformat): Explicitly test for end of format string + and don't use `index'. + +2005-09-23 Dan Nicolaescu <dann@ics.uci.edu> + + * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): + Define BROKEN_GET_CURRENT_DIR_NAME. + + * sysdep.c (get_current_dir_name): Also define if + BROKEN_GET_CURRENT_DIR_NAME. + + * m/ibmrs6000.h: Test for USG5, not USG5_4. + +2005-09-22 Kim F. Storm <storm@cua.dk> + + * xdisp.c (message_dolog): Add warning about GC and Lisp strings. + (message2): Fix commentary. Ok to use alloca'ed memory. + Still not ok to use Lisp string data (because of GC). + (set_message): Add comment why GC cannot happen. + +2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (xlfdpat_block_match_1): Fix assertion. + (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style + variants for a scalable font multiple times. + +2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]: + Setup slave tty options before forking. + +2005-09-20 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program + positions have been set for the frame (as is done for frames in + special-display-buffer-names). + +2005-09-19 Kim F. Storm <storm@cua.dk> + + * editfns.c (Fformat): Don't scan past end of format string that + ends in %. Reported by Johan Bockg,Ae(Brd. + +2005-09-18 Andreas Schwab <schwab@suse.de> + + * window.h (struct window): Remove height_fixed_p, no longer set. + + * window.c (make_window): Don't initialize height_fixed_p. + (window_fixed_size_p): Don't use it. + +2005-09-18 John Paul Wallington <jpw@pobox.com> + + * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol. + +2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change. + + * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]: + New variables. + [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple + file selection. + + * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h. + +2005-09-17 Eli Zaretskii <eliz@gnu.org> + + * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable. + (obj): Use XMENU_OBJ, not a literal xmenu.o. + +2005-09-16 Romain Francoise <romain@orebokech.com> + + * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix. + +2005-09-15 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional. + (display_mode_element): Instead of `lisp_string' and `this', + record `offset' and increment that. + `last_offset' replaces `last'. + + * Makefile.in (XMENU_OBJ): Variable deleted. + (obj): Use xmenu.o unconditionally. + (SOME_MACHINE_OBJECTS): Delete xmenu.o. + + * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU. + +2005-09-15 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1. + (reseat_at_next_visible_line_start): Likewise (in xassert). + +2005-09-14 Romain Francoise <romain@orebokech.com> + + * fileio.c (write_region_inhibit_fsync): New variable. + (Fwrite_region): Use it to skip call to fsync. + (syms_of_fileio): Initialize it. + +2005-09-14 Kenichi Handa <handa@m17n.org> + + * coding.c (code_convert_region_unwind): Argument format changed. + (run_pre_post_conversion_on_str): If pre-write-conversion function + changed the current buffer, delete the new buffer. + (run_pre_write_conversin_on_c_str): Likewise. + + * fileio.c (Fexpand_file_name): Check multibyteness of + default_directory. + +2005-09-13 Kenichi Handa <handa@m17n.org> + + * composite.c (compose_chars_in_text): Delete it. + + * composite.h (compose_chars_in_text): Delete extern. + +2005-09-13 Kim F. Storm <storm@cua.dk> + + * print.c (print_error_message): Fix last change. + +2005-09-12 Kim F. Storm <storm@cua.dk> + + * composite.c (compose_chars_in_text): Fix setup of `pend'. + Unconditionally reload `ptr' and `pend' after eval. + + * xdisp.c (message3): Pass copy of lisp string to message_dolog. + + * print.c (print_error_message): Pass copy of caller name to + message_dolog. + + * fileio.c (auto_save_error): Pass copy of lisp string to message2. + +2005-09-12 Kenichi Handa <handa@m17n.org> + + * xdisp.c (display_mode_element): Be sure to make variables THIS + and LISP_STRING point into a string data of ELT. + +2005-09-12 Kim F. Storm <storm@cua.dk> + + * editfns.c (Ftranslate_region_internal): Reload `tt' after + signal_after_change that may have GC'ed. + (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix. + + * keymap.c (Fdescribe_buffer_bindings): Reload `translate' + after insert while runs signal_after_change. + + * minibuf.c (Fminibuffer_complete_word): Move `completion_string' + declaration to where it is used. + + * w32.c (check_windows_init_file): Fix allocation of error buffer. + + * xfns.c (x_encode_text): Declare static. Add FREEP arg. + (x_set_name_internal): Call x_encode_text with new FREEP arg to + know if xfree is needed instead of guessing. + + * xterm.h (x_encode_text): Remove prototype. + +2005-09-11 Chris Prince <cprince@gmail.com> (tiny change) + + * w32term.c (x_bitmap_icon): Load small icons too. + +2005-09-10 Romain Francoise <romain@orebokech.com> + + * buffer.c (init_buffer): Grow buffer to add directory separator + and terminal zero. Fix typos. + +2005-09-10 Eli Zaretskii <eliz@gnu.org> + + * buffer.c (init_buffer): Fix error message for failed call to + get_current_dir_name. + (get_current_dir_name): Remove prototype. + + * xsmfns.c (get_current_dir_name): Remove prototype. + + * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: + Add prototype. + + * sysdep.c [WINDOWSNT]: Add prototype for getwd. + Don't #undef NULL after including blockinput.h. + + * config.in: Regenerated. + +2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com> + + Remove the MAXPATHLEN limitations: + + * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]: + New function. + + * buffer.c (init_buffer): Use it. + + * xsmfns.c (smc_save_yourself_CB): Ditto. + +2005-09-09 Kim F. Storm <storm@cua.dk> + + * doc.c (Fsubstitute_command_keys): Lookup key binding for + commands that are remapped from some other command. + + * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p + flag in disabled rows below the window. + + * frame.h (struct frame): New member updated_p. + + * xdisp.c (redisplay_internal): Mark updated frames in new updated_p + member. Remove local `updated' array and associated variables. + +2005-09-07 Kim F. Storm <storm@cua.dk> + + * xdisp.c (handle_display_prop): Respect overlay window property. + + * xdisp.c (try_window): Remove superfluous cursor_height calculation. + Fixes crash reported by YAMAMOTO Mitsuharu. + +2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs. + (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p) + (xlfdpat_block_match_1, xlfdpat_match): New functions. + (xlfdpat_block_match): New macro. + (mac_to_x_fontname): Don't use tolower for non-ASCII characters. + (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0. + (add_font_name_table_entry): Increase font_name_table_size more + rapidly. + (mac_c_string_match): Remove function. + (mac_do_list_fonts): Use XLFD pattern match instead of regular + expression match. + + * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters. + +2005-09-03 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (redisplay_internal): Make UPDATED as long as needed. + (move_it_in_display_line_to): Stop after last char on line even + on a windowing terminal, if that's the specified stop position. + + * fns.c (Fsort): Doc fix. + + * editfns.c (Fpropertize): Don't insist that properties be symbols. + +2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca> + + * dired.c (directory_files_internal_unwind, directory_files_internal) + (file_name_completion): Use a Save_Value object rather than a cons of + two 16bit ints to store the DIR*. + (directory_files_internal, file_name_completion): Handle both EINTR and + EAGAIN consistently after `readdir'. + +2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * intervals.c (update_interval): Add position info in error. + + * dispnew.c (window_to_frame_hpos, update_window): + Avoid gcc warning about unused variable `f'. + +2005-08-31 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (add_menu_item): If unicode_append_menu returns an + error, revert to using AppendMenu. + +2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument. + All uses changed. + [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common + cases. + (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image. + [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef. + Use posix_pathname_to_fsspec. + [MAC_OS] (xpm_load_image): Fill in background_transparent field + while we have mask. + + * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define. + + * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c. + +2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (update_syntax_table): Properly reproduce the special +1 + setting of e_property at the end of the buffer when bumping into the + INTERVALS_AT_ONCE limit. + +2005-08-27 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (USAGE1): Fix the description of the -Q option. + +2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca> + + * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM). + +2005-08-26 Kim F. Storm <storm@cua.dk> + + * xdisp.c (resize_mini_window): Fix 2005-08-20 change. + Don't move PT to new window start. + +2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for + ICONIFY/DEICONIFY_EVENT. + + * macterm.c (mac_copy_area, mac_copy_area_with_mask): + Restore background color. + (mac_handle_visibility_change): New function. + (x_make_frame_invisible, x_iconify_frame) + (XTread_socket) [!USE_CARBON_EVENTS]: Use it. + [USE_CARBON_EVENTS] (mac_handle_window_event) + (install_window_handler): Handle visibility change events. + (x_make_frame_visible): Don't reposition window if it is iconified + or asked for visible before. Select and uncollapse window when it + is made visible. + (x_make_frame_invisible): Don't reset x_highlight_frame. + (x_iconify_frame): Likewise. Make invisible frame visible before + it is iconified. + (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS. + (do_window_update): Don't change visibility of invisible frame. + +2005-08-22 Juri Linkov <juri@jurta.org> + + * term.c (turn_on_face): Check for TS_set_foreground and + TS_set_background depending on standout_mode. Simplify. + +2005-08-21 Kim F. Storm <storm@cua.dk> + + * fringe.c (update_window_fringes): Only put TOP and BOTTOM + bitmaps on fully visible rows. + + * fringe.c (update_window_fringes): Replace FORCE_P arg with + KEEP_CURRENT_P arg; if non-zero, don't update current row fringes, + and return 0. + + * xdisp.c (redisplay_window): Call update_window_fringes with + KEEP_CURRENT_P non-0 if we are going to refresh fringes later. + +2005-08-20 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (display_echo_area_1): Get display start pos from w->start. + (resize_mini_window): Set w->start, and PT, so as to display the tail + end of the buffer, if it doesn't all fit. + +2005-08-18 Kim F. Storm <storm@cua.dk> + + * xdisp.c (calc_pixel_width_or_height): Use actual display + resolution when available instead of Vdisplay_pixels_per_inch. + +2005-08-17 Kim F. Storm <storm@cua.dk> + + * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled. + + * dispnew.c (buffer_posn_from_coords): Check that target row is + within matrix. + +2005-08-16 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to + xg_set_frame_icon and call it. + + * gtkutil.c (xg_set_frame_icon): New function. + + * gtkutil.h (xg_set_frame_icon): Declare it. + +2005-08-16 Kim F. Storm <storm@cua.dk> + + * dispnew.c (increment_row_positions): Skip non-enabled rows. + + * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define. + (Fcurrent_window_configuration): Use VECSIZE macro instead. + +2005-08-15 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (message3_nolog): Clear echo_message_buffer. + +2005-08-15 Kim F. Storm <storm@cua.dk> + + * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input. + + * process.c (deactivate_process, status_notify, read_process_output) + (update_status, status_convert, decode_status, allocate_pty) + (make_process, remove_process, list_processes_1) + (create_process_1, unwind_request_sigio, read_process_output) + (send_process, keyboard_bit_set): Declare static. + (Fdelete_process): Simplify. Pass process to status_notify, so we + don't try to read output from it. + (status_notify): New arg deleting_process--don't try to read + output from that process. + + * lisp.h (deactivate_process, status_notify, read_process_output): + Remove prototypes. + +2005-08-14 Richard M. Stallman <rms@gnu.org> + + * image.c (syms_of_image): Init Qxbm, Qpbm before calling + define_image_type. + +2005-08-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function. + (xg_get_image_for_pixmap): Move some code to + xg_get_pixbuf_from_pix_and_mask, and call it. + + * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare. + + * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask + to get an GTK icon and set it with GTK functions to avoid having GTK + override an icon set with just X functions. + +2005-08-11 Richard M. Stallman <rms@gnu.org> + + * image.c (syms_of_image): Init image_types here, and call + define_image_type. + (init_image): Not here. + +2005-08-09 Richard M. Stallman <rms@gnu.org> + + * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input. + + * lisp.h (QUIT): Throw t to Vthrow_on_input. + +2005-08-09 Thien-Thi Nguyen <ttn@gnu.org> + + * floatfns.c (Fexpt): Use floats for negative exponent. + +2005-08-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that + should not be there, causing menu display errors with GTK 2.6.9. + +2005-08-07 Richard M. Stallman <rms@gnu.org> + + * floatfns.c (Fexpt): Undo previous change. + + * dispnew.c (Fframe_or_buffer_changed_p): Take an arg + so it can be used with various state vectors. + + * emacs.c (endif): Convert -script into -scriptload. + (standard_args): Add -scriptload. Allow -basic-display with one dash. + + * fns.c (syms_of_fns): Add `emacs' to features. + + * term.c (set_terminal_modes): If no TS_termcap_modes string, + output newlines to scroll the old screen contents off the screen. + +2005-08-06 Thien-Thi Nguyen <ttn@gnu.org> + + * floatfns.c (Fexpt): Use floats for negative exponent. + Reported by D Goel. + +2005-08-02 Richard M. Stallman <rms@gnu.org> + + * frame.c (Fframe_char_width): Doc fix. + +2005-07-30 Juanma Barranquero <lekktu@gmail.com> + + * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>: + Defvar it. + +2005-07-28 Juanma Barranquero <lekktu@gmail.com> + + * w32fns.c (my_set_window_pos, my_show_window): Don't declare. + (my_create_window, my_create_tip_window): Make static. + + * w32term.c (my_show_window, my_set_window_pos, my_set_focus) + (my_set_foreground_window, my_destroy_window): Make static. + +2005-07-26 Paul Eggert <eggert@cs.ucla.edu> + + Merge gnulib getopt implementation into Emacs. + + * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is + now part of lib-src. + +2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca> + + * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters). + +2005-07-25 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (w32_menu_display_help): Suppress tooltip when + navigating menus with the keyboard. + +2005-07-23 Richard M. Stallman <rms@gnu.org> + + * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer. + + * bytecode.c (MAYBE_GC): Test gc_cons_threshold and + gc_relative_threshold, one by one. + + * keyboard.c (read_char): Test gc_cons_threshold. + (syms_of_keyboard): staticpro Qecho_area_clear_hook. + + * eval.c (Feval, Ffuncall): Test gc_cons_threshold and + gc_relative_threshold, one by one. + + * alloc.c (gc_cons_threshold): Not static. + (gc_cons_combined_threshold): Var deleted. + (gc_relative_threshold): New variable. + (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold + instead of gc_cons_combined_threshold. + + * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare. + (gc_cons_combined_threshold): Declaration deleted. + +2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c: Don't include stdlib.h or string.h. + (Fdo_applescript, Fmac_file_name_to_posix) + (Fmac_file_name_to_posix): Doc fixes. + [TARGET_API_MAC_CARBON] (Fmac_get_preference) + (Fmac_code_convert_string): Likewise. + [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode + if the executable is not contained in a bundle. + + * macfns.c: Don't include stdlib.h or string.h. Include atimer.h. + (gray_width, gray_height): Remove defines. + (gray_bits, gray_bitmap_width, gray_bitmap_height) + (gray_bitmap_bits): Remove variables. + (lispy_function_keys): Remove extern. + (free_frame_menubar): Add extern. + (x_window_to_frame): Remove function. + (unwind_create_tip_frame): Add declaration. + (x_set_name_internal): New function. + (x_set_name, x_set_title): Use it. + (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width) + (Fx_display_pixel_height, Fx_display_planes) + (Fx_display_color_cells, Fx_server_max_request_size) + (Fx_server_vendor, Fx_server_version, Fx_display_screens) + (Fx_display_mm_height, Fx_display_mm_width) + (Fx_display_backing_store, Fx_display_visual_class) + (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes. + + * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes. + + * macselect.c (Fx_own_selection_internal): Follow error conventions. + (Fx_get_selection_internal, Fx_selection_owner_p) + (Fx_selection_exists_p): Doc fixes. + (syms_of_macselect) <selection-converter-alist>: Likewise. + +2005-07-21 Juanma Barranquero <lekktu@gmail.com> + + * buffer.c (syms_of_buffer) <cursor-type>: Doc fix. + + * ccl.c (Fregister_ccl_program): Fix typos in docstring. + (Fccl_execute_on_string): Likewise; add usage info. + + * composite.c (Fcompose_region_internal) + (Fcompose_string_internal): + Improve argument/docstring consistency. + + * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer): + Fix typos in docstrings. + + * textprop.c (Fnext_char_property_change) + (Fprevious_char_property_change): Doc fixes. + + * window.c (Fset_window_margins, Fset_window_fringes): + Improve argument/docstring consistency. + + * xfaces.c (Finternal_lisp_face_p): Doc fix. + +2005-07-21 Andreas Schwab <schwab@suse.de> + + * eval.c (restore_stack_limits): Return a value. + +2005-07-20 Juanma Barranquero <lekktu@gmail.com> + + * eval.c (Fdefvar): Doc fix. + +2005-07-20 Kim F. Storm <storm@cua.dk> + + * fileio.c (Fdo_auto_save, do_auto_save_unwind): + Use make_save_value to unwind protect stream. + + * lread.c (Fload, load_unwind): + Use make_save_value to unwind protect stream. + +2005-07-19 Juanma Barranquero <lekktu@gmail.com> + + * eval.c (Fprog2, Fcalled_interactively_p), + (syms_of_eval) <debug-on-quit>: Doc fixes. + (syms_of_eval) <max-specpdl-size>: + (Finteractive_p): Fix typos in docstrings. + +2005-07-19 Kim F. Storm <storm@cua.dk> + + * w32fns.c (Vx_hand_shape): Variable removed. + (syms_of_w32fns): Intern and staticpro Qw32_charset_default. + +2005-07-19 Kenichi Handa <handa@m17n.org> + + * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring. + +2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca> + + * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c). + +2005-07-18 Kim F. Storm <storm@cua.dk> + + * frame.h (struct frame): New member already_hscrolled_p. + + * xdisp.c (redisplay_internal): Only try to hscroll each frame once + to avoid redisplay looping hscrolling back and forth ad infinitum. + +2005-07-18 Juri Linkov <juri@jurta.org> + + * buffer.c (scroll-up-aggressively, scroll-down-aggressively): + * keymap.c (Fminor_mode_key_binding): + * macterm.c (mac-emulate-three-button-mouse): + Delete duplicate duplicate words. + +2005-07-18 Ken Raeburn <raeburn@gnu.org> + + * minibuf.c (Ftest_completion): Fix odd syntax in test. + +2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground. + + * macgui.h (struct _XGC): New struct. + (GC): Use it. + (GCForeground, GCBackground, GCFont): Use X11 mask values. + (XCreateGC, XParseGeometry): Move externs to macterm.h. + + * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations. + (XSetFont): Add declaration. + (mac_set_forecolor, mac_set_backcolor, mac_set_colors): + Remove functions. + (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC): + New defines. + (XDrawLine, mac_draw_line_to_pixmap, XClearWindow) + (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle) + (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area): + Use them. + (mac_erase_rectangle): New function. + (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect) + (x_draw_stretch_glyph_string): Use it. + (XChangeGC, XCreateGC, XGetGCValues, XSetForeground) + (XSetBackground, XSetFont): Adjust for new GC implementation. + (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors. + (XTset_vertical_scroll_bar): Clear area under scroll bar. + + * macterm.h (struct mac_display_info): Change types of + scratch_cursor_gc black_relief.gc, and white_relief.gc to GC. + (XCreateGC, XParseGeometry): Move externs from macgui.h. + + * xfaces.c [MAC_OS] (XCreateGC): Remove extern. + +2005-07-16 Richard M. Stallman <rms@gnu.org> + + * buffer.c (Fmake_overlay): Doc fix. + +2005-07-16 Eli Zaretskii <eliz@gnu.org> + + * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow, + Vw32_valid_locale_ids, and Vw32_valid_codepages. + +2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): + Use Fstring_as_unibyte instead of string_make_unibyte. + +2005-07-15 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (select_frame_for_redisplay): Use find_symbol_value. + +2005-07-15 Kim F. Storm <storm@cua.dk> + + * xdisp.c: Fix redisplay loop in last change. + (IT_POS_VALID_AFTER_MOVE_P): New macro. + (move_it_vertically_backward, move_it_by_lines): Use it. + +2005-07-14 Jason Rumney <jasonr@gnu.org> + + * w32.c (init_environment): Default HOME directory to user's + appdata directory if possible. + +2005-07-14 Kim F. Storm <storm@cua.dk> + + * .gdbinit (pitx): Fix output format. Print string charpos. + + * lread.c (syms_of_lread): Initialize seen_list. + + * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp. + + * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state. + Staticpro re_match_object. + +2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macselect.c (get_scrap_target_type_list): Avoid NULL pointer + dereference. + + * macterm.c (mac_window_to_frame): Remove duplicate define. + +2005-07-14 Kenichi Handa <handa@m17n.org> + + * coding.c (code_convert_region_unwind): ARG is changed to a cons. + (code_convert_region): Adjust for the above change. + (set_conversion_work_buffer): If the work buffer is already in + use, generate a new buffer and return it. Otherwise return Qnil. + (run_pre_post_conversion_on_str): Adjust for the above change. + (run_pre_write_conversin_on_c_str): Likewise. + +2005-07-13 Kim F. Storm <storm@cua.dk> + + * xdisp.c (start_display): Don't reseat to next visible line start + if current start position is in a string or image. + (move_it_vertically_backward): Be sure to move out of strings and + images when moving it2 forward. + (move_it_by_lines): When moving forward, move to next buffer + position if we end up in a string or image. When moving backward, + count rows moved over when moving to start of current row in case + row starts in middle of a string or image. Also move further + backward if we end up in a string or image. + (try_cursor_movement): If overlay string spans multiple lines, + move backward to set cursor on start of an overlay string. + (cursor_row_p): Row is ok if cursor is at newline from string, but + string starts on this line (so we always position cursor at start + of string). + + * indent.c (Fvertical_motion): If start position is on an image, + don't move back if we move too far (that's almost certain to happen). + + * xdisp.c (cursor_row_fully_visible_p): Allow partially visible + row in minibuffer windows. + (try_window): Don't check margins in minibuffer windows. + +2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c: Don't include stdlib.h or composite.h. + (x_use_underline_position_properties, last_mouse_press_frame) + (x_noop_count, Qvendor_specific_keysyms): Remove unused variables. + (syms_of_macterm, mac_initialize): Don't initialize them. + (waiting_for_input, initial_argv, initial_argc) + (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll) + (set_frame_menubar, path_from_vol_dir_name): Remove externs. + (extra_keyboard_modifiers): Fix type in extern. + (x_window_to_frame, x_window_to_scroll_bar): Remove declarations. + (x_scroll_bar_report_motion): Add argument types to declaration. + (mac_compute_glyph_string_overhangs): Add declaration. + (disable_mouse_highlight): Remove unused variable. + [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click) + (x_scroll_bar_handle_press, x_scroll_bar_handle_release) + (x_scroll_bar_handle_drag): Remove argument `timestamp'. + All callers changed. + [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set + timestamp. + [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise. + (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar + only when its width is less than the height. + (XTredeem_scroll_bar): Sync with xterm.c. + (font_name_table, font_name_table_size, font_name_count): + Make static. + (drag_and_drop_file_list): Remove variable. Previous use is now + local to function. + (do_ae_open_documents): Move DRAG_N_DROP event construction part + from XTread_socket. + (XTread_socket): Consolidate setting of event timestamp. + Move DRAG_N_DROP event construction part to do_ae_open_documents. + Support extra_keyboard_modifiers. + + * xfaces.c (try_font_list) [MAC_OS]: Try font family name + beginning with that for ASCII. + +2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars. + (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold. + (syms_of_alloc): Declare gc-cons-percentage. + + * eval.c (Feval, Ffuncall): + * keyboard.c (read_char): + * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold. + + * lisp.h (gc_cons_combined_threshold): Declare. + +2005-07-12 Kim F. Storm <storm@cua.dk> + + * coding.c (Qprocess_argument): + * coding.h (Qprocess_argument): Remove unused var. + + * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP. + +2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and + Endian.h. + [!MAC_OSX] (fchmod, fchown): New functions. + (mac_get_code_from_arg): Don't accept Lisp integer as argument. + Use SBYTES and EndianU32_BtoN. + (mac_get_object_from_code): Return 4 byte string even if argument + is 0. Use make_unibyte_string and EndianU32_NtoB. + (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator) + (Fmac_set_file_type): Fix documents and argument declarations. + Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic. + +2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM). + +2005-07-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfaces.c (x_update_menu_appearance): Use fontSet resource for + Lucid if X_I18N, font otherwise. + +2005-07-10 Steven Tamm <steventamm@mac.com> + + * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add. + (Fmac_set_file_type, Fmac_set_file_creator): Add. + (mac_get_object_from_code, mac_get_code_from_arg): Add. + +2005-07-10 Richard M. Stallman <rms@gnu.org> + + * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars. + (syms_of_lread): Set up eval-buffer-list. + (Feval_buffer, Feval_region): Bind eval-buffer-list. + +2005-07-08 Richard M. Stallman <rms@gnu.org> + + * eval.c (Fdefvar): Allow defvaring a constant to itself quoted. + +2005-07-08 Kim F. Storm <storm@cua.dk> + + * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here. + (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector. + +2005-07-07 Kim F. Storm <storm@cua.dk> + + * window.c (Frecenter): Fix last change (set iarg before use). + +2005-07-06 Richard M. Stallman <rms@gnu.org> + + * window.c (Frecenter): When arg is inside the scroll margin, + move it out of the margin. + +2005-07-06 Jason Rumney <jasonr@gnu.org> + + * w32console.c (initialize_w32_display): Detect when the console + dimensions are insane, and default to 80x25 instead. + (w32_use_full_screen_buffer): Default to nil. + +2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_draw_vertical_window_border): Use foreground of + VERTICAL_BORDER_FACE_ID for vertical border line. + (mac_encode_char): Call check_ccl_update in advance. + (mac_to_x_fontname, x_font_name_to_mac_font_name) + (init_font_name_table, mac_do_list_fonts, XLoadQueryFont): + Don't assume that font family length is less than 32. + (x_compute_min_glyph_bounds): Make static. + (x_load_font): Never set fonts_changed_p to zero. + +2005-07-04 Lute Kamstra <lute@gnu.org> + + * Update FSF's address in GPL notices. + +2005-07-03 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (try_window): Fix previous change in how it handles + a partially-visible line or one only partly past the margin. + + * window.c (window_scroll_pixel_based): Take account + of this_scroll_margin when finding point when scrolling up. + +2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de> + + * window.c (window_scroll_pixel_based, window_scroll_line_based): + Handle `scroll-preserve-screen-position' non-nil, non-t specially. + (syms_of_window) <scroll-preserve-screen-position>: Doc fix. + +2005-07-02 Juri Linkov <juri@jurta.org> + + * w32term.c (w32_draw_vertical_window_border): Use foreground of + VERTICAL_BORDER_FACE_ID for vertical border line. + +2005-07-02 Eli Zaretskii <eliz@gnu.org> + + * fileio.c (Fcopy_file): Rearrange the code that calls fchown and + fchmod so that chmod doesn't get called on MSDOS before the file + is closed. + +2005-07-01 Jason Rumney <jasonr@gnu.org> + + * w32term.c (cleartype_active): New flag for enabling sub-pixel + workaround. + (w32_initialize): Initialize it. + (w32_native_per_char_metric): Allow a couple of extra pixels when + Cleartype is active. + + * w32term.c (w32_initialize): Move check for screen reader here + from syms_of_w32term. + +2005-06-30 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): bzero compose_status when nbytes + is not zero. + +2005-07-01 Masatake YAMATO <jet@gyve.org> + + * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'. + +2005-06-30 Juri Linkov <juri@jurta.org> + + * xdisp.c (x_draw_vertical_border): If left fringe is not present + decrease x coord of vertical border by 1 pixel to not occupy text + area of the right window. + + * xterm.c (x_draw_vertical_window_border): Use foreground of + VERTICAL_BORDER_FACE_ID for vertical border line. + + * term.c (turn_on_face): In standout mode apply specified + fg to bg, and specified bg to fg (this makes the logic of + inversion on terminal consistent with X). + +2005-06-29 Juanma Barranquero <lekktu@gmail.com> + + * eval.c (user_variable_p_eh): New function. + (Fuser_variable_p): Use it. Clarify docstring. + Return t for aliases of user options, nil for alias loops. + +2005-06-27 Richard M. Stallman <rms@gnu.org> + + * eval.c (Fdefvar): Improve error message. + +2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last + change. + +2005-06-27 Juanma Barranquero <lekktu@gmail.com> + + * eval.c (Fdefvar): Don't try to set constant symbols. + +2005-06-25 Richard M. Stallman <rms@gnu.org> + + * macfns.c (Fx_show_tip): Pass new arg to try_window. + + * w32fns.c (Fx_show_tip): Pass new arg to try_window. + + * xfns.c (Fx_show_tip): Pass new arg to try_window. + + * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed. + (redisplay_window): Handle try_window reporting point in scroll margin. + + * dispextern.h (try_window): Declare new arg. + + * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID. + Use fchmod to copy the file modes. + (Frename_file): Don't copy UID and GID here; + instead, specify t for PRESERVE_UID_GID when calling Fcopy_file. + + * eval.c (call_debugger): Take full care of extending stack limits + to make space for the debugger, and restore the change afterward. + Bind debug-on-error to nil. + (restore_stack_limits): New subroutine. + (Fsignal): Extend specpdl bound along with eval depth bound, + for calling edebug. Don't do either one, for calling debugger. + (find_handler_clause): Don't bind debug-on-error here. + Don't unbind anything either. + Temporarily advance max_specpdl_size for calling + internal_with_output_to_temp_buffer. + (grow_specpdl): Don't alter max_specpdl_size before signaling + an error. + (syms_of_eval) <max-specpdl-size>: Doc fix. + + * lread.c (read1): 0.0e+NaN should make a "positive" NaN. + +2005-06-24 Eli Zaretskii <eliz@gnu.org> + + * fileio.c (Frename_file): Undo last change: no need to ifdef away + chown on DOS_NT platforms. + + * w32.c (sys_chown): New function. + + * s/ms-w32.h (chown): New; define to sys_chown. + +2005-06-24 Juanma Barranquero <lekktu@gmail.com> + + * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix. + (syms_of_xdisp) <void-text-area-pointer>: Doc fix. + + * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows. + +2005-06-23 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (get_next_display_element): Finish reversing the tests of + Vnobreak_char_display. + + * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape. + All uses changed. + (Qnobreak_space): Rename from Qno_break_space. All uses changed. + (syms_of_xdisp): Define nobreak-char-display and nobreak-space. + + * fileio.c (Frename_file): Preserve owner and group, if possible, + when copying. + +2005-06-23 Juanma Barranquero <lekktu@gmail.com> + + * abbrev.c (Funexpand_abbrev): + * category.c (Fmake_category_set): + * dispnew.c (Fsleep_for, Fsit_for): + * editfns.c (Fsubst_char_in_region): + * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall): + * frame.c (make_frame_without_minibuffer): + * lread.c (read_vector): + * macfns.c (check_x_frame): + * process.c (Fstop_process, Fcontinue_process): + * search.c (Freplace_match): + * syntax.c (Fstring_to_syntax): + * w32fns.c (check_x_frame, check_x_display_info): + * xfaces.c (x_supports_face_attributes_p): + * xselect.c (Fx_own_selection_internal): Follow error conventions. + + * image.c (fn_png_init_io): Don't define it. + (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io. + (png_read_from_file): New function, based on png_read_from_memory. + (png_load): Use it, instead of fn_png_init_io. + +2005-06-23 Kim F. Storm <storm@cua.dk> + + * search.c (Fmatch_data): Remove evaporate option. + (Fset_match_data): Do not mention evaporate option in doc string. + Add commentary explaining evaporate arg (for internal use only). + (unwind_set_match_data): Add comment on evaporate use. + +2005-06-22 Miles Bader <miles@gnu.org> + + * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'. + (realize_basic_faces, syms_of_xfaces): Update references to it. + * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID' + to `VERTICAL_BORDER_FACE_ID'. + * dispnew.c (build_frame_matrix_from_leaf_window): Update references. + +2005-06-21 Juri Linkov <juri@jurta.org> + + * dispextern.h: Add extern Qframe_set_background_mode. + + * xfaces.c: Rename obsolete function Qframe_update_face_colors to + Qframe_set_background_mode. + + * frame.c (Fmodify_frame_parameters): + Call frame-set-background-mode after changing the background color + on non-window non-dos branch. + +2005-06-21 Juanma Barranquero <lekktu@gmail.com> + + * fns.c (Fchar_table_range): + * process.c (Fmake_network_process): Fix spellings. + +2005-06-20 Kim F. Storm <storm@cua.dk> + + * fns.c (Fsort): Doc fix. + +2005-06-20 Miles Bader <miles@gnu.org> + + * xfaces.c (Qvertical_divider): New variable. + (realize_basic_faces): Realize its face. + (syms_of_xfaces): Initialize it. + + * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'. + + * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical + window-separator on ttys using `vertical-divider' face by default. + +2005-06-17 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (get_next_display_element): + Reverse test of Vshow_nonbreak_escape. + + * term.c (produce_special_glyphs): Use spec_glyph_lookup_face. + (Ftty_no_underline): New function. + (syms_of_term): defsubr it. + + * keyboard.c (read_char): Call restore_getcjmp after jump occurs. + + * dispnew.c (spec_glyph_lookup_face): New function. + (build_frame_matrix_from_leaf_window): Use it. + + * dispextern.h (spec_glyph_lookup_face): Add declaration. + + * buffer.c (syms_of_buffer) <cursor-type>: Doc fix. + +2005-06-12 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (read_char): After catching a longjmp, + call restore_getcjmp. + +2005-06-17 Juanma Barranquero <lekktu@gmail.com> + + * xselect.c (lisp_data_to_selection_data): Fix spelling. + +2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_compute_glyph_string_overhangs): Don't set + overhangs unless the given glyph type is noncomposite CHAR_GLYPH. + [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down + events. + (XTread_socket): Don't pass keyboard events with the option + modifier to the system when Vmac_command_key_is_meta is nil or + Vmac_option_modifier is non-nil. + [USE_CARBON_EVENTS] (read_socket_inev): New variable. + [USE_CARBON_EVENTS] (init_command_handler): Fix argument. + [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event + handler function. + (install_window_handler) [USE_CARBON_EVENTS]: Install it. + (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event + handler part to mac_handle_mouse_event. + +2005-06-14 Juanma Barranquero <lekktu@gmail.com> + + * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to + NEW-ALIAS and BASE-VARIABLE, respectively. + +2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca> + + * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup. + (get_phys_cursor_geometry, format_mode_line_unwind_data) + (get_line_height_property, x_produce_glyphs): Remove unused vars. + + * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'. + +2005-06-13 Eli Zaretskii <eliz@gnu.org> + + * w32term.c (x_use_underline_position_properties): New variable. + (x_draw_glyph_string): Remind in a comment to change doc string of + x-use-underline-position-properties if/when underline positioning + is implemented. + (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties, + and initialize it to nil. + +2005-06-12 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (NEWOPENFILENAME): New struct. + (Fx_file_dialog): Use it to trick the system into giving us up to + date dialogs on systems that are documented to support it. + Do not set OFN_FILEMUSTEXIST flag if looking for a directory. + +2005-06-12 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of + MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does. + +2005-06-11 Eli Zaretskii <eliz@gnu.org> + + * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg + to CreateDIBSection to avoid a compiler warning. + (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler + warning. + (png_load): Cast return values of fn_png_create_read_struct and + fn_png_create_info_struct, to avoid compiler warnings on W32. + Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent + to avoid compiler warnings. + (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a + compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to + avoid a compiler warning. + (tiff_load): Cast return values of fn_TIFFOpen and + fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg + to IMAGE_BACKGROUND to avoid a compiler warning. + (gif_load): Cast return values of fn_DGifOpenFileName and + fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to + IMAGE_BACKGROUND to avoid a compiler warning. + (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef + before redefining. + + * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in + the call to CreateDIBSection, to avoid a compiler warning. + +2005-06-11 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Fx_file_dialog): Unblock input before falling back to + minibuffer. + * macfns.c (Fx_file_dialog): Likewise. + +2005-06-10 Eli Zaretskii <eliz@gnu.org> + + * makefile.w32-in ($(TEMACS)): Depend on addsection.exe. + +2005-06-10 Juanma Barranquero <lekktu@gmail.com> + + * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]: + * w32fns.c (syms_of_w32fns): Fix spellings. + +2005-06-10 Eli Zaretskii <eliz@gnu.org> + + * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument + `verbose'; print diagnostic messages only if it is non-zero. + All callers changed to pass a zero value unless DEBUG_DUMP is defined + in the environment. + (copy_executable_and_dump_data): Print section names with %.8s. + +2005-06-10 Masatake YAMATO <jet@gyve.org> + + * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face + when mouse_face is not given. + +2005-06-09 Luc Teirlinck <teirllm@auburn.edu> + + * window.c (Fselect_window): Adapt call to Fselect_frame. + + * lisp.h: Update EXFUN of Fselect_frame. + + * keyboard.c (command_loop_1): Adapt call to Fselect_frame. + + * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg + no_enter. + (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame): + Adapt to above change. + +2005-06-10 Juanma Barranquero <lekktu@gmail.com> + + * fns.c (Fmemq, Fmaphash): Doc fixes. + +2005-06-09 Juanma Barranquero <lekktu@gmail.com> + + * xfaces.c (Fdisplay_supports_face_attributes_p): + Fix typo in docstring. + +2005-06-08 Steven Tamm <steventamm@mac.com> + + * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section + used by gcc4 on intel mac. + +2005-06-09 Kim F. Storm <storm@cua.dk> + + * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers + in REUSE list if non-nil; free them if equal to evaporate. + (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST + if non-nil; free them if equal to evaporate. Use XCAR/XCDR. + (restore_search_regs): Rename from restore_match_data. Uses changed. + (unwind_set_match_data): New function. + (record_unwind_save_match_data): New function like save-match-data. + + * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN. + (record_unwind_save_match_data): Add prototype. + (restore_search_regs): Rename from restore_match_data. + + * composite.c (compose_chars_in_text): + * eval.c (do_autoload): + * macmenu.c (set_frame_menubar): + * process.c (read_process_output, exec_sentinel): + * xmenu.c (set_frame_menubar): + * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar): + * w32menu.c (set_frame_menubar): + Use record_unwind_save_match_data. + +2005-06-08 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (get_next_display_element): Alter previous change: + Distinguish Vshow_nonbreak_escape = t or not t. + For t, use escape_glyph once again, as before previous change. + Use space or hyphen for display, instead of the non-ASCII char. + (syms_of_xdisp) <show-nonbreak-escape>: Doc fix. + + * process.c (Fstart_process): Don't touch command_channel_p slot. + + * process.h (struct process): Delete command_channel_p. + +2005-06-07 Masatake YAMATO <jet@gyve.org> + + * xdisp.c (note_mode_line_or_margin_highlight): + Check the overlapping of re-rendering area to avoid flickering. + (note_mouse_highlight): Call clear_mouse_face if PART + is not ON_MODE_LINE nor ON_HEADER_LINE. + +2005-06-07 Kim F. Storm <storm@cua.dk> + + * process.c: Improve commentary for adaptive read buffering. + +2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca> + + * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars + if available. + +2005-06-06 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * macmenu.c (menu_quit_handler, install_menu_quit_handler): + New functions for popping down menus on C-g. + (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler. + + * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode + non-static. + + * config.in: Add HAVE_CANCELMENUTRACKING. + +2005-06-06 Eli Zaretskii <eliz@gnu.org> + + * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros. + + * unexw32.c (RVA_TO_PTR): Move here from w32heap.h. + + * w32proc.c (RVA_TO_PTR): New macro. + + * w32heap.c (RVA_TO_PTR): No need to #undef now. + + * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)): + Depend on w32heap.h. + +2005-06-06 Luc Teirlinck <teirllm@auburn.edu> + + * keyboard.c (command_loop_1): Update Vthis_original_command. + +2005-06-06 Richard M. Stallman <rms@gnu.org> + + * xmenu.c (popup_get_selection): Undo previous change. + +2005-06-06 Juri Linkov <juri@jurta.org> + + * xdisp.c (Qno_break_space): New variable. + (syms_of_xdisp): Initialize it. + (get_next_display_element): Add no-break space and soft hypen + codes for iso8859-2 and iso8859-5. Don't add `\' for them. + Use `no-break-space' face for no-break spaces. + +2005-06-06 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * window.c (delete_window): Handle the case where a h/vchild has + a h/vchild. + +2005-06-05 Eli Zaretskii <eliz@gnu.org> + + * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the + call to pfn_setsockopt, cast optval to `const char *'. + +2005-06-04 Eli Zaretskii <eliz@gnu.org> + + * w32.c (gettimeofday): Use struct _timeb, not struct timeb. + (open_unc_volume): Cast return value of map_w32_filename, to avoid + compiler warnings. + + * s/ms-w32.h (fileno): Don't define if already defined. + + * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk. + + * makefile.w32-in (DOC): Define to point to the generated DOC-X. + +2005-06-04 Richard M. Stallman <rms@gnu.org> + + * xmenu.c (popup_get_selection): Click not in menu deactivates menu. + +2005-06-04 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * macmenu.c (cleanup_popup_menu): New function. + (Fx_popup_menu): Unwind protect cleanup_popup_menu in case + mac_menu_show Quit:s. + (mac_menu_show): Quit on cancel if not popped up on click (i.e. + a dialog). + +2005-06-04 Kim F. Storm <storm@cua.dk> + + * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT. + + * callproc.c (Fcall_process): Don't use alloca to gradually + increase size of buf, as it effectively uses twice the necessary + space on the stack. Instead, pre-allocate buf of full size, and + gradually increase the read size. + + * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input. + + * eval.c (unbind_to): Preserve value of Vquit_flag. + + * xterm.c (handle_one_xevent): Also ignore mouse motion just + before a button release event. + +2005-06-03 Juanma Barranquero <lekktu@gmail.com> + + * xfaces.c (Finternal_lisp_face_equal_p): Really report + on faces in a frame, if the argument FRAME is non-nil. + Improve argument/docstring consistency. + +2005-06-02 Kim F. Storm <storm@cua.dk> + + * xdisp.c (MODE_LINE_NOPROP_LEN): New macro. + (x_consider_frame_title, Fformat_mode_line): Save offset into + mode_line_noprop_buf rather than pointer, in case buffer is relocated. + +2005-06-01 Kim F. Storm <storm@cua.dk> + + * fns.c (mapcar1): Maybe exit loop if original sequence was modified. + +2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD + resolution fields for scalable fonts to 0. + + * xfaces.c (build_scalable_font_name): Round pixel size to the + nearest integer. + +2005-06-01 Kim F. Storm <storm@cua.dk> + + * xdisp.c (display_mode_line): Support nested calls to redisplay + and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY. + +2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (Finsert_file_contents): + * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup. + +2005-05-31 Kim F. Storm <storm@cua.dk> + + * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end) + (mode_line_noprop_ptr): Rename from frame_title_*. + (store_mode_line_noprop_char): Rename from store_frame_title_char. + (store_mode_line_noprop): Rename from store_frame_title. + (mode_line_target): New enum to specify current output target + for mode line formatting. + (display_mode_element): Test it rather than frame_title_ptr and + mode_line_string_list to determine where output should go. + (mode_line_proptrans_alist, mode_line_string_alist): Make static. + (Vmode_line_unwind_vector): New variable. + (format_mode_line_unwind_data, unwind_format_mode_line): + New functions for unwind protection in mode line formatting. + (x_consider_frame_title): Use them and new local var 'title_start' + to support nested calls to format-mode-line and redisplay. + Set mode_line_target to MODE_LINE_TITLE. + (Fformat_mode_line): Use them and new local var 'string_start' to + support nested calls to format-mode-line and redisplay. + Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING. + Don't trim trailing dashes. + (decode_mode_spec): Don't make infinite number of trailing dashes + for MODE_LINE_NOPROP and MODE_LINE_STRING targets. + (syms_of_xdisp): Initialize and staticpro mode_line_string_face, + mode_line_string_face_prop, and Vmode_line_unwind_vector. + (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf. + Initialize mode_line_target to MODE_LINE_DISPLAY. + +2005-05-29 Richard M. Stallman <rms@gnu.org> + + * buffer.c (Fbuffer_local_value): Call indirect_variable. + +2005-05-28 Masatake YAMATO <jet@gyve.org> + + * xdisp.c (note_mode_line_or_margin_highlight): Change the + pointer to a hand cursor when hoovering over a mouse-face. + +2005-05-27 Kenichi Handa <handa@m17n.org> + + * xterm.c (x_encode_char): Call check_ccl_update in advance. + + * ccl.c: Now an element of Vccl_program_table is a vector of + length 4, not 3. + (ccl_get_compiled_code): New arg idx. Caller changed. + Adjust for the change of Vccl_program_table. + (setup_ccl_program): Adjust for the change of Vccl_program_table. + (check_ccl_update): New function. + (Fregister_ccl_program): Use ASET to set an element of a vector. + Adjusted for the change of Vccl_program_table. + + * ccl.h (struct ccl_program): New member idx. + (check_ccl_update): Extern it. + +2005-05-27 Juanma Barranquero <lekktu@gmail.com> + + * image.c (Vimage_library_alist): Move from image.el. + (syms_of_image): Defvar it. + (lookup_image_type): Use it. + + * buffer.c (Fbuffer_local_value): Make argument name match its use + in docstring. + +2005-05-26 Juanma Barranquero <lekktu@gmail.com> + + * keyboard.c (Frecursive_edit): Fix typo in docstring. + (Fposn_at_x_y): Make argument name match its use in docstring. + +2005-05-26 Lute Kamstra <lute@gnu.org> + + * eval.c (Frun_hooks): Mention run-mode-hooks in docstring. + +2005-05-24 Masatake YAMATO <jet@gyve.org> + + * xdisp.c (note_mode_line_or_margin_highlight): Use b and e + as loop sentinels. + +2005-05-24 Nick Roberts <nickrob@snap.net.nz> + + * xmenu.c (Fx_popup_dialog): Add a third boolean argument to + select frame title ("Question"/"Information"). + (xdialog_show): Use it. + + * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c. + + * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c. + + * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with + a third argument (Qnil). + + * lisp.h: x-popup-dialog can have three arguments. + + * editfns.c (Fmessage_box): Use "Information" for frame title. + +2005-05-23 Thien-Thi Nguyen <ttn@gnu.org> + + * termcap.c [VMS]: Include <starlet.h>. + +2005-05-23 Masatake YAMATO <jet@gyve.org> + + * xdisp.c (note_mode_line_or_margin_highlight): Add code + for mouse-face. Change the type of the first argument from `window' + to `Lisp_Object'. + (note_mouse_highlight): Call note_mode_line_or_margin_highlight with + window instead of w. + +2005-05-22 Andreas Schwab <schwab@suse.de> + + * process.c (send_process): Move misplaced volatile. + +2005-05-21 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (display_mode_element): If we're processing a list and + padding is specified, put it after the last element. + +2005-05-21 Eli Zaretskii <eliz@gnu.org> + + * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support + "superroot" on DOS_NT systems. + +2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change) + + * process.c (send_process): Restore the SIGPIPE handler if we + catch a SIGPIPE. + +2005-05-20 Juanma Barranquero <lekktu@gmail.com> + + * image.c (lookup_image, png_read_from_memory): Remove hacks (and + misleading comments). + (DEF_IMGLIB_FN): Use C calling convention for image libraries. + +2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> + + * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges): + Correct the right value. + +2005-05-19 Nick Roberts <nickrob@snap.net.nz> + + * keyboard.c (syms_of_keyboard): Remove Lisp variables + post-command-idle-hook and post-command-idle-delay. + (command_loop_1): Don't try to execute post-command-idle-hook. + +2005-05-16 Kim F. Storm <storm@cua.dk> + + * xdisp.c (handle_display_prop): Handle empty replacement. + (handle_single_display_spec): Return -1 for empty replacement. + + * keyboard.c (adjust_point_for_property): Skip empty overlay string. + + * .gdbinit (pitx): Print more info about iterator. + +2005-05-16 Andreas Schwab <schwab@suse.de> + + * unexmacosx.c (unexec_realloc): Move declarations before statements. + +2005-05-14 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (message3): Call cancel_echoing. + + * alloc.c (Fmemory_full_p): New function. + (syms_of_alloc): defsubr it. + + * process.c (send_process_trap): Unblock SIGPIPE. + (send_process): Reset SIGPIPE handler before reporting error. + +2005-05-14 Nick Roberts <nickrob@snap.net.nz> + + * emacs.c (syms_of_emacs): Fix doc string for system-type. + +2005-05-13 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler. + (Finsert_file_contents): If we read 0 bytes from a special file, + unlock the visited file if we locked it. + (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes. + (Ffile_exists_p, Ffile_symlink_p): Doc fixes. + +2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init. + + * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]: + Regard toolkit scroll bar thumb drag events as squeezable and prevent + redisplay from being paused by them. + + * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h. + [!MAC_OSX] (target_ticks): Remove variable. + [!MAC_OSX] (check_alarm, pause, index): Remove functions. + [!MAC_OSX && __MRC__] (sys_strftime): Likewise. + [!MAC_OSX] (select): If fd 0 is not set in rfds and some input + event occurs before timeout, behave as if the function were interrupted. + [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM + handling using Time Manager routines. + [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask): + New variables. + [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer) + (setitimer): New functions. + + * macfns.c, macmenu.c: Don't include signal.h. + + * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds): + Rename from get_control_part_bound. All callers changed. + (x_scroll_bar_clear): New function. + (x_clear_frame): Use it. + (XTset_vertical_scroll_bar): Don't call Draw1Control. + (x_scroll_bar_handle_click): Change type of second argument from + int to ControlPartCode. + (check_alarm): Remove declaration. + (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it. + (XTread_socket): Use ControlPartCode instead of SInt16. + +2005-05-13 Nozomu Ando <nand@mac.com> + + * unexmacosx.c: Include assert.h. + (MACOSX_MALLOC_MULT16): New define. + [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether + ptr is in unexec regions by checking it is multiple of 16. + (unexec_malloc_header_t): New typedef. + (unexec_malloc, unexec_realloc, unexec_free): Store and use + allocated size information in unexec_malloc_header. + +2005-05-10 Richard M. Stallman <rms@gnu.org> + + * xterm.c (noinclude): Add #undef. + + * image.c, xfns.c, xmenu.c: Don't include signal.h. + +2005-05-09 Juanma Barranquero <lekktu@gmail.com> + + * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file) + (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p): + Doc fixes. + + * dired.c (Ffile_name_completion): Make argument name + match its use in docstring. + +2005-05-08 Luc Teirlinck <teirllm@auburn.edu> + + * eval.c (Fdefvaralias): Remove any pre-existing + variable-documentation property of the alias. + +2005-05-07 Thien-Thi Nguyen <ttn@gnu.org> + + * xfns.c (start_hourglass): Do nothing when running on a tty. + +2005-05-07 Juanma Barranquero <lekktu@gmail.com> + + * fns.c (Fchar_table_range): Fix typos in docstring. + +2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca> + + * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup. + +2005-05-06 Eli Zaretskii <eliz@gnu.org> + + * lread.c (Flocate_file_internal): Doc fix. + + * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc. + +2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macselect.c (x_own_selection): Accept Lisp string as result of + selection converter function. + (x_clear_frame_selections): Don't call x-lost-selection-functions + if Emacs is not owner of the selection. + (Vmac_services_selection): Put variable and initialization in + #ifdef MAC_OSX. + (syms_of_macselect) [MAC_OSX]: Set default value of + Vmac_services_selection to PRIMARY. + + * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable. + (mac_handle_tool_bar_click): Remove unused function and declaration. + [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback) + (install_scroll_bar_timer, set_scroll_bar_timer) + (control_part_code_to_scroll_bar_part, construct_scroll_bar_click) + (get_control_part_bound, x_scroll_bar_handle_press) + (x_scroll_bar_handle_release, x_scroll_bar_handle_drag) + (x_set_toolkit_scroll_bar_thumb): New functions and declarations. + [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer) + (scroll_bar_timer_event_posted_p): New variables. + [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY) + (SCROLL_BAR_CONTINUOUS_DELAY): New macros. + (x_scroll_bar_create): Set control reference with NewControl. + (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]: + Initialize track_top and track_height to nil. + (x_scroll_bar_set_handle, x_scroll_bar_note_movement): + Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS. + (XTset_vertical_scroll_bar): Don't make space between scroll bar + and associated window. + (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width + from window config. + (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: + Set track_top and track_height to nil when scroll bar size is changed. + Recalculate them if they are nil. + (XTread_socket) [MAC_OSX]: Use control kind to determine if the + clicked control is a scroll bar. + (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar + event handler functions. Don't add modifiers to scroll bar click + events. Call scroll bar release handler when window is deactivated. + (mac_initialize): Remove unused code for X toolkit. + (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]: + Initialize Vx_toolkit_scroll_bars to nil. + + * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: + New members track_top and track_height. + + * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine + init_process when including sys/select.h. + +2005-05-05 Luc Teirlinck <teirllm@auburn.edu> + + * eval.c (Fdefvaralias): Doc fix. + + * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes. + +2005-05-05 Kim F. Storm <storm@cua.dk> + + * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows + default value. + (syms_of_buffer): Add default-cursor-in-non-selected-windows. + Fix type of cursor-in-non-selected-windows. + +2005-05-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * mac.c: #undef init_process so not to conflict with system headers. + +2005-05-02 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows. + + * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot. + + * xdisp.c (Vcursor_in_non_selected_windows) + (Qcursor_in_non_selected_windows): Vars deleted. + (syms_of_xdisp): Don't initialize them. + (get_window_cursor_type): Use cursor_in_non_selected_windows + buffer slot. + +2005-05-02 Kim F. Storm <storm@cua.dk> + + * macros.c (executing_kbd_macro_index): Rename from + executing_macro_index. All uses changed. + (executing_kbd_macro_iterations): Rename from + executing_macro_iterations. All uses changed. + (executing_kbd_macro): Rename from executing_macro. + All uses changed. + (syms_of_macros): Rename Lisp var executing-macro-index to + executing-kbd-macro-index. + + * xdisp.c (move_it_in_display_line_to): Fix last change. + +2005-05-01 Luc Teirlinck <teirllm@auburn.edu> + + * xmenu.c (Fx_popup_menu): Doc fix. + + * charset.c (syms_of_charset): Delete defsubr for Schars_in_region. + +2005-05-02 Jason Rumney <jasonr@gnu.org> + + * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes. + +2005-05-02 Nozomu Ando <nand@mac.com> + + * sysselect.h: Fix typo. + +2005-05-02 Nick Roberts <nickrob@snap.net.nz> + + * charset.c (Fchars_in_region): Remove as obsolete. + +2005-05-01 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_in_display_line_to): Stop if we move beyond + TO_CHARPOS. This may happen if last glyphs was an image or stretch + glyph. + +2005-05-01 Luc Teirlinck <teirllm@auburn.edu> + + * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro. + +2005-05-01 Richard M. Stallman <rms@gnu.org> + + * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show): + If user cancels the menu, quit unless FOR_CLICK. + + * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro. + All uses changed. + (syms_of_macros): Define only executing-kbd-macro, not executing-macro. + * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro. + * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro. + * commands.h (Vexecuting_kbd_macro): Likewise. + +2005-05-01 Thien-Thi Nguyen <ttn@gnu.org> + + * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel. + +2005-04-30 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Ffind_file_name_handler): Handle the `operations' + property of the file name handler. + (Qoperations): New variable. + (syms_of_fileio): Initialize and staticpro it. + + * xdisp.c (set_message_1): Delete xassert. + +2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c: Don't include time.h. Include sysselect.h after systime.h. + + * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt. + + * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime + before/after including Carbon.h if there is a working mktime. + +2005-04-28 Kim F. Storm <storm@cua.dk> + + * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed. + Fix cyclic alias check. If alias loop is detected, signal + circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P. + +2005-04-28 Lute Kamstra <lute@gnu.org> + + * eval.c (do_autoload): Record only autoloads in the autoload + property of symbols. + +2005-04-28 Nick Roberts <nickrob@snap.net.nz> + + * emacs.c (USAGE1): Add --basic-display and --quick options. + +2005-04-27 Kim F. Storm <storm@cua.dk> + + * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection. + +2005-04-26 Richard M. Stallman <rms@gnu.org> + + * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes. + (syms_of_window): Doc fixes. + + * indent.c (Fvertical_motion): Undo previous change. + +2005-04-26 Kenichi Handa <handa@m17n.org> + + * fns.c (char_table_range): New function. + (Fchar_table_range): Signal an error if characters in the range + have inconsistent values. Don't check the parent. + +2005-04-25 Kenichi Handa <handa@m17n.org> + + * fontset.c (fontset_set): Fix previous change. + +2005-04-24 Richard M. Stallman <rms@gnu.org> + + * indent.c (Fvertical_motion): Bind fontification-functions to nil. + +2005-04-24 Eli Zaretskii <eliz@gnu.org> + + * regex.c (re_search_2, re_match_2_internal): Convert second arg + of RE_TRANSLATE to int, to shut up GCC warnings. + + * fileio.c (Fcopy_file): Doc fix. + [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and + not needed. + +2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o. + (SOME_MACHINE_OBJECTS): Likewise. + (mac.o): Depend on ccl.h. + (macselect.o): New target. + + * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]: + Call syms_of_macselect. + + * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections. + + * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h. + (QCLIPBOARD): Remove variable. + (syms_of_mac): Don't initialize it. + (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p): + Remove functions. + (syms_of_mac): Don't defsubr them. + [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC) + (QHFS_plus_D, QHFS_plus_C): New variables. + (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them. + [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp) + (cfstring_create_normalized): New functions. + [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise. + (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it. + + * macterm.c (handling_window_update, terminate_flag): + Remove variables. + (do_window_update, do_ae_quit_application, XTread_socket): + Don't use them. + (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define. + [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event) + (init_service_handler): Move to macselect.c. Remove declarations. + [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern. + (Qapplication, Qabout): New variables. + (syms_of_mac): Initialize them. + [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste) + (Qperform): New variables. + (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them. + (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu. + (do_menu_choice): Unhighlight menu bar also when menu_id is 0. + (mac_store_application_menu_event, init_menu_bar): New functions. + [USE_CARBON_EVENTS] (mac_handle_command_event) + (init_command_handler): New functions. + (mac_handle_window_event): Return noErr on window update event. + (do_ae_quit_application): Call mac_store_application_menu_event. + (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler + and init_menu_bar. + + * macterm.h (x_clear_frame_selections): Add extern. + + * macselect.c: New file for selection processing on Mac OS. + +2005-04-23 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fcopy_file): New arg MUSTBENEW. + (Frename_file): Pass new arg to Fcopy_file. + + * window.c (window_size_fixed): Variable deleted. + (syms_of_window): Initialize window-size-fixed to nil. + But don't DEFVAR window_size_fixed. + +2005-04-23 Andreas Schwab <schwab@suse.de> + + * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define. + (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to + use lib64 instead of lib. + (_LP64) [_ARCH_PPC64]: Define if not defined. + +2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change) + + * s/ms-w32.h (HAVE_PWD_H): Define. + +2005-04-22 Kenichi Handa <handa@m17n.org> + + * fns.c (copy_sub_char_table): Explicitly copy the default value + of the sub-chartable. + + * fontset.c (fontset_set): When a sub-chartable is created, + explicitly sets the defalt value. + +2005-04-22 Kim F. Storm <storm@cua.dk> + + * fns.c (Fplist_get): Replace by Fsafe_plist_get. + (Fsafe_plist_get): Rename to Fplist_get. + (Fsafe_get): Remove, as Fget now uses safe Fplist_get. + (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get. + + * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN. + + * xdisp.c (store_mode_line_string, produce_stretch_glyph) + (note_mode_line_or_margin_highlight, note_mouse_highlight): + Use Fplist_get instead of Fsafe_plist_get. + + * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get. + +2005-04-21 Miles Bader <miles@gnu.org> + + * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field. + +2005-04-20 Thien-Thi Nguyen <ttn@gnu.org> + + * sysdep.c: Remove reference to defunct vms-pwd.h. + * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS. + * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise. + + * config.in: Regenerate. + +2005-04-20 Kenichi Handa <handa@m17n.org> + + * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro. + (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro. + (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro. + + * alloc.c (make_sub_char_table): Argument changed to initial + value of the slots. + + * data.c (Faref): Handle special slots used as default values of + ascii, eight-bit-control, eight-bit-control. Don't ignore a + default value set for a group of characters. + (Faset): Signal an error if IDXVAL is not a valid character code. + Make a sub-chartable with correct initial value. + + * fns.c (Fset_char_table_range): Don't set slots used as default + values for ascii, eight-bit-control, eight-bit-graphic. + Don't call Faref with charset-id. + (Fset_char_table_default): Document how to treat normal character + argument. Handle special slots used as default values of ascii, + eight-bit-control, eight-bit-control. Make a sub chartable if + necessary. + +2005-04-20 Kenichi Handa <handa@m17n.org> + + * search.c (boyer_moore): Fix previous change. + +2005-04-19 Kim F. Storm <storm@cua.dk> + + * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default + face unless last visible char and first invisible char have the + same face. Also use default face if saved_face_id is undefined. + +2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macgui.h (MacFontStruct): Remove member `fontname'. Add member + `full_name'. + [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for + mac_scriptcode member. + + * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables. + (syms_of_mac): Don't initialize them. + (Vmac_charset_info_alist): New variable. + (syms_of_mac): Defvar it. + (create_text_encoding_info_alist): New function. + (decode_mac_font_name, mac_to_x_fontname) + (x_font_name_to_mac_font_name, init_font_name_table): Don't hard + code the correspondence among XLFD charsets, Mac script codes, and + Emacs coding systems. Use Vmac_charset_info_alist and result of + create_text_encoding_info_alist instead. + (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager + routines also on Mac OS Classic. + (init_font_name_table) [!TARGET_API_MAC_CARBON]: + Use add_font_name_table_entry. + (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as + specified. Derive unspecified scalable fields from specified one. + (x_list_fonts): Consider Valternate_fontname_alist. + (kDefaultFontSize): Change value from 9 to 12. + (XLoadQueryFont): Get decoded font family, font face, and charset + from x_font_name_to_mac_font_name. Set full name of loaded font. + (mac_unload_font): Free `full_name' member. + (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns + NULL. Copy full_name member of struct MacFontStruct to that of + struct font_info. + +2005-04-19 Kim F. Storm <storm@cua.dk> + + * xdisp.c (handle_stop): Set saved_face_id to current face if + selective_display_ellipsis_p so ellipsis will be shown in same + face as preceding text. + (setup_for_ellipsis): Don't set saved_face_id here. + (next_element_from_display_vector): Default to saved_face_id. + + * fns.c (Fsafe_get): New function. + (syms_of_fns): Defsubr it. + + * lisp.h (Fsafe_get): EXFUN it. + + * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay + loops in case of bad face property lists. Limit number of face + alias lookups to 10 (in case of face alias loops). + +2005-04-18 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap. + It replaces the corresponding member from struct window, as a + window may now show multiple overlay arrows. + Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap. + + * dispnew.c (row_equal_p, update_window_line, scrolling_window): + Compare overlay_arrow_bitmap than overlay_arrow_p members. + + * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row + rather than from window. + (update_window_fringes): Compare overlay_arrow_bitmap rather than + overlay_arrow_p members. + (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name + if not default. + + * window.h (struct window): Remove member overlay_arrow_bitmap. + + * window.c (make_window): Don't initialize overlay_arrow_bitmap. + + * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg. + Calls changed. Don't check for overlay-arrow-bitmap property here. + (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left + fringe is present, return Lisp integer for bitmap (or -1 for default). + Fix value of overlay-arrow-bitmap property to be a symbol, use + lookup_fringe_bitmap to parse it. + (display_line): Change call to overlay_arrow_at_row. Store integer + return value as overlay bitmap in row rather than window. + Only show overlay arrow if row displays text, or if no other overlay + arrow is seen in window (if overlay marker is at point-max). + +2005-04-18 Thien-Thi Nguyen <ttn@gnu.org> + + * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL. + +2005-04-18 Lute Kamstra <lute@gnu.org> + + * lread.c (Vloads_in_progress): Static. + * fns.c (Vloads_in_progress): Remove extern. + (load_in_progress): Add extern. + (Frequire): Use load_in_progress instead of Vloads_in_progress. + +2005-04-18 Thien-Thi Nguyen <ttn@gnu.org> + + * xmenu.c (Fx_popup_menu): Initialize error_name to NULL. + +2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (XTread_socket): Don't beep on keyboard input even if + no frame is visible. + +2005-04-16 Dan Nicolaescu <dann@ics.uci.edu> + + * term.c (struct keys): Add support for shifted keys. + +2005-04-16 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case. + (set_message): Call with_echo_area_buffer with WHICH = 0. + (set_message_1): Erase the echo area buffer first thing. + (echo_area_display): Don't clear echo_message_buffer. + +2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * Makefile.in (mac.o): Depend on charset.h and coding.h. + + * mac.c: Include charset.h and coding.h. + [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern. + [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function. + [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it. + + * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise. + + * image.c [MAC_OSX] (image_load_quartz2d): Likewise. + + * macterm.c (x_autoselect_window_p): Remove variable. + (last_window): New variable. + (XTreassert_line_highlight, x_change_line_highlight): + Remove declarations. + (mac_focus_changed, x_detect_focus_change): New functions and + declarations. + (XTextExtents16, front_emacs_window): Remove function. + (mac_focus_frame): New function. + (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket) + (mac_check_for_quit_char): Use it instead of front_emacs_window. + (x_scroll_bar_report_motion): Obtain window from control owner. + (x_make_frame_invisible): Set window manager size hint. + (do_mouse_moved): Remove function. + (XTread_socket): Move its contents here. Generate select-window + event on mouse movement if needed. Use x_detect_focus_change on + activate/deactivate events. Don't deiconify frame or invalidate + window rectangle when dnd items are dropped. + Don't activate/deactivate root control. + (frame_highlight, frame_unhighlight): Activate/deactivate root + control here. + (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p. + + * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]: + New extern. + +2005-04-15 Luc Teirlinck <teirllm@auburn.edu> + + * Makefile.in: Define new macro TOOLTIP_SUPPORT. + (lisp): Use it. + (SOME_MACHINE_LISP): Add tooltip. + +2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h. + Don't include TextEncodingConverter.h. + (mac_system_script_code, Vmac_system_locale): New variables. + (syms_of_mac): Defvar them. + (mac_get_system_locale): New function. + + * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]: + Use ENCODE_SYSTEM to encode title bar string. + (x_create_tip_frame): Apply 2005-03-18 change for xfns.c. + (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]: + Use CFStringGetSystemEncoding to get system default string encoding. + + * macterm.c [!TARGET_API_MAC_CARBON]: Don't include + TextEncodingConverter.h. + +2005-04-13 Steven Tamm <steventamm@mac.com> + + * macterm.c (syms_of_macterm): Remove redundant definition of + mac-pass-control-to-system. + +2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (Fset_window_configuration): Be careful when you choose + among several possible points for the new_current_buffer. + +2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call + poll_for_input_1. Set interrupt_input_pending to 1 instead. + (Qlanguage_change) [MAC_OS]: New variable. + (syms_of_keyboard) [MAC_OS]: Intern and staticpro it. + (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT. + + * macterm.c (mac_keyboard_text_encoding) + (current_mac_keyboard_text_encoding): Remove variables. + (XTread_socket): Store language-change event if keyboard script change + is detected. Don't convert input to `mac_keyboard_text_encoding'. + (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding. + + * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT. + +2005-04-10 Richard M. Stallman <rms@gnu.org> + + * emacs.c (standard_args): Rename --bare-bones to --quick. + Add -D aka --basic-display. + + * buffer.c (Fmake_indirect_buffer): Clear out some local variables. + +2005-04-09 Richard M. Stallman <rms@gnu.org> + + * keymap.c (where_is_internal): Convert a string used as event type + into "(any string)". + + * lread.c (Vloads_in_progress): Not static. + * fns.c (Vloads_in_progress): Add extern. + (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil. + +2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org> + + * dispnew.c (mirror_line_dance): Avoid crash if W2 is null. + +2005-04-09 Lute Kamstra <lute@gnu.org> + + * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is + within the accessible part of the buffer. + +2005-04-09 Kim F. Storm <storm@cua.dk> + + * lread.c (readevalloop): Add args START and END as region in + current buffer to read. Callers changed. + When specified, narrow to this region only when reading, + not during eval. Track next point to read from during eval. + Also restore point to "real" buffer position before eval. + (Feval_region): Don't save excursion and restriction here, and + don't narrow to region. Just pass region to readevalloop. + Note: Point is now preserved even when PRINTFLAG is nil. + +2005-04-08 Kim F. Storm <storm@cua.dk> + + * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>". + +2005-04-06 Kim F. Storm <storm@cua.dk> + + * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones. + +2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'. + (Fmac_get_preference): Doc fix. + + * macfns.c (Fx_create_frame, x_create_tip_frame): + Add "fontset-mac" to fallback font/fontsets. + +2005-04-04 Kim F. Storm <storm@cua.dk> + + * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc. + + * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry. + Call it again after autoload. + +2005-04-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling + mallopt. + + * ralloc.c (r_alloc_init): Ditto. + +2005-04-01 Kenichi Handa <handa@m17n.org> + + * lisp.h (Vascii_upcase_table, Vascii_canon_table) + (Vascii_eqv_table): Extern them. + + * casetab.c (set_case_table): If standard is nonzero, setup + Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table. + + * search.c (looking_at_1): Use current_buffer->case_canon_table, + not DOWNCASE_TABLE. + (string_match_1): Likewise. + (fast_c_string_match_ignore_case): Use Vascii_canon_table, not + Vascii_downcase_table. + (fast_string_match_ignore_case): Likewise. + (search_buffer): Fix checking of boyer-moore usability. + (boyer_moore): Calculate translate_prev_byte1/2/3 in advance. + No need of tranlating characters in PAT. Fix calculation of + simple_translate. + +2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca> + + * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap. + (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it. + Use XtNtopShadowPixel and XtNbottomShadowPixel. + (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't + really work and that breaks with some versions of Xaw3d. + +2005-03-31 Kenichi Handa <handa@m17n.org> + + * coding.c (syms_of_coding): Fix previous change. + +2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (search_embedded_absfilename): Fix last change. + +2005-03-25 Kenichi Handa <handa@m17n.org> + + * coding.c (syms_of_coding): Suggest to use set-coding-category in + the docstring of coding-category-list. + +2005-03-31 Kim F. Storm <storm@cua.dk> + + * keyboard.c (Qmouse_fixup_help_message): New var. + (syms_of_keyboard): Intern and staticpro it. + (show_help_echo): Apply mouse-fixup-help-message to help string. + +2005-03-30 Kim F. Storm <storm@cua.dk> + + * xdisp.c (display_line): Allow multiple overlay arrows in window. + +2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP. + (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p. + (Ffile_name_absolute_p): Use it. + (search_embedded_absfilename): New fun, extracted from + Fsubstitute_in_file_name. Use file_name_absolute_p. + Free the pw data after use. + (Fsubstitute_in_file_name): Use it. + After cutting a prefix, re-check file-name-handler. + +2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se> + + * w32term.h (x_output): Add focus_state. + + * w32term.c (x_focus_changed, w32_detect_focus_change): New functions. + (w32_read_socket) <WM_SETFOCUS>: Call w32_detect_focus_change. + +2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca> + + * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit): + Use Fexit_minibuffer. + (Fexit_minibuffer): Mark it as no-return, deactivate the mark. + +2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca> + + * dired.c (Ffile_attributes): Add a missing gcpro. + + * alloc.c (make_number): The arg can be bigger than `int'. + * lisp.h (make_number): Make prototype more precise. + + * process.c, dired.c (Vfile_name_coding_system) + (Vdefault_file_name_coding_system): + * callproc.c (Vdoc_file_name, Vfile_name_coding_system) + (Vdefault_file_name_coding_system): Remove unused declarations. + +2005-03-24 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (create_and_show_popup_menu): Just remove menu and return + if it failed to pop up (Gnome "show pointer on ctrl" option makes + menus fail to pop up). + +2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca> + + * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9. + Just prepend a backslash without replacing the NBSP by an SPC. + +2005-03-22 Kim F. Storm <storm@cua.dk> + + * xfaces.c (lookup_derived_face): Add arg SIGNAL_P. + * dispextern.h (lookup_derived_face): Fix prototype. + * msdos.c (XMenuActivate): Fix call to lookup_derived_face. + + * xdisp.c (handle_single_display_spec): Derive left-fringe and + right-fringe face from fringe face. + + * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face): + Derive face from fringe face. + +2005-03-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xrdb.c (x_load_resources): Undo previous change (2005-03-18). + +2005-03-22 David Kastrup <dak@gnu.org> + + * textprop.c (Fnext_char_property_change) + (Fprevious_char_property_change): Allow marker as limit. + (Fnext_single_char_property_change) + (Fprevious_single_char_property_change): Check that limit is a + number in strings. + (Fnext_single_char_property_change): Coerce position to integer. + (Fprevious_single_char_property_change): Same here. + +2005-03-21 Thien-Thi Nguyen <ttn@gnu.org> + + * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined. + +2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca> + + * frame.c (Fignore_event): Remove. + (syms_of_frame): Don't defsubr it. + + * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the + redundant `ignore-event'. + +2005-03-19 Eli Zaretskii <eliz@gnu.org> + + * unexec.c (write_segment, unexec): Move these functions to avoid + forward references (which cause errors with "gcc -gcoff"). + +2005-03-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so + that it doesn't become "tooltip". The specbind is enough. + + * xrdb.c (x_load_resources): Use different char *helv when I18N + is present. + +2005-03-17 Kenichi Handa <handa@m17n.org> + + * coding.c (syms_of_coding): Docstring of coding-category-list fixed. + +2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca> + + * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]: + Use xic_create_fontsetname even for non-Motif menus. + Don't forget to free the fontsetname. + + * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern. + +2005-03-17 Richard M. Stallman <rms@gnu.org> + + * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM. + + * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file) + (Fmake_symbolic_link): Use G to read the new file name. + + * callint.c (Finteractive): Document G option. + (Fcall_interactively): Implement G option. + + * buffer.c (buffer_lisp_local_variables): New function, + broken out from Fbuffer_local_variables. + (clone_per_buffer_values): Use buffer_lisp_local_variables. + +2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca> + + * xfns.c (xic_create_fontsetname): Add `motif' argument. + Always return a freshly allocated string. + (xic_create_xfontset): Adjust call. + + * xfaces.c (x_update_menu_appearance) [USE_MOTIF]: + Use xic_create_fontsetname to create a fontset so utf-8 locales work. + (dump_realized_face): Fix warning. + + * emacs.c (Fkill_emacs): YAILOM. + + * frame.c (Fignore_event): Fix ancient obscure C-u handling bug. + +2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (HASHKEY_TERMINAL): Remove. + (HASHKEY_MAX_NID): New macro. + (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra + argument. + (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument. + (xrm_create_database, xrm_q_put_resource) + (xrm_merge_string_database, xrm_q_get_resource_1) + (xrm_q_get_resource): Change resource database representation so + that it may not use multiple hash tables for a single database. + [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM. + +2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca> + + * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM. + + * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the + locale-coding-system, as was already done for WINDOWSNT. + + * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta + translation for chars in the 0-255 range. + +2005-03-16 Lute Kamstra <lute@gnu.org> + + * floatfns.c (Ffloor): Doc fix. + +2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c: Include macterm.h instead of directly including Carbon.h. + [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata) + (Qarray, Qdictionary): New variables. + (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them. + [TARGET_API_MAC_CARBON] (Qutf_8): Add extern. + [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro. + [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used + in callback for CFDictionaryApplyFunction. + [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp) + (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp) + (cfobject_desc_to_lisp, cfdictionary_add_to_list) + (cfdictionary_puthash, cfproperty_list_to_lisp): New functions. + [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function. + (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it. + (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro. + (skip_white_space, parse_comment, parse_include_file) + (parse_binding, parse_component, parse_resource_name, parse_value) + (parse_resource_line, xrm_create_database, xrm_q_put_resource) + (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource) + (xrm_cfproperty_list_to_value, xrm_get_preference_database): + New functions. + + * macfns.c (mac_get_rdb_resource): Remove function. + (x_get_string_resource): Use xrm_get_resource. + + * macgui.h (XrmDatabase): Typedef to Lisp_Object. + + * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of + name_list_element. + (mac_make_rdb): Create resource database from preferences and + argument string. + (mac_term_init): Save resource database to cddr part of + name_list_element. + + * macterm.h (xrm_merge_string_database, xrm_get_resource) + (xrm_get_preference_database): Add externs. + [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp) + (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp) + (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise. + + * process.c (init_process): Change `#ifdef DARWIN' to `#if + defined (DARWIN) || defined (MAC_OSX)'. + + * s/darwin.h (DARWIN): Don't define. + +2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift): + Remove unused variables. + (syms_of_macfns): Don't initialize them. Likewise for + Qface_set_after_frame_default. Defvar and initialize + Vx_window_horizontal_drag_shape. + (x_set_mouse_color): Change mouse pointer shape. + (mac_window) [!MAC_OSX]: Create root control. + (Fx_create_frame): Remove initializations of mouse pointer shapes. + (hourglass_started): New function (from xfns.c). + (start_hourglass, cancel_hourglass): Put function body in #ifdef + MAC_OSX. + (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress + indicator for each non-tooltip frame if needed, and show it. + (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators. + + * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and + Controls.h. Use ThemeCursor instead of CursHandle. + + * macterm.c (activate_scroll_bars, deactivate_scroll_bars): + Remove functions and declarations. + (mac_set_colors): Take argument for saving background color. + All callers changed. + (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle) + (mac_draw_rectangle, mac_draw_string_common): Save and Restore + background color. + (x_update_end, mac_do_track_drag): Don't reset background color. + (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]: + Use SetThemeCursor. + (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress + indicator control to the upper-right corner of the window. + (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable. + (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it. + (do_window_update): Update controls after updating content area. + (mac_handle_window_event): Remove unused extern. + (XTread_socket): Check both control handle and control part code + to determine whether a scroll bar is clicked. Activate/deactivate + root control instead of contained scroll bar controls. + (make_mac_terminal_frame): Use ThemeCursor constants. + + * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]: + New member hourglass_control. + (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines. + (activate_scroll_bars, deactivate_scroll_bars): Remove declarations. + +2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (keycode_to_xkeysym_table): Change mapping so that it + coincides with that in Apple X11 except `clear', `enter' on + laptops, and fn + `enter' on laptops. + +2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca> + + * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte. + (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR. + (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING. + + * xfns.c (xic_defaut_fontset): New constant. + (xic_create_fontsetname): New function. + Extracted from create_frame_xic. Try to generate a slightly + better fontset. + (xic_create_xfontset): Use it. + (create_frame_xic): Simplify. + +2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (Fmake_symbolic_link): Fix last change. + +2005-03-11 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Frename_file, Fadd_name_to_file) + (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory, + expand the basename of FILE relative to it. + +2005-03-11 Kenichi Handa <handa@m17n.org> + + * fileio.c (Finsert_file_contents): Call Fcheck_coding_system + before calling setup_coding_system so that autoloading of a coding + system work. + +2005-03-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (hourglass_started): New function. + + * dispextern.h: Declare hourglass_started. + + * keyboard.c (Fexecute_extended_command): Restart hourglass + after call to Fcompleting_read if already started. + + * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the + GTK main loop is entered in xterm.c, thus doing the redraw. + +2005-03-10 Kim F. Storm <storm@cua.dk> + + * xdisp.c (pos_visible_p): Fix X value in last line of buffer. + +2005-03-08 Kenichi Handa <handa@m17n.org> + + * frame.c (x_set_font): Call set_default_ascii_font if an + available font is found. + + * fontset.c (set_default_ascii_font): New function. + (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here. + + * fontset.h (set_default_ascii_font): Extern it. + +2005-03-07 Kim F. Storm <storm@cua.dk> + + * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const. + (clear_image_cache_count): New var. + (redisplay_internal): Don't clear face and image caches in the + middle of redisplay; do it afterwards. + + * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else. + + * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos + is valid. If not, clear phys_cursor_on_p and return. + +2005-03-07 Andreas Schwab <schwab@suse.de> + + * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT. + +2005-03-06 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT. + + * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO. + (Feval, Ffuncall): Use CHECK_CONS_LIST. + + * lisp.h (CHECK_CONS_LIST): New macro (two definitions). + + * blockinput.h (UNBLOCK_INPUT_TO): New macro. + (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any. + +2005-03-05 Juri Linkov <juri@jurta.org> + + * emacs.c (USAGE1): Replace Info node name "command arguments" + with "emacs invocation". + (USAGE3): Fix usage of `--color=MODE' which actually doesn't + allow arguments `--color' and `MODE' to be separated by space. + Add --no-blinking-cursor, -nbc. + (standard_args): Add -nbc, --no-blinking-cursor. + +2005-03-04 Thien-Thi Nguyen <ttn@gnu.org> + + * s/vms.h: Define NO_HYPHENS_IN_FILENAMES. + * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES. + * fileio.c (Fexpand_file_name) [VMS]: + Use NO_HYPHENS_IN_FILENAMES, not VMS4_4. + * doc.c (munge_doc_file_name) [VMS]: Likewise. + (Fsnarf_documentation): Call munge_doc_file_name. + +2005-03-04 Thien-Thi Nguyen <ttn@gnu.org> + + * s/vms.h (FILE_SYSTEM_CASE): New macro. + * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name + "manually"; this is now handled generally via FILE_SYSTEM_CASE. + +2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if + defined (MAC_OSX) && defined (HAVE_CARBON)'. + + * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h. + + * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h. + [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent. + (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions. + (mac_clear_font_name_table): Move extern to macterm.h. + + * macfns.c (install_window_handler): Move extern to macterm.h. + (Fx_file_dialog): Check STRINGP (default_filename) to see it is + valid. Don't check !NILP (dir) because it is already checked with + CHECK_STRING. + (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for + specifying the default location and obtaining the selected filename. + + * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h. + + * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that + are included via Carbon.h. + + * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]: + Define USE_CARBON_EVENTS to 1. + (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare. + (x_free_frame_resources): Call remove_window_handler for + non-tooltip windows. + [TARGET_API_MAC_CARBON]: Don't include headers that are included + via Carbon.h. + [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP) + (mac_do_receive_dragUPP): New variables. + (mac_handle_service_event, init_service_handler): Put declarations + and definitions in #ifdef MAC_OSX. + (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for + drag-and-drop handler functions and register them. + (remove_window_handler): New function. + (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]: + Use fsspec_to_posix_pathname. + (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8. + (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM. + [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]: + Set default cursors. + (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX]: Don't call + init_service_handler or init_quit_char_handler. + (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess. + + * macterm.h (install_window_handler, remove_window_handler) + (posix_pathname_to_fsspec, fsspec_to_posix_pathname) + (mac_clear_font_name_table): New externs. + +2005-03-03 Thien-Thi Nguyen <ttn@gnu.org> + + * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined. + (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally. + (Fexpand_file_name): Likewise. + +2005-03-03 Thien-Thi Nguyen <ttn@gnu.org> + + * emacs.c (Fkill_emacs): Use EXIT_SUCCESS; + no longer special-case VMS. Add bogus return value. + +2005-03-02 Kim F. Storm <storm@cua.dk> + + * dispextern.h (XASSERTS): Define to 0 if not already defined. + (xassert) [!XASSERTS]: Define dummy version. + +2005-03-02 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): YABX (yet another bogus xassert). + Reported by David Kastrup. + +2005-03-01 Ehud Karni <ehud@unix.mvs.co.il> + + * xdisp.c (get_next_display_element): Fix control and escape + glyph from display vector. + +2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * keyboard.c (Fposn_at_x_y): Check integerness of X and Y. + +2005-02-27 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (fast_find_position): Rename END to BEG. + (syms_of_xdisp) <menu-bar-update-hook>: Doc fix. + +2005-02-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to + gtk_window_resize and x_wm_set_size_hint. + +2005-02-25 Kim F. Storm <storm@cua.dk> + + * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16. + + * xdisp.c (init_from_display_pos): Don't read past end of + it->overlay_strings array. + +2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change) + + * buffer.c (syms_of_buffer): Fix typo. + +2005-02-23 Lute Kamstra <lute@gnu.org> + + * buffer.c (Foverlay_buffer): Doc fix. + +2005-02-22 Kim F. Storm <storm@cua.dk> + + * minibuf.c (Ftry_completion, Fall_completions): Allow both string + and symbol keys in alists and hash tables. + + * xdisp.c (fast_find_position): Fix search for start of overlay. + +2005-02-21 Kim F. Storm <storm@cua.dk> + + * window.c (window_scroll_pixel_based): When scrolling backwards, + handle partial visible line at end of window even when we hit PT. + +2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.h: Declare Fcurrent_active_maps, used in doc.c. + +2005-02-21 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_vertically_backward): Eliminate two xasserts. + I think those asserts are bogus if buffer contains invisible text + or images. + +2005-02-21 David Kastrup <dak@gnu.org> + + * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error. + +2005-02-20 Kim F. Storm <storm@cua.dk> + + * xdisp.c (pos_visible_p): Be sure to move to the specified + position. Always get the full ascent / descent of the + corresponding row, to return reliable rtop and rbot values. + (back_to_previous_visible_line_start): Fix 2005-01-18 change. + Must look one character back, as back_to_previous_line_start + returns position after the newline. + (move_it_vertically_backward): Fix heuristic for when to move further + back in case line_height * 2/3 is larger than window height. + (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p + as it does not do anything anymore. Add arg current_matrix_p to + use current matrix rather than desired matrix when set. + (try_cursor_movement): Don't scroll to make cursor row fully + visible if cursor didn't move. This avoids unexpected recentering + in case of blinking cursor or accepting process output. + Use current matrix to check cursor row visibility. + (redisplay_window): Fix whether to recenter or move to top in case + cursor line is taller than window height. + (find_first_unchanged_at_end_row): Stop search if we reach a row + which not enabled (instead of abort). + +2005-02-18 Kim F. Storm <storm@cua.dk> + + * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property + to be nil in a :box attribute value list; customize prints that + as lisp value when no box color is specified. + + * .gdbinit (pitx, pit): Pretty print display iterator. + (prowx, prow): Pretty print glyph row. + (pcursorx, pcursor): Pretty print a window cursor. + (pwinx, pwin): Pretty print struct window. + +2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (BLOCK_BYTES): Harmless typo. + +2005-02-17 Andreas Schwab <schwab@suse.de> + + * xfns.c (hack_wm_protocols): Use correct type for last parameter + of XGetWindowProperty to avoid aliasing issues. + (Fx_window_property): Likewise. + + * xselect.c (Fx_disown_selection_internal): Use union of struct + input_event and struct selection_input_event to avoid aliasing issues. + + * xterm.c (handle_one_xevent): Use union of struct input_event and + struct selection_input_event to avoid aliasing issues. + (SET_SAVED_MENU_EVENT): Adapt reference to inev. + +2005-02-17 Kim F. Storm <storm@cua.dk> + + * dispextern.h (enum it_method): New enum. + (GET_FROM_*): Its members. + (struct it): Change member method from function pointer to enum. + + * xdisp.c (check_it, init_from_display_pos, handle_stop) + (setup_for_ellipsis, handle_single_display_spec) + (handle_composition_prop, next_overlay_string) + (get_overlay_strings, reseat_1, reseat_to_string) + (next_element_from_ellipsis, BUFFER_POS_REACHED_P) + (in_display_vector_p, display_line, get_next_display_element): + Change it->method from function pointer to enum. + (get_next_element): New array to map it->method to function. + (get_next_display_element): Use it. + (set_iterator_to_next): Use switch instead of if/else chain. + +2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de> + + * w32select.c: Summary: Thorough rework to implement Unicode + clipboard operations and delayed rendering. + + Drop last_clipboard_text and related code, keep track of + ownership via clipboard_owner instead. Drop old #if0 sections. + + (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP) + (clipboard_owner, modifying_clipboard, cfg_coding_system) + (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text) + (current_coding_system, current_requires_encoding) + (current_num_nls, current_clipboard_type, current_lcid): + New static variables. + + (convert_to_handle_as_ascii, convert_to_handle_as_coded) + (render, render_all, run_protected, lisp_error_handler) + (owner_callback, create_owner, setup_config) + (enum_locale_callback, cp_from_locale, coding_from_cp): + New local functions. + + (term_w32select, globals_of_w32select): New global functions. + + (Fw32_set_clipboard_data): Ignore parameter FRAME, use + clipboard_owner instead. Use delayed rendering and provide + all text formats. Provide CF_LOCALE if necessary. + + (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and + CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not + available. Force DOS line-ends for decoding. + + (Fx_selection_exists_p): Handle CF_UNICODETEXT. + + (syms_of_w32select): Init and register new variables. + + * w32.h: Add prototypes for globals_of_w32select and + term_w32select. Make the neighboring K&R declarations into + prototypes, too. + + * emacs.c: Include w32.h to get function prototypes. + (main): Call globals_of_w32select. + + * w32.c (term_ntproc): Call term_w32select. + + * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef. + +2005-02-16 Kim F. Storm <storm@cua.dk> + + * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and + at end of display vector. + +2005-02-15 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (get_next_display_element): Fix escape-glyph criterion + for mode and header lines. + + * lread.c (syms_of_lread) <user-init-file>: Doc fix. + + * keymap.h (describe_map_tree): Change decl. + + * keyboard.c (command_loop_1): Always use safe_run_hooks + to run Qdeferred_action_function. + + * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed. + (describe_map, describe_vector): Likewise. When it's 1, + don't omit shadowed bindings, instead mark them as shadowed. + + * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps + for describe_map_tree. Pass 1 for MENTION_SHADOW. + + * data.c (Fsetq_default): Allow no arg case. + +2005-02-14 Kenichi Handa <handa@m17n.org> + + * coding.c (encode_coding_string): Always return a unibyte string. + If NOCOPY is nonzero and there's no need of encoding, make STR + unibyte directly. + + * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII + multibyte string, signal an error instead of aborting. + +2005-02-12 Dan Nicolaescu <dann@ics.uci.edu> + + * keyboard.c: If HAVE_FCNTL_H include fcntl.h. + +2005-02-12 Kim F. Storm <storm@cua.dk> + + * xdisp.c (expose_window): Don't fix overlaps for mode lines. + +2005-02-10 Kim F. Storm <storm@cua.dk> + + * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL + if it moves outside window or it doesn't display text. + +2005-02-09 Kim F. Storm <storm@cua.dk> + + * undo.c (Fprimitive_undo): Check that undo function does not + switch buffer. + +2005-02-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xselect.c (selection_data_to_lisp_data): For the special case + type == XA_ATOM, data contains array of int, not array of Atom. + (x_property_data_to_lisp, selection_data_to_lisp_data): + Comment update: data must be array of int for format == 32. + +2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca> + + * undo.c (Fprimitive_undo): Check veracity of delta,start,end. + +2005-02-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (Fx_change_window_property): Use long array when format is 32. + (Fx_window_property): If format is 32 and long is bigger than 32 bits, + convert long array returned from XGetWindowProperty to an int array. + (x_set_tool_bar_lines): Check that width and height is greater than + zero before clearing area. + + * xselect.c (x_reply_selection_request): Pass long array to + XChangeProperty so that 64 bit longs are handeled correctly. + (x_get_window_property): If format is 32 and long is bigger than 32 + bits convert data from XGetWindowProperty from long array to int array. + (lisp_data_to_selection_data): When the input is a vector and the + format is 32, allocate a long array even if long is bigger than 32 bits. + (x_fill_property_data): Use char, short and long as the man page + for XChangeProperty specifies. This way the data returned is OK for + both 32 and 64 bit machines. + (x_handle_dnd_message): Calculate size correctly even for 64 bit + machines. + (Fx_send_client_event): Undo change from 2005-02-05, + x_fill_property_data now handles that case. + + * xfns.c (Fx_backspace_delete_keys_p): Add comment about the + reason for the approach in the code. + +2005-02-07 Kim F. Storm <storm@cua.dk> + + * undo.c (Fprimitive_undo): Record max one dummmy apply element. + +2005-02-06 Richard M. Stallman <rms@gnu.org> + + * eval.c (Frun_hook_with_args) + (Frun_hook_with_args_until_success) + (Frun_hook_with_args_until_failure): Doc fixes. + +2005-02-05 Andreas Schwab <schwab@suse.de> + + * sysdep.c (sys_subshell): Properly terminate execlp argument list. + +2005-02-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle + the longs in a XClientMessageEvent correctly when long is 64 bits. + +2005-02-05 Eli Zaretskii <eliz@gnu.org> + + * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM + instead of HAVE_X_WINDOWS, for non-X windowed sessions. + +2005-02-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (menubar_selection_callback): Force out GTK buffered + events so the menu event comes after them. This is to prevent sit-for + from exiting on buffered events directly after a menu selection, + lisp code for Help => About Emacs uses sit-for. + + * gtkutil.c (create_menus): Connect selection-done event instead of + the deactivate event to deactivate_cb. This will make the last + leave event come before the call to deactivate_cb, so the leave + event does not make sit-for exit after a menu selection. + +2005-02-03 Kim F. Storm <storm@cua.dk> + + * dispnew.c (build_frame_matrix_from_leaf_window) + [!GLYPH_DEBUG]: Fix xassert. + + * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert. + + * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert. + +2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by + the compiling OS version. + + * macfns.c (x_create_tip_frame): Likewise. + + * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise. + +2005-02-03 Richard M. Stallman <rms@gnu.org> + + * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline. + + * xdisp.c (echo_area_display): Clear echo_message_buffer. + + * buffer.c (Fbury_buffer): Doc fix. + +2005-02-02 Steven Tamm <steventamm@mac.com> + + * macfns.c (unwind_create_frame): Fix compile error due to + xassert being uncondition, but predicate is. + * dispnew.c (update_window): Fix compile error due to + xassert being uncondition, but predicate is. + +2005-02-02 Miles Bader <miles@gnu.org> + + * dispextern.h (xassert): Enable unconditionally. + +2005-02-02 Kim F. Storm <storm@cua.dk> + + * undo.c (Fprimitive_undo): Fix dummy apply undo entry. + +2005-02-02 Kenichi Handa <handa@m17n.org> + + * casefiddle.c (casify_object): Enable changing characters of + different byte length. + (casify_region): Fix loop condition, args to replace_range_2, and + update opoint_byte. + + * insdel.c (replace_range_2): Fix bugs in adjusting markers and point. + +2005-02-01 Kim F. Storm <storm@cua.dk> + + * xdisp.c (back_to_previous_visible_line_start): Reset iterator + stack before calling handle_display_prop. + +2005-01-31 Kim F. Storm <storm@cua.dk> + + * undo.c (Qapply): New lisp var. + (syms_of_undo): Intern and staticpro it. + (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and + (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS). + + * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix. + +2005-01-30 Jesper Harder <harder@phys.au.dk> + + * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta> + <mac-emulate-three-button-mouse>: Fix docstring indentation. + +2005-01-29 Luc Teirlinck <teirllm@auburn.edu> + + * undo.c (syms_of_undo) <undo-outer-limit>: Doc update. + Increase value to 3 Meg. + +2005-01-29 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK, + button events are not received otherwise. + +2005-01-29 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix. + + * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME. + +2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (access_keymap): YAILOM. + +2005-01-27 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_phys_cursor_geometry): New function to calculate + phys cursor position and size for hollow cursor. Position is + aligned with get_glyph_string_clip_rect and ensures that a hollow + cursor is shown, even when the actual glyph is not visible. + + * dispextern.h (get_phys_cursor_geometry): Add prototype. + + * xterm.c (x_clip_to_row): Ensure y >= 0. + (x_draw_hollow_cursor): Use get_phys_cursor_geometry. + + * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry. + + * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry. + +2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca> + + * xterm.c (x_error_quitter): Add a prototype. Make it static again. + +2005-01-27 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_glyph_string_clip_rect): Always show a cursor + glyph, even when row is only partially visible and actual cursor + position is not visible. + +2005-01-24 Richard M. Stallman <rms@gnu.org> + + * xterm.c (x_error_quitter): No longer static, and moved after + x_error_handler. + +2005-01-24 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_by_lines): If we move forward after going too + far back, cancel move if end position is same as start position. + +2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * dispextern.h (struct glyph_string): New members clip_head and + clip_tail. + + * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip + region to the area between clip_head and clip_tail. + (draw_glyphs): Record the area that need to be actually redrawn to + the new variables clip_head and clip_tail when there are + overhangs. Set values of these variables to the corresponding + members in struct glyph_string. Refine x coordinates for + notice_overwritten_cursor using clip_head and clip_tail. + + * macgui.h (STORE_XCHARSETSTRUCT): New macro. + + * macterm.c (mac_compute_glyph_string_overhangs): Implement with + QDTextBounds. + (x_draw_glyph_string): Don't fill the background of the successor + of a glyph with a right overhang if the successor will draw a cursor. + (XLoadQueryFont): Obtain font metrics using QDTextBounds. + (x_redisplay_interface): Add entry for compute_glyph_string_overhangs. + +2005-01-24 Kim F. Storm <storm@cua.dk> + + * window.c (window_scroll_pixel_based): Fix scrolling in the wrong + direction if window height was smaller than next-screen-context-lines. + Now always scroll at least one line in the requested direction. + Ensure that we actually do scroll backwards when requested to do so. + + * xdisp.c (redisplay_window): Only try to make cursor line fully + visible once (to avoid redisplay loop). + +2005-01-23 Kim F. Storm <storm@cua.dk> + + * window.c (Fpos_visible_in_window_p): Simplify return value for + partially visible rows. + (window_scroll_pixel_based): Adapt to that change. + + * window.c (window_scroll_pixel_based): Force moving to next line + if scrolling doesn't move start point, e.g. if looking at tall image. + + * xdisp.c (pos_visible_p): Return 0 if non-interactive. + Clear last_height before calling line_bottom_y to get real height. + Fix calculation of y. + +2005-01-22 Steven Tamm <steventamm@mac.com> + + * s/darwin.h: Removed PTY_ITERATION from here. + (DARWIN): Define. + + * process.c (init_process): Default process-connection-type to + nil on darwin 6 or less, t if it is 7 or higher. This way the + broken pty behavior is still allowed on darwin 6 for interactive + processes for people that know what they are doing. + +2005-01-22 Kim F. Storm <storm@cua.dk> + + * window.c (auto_window_vscroll_p): New boolean. + (syms_of_window): DEFVAR_BOOL it. + (Fpos_visible_in_window_p): Extend return value to include RTOP + and RBOT values if FULLY is nil. + (window_scroll_pixel_based): Adjust vscroll for partially visible + rows if auto_window_vscroll_p is set. + (Fset_window_vscroll): Do nothing if vscroll is not modified. + + * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args + to return number of partially invisible pixels at top and bottom + of the dislay row at POS. + + * lisp.h (pos_visible_p): Fix prototype. + +2005-01-21 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fcopy_file): Doc fix. + +2005-01-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw. + (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to + start of function for older compilers. + +2005-01-20 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fmessage): If arg is "", return "" (as before). + + * keymap.c (access_keymap): Protect from bad value of meta_prefix_char. + + * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp + variable. + +2005-01-20 Steven Tamm <steventamm@mac.com> + + * editfns.c (Voperating_system_release): Add. + (init_editfns): Assign new variable operating-system-release + based on call to uname if available. + (get_operating_system_release): Add function to + allow c-level access to operating system release. + + * config.h: Regenerated. + + * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less. + (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for + using ptys as '7'. + +2005-01-20 Kim F. Storm <storm@cua.dk> + + * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean. + + * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows. + Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this. + + * macterm.c (x_draw_glyph_string_box): Likewise. + + * w32term.c (x_draw_glyph_string_box): Likewise. + + * indent.c (Fvertical_motion): Temporarily disable selective display. + +2005-01-19 Kim F. Storm <storm@cua.dk> + + * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer + image property. + + * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair. + +2005-01-18 Kim F. Storm <storm@cua.dk> + + * xdisp.c (fast_find_position): Backtrack to find first row if + charpos is inside a display overlay that spans multiple lines. + +2005-01-18 Kenichi Handa <handa@m17n.org> + + * coding.c (decode_coding_iso2022): Translate invalid codes if + translation-table is specified. + +2005-01-18 Kim F. Storm <storm@cua.dk> + + * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28 + change. If handle_display_prop indicates newline is replaced by + image or text, move back to start of relevant overlay or interval + and continue scan from there. Simplify. + +2005-01-17 Kim F. Storm <storm@cua.dk> + + * dispnew.c (mode_line_string, marginal_area_string): + Fix off-by-one error in search for glyph. + +2005-01-16 Kim F. Storm <storm@cua.dk> + + * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix. + +2005-01-16 Steven Tamm <steventamm@mac.com> + + * macterm.c (mac_to_x_fontname): Remove spurious argument. + +2005-01-16 Andreas Schwab <schwab@suse.de> + + * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1. + +2005-01-16 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning + fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *. + +2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW) + (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES): + New flags for readable_events. + (get_filtered_input_pending, readable_filtered_events): Remove. + (tracking_off): Call readable_events and get_input_pending with + flag READABLE_EVENTS_DO_TIMERS_NOW. + (readable_events): Move code from old readable_filtered_events here, + but check new READABLE_EVENTS_* in argument flags instead of previous + two boolean arguments do_timers_now and filter_events. + If we are doing mouse tracking and the mouse moved, return only if + READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags. + (swallow_events): Call get_input_pending with flag + READABLE_EVENTS_DO_TIMERS_NOW. + (get_input_pending): Move code from old get_filtered_input_pending + here. Replace boolean arguments do_timers_now, filter_events with + flags, and pass flags to readable_events. Document new + READABLE_EVENTS_* flags. + (detect_input_pending_ignore_squeezables): New function. + (detect_input_pending_run_timers): Call get_input_pending with flag + READABLE_EVENTS_DO_TIMERS_NOW. + (Finput_pending_p): Call get_input_pending with flags + READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS. + + * dispnew.c (update_window, update_frame_1): Replace calls to + detect_input_pending with detect_input_pending_ignore_squeezables + so that redisplay is not paused if the event queue contains only + mouse movements. + + * lisp.h: Declare detect_input_pending_ignore_squeezables. + +2005-01-15 Steven Tamm <steventamm@mac.com> + + * macterm.c (Vmac_use_core_graphics): Declare variable for + mac-allow-anti-aliasing. + (syms_of_macterm): DEFVAR_LISP and initialize it. + (mac_draw_string_common): Use core graphics text rendering if + mac-allow-anti-aliasing is enabled. + + * macfns.c (Fx_file_dialog): Save As dialog includes only the + file name in the text box. + +2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (x_set_foreground_color, x_set_background_color): + Sync with xfns.c. + (mac_window, x_create_tip_frame): Use XSetWindowBackground. + * macterm.c (XSetBackground, XSetWindowBackground): New functions. + * macterm.h (XSetBackground, XSetWindowBackground): Add externs. + +2005-01-14 Kim F. Storm <storm@cua.dk> + + * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE. + +2005-01-13 Richard M. Stallman <rms@gnu.org> + + * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map + if Voverriding_terminal_local_map is non-nil. + + * keyboard.c (syms_of_keyboard): Doc fix. + +2005-01-13 Kim F. Storm <storm@cua.dk> + + * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg + (specify 0 for FACE instead). Reorder arg list. Doc fix. + +2005-01-12 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (Fformat_mode_line): New arg FACE specifies a default + face property for characters that don't specify one. + + * fns.c (Frequire): Record in load-history unconditionally. + +2005-01-10 Kim F. Storm <storm@cua.dk> + + * dispextern.h (merge_faces): Rename from merge_into_realized_face. + + * xfaces.c (merge_faces): Rename from merge_into_realized_face. + Callers changed. + Add support to merge with lisp face id too (if face_name is t). + + * xdisp.c (get_next_display_element, next_element_from_display_vector): + Don't lookup lface_id from display table glyphs here; instead use + merge_faces to merge the lisp face id into current face. + +2005-01-09 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct it): New member dpvec_face_id. + (merge_into_realized_face): Add prototype. + + * xfaces.c (merge_into_realized_face): New function. Used to + merge escape-glyph face or face from display table into current face. + + * xdisp.c (Vshow_nonbreak_escape): New lisp var. + (syms_of_xdisp): DEFVAR_LISP it. + (escape_glyph_face): Remove var. + (redisplay_window): Don't initialize it. + (setup_for_ellipsis, get_next_display_element): + Set it->dpvec_face_id to -1. + (get_next_display_element): Test Vshow_nonbreak_escape. + Do not setup escape_glyph_face. + Properly merge escape-glyph face or face from display table with + current face for escape and control characters. + Set it->dpvec_face_id to relevant face id instead of adding it to each + element of display vector. + (next_element_from_display_vector): If it->dpvec_face_id is set, + use that instead of lface_id from glyph itself. + +2005-01-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h (struct x_output): New member, toolbar_detached. + + * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to + 38. + (xg_tool_bar_detach_callback): Set toolbar_detached to 1. + (xg_tool_bar_attach_callback): Set toolbar_detached to 0. + (xg_create_tool_bar): Initialize toolbar_detached. + (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if + toolbar_detached is zero. + +2005-01-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (create_and_show_popup_menu): Pass zero as button to + gtk_menu_popup if not for_click, so callbacks for the menu are called. + + * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar) + (xg_tool_bar_callback, xg_tool_bar_help_callback) + (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning. + + * xselect.c (x_get_foreign_selection, x_fill_property_data) + (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with + XFLOAT_DATA to get extract number from Lisp object. + +2005-01-07 Kim F. Storm <storm@cua.dk> + + * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change. + Set stop_charpos to current charpos instead of 0. + +2005-01-06 Nick Roberts <nickrob@snap.net.nz> + + * xdisp.c (Fformat_mode_line): First arg now required. + +2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (XLoadQueryFont): Correctly handle 0 size + font widths that are returned from some Japanese fonts. + +2005-01-06 Kim F. Storm <storm@cua.dk> + + * fringe.c (fringe_faces): Change to Lisp_Object pointer. + (draw_fringe_bitmap_1): Lookup user defined fringe faces here. + (destroy_fringe_bitmap): Set fringe_faces element to nil. + (Fdefine_fringe_bitmap, init_fringe): Change allocation of + fringe_faces array and init elements to nil. + (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of + non-persistent face id. + (mark_fringe_data): New function for GC. + + * alloc.c (mark_fringe_data): Declare extern. + (Fgarbage_collect): Call mark_fringe_data. + + * alloc.c (overrun_check_free): Invalidate freed memory if + XMALLOC_CLEAR_FREE_MEMORY is defined. + +2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c: Include sys/param.h. + [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration + and function. + [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size + of filename string. Set event callback function when creating + dialog boxes. Add code conversions for filenames. Don't dispose + of apple event descriptor record if failed to create it. + + * macterm.c: Include sys/param.h. + [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for + kEventWindowUpdate. + (install_window_handler) [USE_CARBON_EVENTS]: Register it. + (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead + of FSSpec from apple event descriptor record. + (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for + size of filename string. + [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. + [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a + file dialog is in action. + [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise. + Reject only when there are no filename items. Set background color + before (un)highlighting the window below the dragged items. + (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update. + +2005-01-05 Romain Francoise <romain@orebokech.com> + + * term.c (encode_terminal_code): Fix buffer size computation. + +2005-01-04 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (Fformat_mode_line): Doc fix. + +2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (refill_memory_reserve): Move. + (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc) + (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define. + +2005-01-03 Richard M. Stallman <rms@gnu.org> + + * window.c (window_scroll_pixel_based): Don't correct preserve_y + for CURRENT_HEADER_LINE_HEIGHT when moving backwards. + +2005-01-03 Jason Rumney <jasonr@gnu.org> + + * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and + fontp->space_width to FONT_WIDTH so they are valid. + + * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not + average width. Set fontp->average_width and fontp->space_width to + their appropriate values. + + * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to + fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to + fontp->space_width. + +2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH. + (x_font_min_bounds, XLoadQueryFont): Use the correct font width + metrics for max and min bounds. + (x_load_font): Correctly calculate average font width metrics. + +2005-01-02 Richard M. Stallman <rms@gnu.org> + + * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers. + +2004-12-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): Clear area in expose event for GTK. + +2004-12-31 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (setup_for_ellipsis, get_next_display_element): + Set it->ellipsis_p to 1 or 0. + (display_line): Record whether row ends in mid-ellipsis. + (set_cursor_from_row): If ends in ellipsis, find start of it. + (cursor_row_p): If PT's at the end of the ellipsis the row + ends within, don't display cursor on this row. + + * dispextern.h (struct it): New element ellipsis_p. + (struct glyph_row): New element ends_in_ellipsis_p. + + * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified + position if we're reading from something other than the buffer. + + * window.c (window_scroll_pixel_based): Only look at + Vscroll_preserve_screen_position if the old PT can't be kept. + (syms_of_window) <scroll-preserve-screen-position>: Doc fix. + +2004-12-30 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_line_height_property): New function extracted from + original calc_line_height_property. + (calc_line_height_property): Rework. Handle t and (nil . ratio). + (x_produce_glyphs): Use them to handle line-height and + line-spacing according to new height spec. + (Qtotal): Remove. + (syms_of_xdisp): Remove intern and staticpro for Qtotal. + +2004-12-30 Kenichi Handa <handa@m17n.org> + + * fileio.c (Finsert_file_contents): Don't use + current_buffer->buffer_file_coding_system even if REPLACE is + non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT. + + * fontset.h (struct font_info): New members space_width and + average_width. + + * frame.h (struct frame): New member space_width. + (FRAME_SPACE_WIDTH): New macro. + + * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH. + + * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to + fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to + fontp->space_width. + (x_load_font): Calculate fontp->space_width and fontp->average_width. + (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH. + + * xdisp.c (x_produce_glyphs): Calculate tab width by + FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH. + +2004-12-29 Sanghyuk Suh <han9kin@mac.com> + + * macterm.c (SelectionRange): Add Xcode position apple event struct. + (do_ae_open_documents): Handle Xcode-style file position open events. + +2004-12-29 Luc Teirlinck <teirllm@auburn.edu> + + * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo. + +2004-12-29 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix. + +2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (install_window_handler): Modify extern to return OSErr + value. + (mac_window): Handle return value of install_window_handler. + + * macterm.c (reflect_byte): Remove function. + (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte. + Lookup table instead. + (mac_do_font_lists): Simplify calculation of the longest + nonspecial string. + (init_mac_drag_n_drop): Remove function and declaration. + (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call + init_mac_drag_n_drop. + (mac_do_track_drag): New function and declaration. + (install_window_handler): Return OSErr value. + (install_window_handler) [TARGET_API_MAC_CARBON]: + Register handlers for tracking/receiving drag-and-drop items. + (do_ae_open_documents): Generate unibyte strings for filenames. + (mac_do_receive_drag) [TARGET_API_MAC_CARBON]: Likewise. + Reject only non-filename items. Set event modifiers, and return value. + +2004-12-28 Dan Nicolaescu <dann@ics.uci.edu> + + * coding.c (decode_coding): Fix previous change. + +2004-12-28 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (back_to_previous_visible_line_start): + Don't call handle_display_prop. + +2004-12-28 Dan Nicolaescu <dann@ics.uci.edu> + + * coding.c (decode_coding_XXX, decode_composition_emacs_mule) + (decode_coding_emacs_mule, encode_coding_emacs_mule) + (decode_coding_iso2022, encode_designation_at_bol) + (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol) + (decode_coding): Constify arguments and local vars. + +2004-12-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (popup_get_selection): Only pop down dialogs + on C-g and Escape. + (popup_get_selection): Remove parameter down_on_keypress. + (create_and_show_popup_menu, create_and_show_dialog): + Remove parameter down_on_keypress to popup_get_selection. + +2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * dispextern.h: Change HAVE_CARBON to MAC_OS. + (struct glyph_string): Likewise. + + * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of + mac_initialize. + + * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name): + Change TARGET_API_MAC_CARBON to HAVE_CARBON. + + * fns.c (vector): Change MAC_OSX to MAC_OS. + + * frame.c (x_set_frame_parameters, x_report_frame_params) + (x_set_fullscreen): Remove #ifndef HAVE_CARBON. + (x_set_border_width, Vdefault_frame_scroll_bars): + Change HAVE_CARBON to MAC_OS. + + * image.c [MAC_OS]: Include sys/stat.h. + [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and + QuickTimeComponents.h. + + * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern. + [!MAC_OSX] (select): Use mac_wait_next_event. + [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes. + [!MAC_OSX] (select, run_mac_command): Change `#ifdef + TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'. + (mac_clear_font_name_table): Add extern. + (Fmac_clear_font_name_table): New defun. + (syms_of_mac): Defsubr it. + [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define. + [MAC_OSX] (select_and_poll_event): New function. + [MAC_OSX] (sys_select): Use it. + [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function. + [MAC_OSX && SELECT_USE_CFSOCKET] + (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines. + [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and + RunLoop for simultaneously monitoring two kinds of inputs, window + events and process outputs, without periodically polling. + + * macfns.c (mac_initialized): Remove extern. + (stricmp): Put in #if 0. All callers changed to use xstricmp in + xfaces.c. + (strnicmp): Decrement `n' at the end of each loop, not the beginning. + (check_mac): Use the term "Mac native windows" instead of "Mac OS". + (check_x_display_info, x_display_info_for_name): Sync with xfns.c. + (mac_get_rdb_resource): New function (from w32reg.c). + (x_get_string_resource): Use it. + (install_window_handler): Add extern. + (mac_window): New function. + (Fx_create_frame): Use it instead of make_mac_frame. + Set parameter for Qfullscreen. Call x_wm_set_size_hint. + (Fx_open_connection, Fx_close_connection): New defuns. + (syms_of_macfns): Defsubr them. + (x_create_tip_frame) [TARGET_API_MAC_CARBON]: + Add kWindowNoUpdatesAttribute to the window attribute. + (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow. + (x_create_tip_frame): Don't call ShowWindow. + (Fx_show_tip): Call ShowWindow. + (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if + TARGET_API_MAC_CARBON'. + (mac_frame_parm_handlers): Set handlers for Qfullscreen. + (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0. + + * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h. + (Window): Typedef to WindowPtr and move outside `#if + TARGET_API_MAC_CARBON'. + (XSizeHints): New struct. + + * macterm.c (x_update_begin, x_update_end) + [TARGET_API_MAC_CARBON]: Disable screen updates during update of a + frame. + (x_draw_glyph_string_background, x_draw_glyph_string_foreground) + [MAC_OS8]: Use XDrawImageString/XDrawImageString16. + (construct_mouse_click): Put in #if 0. + (x_check_fullscreen, x_check_fullscreen_move): Remove decls. + (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef + TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'. + (activate_scroll_bars, deactivate_scroll_bars) + [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl. + (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window + if the position is neither user-specified nor program-specified. + (x_free_frame_resources): Free size_hints. + (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints. + (mac_clear_font_name_table): New function. + (mac_do_list_fonts): Initialize font_name_table if needed. + (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT + around mac_do_list_fonts. + (mac_unload_font): New function. + (x_load_font): Add BLOCK_INPUT around XLoadQueryFont. + (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations + and definitions with #if TARGET_API_MAC_CARBON. + [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl. + (install_window_handler): Add decl. + (do_window_update): Add BeginUpdate/EndUpdate for the tooltip + window. Use UpdateControls. Get the rectangle that should be + updated and restrict the target of expose_frame to it. + (do_grow_window): Set minimum height/width according to size_hints. + (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow. + (do_zoom_window): Don't use x_set_window_size. + [USE_CARBON_EVENTS] (mac_handle_window_event): New function. + (install_window_handler): New function. + [!USE_CARBON_EVENTS] (mouse_region): New variable. + [!USE_CARBON_EVENTS] (mac_wait_next_event): New function. + (XTread_socket) [USE_CARBON_EVENTS]: Move call to + GetEventDispatcherTarget inside BLOCK_INPUT. + (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event. + Update mouse_region when mouse is moved. + (make_mac_frame): Remove. + (make_mac_terminal_frame): Put in #ifdef MAC_OS8. + Initialize mouse pointer shapes. Change values of f->left_pos and + f->top_pos. Don't use make_mac_frame. Use NewCWindow. + Don't call ShowWindow. + (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from + Vinvocation_name and Vsystem_name. + (mac_make_rdb): New function (from w32term.c). + (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has + already been opened. Don't pass argument to + mac_initialize_display_info. Don't set dpyinfo->height/width. + Add entries to x_display_list and x_display_name_list. + (x_delete_display): New function. + (mac_initialize): Don't call mac_initialize_display_info. + (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide. + + * macterm.h (check_mac): Add extern. + (struct mac_output): New member size_hints. + (FRAME_SIZE_HINTS): New macro. + (mac_unload_font): Add extern. + + * xdisp.c (expose_window, expose_frame): Remove kludges for Mac. + + * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font. + +2004-12-27 Richard M. Stallman <rms@gnu.org> + + * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el). + (syms_of_buffer): Don't defsubr it. + + * process.c (list_processes_1): Set undo_list instead + of calling Fbuffer_disable_undo. + + * xdisp.c (single_display_spec_string_p): Rename from + single_display_prop_string_p. + (single_display_spec_intangible_p): Rename from + single_display_prop_intangible_p. + (handle_single_display_spec): Rename from handle_single_display_prop. + Rewritten to be easier to understand. + + Change in load-history format. Functions now get (defun . NAME), + and variables get just NAME. + + * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH. + + * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH. + (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH. + (Qdefvar): Var deleted. + (syms_of_eval): Don't initialze it. + + * lread.c (syms_of_lread) <load-history>: Doc fix. + +2004-12-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (popup_get_selection): Pop down on C-g. + (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that + pops down menu on C-g. + (xdialog_show): If dialog popped down and no button in the dialog was + pushed, call Fsignal to quit. + (xmenu_show): In no toolkit version, if menu returns NO_SELECT call + Fsignal to quit. + + * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g. + + * gtkutil.c (xg_initialize): Install bindings for C-g so that + dialogs and menus pop down. + +2004-12-27 Kenichi Handa <handa@m17n.org> + + * coding.c (code_convert_region): Fix calculation of `ratio'. + +2004-12-25 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (update_frame_tool_bar): Make the value of + tool-bar-button-margin control margins of images in tool bar. + + * alloc.c (check_depth): New variable. + (overrun_check_malloc, overrun_check_realloc): Only add + overhead and write check pattern if check_depth is 1 (to handle + recursive calls). Increase/decrease check_depth in entry/exit. + (overrun_check_free): Only check for overhead if check_depth is 1. + Increase/decrease check_depth in entry/exit. + +2004-12-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK + before touching input_available_clear_time, to avoid accessing it + from multiple threads. + +2004-12-23 Jason Rumney <jasonr@gnu.org> + + * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour + of JPEG library. + +2004-12-22 Richard M. Stallman <rms@gnu.org> + + * emacs.c (main): If batch mode, set Vundo_outer_limit to nil. + + * lisp.h (Vundo_outer_limit): Fix decl. + + * undo.c (Vundo_outer_limit): Replaces undo_outer_limit. + Uses changed. + (syms_of_undo): Initialize appropriately. + (truncate_undo_list): If it's nil, there's no limit. + +2004-12-22 Kenichi Handa <handa@m17n.org> + + * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string. + +2004-12-21 Richard M. Stallman <rms@gnu.org> + + * eval.c (unwind_to_catch): Clear immediate_quit. + + * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad + specially as `\ ' and `\-'. + + * keyboard.c (kbd_buffer_store_event_hold): + In the code for while-no-input, handle immediate_quit. + + * alloc.c (Fgarbage_collect): Update call to truncate_undo_list. + Call that at the very start. + (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c. + (syms_of_alloc): Don't define undo-limit, + undo-strong-limit and undo-outer-limit here. + + * undo.c (truncate_undo_list): Return void. + Take just one argument, the buffer. + Make it current, and inhibit recursive GC. + Access and update the undo list directly; return void. + Refer to the undo...limit variables directly. + Test undo_outer_limit only after counting the whole current command. + When it's exceeded, call the function in undo-outer-limit-function. + (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c. + (Vundo_outer_limit_function): New variable. + (syms_of_undo): Define undo-limit, undo-strong-limit + and undo-outer-limit here, and undo-outer-limit-function. + Doc fixes. + + * lisp.h (truncate_undo_list): Update decl. + +2004-12-21 Piet van Oostrum <piet@cs.uu.nl> + + * fileio.c (Fread_file_name): Delete duplicates in + file-name-history when history_delete_duplicates is true. + +2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_do_list_fonts): Fix memory leak. + +2004-12-20 Richard M. Stallman <rms@gnu.org> + + * regex.c (re_match_2_internal) <symend, wordend>: + Fix calls to UPDATE_SYNTAX_TABLE_FORWARD. + +2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (endif, x_font_name_to_mac_font_name): + Use maccentraleurroman instead of maccentraleuropean + (mac_c_string_match, mac_do_list_fonts): Speed up font search by + quickly finding a specific font without needing regexps. + +2004-12-15 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * syssignal.h: Declare main_thread. + (SIGNAL_THREAD_CHECK): New macro. + + * keyboard.c (input_available_signal): Move thread checking code + to macro SIGNAL_THREAD_CHECK and call that macro. + (interrupt_signal): Call SIGNAL_THREAD_CHECK. + + * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c. + + * emacs.c: Define main_thread. + (main): Initialize main_thread. + (handle_USR1_signal, handle_USR2_signal, fatal_error_signal) + (memory_warning_signal): Call SIGNAL_THREAD_CHECK. + + * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK. + + * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK. + + * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK. + + * process.c (send_process_trap, sigchld_handler): + Call SIGNAL_THREAD_CHECK. + + * data.c (arith_error): Call SIGNAL_THREAD_CHECK. + + * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK. + + * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before + returning when xg_ignore_gtk_scrollbar is true. + +2004-12-14 Kim F. Storm <storm@cua.dk> + + * keyboard.c (read_char): Save and restore echo_string when + handling input method. + +2004-12-13 Richard M. Stallman <rms@gnu.org> + + * eval.c (syms_of_eval) <quit-flag>: Doc fix. + + * keyboard.c (Vthrow_on_input): New variable. + (syms_of_keyboard): Defvar and initialize it. + (kbd_buffer_store_event_hold): Handle Vthrow_on_input. + + * lisp.h (QUIT): Check for Vthrow_on_input. + (Vthrow_on_input): Declare it. + +2004-12-13 Kim F. Storm <storm@cua.dk> + + * xdisp.c (set_iterator_to_next): Reset stop_charpos after display + vector. + +2004-12-12 Richard M. Stallman <rms@gnu.org> + + * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0. + + * minibuf.c (Fall_completions): Add var `zero' and use it in loop. + (Ftry_completion): Really use outer `zero'; eliminate inner one. + +2004-12-12 Kenichi Handa <handa@m17n.org> + + * term.c (encode_terminal_code): Fix previous change. + +2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca> + + * keyboard.c (handle_async_input): Remove pthread mutex handling. + (input_available_signal): Move pthread thingy to !SYNC_INPUT branch. + + * syntax.c (Fforward_word): Avoid non-idempotent side-effects + in macro arguments. + + * minibuf.c (Ftry_completion, Fall_completions): Don't use + XFASTINT blindly. + + * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT. + +2004-12-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * w32term.c (x_calc_absolute_position): Remove calculation of + difference between inner and outer window. Don't subtract difference + for left and top calculations. + + * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff + for left and top calculations. Remove call to x_real_positions. + [Bug report by Drew Adams in November.] + (x_check_expected_move): Do not set change_gravity to 1 when calling + x_set_offset. + +2004-12-08 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (get_next_display_element): Use `escape-glyph' for + control chars and escaped octal codes. + (Qescape_glyph): New variable. + (syms_of_xdisp): Initialize it. + (escape_glyph_face): New variable. + (redisplay_window): Initialize it. + +2004-12-07 Paul Eggert <eggert@cs.ucla.edu> + + * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE) + (init_image): Use 1 rather than TRUE. TRUE's not always defined. + +2004-12-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around + reset_malloc_hooks. + + * keyboard.c (handle_async_input, input_available_signal): + Add ! defined (SYSTEM_MALLOC) around thread code. + + * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC. + +2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca> + + * eval.c (init_eval_once): Increase max_specpdl_size to 1000. + + * config.in: Regenerate. + +2004-12-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (Fx_popup_menu): Correct documentation about position. + (xmenu_show): Do not call XTranslateCoordinates. Adjust position + if not given by a mouse click to correspond with x-popup-menu + documentation. + + * config.in: Regenerate. + + * gtkutil.c: Include signal.h and syssignal.h. + (xg_get_file_name): Block and unblock __SIGRTMIN if defined. + + * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h, + new variables main_thread and alloc_mutex, + define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect + emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread. + If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same + as (UN)BLOCK_INPUT. + (emacs_blocked_free, emacs_blocked_malloc) + (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC. + (uninterrupt_malloc): Initialize main_thread and alloc_mutex. + (reset_malloc_hooks): New function. + + * lisp.h: Declare reset_malloc_hooks. + + * emacs.c (Fdump_emacs): Call reset_malloc_hooks. + + * keyboard.c: Conditionally include pthread.h. + (handle_async_input, input_available_signalt): If not in the main + thread, block signal, send signal to main thread and return. + + * gtkutil.c (xg_get_file_with_chooser): Handle local files only. + Set current folder in file chooser if default_filename is a directory. + +2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca> + + * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end. + Remove redundant correctness checks. + (regex_compile): Fix up error codes for \{..\} expressions. + +2004-12-05 Richard M. Stallman <rms@gnu.org> + + * regex.c (regex_compile): Fix end-of-pattern case for space. + +2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.h (cfstring_create_with_utf8_cstring): Add prototype. + * mac.c (cfstring_create_with_utf8_cstring): Add to prevent + crashes with invalid characters. + * macmenu.c (add_menu_item): Use it. + * image.c (image_load_quartz2d): Likewise. + * macfns.c (x_set_name, x_set_title): Likewise. + (Fx_file_dialog): Likewise. Use constant CFRefs instead of + creating them each time for labels. + +2004-12-02 Richard M. Stallman <rms@gnu.org> + + * config.in (RE_TRANSLATE_P): If make_number is not a macro, + don't use it here. + + * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE. + (interactive_p): Skip Scalled_interactively_p frames + like Sinteractive_p frames. + (unwind_to_catch): Clear handling_signal. + + * data.c (Fmake_variable_buffer_local): Doc fix. + (Fmake_local_variable): Doc fix. + + * insdel.c (insert_from_string_before_markers) + (insert_from_string): Don't modify buffer on empty insertion. + + * window.c (Fget_lru_window, Fget_largest_window): Doc fixes. + +2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (add_menu_item): Fallback on MacRoman if encoding + menu text as UTF8 fails. + +2004-12-01 Kim F. Storm <storm@cua.dk> + + * alloc.c: Add commentary for last change. + (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle + sizeof(size_t) != 4. + (overrun_check_malloc, overrun_check_realloc, overrun_check_free): + Use them. Also clear header and trailer of freed memory. + (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA. + (string_overrun_cookie): Rename from string_overrun_pattern. + (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE. + +2004-12-01 Andreas Schwab <schwab@suse.de> + + * lisp.h: Declare string_to_multibyte. + +2004-12-01 Kenichi Handa <handa@m17n.org> + + * w32console.c (w32con_write_glyphs): Decide coding here. + Adjusted for the change of encode_terminal_code. + + * term.c (encode_terminal_code): Don't make it "static". + +2004-11-30 Kenichi Handa <handa@m17n.org> + + * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables. + (encode_terminal_code): Argument changed. Encode all + characters at once, and return a pointer to the result of encoding. + (write_glyphs): Decide coding here. Adjusted for the above change. + (insert_glyphs): Likewise. + (term_init): Initialize encode_terminal_bufsize to 0. + + * coding.c (Vcode_conversion_workbuf_name): New variable. + (syms_of_coding): Initialize and staticpro it. + (set_conversion_work_buffer): New function. + (run_pre_post_conversion_on_str): Use it. + (run_pre_write_conversin_on_c_str): New function. + + * coding.h (run_pre_write_conversin_on_c_str): Extern it. + +2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * keyboard.c: Don't undef SIGIO + * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon + * Makefile.in (mac.o): Depend on blockinput.h and atimer.h. + (macfns.o): Don't depend on ccl.h. + * macfns.c (mac_frame_parm_handlers): Set handlers for + Qleft_fringe and Qright_fringe. + * macterm.c (mac_fill_rectangle_to_pixmap) + (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap) + (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1): + Put in #if 0. + (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect. + (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames. + (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement. + (x_draw_glyph_string_background, x_draw_glyph_string_foreground) + [!MAC_OS8]: Added ifdef'd out code for os8. Don't use + XDrawImageString. Always draw background and foreground separately. + (x_draw_image_foreground): Use clipping instead of computing the + intersection rectangle. + (x_draw_image_glyph_string): Don't draw an image with mask to a + pixmap. + (x_redisplay_interface): Set flush_display_optional member to 0. + (XTread_socket): Correctly reset the TEConverter + object. + +2004-11-30 Kim F. Storm <storm@cua.dk> + + * lisp.h: New defines to enable buffer overrun checking. + (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST) + (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add. + + * alloc.c: Add more checks for buffer overruns. + (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header) + xmalloc_overrun_check_trailer, overrun_check_malloc) + overrun_check_realloc, overrun_check_free): Add. + (GC_STRING_EXTRA, string_overrun_pattern): Add. + (check_sblock, allocate_string_data, compact_small_strings): + Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN. + (check_cons_list): Condition on GC_CHECK_CONS_LIST. + (check_string_free_list): Add. + (allocate_string, sweep_strings): Call check_string_free_list. + + * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if + XMALLOC_OVERRUN_CHECK to avoid crash during load. + +2004-11-29 Kim F. Storm <storm@cua.dk> + + * fns.c (concat): Use SAFE_ALLOCA. + +2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca> + + * sysdep.c (emacs_write): Don't use QUIT. + +2004-11-29 Kenichi Handa <handa@m17n.org> + + * buffer.c (init_buffer): Set current_buffer->directory to a + multibyte string made by string_to_multibyte. + + * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args. + +2004-11-27 Andreas Schwab <schwab@suse.de> + + * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined. + + * s/gnu-linux.h: Enable no-op gcpros on ia64. + (GC_MARK_SECONDARY_STACK) [__ia64__]: Define. + + * filelock.c (lock_file_1): Call get_boot_time early. + Increase buffer size. + +2004-11-27 Eli Zaretskii <eliz@gnu.org> + + * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN + is not defined. + +2004-11-27 Kim F. Storm <storm@cua.dk> + + * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:' + marker out of doc string. + +2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca> + + * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25, + which was not mentioned in the log. + +2004-11-26 Kim F. Storm <storm@cua.dk> + + * fringe.c (update_window_fringes): Prefer truncation bitmaps over + angle bitmaps at top/bottom line. + + * xdisp.c: Undo recent changes for restoring saved_face_id. Instead, + set it when it->method is set to next_element_from_display_vector. + (setup_for_ellipsis): Add LEN argument. Callers changed. + Set it->saved_face_id. + (get_next_display_element): Use loop instead of recursion. + Set it->saved_face_id. Combine duplicate code for ctr chars. + (next_element_from_display_vector): Do not set it->saved_face_id. + (next_element_from_ellipsis): Use setup_for_ellipsis. + +2004-11-26 Eli Zaretskii <eliz@gnu.org> + + * eval.c (Fdefvar): Declare pdl from last change as `volatile' to + prevent compiler warnings. + +2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca> + + * keyboard.c (command_loop_1): Print a message describing the key + the user just pressed when this key has no binding. + + * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set. + (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted. + + * lread.c (readchar): Check QUIT when `getc' is interrupted. + +2004-11-24 Richard M. Stallman <rms@gnu.org> + + * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only. + + * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix. + +2004-11-24 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_in_display_line_to, display_line): + Restore saved_face_id also when truncate-lines or hscrolled. + +2004-11-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to + x-use-old-gtk-file-dialog. + + * xfns.c: Define x_use_old_gtk_file_dialog. + (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it + outside ifdef USE_GTK. + +2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca> + + * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM): + Don't use XFASTINT blindly. + + * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly. + + * indent.c (skip_invisible): Avoid non-idempotent side-effects + in macro arguments. + + * keymap.c (Flookup_key): Check INTEGERP before XINT. + + * lread.c (oblookup): Don't use XFASTINT blindly. + + * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int. + (decode_next_window_args, window_loop): Don't use XFASTINT blindly. + +2004-11-23 Kim F. Storm <storm@cua.dk> + + * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P) + (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero. + + * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if + signal_p is zero and face name is unknown. + (Fx_list_fonts): Don't signal error in lookup_named_face. + (Fface_font): Signal error in lookup_named_face. + (ascii_face_of_lisp_face): Likewise. + + * dispextern.h (lookup_named_face): Fix prototype. + + * xdisp.c (handle_single_display_prop): Don't signal error in + lookup_named_face for unknown fringe face name. + (highlight_trailing_whitespace): Don't signal error in + lookup_named_face if trailing-whitespace face unknown. + (calc_line_height_property): Don't signal error in + lookup_named_face if specified face name is unknown. + + * fringe.c (update_window_fringes): Show top row indicator if + window has header-line. Don't show arrow at bob and eob + if the boundary indicators are not used. + (Fset_fringe_bitmap_face): Signal error in lookup_named_face. + + * window.c (set_window_buffer): Clear display_error_modiff. + +2004-11-22 Kim F. Storm <storm@cua.dk> + + * fringe.c (update_window_fringes): Provide sensible fall-back + value for non-nil indicate-buffer-boundaries setting. + +2004-11-22 Markus Rost <rost@ias.edu> + + * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change. + +2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * eval.c (Fdefvar): Warn when var is let-bound but globally void. + +2004-11-21 Kim F. Storm <storm@cua.dk> + + * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA. + + * xterm.c (x_clip_to_row): Add area arg. Callers changed. + (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA. + + * w32term.c (w32_clip_to_row): Add area arg. Callers changed. + (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA. + + * macterm.c (x_clip_to_row): Add area arg. Callers changed. + (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA. + + * xdisp.c (move_it_in_display_line_to, display_line): + Restore saved_face_id if overflow-newline-into-fringe is enabled and + line is continued before or in middle of element from display vector. + + * indent.c (Fvertical_motion): Fix last change. Use another + method to detect if iterator moved too far ahead after reseat. + + * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not + expand matrix width for overflow in zero-width area. + (append_glyph, append_composite_glyph, produce_image_glyph) + (append_stretch_glyph): Use it to avoid loop in redisplay. + (note_mode_line_or_margin_highlight): Don't let help-echo from + string override help-echo from image map. + +2004-11-20 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument. + * callint.c (Fcall_interactively): Ditto. + +2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca> + + * minibuf.c (Fminibuffer_complete_and_exit): + Fixup the case of the completed value, for case-indep completion. + +2004-11-20 Richard M. Stallman <rms@gnu.org> + + * lisp.h (Fread_from_minibuffer): Add arg in decl. + + * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed. + (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed. + + * search.c (Vsearch_spaces_regexp): + Rename from Vsearch_whitespace_regexp. All uses changed. + +2004-11-20 Thien-Thi Nguyen <ttn@gnu.org> + + * eval.c (init_eval_once): Increase `max_specpdl_size' to 650. + +2004-11-19 Richard M. Stallman <rms@gnu.org> + + * search.c (Vsearch_whitespace_regexp): New variable. + (syms_of_search): Defvar it. + (compile_pattern_1): Call re_set_whitespace_regexp with it. + (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp + is non-nil. + (struct regexp_cache): New element whitespace_regexp. + (syms_of_search): Initialize whitespace_regexp elements. + (compile_pattern): Compare whitespace_regexp elements. + (compile_pattern_1): Set whitespace_regexp elements. + + * regex.c (regex_compile): Substitute whitespace_regexp + for spaces, if it is nonzero. + (whitespace_regexp): New variable. + (re_set_whitespace_regexp): New function. + +2004-11-19 Kim F. Storm <storm@cua.dk> + + * indent.c (Fvertical_motion): Fix last change. + +2004-11-18 Kim F. Storm <storm@cua.dk> + + * indent.c (Fvertical_motion): Undo 2004-11-16 change. + Instead, move back again if reseating moves too far ahead. + +2004-11-17 Luc Teirlinck <teirllm@auburn.edu> + + * xdisp.c (message3): Call clear_message. + +2004-11-17 Kim F. Storm <storm@cua.dk> + + * xdisp.c (erase_phys_cursor): Adjust cursor row visible height. + +2004-11-16 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW. + + * xmenu.c (x_menu_in_use): Remove. + (x_menu_set_in_use): Also set popup_activated_flag. + + * xfns.c (Fx_file_dialog): Call popup_activated instead of + x_menu_in_use. Call x_menu_set_in_use in Motif version also. + + * xterm.h (x_menu_in_use): Remove. + +2004-11-16 Richard M. Stallman <rms@gnu.org> + + * keymap.c (Fmap_keymap): New arg SORT-FIRST. + Use map-keymap-internal to implement that. + + * indent.c (Fvertical_motion): In batch mode, use vmotion directly. + +2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca> + + * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's + a window before using XWINDOW. + + * window.c (make_window, Fselect_window, make_dummy_parent) + (save_window_save): + * frame.c (make_frame): + * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments. + + * lisp.h (NILP): Use EQ rather than XFASTINT. + +2004-11-16 Kim F. Storm <storm@cua.dk> + + * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify. + + * indent.c (Fvertical_motion): Fix last change. Only reseat when + moving backwards. + +2004-11-16 Luc Teirlinck <teirllm@auburn.edu> + + * dispextern.h: Extern reseat_at_previous_visible_line_start. + +2004-11-16 Kenichi Handa <handa@m17n.org> + + * xdisp.c (display_mode_element): Fix previous change (calculate + end position of substring to display correctly). + +2004-11-16 Kim F. Storm <storm@cua.dk> + + * keyboard.c (Fposn_at_point): Remove extra */ after doc string. + Reported by Andrew M. Scott. + +2004-11-15 Kim F. Storm <storm@cua.dk> + + * fns.c (Fsafe_plist_get): New defun. + (syms_of_fns): Defsubr it. + + * lisp.h (Fsafe_plist_get): Add EXFUN. + + * xdisp.c (store_mode_line_string, produce_stretch_glyph): + Use Fsafe_plist_get. + (note_mode_line_or_margin_highlight, note_mouse_highlight): + Fix image map element parsing. Use Fsafe_plist_get. + +2004-11-15 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (get_next_display_element): Fix previous change. + +2004-11-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * window.c (shrink_windows): Handle special case of one window left + when trying to shrink the final reminder. Grow windows if + total_removed is less than total_shrink. + + * xmenu.c (pop_down_menu): Remove global variable current_menu, + extract pointer from arg with XSAVE_VALUE. + (create_and_show_popup_menu, create_and_show_dialog, xmenu_show): + Construct arg to record_unwind_protect with make_save_value. + +2004-11-13 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (reseat_at_previous_visible_line_start): No longer static. + (get_next_display_element): Fix previous change to apply only to \n. + + * indent.c (Fvertical_motion): Scan to PT from start of line to + make iterator consistent. + + * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix. + +2004-11-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT. + + * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use. + Record unwind with clean_up_file_dialog. + + * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event): + Declare. + + * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions. + +2004-11-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel) + (xg_file_sel_destroy): Remove. + (xg_file_response_cb, pop_down_file_dialog) + (xg_get_file_name_from_chooser, xg_get_file_name_from_selector): + New functions. + (xg_get_file_with_chooser, xg_get_file_with_selection): + Take new arg func, set it to xg_get_file_name_from_chooser/selector. + Move common code to xg_get_file_name. Return widget created. + (xg_get_file_name): Set name, transient for, modal and destroy + with parent here. Connect response signal to xg_file_response_cb, + connect delete-event to gtk_true. Record pop_down_file_dialog + for unwind. Do event loop and call x_menu_wait_for_event in loop. + (xg_create_widget): Make dialogs modal. + + * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type + Lisp_Object. + (popup_get_selection): Move unwind protect ... + (create_and_show_popup_menu, create_and_show_dialog): ... to here. + Move destroy of widget to pop_down_menu. + (popup_widget_loop): Move unwind protect ... + (create_and_show_popup_menu, create_and_show_dialog): ... to here. + Move destroy of widget to pop_down_menu. + (pop_down_menu): BLOCK_INPUT and destroy widget/window. + (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy, + x_mouse_leave and grabbed = 0 to pop_down_menu. + +2004-11-13 Kim F. Storm <storm@cua.dk> + + * xdisp.c (make_cursor_line_fully_visible_p): New variable. + (syms_of_xdisp): DEFVAR_BOOL it. + (make_cursor_line_fully_visible, try_cursor_movement) + (try_window_id): Use it. + +2004-11-12 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct glyph_row): New member extra_line_spacing. + (struct it): New member max_extra_line_spacing. + (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP) + (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros. + (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible + part of last line is only extra line spacing (so the text on the + line is fully visible). Use helper macros. + Add W arg (to use them). All callers changed. + (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P) + (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros. + + * window.c (window_scroll_pixel_based, Frecenter): + Use move_it_vertically_backward directly. + (Frecenter): Fix calculation of new start pos for negative arg. + Before, the new start pos was sometimes chosen too far back, so + the last line became only partially visible, and thus would be + either only semi-visible or automatically scrolled to the middle + of the window by redisplay. + + * xdisp.c (init_iterator): Clear it.max_extra_line_spacing. + (move_it_vertically_backward): Don't recure to move further back. + (move_it_vertically): Remove superfluous condition. + (move_it_by_lines): Clear last_height when moved 0 lines. + (resize_mini_window): Use it.max_extra_line_spacing. + (display_tool_bar_line): Clear row->extra_line_spacing. + (try_scrolling): Use move_it_vertically_backward directly. + (redisplay_window): Likewise. + (compute_line_metrics): Set row->extra_line_spacing. + (display_line, display_string): Likewise. + (x_produce_glyphs): Update it->max_extra_line_spacing. + + * xmenu.c (pop_down_menu): Return nil. + +2004-11-12 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (x_menu_wait_for_event): New function. + (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event + to handle timers. + (popup_widget_loop): Add argument do_timers. + (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for + do_timers to popup_widget_loop. + (xmenu_show): Call XMenuActivateSetWaitFunction so that + x_menu_wait_for_event is called by XMenuActivate. + (create_and_show_popup_menu): Pass 1 for do_timers to + popup_get_selection. + (pop_down_menu): New function. + (popup_get_selection, popup_widget_loop): Unwind protect to + pop_down_menu. + (popup_widget_loop): Add argument widget. + (create_and_show_popup_menu, create_and_show_dialog): Pass new + argument widget to popup_widget_loop. + +2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (Fkeymap_prompt): Accept symbol keymaps. + +2004-11-09 Kim F. Storm <storm@cua.dk> + + * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid). + Fix various comments referring to XEvents instead of input events. + (x_queue_event): Fix format strings. + (x_stop_queuing_selection_requests): Likewise. + + * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'. + (pint2hrstr): Add extra braces to silence compiler. + + * print.c (print_object): Fix format string. + + * lread.c (read1): Fix next_char matching. + + * lisp.h (Fdelete): Add EXFUN. + (replace_range_2): Add prototype. + + * keyboard.c (read_avail_input): Remove unused variable 'discard'. + + * intervals.h (NULL_INTERVAL_P): Add separate version when + ENABLE_CHECKING is not defined to silence compiler. + (compare_string_intervals): Add prototype. + + * fringe.c (destroy_fringe_bitmap): Fix return type. + (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'. + + * emacs.c (Fdump_emacs): Fix format string. + + * doc.c: Include <ctype.h>. + (Fsubstitute_command_keys): Remove unused variable 'firstkey'. + + * data.c (store_symval_forwarding): Remove unused variables. + + * callint.c (Fcall_interactively): Remove unused variable 'funcar'. + +2004-11-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies + to ${OLDXMENU}. + +2004-11-09 Kim F. Storm <storm@cua.dk> + + * process.c (Fmake_network_process): Remove kludge for interrupted + connects on BSD. If connect is interrupted, just close socket and + start over rather than sleeping and retry with same socket. + +2004-11-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * .cvsignore: Add buildobj.lst. + + * doc.c: New variable Vbuild_files. + (Fsnarf_documentation): If Vbuild_files is nil, populate it with + file names from buildobj.lst. Only attach docstrings from files + that are in Vbuild_files. + (syms_of_doc): Defvar Vbuild_files. + + * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o + and w32*.o. + (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked. + (mostlyclean): Rm buildobj.lst. + + * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs + is linked. + +2004-11-09 Kim F. Storm <storm@cua.dk> + + * fringe.c (update_window_fringes): Update fringe bitmaps if + cur and row ends_at_zv_p differs. If bitmaps of a row is updated, + also update previous row to get rid of misc. artifacts. + +2004-11-08 Kim F. Storm <storm@cua.dk> + + * xdisp.c (fast_find_position): Fix start pos if header line present. + (note_mouse_highlight): Clear mouse face if we move out of text area. + +2004-11-08 Eli Zaretskii <eliz@gnu.org> + + * editfns.c: Move #include "systime.h" before <sys/resource.h>. + Don't include <sys/time.h> explicitly. + Include <stdio.h> unconditionally, not just on MacOS. + +2004-11-08 Kenichi Handa <handa@m17n.org> + + * fontset.c (fontset_pattern_regexp): Cancel my previous change; + don't pay attention to '\' before '*'. + (fontset_pattern_regexp): Change the meaning of the second arg. + (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset. + (check_fontset_name): Try NAME as literal at first, and if it + failes, try NAME as pattern. + +2004-11-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * emacs.c (Fdump_emacs): Only output warning on GNU/Linux. + +2004-11-07 Andreas Schwab <schwab@suse.de> + + * lisp.h (Fmsdos_downcase_filename): Declare. + * dired.c (Fmsdos_downcase_filename): Don't declare here. + * fileio.c: Likewise. + +2004-11-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in + comparisons with integers instead of Lisp_Object address. + (Fmsdos_set_keyboard): Declare argument allkeys. + + * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s. + + * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid + int/Lisp_Object mixup. + + * fileio.c: Ditto. + +2004-11-06 Steven Tamm <steventamm@mac.com> + + * editfns.c: Need to include sys/time.h before resource.h on darwin. + +2004-11-06 Richard M. Stallman <rms@gnu.org> + + * callint.c (Fcall_interactively): Avoid reusing EVENT for other data. + + * xfaces.c (merge_named_face): GCPRO the face_name in the + named_merge_point struct that we make. + (merge_face_heights): Eliminate GCPRO arg. All callers changed. + + * keyboard.c (command_loop_1): Change Vtransient_mark_mode + before deciding whether to inactivate mark. + +2004-11-06 Lars Brinkhoff <lars@nocrew.org> + + * config.in: Regenerate (add HAVE_GETRUSAGE). + * editfns.c (Fget_internal_run_time): New function. + (syms_of_data): Defsubr it. + * fns.c (sxhash): As far as possible, merge calculation of + hash code for symbols and strings. + +2004-11-06 Eli Zaretskii <eliz@gnu.org> + + * frame.c (syms_of_frame): Fix the example in the doc string. + +2004-11-06 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * eval.c (Feval): Remove check for INPUT_BLOCKED_P. + + * xmenu.c (popup_get_selection, create_and_show_popup_menu) + (create_and_show_dialog): Revert change from 2004-10-31. + +2004-11-05 Luc Teirlinck <teirllm@auburn.edu> + + * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix. + +2004-11-05 Kim F. Storm <storm@cua.dk> + + * print.c (print_object): Print Lisp_Misc_Save_Value objects. + + * fileio.c (Ffile_modes): Doc fix. + (auto_save_1): Check for Ffile_modes nil value. + +2004-11-05 Kim F. Storm <storm@cua.dk> + + * xselect.c (struct selection_event_queue, selection_queue) + (x_queue_selection_requests, x_queue_event) + (x_start_queuing_selection_requests) + (x_stop_queuing_selection_requests): Add new queue for selection + input events to replace previous XEvent queue in xterm.c. + (queue_selection_requests_unwind): Adapt to new queue. + (x_reply_selection_request): Adapt to new queue. + Unexpect wait_object in case of x errors (memory leak). + (x_handle_selection_request, x_handle_selection_clear): Make static. + (x_handle_selection_event): New function. May queue selection events. + (wait_for_property_change_unwind): Use save_value instead of cons. + Clear property_change_reply_object. + (wait_for_property_change): Abort if already waiting. + Use save_value instead of cons for unwind data. + (x_handle_property_notify): Skip events already arrived, but don't + free them, as "arrived" field is checked by wait_for_property_change, + and it will be freed by unwind or explicit unexpect_property_change. + (x_get_foreign_selection): Add to new queue. + (receive_incremental_selection): Don't unexpect wait_object when done + as it has already been freed by previous wait_for_property_change. + + * xterm.h (x_start_queuing_selection_requests) + (x_stop_queuing_selection_requests, x_handle_selection_request) + (x_handle_selection_clear): Remove prototypes. + (x_handle_selection_event): Add prototype. + + * xterm.c (handle_one_xevent): Don't queue X selection events + here, it may be too late if we start queuing after we have already + stored some selection events into the kbd buffer. + (struct selection_event_queue, queue, x_queue_selection_requests) + (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests) + (x_stop_queuing_selection_requests): Remove/move to xselect.c. + (x_catch_errors_unwind): Block input around final XSync. + + * keyboard.h (kbd_buffer_unget_event): Add prototype. + + * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code. + (kbd_buffer_unget_event): New function. + (kbd_buffer_get_event, swallow_events): Combine SELECTION events + and use x_handle_selection_event. + (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT. + +2004-11-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xselect.c (TRACE3): New debug macro. + (x_reply_selection_request): Use it. + (receive_incremental_selection): In call to TRACE0, the name of + a symbol is in xname. + +2004-11-05 Kim F. Storm <storm@cua.dk> + + * fontset.c (fontset_pattern_regexp): Use unsigned char. + +2004-11-04 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * fileio.c (Fnext_read_file_uses_dialog_p): New function. + + * gtkutil.h (use_old_gtk_file_dialog): Declare. + + * gtkutil.c: Make use_old_gtk_file_dialog non-static. + (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ... + * xfns.c (syms_of_xfns): ... to here. + + * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if + it doesn't start with /. + +2004-11-04 Kenichi Handa <handa@m17n.org> + + * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\', + treat it as a literal character. + +2004-11-03 Kim F. Storm <storm@cua.dk> + + * .gdbinit (ppt): New function. + +2004-11-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_window_to_scroll_bar): Only call + xg_get_scroll_id_for_window if toolkit scroll bars are used. + + * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead + of save. + +2004-11-02 Andreas Schwab <schwab@suse.de> + + * window.c (Fscroll_right): Fix last change. + +2004-11-02 Kim F. Storm <storm@cua.dk> + + * Makefile.in (callproc.o): Depend on blockinput.h, atimer.h, systime.h. + +2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * callproc.c (Fcall_process): Block input around vfork. + +2004-11-02 Kim F. Storm <storm@cua.dk> + + * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p. + (syms_of_eval): Defsubr it. + +2004-11-02 Richard M. Stallman <rms@gnu.org> + + * insdel.c (replace_range_2): New function. + + * casefiddle.c (casify_region): Handle changes in byte-length + using replace_range_2. + + * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb. + + * xdisp.c (back_to_previous_visible_line_start): + Subtract 1 from pos when checking previous newline for invisibility. + + * window.c (window_scroll_pixel_based): Update preserve_y + for header line if any. + (Fscroll_left, Fscroll_right): Don't call interactive_p; + use a new second argument instead. + + * eval.c (Fcall_interactive_p): New function. + (interactive_p): Don't test INTERACTIVE here. + (Finteractive_p): Doc fix. + + * eval.c (Feval): Abort if INPUT_BLOCKED_P. + +2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> + + * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for + comparing font names. + +2004-11-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * fileio.c (Fread_file_name): Pass Qt as fifth parameter to + Fx_file_dialog if only directories should be read. + + * lisp.h: Fx_file_dialog takes 5 parameters. + + * xfns.c (Fx_file_dialog): Both Motif and GTK version: + Add parameter only_dir_p. + In Motif version, don't put DEFAULT_FILENAME in filter part of the + dialog, just text field part. Do not add DEFAULT_FILENAME + to list of files if it isn't there. + In GTK version, pass only_dir_p parameter to xg_get_file_name. + + * macfns.c (Fx_file_dialog): Add parameter only_dir_p. + Check only_dir_p instead of comparing prompt to "Dired". When using + a save dialog, add option kNavDontConfirmReplacement, change title + to "Enter name", change text for save button to "Ok". + + * w32fns.c (Fx_file_dialog): Add parameter only_dir_p. + Check only_dir_p instead of comparing prompt to "Dired". + + * gtkutil.c (xg_get_file_with_chooser, xg_get_file_with_selection): + New functions, only defined ifdef HAVE_GTK_FILE_CHOOSER_DIALOG_NEW + and HAVE_GTK_FILE_SELECTION_NEW respectively. + (xg_get_file_name): Add parameter only_dir_p. + Call xg_get_file_with_chooser or xg_get_file_with_selection + depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog. + (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog. + + * gtkutil.h (xg_get_file_name): Add parameter only_dir_p. + + * config.in: Rebuild (added HAVE_GTK_FILE_*). + +2004-11-01 Kim F. Storm <storm@cua.dk> + + * process.c (connect_wait_mask, num_pending_connects): + Only declare and use them if NON_BLOCKING_CONNECT is defined. + (init_process): Initialize them if NON_BLOCKING_CONNECT defined. + (IF_NON_BLOCKING_CONNECT): New helper macro. + (wait_reading_process_output): Only declare and use local vars + Connecting and check_connect when NON_BLOCKING_CONNECT is defined. + +2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change) + + * w32term.c (x_scroll_run): Delete region objects after use. + +2004-10-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c: Add prototypes for forward function declarations. + (popup_get_selection): Remove parameter do_timers, remove call to + timer_check. + (create_and_show_popup_menu, create_and_show_dialog): + Remove parameter do_timers from call to popup_get_selection. + + * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to + tool_bar_items and assign the result to f->tool_bar_items if + not equal. Move BLOCK/UNBLOCK_INPUT from around call to + tool_bar_items to assignment of result. + + * atimer.c (alarm_signal_handler): Do not call set_alarm if + pending_atimers is non-zero. + +2004-10-31 Kim F. Storm <storm@cua.dk> + + * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor. + +2004-10-28 Will <will@glozer.net> + + * macterm.c: Allow user to assign key modifiers to the Mac Option + key via a 'mac-option-modifier' variable. + +2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions): + Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks. + (x_handle_selection_request, x_handle_selection_clear) + (x_clear_frame_selections, syms_of_xselect): Adjust accordingly. + +2004-10-28 Richard M. Stallman <rms@gnu.org> + + * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes. + + * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes. + +2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (scan_sexps_forward): Give precedence to a 2-char + comment-starter over a 1-char one. + +2004-10-27 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (get_next_display_element): In mode lines, + treat newline and tab like other control characters. + + * editfns.c (Fmessage): Doc fix. + + * indent.c (vmotion): When moving up, check the newline before. + Make prevline an int, not a Lisp_Object. + +2004-10-27 Kim F. Storm <storm@cua.dk> + + * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA. + Only allocate info and discarded tables once. + + * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer. + (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used. + (SAFE_FREE): Test it to determine if we need to unwind to free. + Remove size arg. All users changed. + (SAFE_FREE_LISP): Remove. All users changed to use SAFE_FREE. + +2004-10-26 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c: Put empty line between comment and function body. + (xg_destroy_widgets): Rename from remove_from_container. + Just destroy all widgets in list. Argument wcont removed. + (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets + instead of remove_from_container. + (xg_display_close, xg_create_tool_bar, update_frame_tool_bar) + (free_frame_tool_bar): Add comment. + + * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME + is not NULL before strcmp. + +2004-10-26 Kim F. Storm <storm@cua.dk> + + * callint.c (Fcall_interactively): Add 'U' code to get the + up-event discarded by a previous 'k' or 'K' argument. + +2004-10-26 David Kastrup <dak@gnu.org> + + * buffer.c (syms_of_buffer): Fix a few typos. + +2004-10-26 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xsmfns.c: Put empty line between comment and function body. + Use two spaces before comment end. + +2004-10-25 Kenichi Handa <handa@m17n.org> + + * fontset.c (fontset_pattern_regexp): Optimize for the case that + PATTERN is full XLFD. + +2004-10-24 Kenichi Handa <handa@m17n.org> + + * regex.h (enum reg_errcode_t): New value REG_ERANGEX. + + * regex.c (re_error_msgid): Add an entry for REG_ERANGEX. + (regex_compile): Return REG_ERANGEX if appropriate. + +2004-10-22 Kenichi Handa <handa@m17n.org> + + * editfns.c (Ftranslate_region_internal): New function. + (syms_of_editfns): Defsubr it. + +2004-10-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (xic_create_xfontset): Initialize missing_list to NULL. + +2004-10-21 K,Aa(Broly L$,1 q(Brentey <lorentey@elte.hu> + + * xterm.h (x_output): New member `xic_base_fontname'. + (FRAME_XIC_BASE_FONTNAME): New macro. + (xic_free_xfontset): Declare. + + * xfns.c (xic_create_xfontset): Share fontsets between frames + based on base_fontname. + (xic_free_xfontset): New function. + (free_frame_xic): Use it. + (xic_set_xfontset): Ditto. + + * xterm.c (xim_destroy_callback): Ditto. + +2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change) + + * w32term.c (x_draw_glyph_string): Use overline_color for overlines. + +2004-10-20 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h (XSync): If USE_GTK, define XSync as process_all and then + XSync. + + * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF): + New variables and constant. + (main): Calculate heap_bss_diff. If we are dumping and the + heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32 + and exec ourself again. + (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF + print a warning. + + * lastfile.c: Make my_endbss and my_endbss_static available on all + platforms. + + * Makefile.in (RUN_TEMACS): Remove @SETARCH@. + * config.in (HAVE_PERSONALITY_LINUX32): Regenerate. + +2004-10-19 Luc Teirlinck <teirllm@auburn.edu> + + * data.c (Flocal_variable_if_set_p): Doc fix. + +2004-10-19 Jason Rumney <jasonr@gnu.org> + + * w32.c (init_environment): Set emacs_dir correctly when running + emacs from the build directory. + +2004-10-19 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fdelete_and_extract_region): + If region is empty, return null string. + +2004-10-19 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left + and canon_width. + (xg_frame_cleared): Remove. + + * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose) + (xg_find_top_left_in_fixed): Remove. + (xg_create_scroll_bar): Put an event box widget between + the scroll bar widget and the edit widget. + (xg_show_scroll_bar): Show the parent widget (the event box). + (xg_remove_scroll_bar): Destroy parent (the event box) also. + (xg_update_scrollbar_pos): Remove arguments real_left and canon_width. + Move the parent (the event box) widget inside the fixed widget. + Move window clear to xterm.c. + + * gtkutil.h (xg_frame_cleared): Remove. + + * xterm.c (x_clear_frame): Remove call to xg_frame_cleared + (x_scroll_bar_create, XTset_vertical_scroll_bar): + Remove arguments left and width to xg_update_scrollbar_pos. + (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also. + +2004-10-19 Kenichi Handa <handa@m17n.org> + + * xdisp.c (display_mode_element): Fix display of wide chars. + +2004-10-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to + gdk_window_clear and move gdk_window_process_all_updates after + clear so events are sent to the X server in correct order. + +2004-10-18 Kenichi Handa <handa@m17n.org> + + * fontset.c (fs_load_font): Use fast_string_match_ignore_case for + comparing font names. + (fs_query_fontset): Use fast_string_match for comparing fontset names. + (list_fontsets): Likewise. + + * search.c (fast_string_match_ignore_case): New function. + + * lisp.h (fast_string_match_ignore_case): Extern it. + +2004-10-17 Kim F. Storm <storm@cua.dk> + + * xdisp.c (overlay_arrow_at_row): Return overlay string rather + than bitmap if there is not left fringe. + (get_overlay_arrow_glyph_row): Also used on windows system. + (display_line): Display overlay string if no left fringe. + +2004-10-16 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_font_match): Encode font name being matched. + +2004-10-16 Richard M. Stallman <rms@gnu.org> + + * window.c (Fspecial_display_p): Doc fix. + +2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca> + + * doc.c (Fsubstitute_command_keys): Fix remap-handling. + Don't ignore menus, because where-is-internal already does it for us. + +2004-10-15 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Only update fringes and vertical + border on window frames. + +2004-10-14 Andreas Schwab <schwab@suse.de> + + * m/ia64.h (DATA_SEG_BITS): Don't define. + +2004-10-14 Kim F. Storm <storm@cua.dk> + + * xterm.h: Include Xutil.h after keysym.h to work around bug + in some X versions. + +2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca> + + * fns.c (map_char_table): Add missing gcpros. + +2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (get_keymap): An autoload form is not a keymap. + + * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky. + +2004-10-13 Kim F. Storm <storm@cua.dk> + + * callproc.c (Fcall_process): Simplify handling of display arg. + Resume `display_on_the_fly' once a coding system is determined. + + * xdisp.c (redisplay_preserve_echo_area): Fix last change. + +2004-10-12 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_preserve_echo_area): Flush display in case + caller, such as call-process, is not going to poll for input. + (calc_line_height_property): Handle case where it->object is nil. + + * xterm.c (x_redisplay_interface): Fix flush_display_optional. + +2004-10-12 Kenichi Handa <handa@m17n.org> + + * xdisp.c (get_next_display_element): + If unibyte_display_via_language_environment is zero, display 8-bit + chars in octal in unibyte buffer. + +2004-10-12 Kim F. Storm <storm@cua.dk> + + * doc.c (Fsubstitute_command_keys): Ignore remappings unless there + are no ordinary bindings. + +2004-10-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also. + +2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow. + (x_lower_frame): Add BLOCK_INPUT around SendBehind. + (make_mac_frame): Add BLOCK_INPUT around the making of a + terminal frame. + (mac_initialize): Add BLOCK_INPUT around carbon initialization. + * macgui.h (mktime): Use emacs_mktime. + * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code. + Make a cancel file-open dialog be like C-g. + * mac.c (mktime): Use emacs_mktime. + (Fdo_applescript): Add BLOCK_INPUT around do_applescript. + (Fmac_paste_function): Add better error handling for carbon cut/paste. + +2004-10-10 Kim F. Storm <storm@cua.dk> + + * keyboard.c (timer_resume_idle): New function to resume idle + timer without resetting timers on the idle list. + (read_char): Use timer_resume_idle. Remove local var last_idle_start. + (timer_start_idle, timer_stop_idle): Declare static. + (read_key_sequence): Use timer_resume_idle instead of timer_start_idle. + + * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes. + +2004-10-08 Steven Tamm <steventamm@mac.com> + + * config.in (HAVE_MALLOC_MALLOC_H): Regenerate. + * macterm.c (mac_check_for_quit_char): Remove warning for using + NULL where 0 should be used. + * unexmacosx.c: Use malloc/malloc.h on Tiger instead of + objc/malloc.h + * mac.c: Include time.h for Tiger compatibility. + +2004-10-07 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Fix flicker on vertical line between + windows. Update vertical line after drawing window fringes, but + only if actually drawing any bitmaps--or there is no fringe. + + * xterm.c (x_update_window_end): Likewise. + * macterm.c (x_update_window_end): Likewise. + * w32term.c (x_update_window_end): Likewise. + + * fringe.c (draw_window_fringes): Return value now indicates if + any fringe bitmaps were redrawn (or there are no fringes). + + * dispextern.h (draw_window_fringes): Update prototype. + +2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (mac_get_window_bounds): Add extern. + (x_real_positions): Use mac_get_window_bounds. + + * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for + xmenu.c (YAILOM). + + * macterm.c [!MAC_OSX]: Include Windows.h. + (front_emacs_window): Rename from mac_front_window. All uses + changed. Return the frontmost non-tooltip emacs window. + (mac_get_window_bounds): New function. + (x_calc_absolute_position): Use the difference of width and height + between the inner and outer window. + (x_set_offset): Specify window position by the coordinae of the + outer window. Adjust the position if the title bar is completely + outside the screen. + (app_is_suspended, app_sleep_time): Remove unused variables. + (do_app_resume, do_app_suspend): Remove their contents because + window-activate/deactivate events will do the job. + (do_zoom_window): Remove unused variables. Make compliant to the + standard way of zooming. Set f->left_pos and f->top_pos. + (XTread_socket): Don't use argument `expected'. Don't use + FrontWindow to determine the clicked window. Exclude unprocessed + mouseUp cases in the early stage. Add parentheses to fix operator + precedence. + (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area. + +2004-10-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * config.in: Regenerate. + + * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of + HAVE_EXECSHIELD. + +2004-10-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for + a row if Alt or Meta has been found for that row. Also stop scanning + for Keysyms for that row. + +2004-10-04 Kim F. Storm <storm@cua.dk> + + * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons + to list. Include overlay arrow bitmap in return value. + + * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll + bars with fractional column width. If scroll bar separates two + windows, move it towards the window it belongs to. Only update + the padding area below the scroll bar widget when necessary, + i.e. when scroll bar widget is created, moved, or resized. + + * xdisp.c (define_frame_cursor1): Do not change frame cursor + while tracking/dragging mouse. + (x_draw_vertical_border): Do not draw line if frame has scroll bars. + + * window.c (coordinates_in_window): Relax check for cursor + on vertial border between mode lines. + (Fset_window_fringes): Do not allow negative widths. + (Fset_window_scroll_bars): Likewise. + + * .gdbinit (pp): Shorthand for p ARG + pr. + (ff): New command: flush frame updates (X only). + +2004-10-03 Michael Albinus <michael.albinus@gmx.de> + + * fileio.c (auto_save_1) Call Ffile_modes for remote files. + +2004-09-30 Kenichi Handa <handa@m17n.org> + + * process.c (send_process): Free composition data. + + * fileio.c (Finsert_file_contents): Free composition data. + + * coding.c (code_convert_region): Don't skip ASCIIs if there are + compositions to encode. + (encode_coding_string): Likewise. Free composition data. + +2004-09-30 Florian Weimer <fw@deneb.enyo.de> + + * coding.c (code_convert_region): Free composition data. + +2004-09-29 Kim F. Storm <storm@cua.dk> + + * fringe.c: Remove limit on number of bitmaps. + (fringe_bitmaps, fringe_faces): Change to pointers. + (max_fringe_bitmaps): New var. + (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces. + (init_fringe): Allocate fringe_bitmaps and fringe_faces. + + * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps). + (struct glyph_row): Reorder fringe_bitmap related fields. + (struct it): Likewise. + + * w32term.c (fringe_bmp): Change to pointer. + (max_fringe_bmp): New var. + (w32_define_fringe_bitmap): Expand fringe_bmp. + (w32_draw_fringe_bitmap): Check max_fringe_bmp. + (w32_destroy_fringe_bitmap): Likewise. + +2004-09-29 Kim F. Storm <storm@cua.dk> + + * fringe.c: Simplify last change. + (lookup_fringe_bitmap): New function. + (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove. + (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap. + Keep standard bitmaps in Vfringe_bitmaps. + (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap. + (Fset_fringe_bitmap_face): Likewise. + + * dispextern.h (lookup_fringe_bitmap): Add prototype. + (valid_fringe_bitmap_p): Remove prototype. + + * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap. + +2004-09-29 Kim F. Storm <storm@cua.dk> + + * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap) + (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif). + + * dispextern.h (valid_fringe_bitmap_p): Fix prototype. + + * fringe.c (Vfringe_bitmaps): New variable. + (syms_of_fringe): DEFVAR_LISP it. + (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p. + Change arg to Lisp_Object and fail if not an integer. + (get_fringe_bitmap_name, resolve_fringe_bitmap) + (destroy_fringe_bitmap): New functions. + (Fdestroy_fringe_bitmap): Change arg to bitmap symbol. + Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and + clear its fringe property. + (init_fringe_bitmap): Use destroy_fringe_bitmap instead of + Fdestroy_fringe_bitmap. + (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing + bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps + and set fringe property. Signal error if no free slots. + (Fset_fringe_bitmap_face): Change arg to bitmap symbol. + (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers. + + * xdisp.c (handle_single_display_prop): Fringe bitmaps are now + symbols with a fringe property. + +2004-09-27 Kim F. Storm <storm@cua.dk> + + * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: + Doc fix. Format may now be a symbol or alist, not a cons. + + * fringe.c (update_window_fringes): Handle new formats of + indicate-buffer-boundaries (symbol or alist). No longer + allow a simple cons. + (Ffringe_bitmaps_at_pos): Use nil value for no bitmap. + +2004-09-25 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * config.in: Rebuild. + +2004-09-24 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * config.in: Rebuild. + + * Makefile.in: Run setarch i386 ./temacs if exec-shield is present. + +2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca> + + * xterm.c (x_term_init): Work around a bug in some X servers. + +2004-09-18 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix. + + * xdisp.c (try_window_reusing_current_matrix): + Handle the case where we reach the old displayed text, + out of sync with the old line boundary. + +2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (Finsert_file_contents): Fix case of replacement in a + narrowed buffer. + +2004-09-14 Kim F. Storm <storm@cua.dk> + + * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT. + + * xfaces.c (Qface_no_inherit): New var. + (syms_of_xfaces): Intern and staticpro it. + (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute) + (Finternal_copy_lisp_face, update_face_from_frame_parameter): + Don't increment face_change_count when face has non-nil + face-no-inherit property. + +2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca> + + * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC. + (Fbyte_code): Remove dead code after `wrong_type_argument'. + + * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl + before doing the mark_stack_check_gcpros since they're not on the stack. + +2004-09-12 Kim F. Storm <storm@cua.dk> + + * editfns.c (Fformat): Handle format strings with multiple text + properties. Reverse text property list from the format string, + so the positions are in increasing order. + +2004-09-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xselect.c (x_reply_selection_request): XSync and UNBLOCK before + x_uncatch_errors so that possible protocol errors are delivered. + +2004-09-10 Eli Zaretskii <eliz@gnu.org> + + * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and + blockinput.h. + (dosfns.o): Depend on blockinput.h, window.h, dispextern.h, + charset.h, and coding.h + (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h. + (term.o): Depend on window.h and keymap.h. + (abbrev.o): Depend on syntax.h. + (callint.o): Depend on keymap.h. + (casefiddle.o): Depend on charset.h and keymap.h. + (category.o): Depend on keymap.h. + (coding.o): Depend on dispextern.h. + (cmds.o): Depend on keyboard.h and keymap.h. + (dispnew.o): Depend on indent.h and intervals.h. + (doc.o): Depend on keymap.h. + (editfns.o): Depend on frame.h. + (emacs.o): Depend on dispextern.h. + (fileio.o): Don't depend on ccl.h. + (filelock.o): Depend on charset.h and coding.h. + (frame.o): Depend on w32term.h and macterm.h. + (insdel.o): Depend on region-cache.h. + (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h. + (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h. + (search.o): Depend on $(INTERVALS_SRC). + (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC). + (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC), + xterm.h, w32term.h, and macterm.h. + (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h, + w32term.h, and macterm.h. + (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC), + region-cache.h, xterm.h, w32term.h, and macterm.h. + (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h. + (data.o): Depend on frame.h. + (fns.o): Depend on keymap.h, xterm.h, and blockinput.h. + (print.o): Depend on termchar.h and $(INTERVALS_SRC). + (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h. + (intervals.o): Depend on keymap.h. + + * msdos.c (msdos_set_cursor_shape, IT_display_cursor): + Add debugging print-out to termscript. + +2004-09-09 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (decode_mode_spec): Use current buffer for most purposes. + +2004-09-08 Richard M. Stallman <rms@gnu.org> + + * window.c (Fset_window_buffer): Doc fix. + + * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use. + +2004-09-08 Dan Nicolaescu <dann@ics.uci.edu> + + * minibuf.c (history_delete_duplicates): New variable. + (read_minibuf): Use it. + (syms_of_minibuf): Create the corresponding lisp variable. + +2004-09-08 Kim F. Storm <storm@cua.dk> + + * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in + overlay just before point. + +2004-09-07 Luc Teirlinck <teirllm@auburn.edu> + + * buffer.h (struct buffer): Add auto_save_file_format field. + * buffer.c (reset_buffer, init_buffer_once): + Handle auto_save_file_format field. + (syms_of_buffer): Add DEFVAR_PER_BUFFER for + `buffer-auto-save-file-format'. + * fileio.c: Delete declaration for removed Vauto_save_file_format. + (build_annotations): Adapt to replacement of + `auto-save-file-format' with the new buffer-local variable + `buffer-auto-save-file-format'. + (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format. + +2004-09-07 Jason Rumney <jasonr@gnu.org> + + * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c. + + * w32fns.c (w32_wnd_proc) <WM_MEASUREITEM, WM_DRAWITEM>: + Handle Unicode menu titles. + +2004-09-07 Kim F. Storm <storm@cua.dk> + + * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor' + property from text property or overlay strings at point. + +2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca> + + * xmenu.c (update_submenu_strings): YAILOM. + (set_frame_menubar): Make sure last_i is initialized. + +2004-09-03 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (_widget_value): Add lname and lkey. + (digest_single_submenu): Set lname and lkey in widget_value + instead of name and key. + (update_submenu_strings): New function. + (set_frame_menubar): Remove call to inhibit_garbage_collection, + call update_submenu_strings. + + * w32menu.c (globals_of_w32menu): Check for Unicode API. + (digest_single_submenu, w32_menu_show): Encode menu strings as + UTF-8 if Unicode API is available. + (utf8to16): New function. + (add_menu_item): Use it when calling Unicode API. + +2004-09-03 Kim F. Storm <storm@cua.dk> + + * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property + in overlay or text-property strings; set cursor on corresponding + glyph rather than at end of the string. + +2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c (x_real_positions): Save the current window port and + set a new one before obtaining the global coordinate. + Use FRAME_MAC_WINDOW. + (x_set_name, x_set_title): Encode title to UTF8. + Use SetWindowTitleWithCFString. + (Fx_server_version): Get correct OS version. + + * macmenu.c (add_menu_item): Remove unused variable `i'. + Don't let separator items destroy refence constants of other menu items. + + * macterm.c (x_update_end): Move SetPortWindowPort to inside + BLOCK_INPUT. + (x_set_offset): Use FRAME_MAC_WINDOW. + + * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to + nontext_cursor if it is on a scroll bar. + + * s/darwin.h (LIBS_CARBON): New define to specify libraries for + Carbon support. + (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++. + Use LIBS_CARBON. + +2004-09-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_set_name_internal): New function. Check if we shall call + xfree before ENCODE_UTF_8. + (x_set_name, x_set_title): Call x_set_name_internal. + +2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change) + + * w32fns.c (w32_load_font): If a BDF font is already loaded, do not + reload it. + +2004-08-30 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * macmenu.c (_widget_value): Add lname and lkey. + (single_submenu): Set lname and lkey in widget_value + instead of name and key. + (update_submenu_strings): New function. + (set_frame_menubar): Remove call to inhibit_garbage_collection, + call update_submenu_strings. + + * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value + instead of name and key. + (update_submenu_strings): New function. + (set_frame_menubar): Remove call to inhibit_garbage_collection, + call update_submenu_strings. + + * gtkutil.h (_widget_value): Added lname and lkey. + +2004-08-30 Steven Tamm <steventamm@mac.com> + + * macmenu.c (mac_menu_show): Remove shadowing of menu variable + by using different names for inner loop variables. + +2004-08-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection + from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used. + + * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when + tool bar items is 0. + +2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte + strings in menu items. + (single_submenu): Use ENCODE_MENU_STRING + (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because + button release isn't passed to event loop + (add_menu_item): Use SetMenuItemWithCFString. + +2004-08-26 Steven Tamm <steventamm@mac.com> + + * fileio.c (Fread_file_name): Call x_file_dialog on carbon on + tool-bar/menu click. + * macfns.c (Fx_file_dialog): Implement using NavServices. + +2004-08-24 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed. + + * xfns.c (x_window_to_frame, x_any_window_to_frame) + (x_non_menubar_window_to_frame, x_menubar_window_to_frame) + (x_top_window_to_frame): Return 0 if wdesc is None. + +2004-08-22 Richard M. Stallman <rms@gnu.org> + + * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS, + HAVE_TERMIOS]: If there's no char for this signal, drop through + and use system calls. + + * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC. + +2004-08-20 Kim F. Storm <storm@cua.dk> + + * process.c (wait_reading_process_output): Rename from + wait_reading_process_input. All uses changed. + (wait_reading_process_output_1): Rename from + wait_reading_process_input_1. All uses changed. + + * dispnew.c (Fsleep_for): Remove obsolete code. + +2004-08-20 Kenichi Handa <handa@m17n.org> + + * syntax.c (skip_chars): Fix for unibyte case. + +2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (char_quoted): Mixup byte/char pos. + (back_comment): Fixup globals in all cases. + +2004-08-19 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before + passing it to gtk_window_set_title. + +2004-08-19 Kim F. Storm <storm@cua.dk> + + * process.c (wait_reading_process_input): Clean up. + Add wait_for_cell, wait_proc, and just_wait_proc args + to avoid overloading `read_kbd' and `do_display' args. + Change read_kbd arg to int. All callers changed. + + * process.c (process_send_signal): Use CDISABLE. + + * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE. + +2004-08-18 Kim F. Storm <storm@cua.dk> + + * process.c (Faccept_process_output): Add arg JUST-THIS-ONE; + forward to wait_reading_process_input via DO_DISPLAY arg. + (wait_reading_process_input): If DO_DISPLAY < 0 for a process + object, only process output from that process; also inhibit + running timers if DO_DISPLAY==-2. + +2004-08-17 Kim F. Storm <storm@cua.dk> + + * process.c (process_send_signal): Fix last change--use + _POSIX_VDISABLE instead of CVDISABLE when available. + +2004-08-16 Richard M. Stallman <rms@gnu.org> + + * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]: + Set VQUIT and VINTR chars to the standard ones if they are unset. + [AIX]: Don't do that here. And don't force VINTR to standard + when SIGNALS_VIA_CHARACTERS. + + * process.c (process_send_signal) + [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up. + Do nothing if the character is CVDISABLE. + + * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op. + + * intervals.c (move_if_not_intangible): + Force POSITION to be between BEGV and ZV. + +2004-08-14 John Paul Wallington <jpw@gnu.org> + + * buffer.c (Frestore_buffer_modified_p): Doc fix. + + * fileio.c (Fread_file_name): Doc fix. + + * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix. + +2004-08-09 Luc Teirlinck <teirllm@auburn.edu> + + * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes. + +2004-08-08 Luc Teirlinck <teirllm@auburn.edu> + + * keyboard.c: Declare Qdisabled_command_function instead of + Qdisabled_command_hook. + (Fcommand_execute): Use Qdisabled_command_function instead of + Qdisabled_command_hook. + (syms_of_keyboard): Ditto. + +2004-08-07 Luc Teirlinck <teirllm@auburn.edu> + + * keymap.c (Flocal_key_binding, Fglobal_key_binding) + (syms_of_keymap) <key-translation-map>: Doc fixes. + +2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca> + + * window.c (window_list_1): YAILOM. + + * fileio.c (make_temp_name): Handle multibyte prefixes. + +2004-08-06 Luc Teirlinck <teirllm@auburn.edu> + + * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>: + Doc fix. + +2004-08-03 Kenichi Handa <handa@m17n.org> + + * coding.c (decode_coding_string): Adjust coding->consumed, and + etc. with shrinked_bytes. + +2004-08-03 Kim F. Storm <storm@cua.dk> + + * indent.c (compute_motion): Fix check for full width window + in non-window case. Do not count left truncation glyph on + window systems. + +2004-08-02 Luc Teirlinck <teirllm@auburn.edu> + + * data.c (Finteractive_form): Doc fix. + +2004-08-02 Kim F. Storm <storm@cua.dk> + + * indent.c (compute_motion): Use actual window width if WIDTH is -1, + properly accounting for continuation glyph on non-window systems. + (Fcompute_motion): Use actual window width if WIDTH is nil, and + actual window width/height if TOPOS is nil, properly accounting for + continuation glyphs on non-window systems, and optional header lines. + (vmotion): Let compute_motion calculate actual window width. + + * window.c (window_scroll_line_based): Let compute_motion + calculate actual window width. + +2004-08-02 Kim F. Storm <storm@cua.dk> + + * process.c (read_process_output): Use whole read buffer. + Don't trigger adaptive read buffering on errors. + +2004-07-31 Luc Teirlinck <teirllm@auburn.edu> + + * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes. + + * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix. + + * callint.c (Fcall_interactively): Doc fix. + +2004-07-30 Richard M. Stallman <rms@gnu.org> + + * abbrev.c (Fexpand_abbrev): Undo previous change. + +2004-07-30 Kim F. Storm <storm@cua.dk> + + * editfns.c (Fformat): Allocate extra (dummy) element in info. + +2004-07-28 Luc Teirlinck <teirllm@auburn.edu> + + * eval.c (Fdefvar, Fdefconst): Doc fixes. + +2004-07-27 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after + we have ensured that the glyph fits on the current line (or returned + MOVE_LINE_CONTINUED otherwise). + +2004-07-26 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe + is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV + if target position is at end of display line but char is not a newline. + +2004-07-25 Richard M. Stallman <rms@gnu.org> + + * window.c (coordinates_in_window): Return ON_SCROLL_BAR + instead of ON_VERTICAL_BORDER, when on scroll bar. + (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil. + + * dispextern.h (enum window_part): Add ON_SCROLL_BAR. + + * window.c (Fcoordinates_in_window_p): + Take account of FRAME_INTERNAL_BORDER_WIDTH. + + * alloc.c (check_cons_list): New function (contents commented out). + +2004-07-24 Luc Teirlinck <teirllm@auburn.edu> + + * xfaces.c (Fcolor_supported_p): Doc fix. + + * frame.c (Fselect_frame, Fset_frame_selected_window) + (Fframe_visible_p, Fraise_frame): Doc fixes. + +2004-07-24 Richard M. Stallman <rms@gnu.org> + + * keyboard.h (not_single_kboard_state): Declare. + + * fileio.c (Fwrite_region): Doc fix. + + * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH. + + * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook + only when a real abbrev is present. + + * xfns.c (x_icon_verify): New function. + (Fx_create_frame): Use it. + +2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change) + + * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined. + +2004-07-21 Kim F. Storm <storm@cua.dk> + + * window.h (struct glyph_matrix): New members nrows_scale_factor + and ncols_scale_factor. + + * window.c (make_window): Initialize nrows_scale_factor and + ncols_scale_factor members. + + * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor. + (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up. + (required_matrix_height): Apply nrows_scale_factor. + (required_matrix_width): Apply ncols_scale_factor. + + * xdisp.c (display_line): Increment nrows_scale_factor and set + fonts_changed_p if past last allocated row. + (append_glyph, append_composite_glyph, produce_image_glyph) + (append_stretch_glyph): Increment ncols_scale_factor and set + fonts_changed_p if current area is full. + +2004-07-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0. + +2004-07-19 Luc Teirlinck <teirllm@auburn.edu> + + * window.c (Fpos_visible_in_window_p, Fset_window_hscroll) + (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point) + (Fset_window_start, Fscroll_up, Fscroll_down) + (Fother_window_for_scrolling, Fscroll_other_window) + (Fsave_window_excursion, Fset_window_vscroll) + (syms_of_window) <window-size-fixed>: Doc fixes. + +2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> + + * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of + ENCODE_SYSTEM for filenames. + +2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (sys_select): Block input around call to + ReceiveNextEvent to prevent breakage. Correctly handle + blocking on event queue only by calling ReceiveNextEvent + instead of select (since GUI events aren't on an fd). + (sys_read): Remove function + * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON. + +2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * mac.c (sys_select): Redo sys_select to use alarm-based + polling instead of 1 sec timeouts (like solaris). + + * macterm.c (x_make_frame_visible): Comment in polling on + frame creation. + + * keyboard.c: Undef SIGIO on Carbon. + + * atimer.c (alarm_signal_handler): Call alarm handlers after + scheduling. + + * eval.c (Feval): Remove quit_char test. + + * process.c (wait_reading_process_input): Remove clearing + stdin for select call on process input. + +2004-07-18 Luc Teirlinck <teirllm@auburn.edu> + + * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct + capitalization error in docstring. + +2004-07-17 Juanma Barranquero <lektu@terra.es> + + * keyboard.c (not_single_kboard_state): Do nothing unless + MULTI_KBOARD is defined. + +2004-07-17 Richard M. Stallman <rms@gnu.org> + + * window.c (coordinates_in_window): Inside the window but outside + its box to the L or R, return ON_VERTICAL_BORDER. + (window_list_1): Rotate the list to start with WINDOW. + + * print.c (print_preprocess): Test for print_depth at limit + before entering in being_printed. + + * keyboard.c (not_single_kboard_state): New function. + (stuff_buffered_input): Now no-op only if no SIGTSTP. + + * frame.c (Fdelete_frame): If we're in single_bboard_state on + this kboard, and we delete its last frame, go to any_kboard_state. + + * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix. + +2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> + + * w32fns.c (Fx_file_dialog): Encode strings in system coding + system before passing them to OS functions for display. + +2004-07-15 David Kastrup <dak@gnu.org> + + * search.c (syms_of_search): Staticpro `saved_last_thing_searched'. + Apparently fixes an abort condition. + +2004-07-14 Luc Teirlinck <teirllm@auburn.edu> + + * fileio.c (Fvisited_file_modtime): Return a list of two integers, + instead of a cons. + +2004-07-14 K,Aa(Broly L$,1 q(Brentey <lorentey@elte.hu> + + * keyboard.c (echo_dash): Do nothing if there already is a dash + at the end of the echo string. + +2004-07-12 Kim F. Storm <storm@cua.dk> + + * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value + if GC_MARK_STACK. + +2004-07-10 Luc Teirlinck <teirllm@auburn.edu> + + * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes. + + * window.c (Fwindow_buffer, Fother_window, Fget_lru_window) + (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on) + (Freplace_buffer_in_windows, Fset_window_buffer) + (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes. + (syms_of_window): Expand docstring of `display-buffer-function'. + +2004-07-09 Luc Teirlinck <teirllm@auburn.edu> + + * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time) + (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings + that time values of the type (HIGH . LOW) are considered obsolete. + +2004-07-06 Luc Teirlinck <teirllm@auburn.edu> + + * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table' + docstring. + + * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING. + +2004-07-06 John Paul Wallington <jpw@gnu.org> + + * eval.c (Fdefmacro): Signal an error if NAME is not a symbol. + + * fns.c (Fclear_string): Signal an error if STRING is not a string. + +2004-07-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList + instead of CGMainDisplayID (only in OSX 10.2 and later). + +2004-07-04 John Paul Wallington <jpw@gnu.org> + + * fileio.c (read_file_name_completion_ignore_case): New variable. + (syms_of_fileio): Declare and initialise it. + (Fread_file_name): Bind `completion-ignore-case' to respect it. + +2004-07-03 Eli Zaretskii <eliz@gnu.org> + + * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects + for event.x and event.y. + +2004-07-01 Kenichi Handa <handa@m17n.org> + + * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly + after getting a new string by pre-write-conversion. + +2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * xterm.c (x_detect_focus_change): Remove unused var `nr_events'. + (x_calc_absolute_position): Remove unused var `child'. + + * xfaces.c (x_supports_face_attributes_p) + (Fdisplay_supports_face_attributes_p): YAILOM. + (tty_supports_face_attributes_p): Remove unused var `i'. + + * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and + back_unibyte_ok. + + * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM. + + * fontset.c (Fset_fontset_font): Remove unused vars `family' and + `registry'. + + * Makefile.in (${etc}DOC): Fix file name of make-docfile. + +2004-06-30 Andreas Schwab <schwab@suse.de> + + * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES. + (Finit_image_library): Pass LIBRARIES through to + CHECK_LIB_AVAILABLE. Declare parameters. Doc fix. + (lookup_image_type): Pass Qnil as second argument to + Finit_image_library. + + * lisp.h (Finit_image_library): Declare. + +2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (do_window_activate, do_window_deactivate): Remove. + (XTread_socket): Send mouse button events to the toolbox + dispatcher even when the mouse is grabbed. Don't process window + activate events for non-Emacs windows. Replace function calls to + do_window_activate and do_window_deactivate with their contents. + Reset mouse grabbing status when a window is deactivated. + +2004-06-29 Steven Tamm <steventamm@mac.com> + + * macterm.c (mac_get_emulated_btn) + (mac_event_to_emacs_modifiers): Fix emulated mouse button + support to correctly mask out modifiers. + +2004-06-29 David Kastrup <dak@gnu.org> + + * search.c (Fset_match_data): Allow buffer before end of list + which can happen if set-match-data is using a pre-consed list. + +2004-06-28 Steven Tamm <steventamm@mac.com> + + * macterm.c (XTread_socket): Correctly set the frame position + after the window is moved. + +2004-06-28 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on + gpix and gmask just before return to avoid memory leak. + (xg_get_image_for_pixmap): Add workaround for monochrome displays + so insensitive and activated icons look ok. + +2004-06-27 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (file_dialog_callback): Disable edit control if set + to directories only on CDN_INITDONE message. + (Fx_file_dialog): Default to directories only when prompt starts + with "Dired". + +2004-06-25 Kim F. Storm <storm@cua.dk> + + * alloc.c (allocate_misc): Update total_free_markers. + (free_misc): New function. + (safe_alloca_unwind, free_marker): Use it. + + * lisp.h (free_misc): Add prototype. + + * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs. + +2004-06-24 Richard M. Stallman <rms@gnu.org> + + * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted. + (syms_of_emacs): Lisp variables deleted. + +2004-06-23 David Kastrup <dak@gnu.org> + + * search.c (Freplace_match): Adjust the match-data more thoroughly + when replacing strings in the buffer. + (Fmatch_data): When INTEGERS is non-nil and the last match was in + a buffer, add the buffer as last element to the match data. + (Fset_match_data): If an additional element of the match-data is a + buffer, restore it to last_thing_searched. + (save_search_regs): Save last_thing_searched as part of the match data. + (restore_match_data): Restore it again. + +2004-06-23 Luc Teirlinck <teirllm@auburn.edu> + + * keymap.c (Ftext_char_description): Doc fix. + * doc.c (Fsnarf_documentation): Doc fix. + +2004-06-22 Kim F. Storm <storm@cua.dk> + + * fns.c (Fmapcar, Fmapconcat): GCPRO the args array. + + * lisp.h (struct Lisp_Save_Value): New member dogc. + (SAFE_ALLOCA_LISP): Change second arg to number of elements. + Set dogc member in Lisp_Save_Value object so it will be GC'ed. + (SAFE_FREE_LISP): New macro. + + * alloc.c (safe_alloca_unwind): Clear dogc and pointer members. + (make_save_value): Init new dogc member. + (mark_object): Mark Lisp_Save_Value pointer array if dogc is set. + + * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and + SAFE_FREE_LISP macros. + +2004-06-22 Kim F. Storm <storm@cua.dk> + + * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects. + Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects + in that memory area are unknown to GC. Add comments. + + * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP. + +2004-06-21 Kim F. Storm <storm@cua.dk> + + * lisp.h (MAX_ALLOCA): Define here. + (safe_alloca_unwind): Add prototype. + (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros. + + * alloc.c (safe_alloca_unwind): New function. + + * casefiddle.c (casify_object): Use SAFE_ALLOCA. + + * charset.c (Fstring): Use SAFE_ALLOCA. + + * coding.c (MAX_ALLOCA): Remove define. + + * data.c (MAX_ALLOCA): Remove define. + (Faset): Use SAFE_ALLOCA. + + * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA. + + * fns.c (string_make_multibyte, string_to_multibyte) + (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA. + (MAX_ALLOCA): Remove define. + (Fbase64_encode_region, Fbase64_encode_string) + (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA. + (Fbase64_encode_region, Fbase64_encode_string): Fix potential + memory leak if encoding fails. + + * xdisp.c (add_to_log): Use SAFE_ALLOCA. + +2004-06-21 Eli Zaretskii <eliz@gnu.org> + + * print.c (Fwith_output_to_temp_buffer): Doc fix. + +2004-06-20 Richard M. Stallman <rms@gnu.org> + + * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix. + + * search.c (match_limit): Cleaner err msg when no match data available. + + * window.c (syms_of_window): Doc fix. + + * keyboard.c (command_loop_1): Handle values `only' and `identity' + for Vtransient_mark_mode. + + * buffer.c (syms_of_buffer): Doc fix. + +2004-06-21 David Kastrup <dak@gnu.org> + + * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding + and unbinding of `case-fold-search' according to + `completion-ignore-case' around calls of string-match and + predicates, respectively. Should give satisfactory performance + in all relevant cases. + +2004-06-17 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from + clip_x/y_origin. + + * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca. + + * macfns.c (Fx_display_color_cells): Do not limit return value to 256. + + * macterm.c (mac_initialize_display_info): Initialize n_planes correctly + on Mac OSX. + +2004-06-16 Luc Teirlinck <teirllm@auburn.edu> + + * buffer.c (syms_of_buffer): Clarify `fill-column' docstring. + +2004-06-16 Kim F. Storm <storm@cua.dk> + + * dispextern.h (Vimage_types): Remove extern. + +2004-06-16 Miles Bader <miles@gnu.org> + + * image.c (lookup_image_type): Initialize image type if necessary. + +2004-06-15 Kim F. Storm <storm@cua.dk> + + * xdisp.c (try_cursor_movement): Exclude header line from scroll + margin at top of window. + (try_window_reusing_current_matrix): Calculate proper cursor position + after scrolling up with non-zero scroll margin, as the old cursor + position corresponds to value of PT before executing this command. + (try_window_id): Consider scroll margin at bottom of window too; + otherwise we fail to scroll when hl-line-mode is enabled. + + * syntax.c (skip_chars): Only recognize [:class:] when it has the + proper format and class is a lower-case word. + +2004-06-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_get_image_for_pixmap): New function. + (xg_get_gdk_pixmap_and_mask): Remove. + (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of + xg_get_gdk_pixmap_and_mask. + + * xterm.h (struct x_display_info): Typo in comment fixed. + +2004-06-14 Juanma Barranquero <lektu@terra.es> + + * dispextern.h (Vimage_types): Make it conditional on + HAVE_WINDOW_SYSTEM. + + * image.c (Vimage_types): Move from xdisp.c. + (Vimage_type_cache): New variable. + (define_image_type): New argument indicating whether an image + library was loaded; cache loaded status and return t on success, + nil otherwise. + (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros. + (w32_delayed_load): New function to load an image library from a + list of possible filenames. + (init_xpm_functions, init_png_functions, init_jpeg_functions) + (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'. + (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument. + (Finit_image_library): New function, extracted from `init_image'. + Try to initialize an image library on demand and cache whether we + were successful or not. + (syms_of_image): Initialize `Vimage_types' and + `Vimage_type_cache'. Add recognized image types to Vimage_types. + Export `init-image-library'. + (init_image): Remove initialization of all image types, except xbm + and pbm. + + * xdisp.c (Vimage_types): Delete (moved to image.c). + +2004-06-14 Andreas Schwab <schwab@suse.de> + + * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion): + Avoid calling specbind when completion-regexp-list is empty. + +2004-06-13 Richard M. Stallman <rms@gnu.org> + + * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t) + (re_wctype, re_iswctype, re_wctype_to_bit): + Non-function definitions moved here from regex.c. + + * regex.c (re_wctype, re_iswctype): Function defs longer static. + (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t) + (re_wctype, re_iswctype, re_wctype_to_bit): + Non-function definitions moved to regex.h. + + * window.c (Fselect_window): Doc fix. + + * syntax.c: Include regex.h. + (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed. + If requested, make a list of classes, then check the scanned + chars for membership in them. + (in_classes): New function. + Doc fix. + + * keyboard.c (cmd_error): Don't call any_kboard_state + if inside a recursive edit level. + +2004-06-13 K,Aa(Broly L$,1 q(Brentey <lorentey@elte.hu> + + * keyboard.c (command_loop): Call any_kboard_state before + command_loop_2 when at top level. + +2004-06-13 Andreas Schwab <schwab@suse.de> + + * print.c (print_object): Always use %ld for printing EMACS_INT. + + * keyboard.c (cancel_hourglass_unwind): Return a value. + (modify_event_symbol): Always use %ld for printing EMACS_INT. + (Fexecute_extended_command): Likewise. + + * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to + avoid clashes. + (SYNTAX): Likewise. + (SYNTAX_WITH_FLAGS): Likewise. + (SYNTAX_MATCH): Likewise. + + * syntax.c (char_quoted): Avoid warning about undefined operation. + (find_defun_start): Likewise. + (scan_lists): Likewise. + (INC_FROM): Likewise. + (scan_sexps_forward): Likewise. + + * image.c: Include <ctype.h>. + + * xfaces.c (face_attr_equal_p): Declare parameters. + +2004-06-13 Kenichi Handa <handa@m17n.org> + + * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1. + +2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org> + + * eval.c (Fdefun): Signal an error if NAME is not a symbol. + +2004-06-12 Kenichi Handa <handa@m17n.org> + + * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in + ccl_prog_stack_struct and update it. + (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook. + (CCL_READ_CHAR): Get instruction counter from eof_ic, not from + ccl->eof_ic on EOF. + (ccl_debug_hook): New function. + (struct ccl_prog_stack): New member eof_ic. + (ccl_driver): Handle EOF in subrountine call correctly. + +2004-06-11 Kenichi Handa <handa@m17n.org> + + * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT. + +2004-06-11 Kim F. Storm <storm@cua.dk> + + * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown. + +2004-06-11 Juanma Barranquero <lektu@terra.es> + + * keyboard.c (Fposn_at_point): Doc fix. + +2004-06-11 David Kastrup <dak@gnu.org> + + * search.c (match_limit): Don't flag an error if match-data + exceeding the allocated search_regs.num_regs gets requested, just + return Qnil. + +2004-06-08 Miles Bader <miles@gnu.org> + + * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected. + +2004-06-07 Juanma Barranquero <lektu@terra.es> + + * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time) + (Fcurrent_time_string, Fcurrent_time_zone) + (Finsert_buffer_substring, Ftranspose_regions): Doc fixes. + +2004-06-07 Miles Bader <miles@gnu.org> + + * xfaces.c (struct named_merge_point): New type. + (push_named_merge_point): New function. + (merge_named_face): New function. + (merge_face_ref, face_at_buffer_position, face_at_string_position): + Use `merge_named_face'. + (merge_face_inheritance): Function removed. + (merge_face_ref): Rename from `merge_face_vector_with_property'. + Add new `err_msgs' and `named_merge_points' args. Return error + status. Only print error messages if ERR_MSGS is true. Don't try to + do :inherit attribute validation. + (merge_face_heights): Handle `unspecified' in both directions. + (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'. + Call `merge_face_ref' instead of `merge_face_inheritance'. + (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector) + (compute_char_face, face_at_buffer_position) + (face_at_string_position): Call `merge_face_ref' instead of + `merge_face_vector_with_property'. + +2004-06-07 Kenichi Handa <handa@m17n.org> + + * coding.c (find_safe_codings): Check NILP (safe_codings) only at + the necessary places. + +2004-06-07 Kim F. Storm <storm@cua.dk> + + * process.c (Fdelete_process): Undo 2004-05-28 change. + Instead, call status_notify also for network process. + (status_message): Use process instead of status as arg. + Give messages "deleted" or "connection broken by remote peer" for + an exited network process. + (status_notify): Change call to status_message. + (read_process_output): Increase readmax to 4096. Do not increase + buffer size for datagram channels (default is now large enough). + +2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local> + + * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation + problem due to newly defined variable. + +2004-06-06 Miles Bader <miles@gnu.org> + + * xfaces.c (Fdisplay_supports_face_attributes_p): Give up + immediately if non-interactive or not initialized. + +2004-06-05 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (Fcompleting_read): Doc fix. + +2004-06-05 Andreas Schwab <schwab@suse.de> + + * macfns.c (x_create_tip_frame): Fix declaration after statement. + +2004-06-05 Juanma Barranquero <lektu@terra.es> + + * keymap.c (Fdescribe_vector): Fix docstring. + (Fkey_description, Fglobal_key_binding): Fix typo in docstring. + +2004-06-05 Miles Bader <miles@gnu.org> + + * xfaces.c (tty_supports_face_attributes_p): Make sure the specified + attributes have different values than the default face. + +2004-06-04 Eli Zaretskii <eliz@gnu.org> + + * xfaces.c (x_supports_face_attributes_p): Make this function + conditional on HAVE_WINDOW_SYSTEM. + (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: + Don't call x_supports_face_attributes_p if it was not compiled in. + +2004-06-04 Miles Bader <miles@gnu.org> + + * xfaces.c (tty_supports_face_attributes_p): New function, mostly + from Ftty_supports_face_attributes_p. + (x_supports_face_attributes_p): New function. + (Ftty_supports_face_attributes_p): Function deleted. + (Fdisplay_supports_face_attributes_p): New function. + (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p. + (face_attr_equal_p): New function. + (lface_equal_p): Use it. + +2004-06-03 Juanma Barranquero <lektu@terra.es> + + * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command) + (Vw32_color_map): Fix typo in docstring. + (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip) + (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key): + Make argument names match their use in docstring. + +2004-06-02 Juanma Barranquero <lektu@terra.es> + + Work around bugs/problems with MinGW builds of graphics libraries + called from MSVC builds of Emacs. + + * image.c (lookup_image): Make pointer to img static. + (png_read_from_memory): Disable "global" optimization. + +2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * eval.c (Fcondition_case): Fix usage. Simplify. + + * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true. + +2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macfns.c: Don't include ccl.h. + [MAC_OSX]: Don't include QuickTime/QuickTime.h. + [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or + TextUtils.h. + (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors. + (Fx_display_mm_height, Fx_display_mm_width): Calculate length from + display height/width. + (compute_tip_xy, Vx_max_tooltip_size): Declare. + (unwind_create_tip_frame, compute_tip_xy): New functions. + (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c. + (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size, + and last_show_tip_args. + + * macgui.h [!MAC_OSX]: Include Gestalt.h. + (Cursor, No_Cursor): New defines. + [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro. + [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare. + + * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort. + + * macterm.c: Don't include Gestalt.h. + (enum mouse_tracking_type, mouse_tracking_in_progress): Remove. + (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap) + (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap) + (XFillRectangle, mac_draw_rectangle, mac_draw_string_common) + (mac_copy_area, mac_copy_area_with_mask, x_update_end) + (construct_mouse_click, XTmouse_position) + (x_scroll_bar_report_motion, x_calc_absolute_position) + (do_mouse_moved, do_zoom_window, mac_do_receive_drag) + (XTread_socket, make_mac_frame): Use SetPortWindowPort. + (note_mouse_movement): Clear the mouse face and reset the pointer + shape when the pointer goes outside the frame without grabbing. + (mac_front_window): New function. + (mac_window_to_frame): New macro. + (XTmouse_position, x_scroll_bar_report_motion, do_window_update) + (do_window_activate, do_window_deactivate, do_app_resume) + (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window) + (do_zoom_window, mac_do_receive_drag, XTread_socket) + (mac_check_for_quit_char): Use mac_front_window and/or + mac_window_to_frame. + (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a + scroll-bar click event. + (mac_define_frame_cursor): Change the pointer shape. + (x_free_frame_resources): Reset tip_window to NULL when it is + disposed of. + [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable. + [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor. + (do_window_update): Don't do anything if the updated window is the + tooltip window. + (do_mouse_moved): Handle mouse movement events here (previously in + XTread_socket). Clear the mouse face if + dpyinfo->mouse_face_hidden is set. + (do_os_event, do_events): Remove (now in XTread_socket). + (XTread_socket): Immediately return if interrupt_input_blocked. + Loop until all the events in the queue are processed. + Rearrange codes for mouse grabbing. Add tooltip support. Include the + contents of do_os_event and do_events. Remove mouse movement + handling (now in do_mouse_moved). Add the case where + Vmouse_highlight has an integer value. + (NewMacWindow): Remove. + (make_mac_frame): Do what NewMacWindow previously did. Don't do + excess initializations. + (make_mac_terminal_frame): Previous initializations in + make_mac_frame are moved here. + (mac_initialize_display_info): + Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden. + + * xdisp.c [MAC_OS] (No_Cursor): Remove variable. + (define_frame_cursor1): Don't treat HAVE_CARBON as a special case. + +2004-05-29 Richard M. Stallman <rms@gnu.org> + + * lisp.h (truncate_undo_list): Update decl. + + * alloc.c (undo_outer_limit): New variable. + (syms_of_alloc): Defvar it. + (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list. + + * undo.c (truncate_undo_list): New arg LIMITSIZE. + + * alloc.c (lisp_align_malloc): Check for base == 0 + regardless of HAVE_POSIX_MEMALIGN. + Clean up HAVE_POSIX_MEMALIGN handling of `err'. + +2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c: Undo Kim's recent changes and fix the same bug differently. + (marker_blocks_pending_free): Remove. + (Fgarbage_collect): Sweep after cleaning up undo-lists. + Mark the undo lists after claning them up. + Don't free block in marker_blocks_pending_free. + (mark_buffer): Don't mark undo_list. + (gc_sweep): Sweep hash-tables and strings first. + Do free marker blocks that are empty. + +2004-05-28 Jim Blandy <jimb@redhat.com> + + * regex.c (print_partial_compiled_pattern): Add missing 'break' + after 'case wordend'. For symbeg and symend, print to stderr, + like the other cases. + +2004-05-28 Noah Friedman <friedman@splode.com> + + * process.c (Fdelete_process): Do not call remove_process. + +2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (struct backtrace): Remove. + (Fgarbage_collect): Use the new mark_backtrace. + + * eval.c (mark_backtrace): New function. + + * minibuf.c (run_exit_minibuf_hook): New function. + (read_minibuf_unwind): Don't run exit-minibuffer-hook any more. + (read_minibuf): Use separate unwind handler to run exit-minibuf-hook. + +2004-05-27 Kim F. Storm <storm@cua.dk> + + * xdisp.c (back_to_previous_visible_line_start): Skip backwards + over display properties, e.g. images, that replace buffer text. + +2004-05-25 Kim F. Storm <storm@cua.dk> + + * alloc.c (marker_blocks_pending_free): New var. + (gc_sweep): Store free marker blocks on that list. + (Fgarbage_collect): Free them after undo-list cleanup. + + * process.c (wait_reading_process_input): Check connect_wait_mask + before actually accepting connection in case it has already been + accepted due to recursion. + +2004-05-23 K,Aa(Broly L$,1 q(Brentey <lorentey@elte.hu> + + * coding.c (Fset_safe_terminal_coding_system_internal): + Set suppress_error in safe_terminal_coding, not terminal_coding. + +2004-05-22 Richard M. Stallman <rms@gnu.org> + + * alloc.c (Fmake_string): Doc fix. + + * buffer.c (clone_per_buffer_values): Copy the alist of local vars, + and the alist pairs too. + + * casefiddle.c (casify_object): Return OBJ unchanged if not real char. + + * emacs.c (main): Update copyright year. + + * fileio.c (Fread_file_name): Expand DIR if not absolute. + + * insdel.c (del_range_2, replace_range): Don't write an anchor + if the gap is empty. + + * xdisp.c (try_scrolling): If scroll-up-aggressively or + scroll-down-aggressively is small but positive, put point + near the screen edge. + +2004-05-22 Juanma Barranquero <lektu@terra.es> + + * keymap.c (Fdefine_key): Doc fix. + +2004-05-22 Kim F. Storm <storm@cua.dk> + + * alloc.c (struct backtrace): Add debug_on_exit member. + (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep. + Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of + the removed cons cells. + (mark_object): Undo previous change - disallow Lisp_Misc_Free objects. + (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have + any cons cells pointing to unallocated stings. + Do not lisp_free any marker blocks, as there may still be pointers + to them from buffer undo lists at this stage of GC. + + * keyboard.c (struct backtrace): Add debug_on_exit member. + (Fcommand_execute): Clear it. + +2004-05-20 Luc Teirlinck <teirllm@auburn.edu> + + * intervals.c (lookup_char_property): Do not prematurely return nil. + +2004-05-19 Jim Blandy <jimb@redhat.com> + + Add support for new '\_<' and '\_>' regexp operators, matching the + beginning and end of symbols. + + * regex.c (enum syntaxcode): Add Ssymbol. + (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword. + (re_opcode_t): New opcodes `symbeg' and `symend'. + (print_partial_compiled_pattern): Print the new opcodes properly. + (regex_compile): Parse the new operators. + (analyse_first): Skip sym(beg|end) (they match only the empty string). + (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and + \sw; `symbeg' is mutually exclusive with \S_ and \Sw. + (re_match_2_internal): Match symbeg and symend. + + * search.c (trivial_regexp_p): \_ is no longer a trivial regexp. + +2004-05-19 Kim F. Storm <storm@cua.dk> + + * .gdbinit (xsymbol): Fix last change. + +2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca> + + * .gdbinit (xprintstr): New fun. + (xstring, xprintsym): Use it. + + * w32proc.c (create_child): Use INTMASK. + + * alloc.c (Fgarbage_collect): Do all the marking before flushing + unmarked elements of the undo list. + +2004-05-18 David Ponce <david@dponce.com> + + * print.c (print): Reset print_depth before to call print_object. + +2004-05-18 Jason Rumney <jasonr@gnu.org> + + * w32console.c: Prefix RIF functions with w32con_ to avoid + namespace clash with functions in term.c and w32term.c. + + * w32menu.c (add_menu_item, w32_menu_display_help) + [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member. + + * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype. + +2004-05-18 Eli Zaretskii <eliz@gnu.org> + + * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems. + + * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph + with make_number. + (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph + with XINT. + +2004-05-18 Kim F. Storm <storm@cua.dk> + + * blockinput.h (INPUT_BLOCKED_P): New macros. + + * keyboard.c (Frecursive_edit): Return immediately if input blocked. + (Ftop_level): Unblock input if blocked. + + * buffer.h (GET_OVERLAYS_AT): New macro. + * msdos.c (IT_note_mouse_highlight): Use it. + * textprop.c (get_char_property_and_overlay): Use it. + * xdisp.c (next_overlay_change, note_mouse_highlight): Use it. + * xfaces.c (face_at_buffer_position): Use it. + + * print.c (print_object): Increase buf size. + +2004-05-17 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key) + (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from + Lisp_Object using i member. + (w32_quit_key): Rename from Vw32_quit_key, and make an int. + (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int + consistently. + + * w32proc.c (create_child): Use make_number instead of masking pid. + + * w32fns.c (w32_color_map_lookup): Return a Lisp_Object. + (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets): + Use EQ to compare Lisp_Objects. + (w32_parse_hot_key): Use int for lisp_modifiers consistently. + + * w32term.c (w32_num_mouse_buttons): Rename from + Vw32_num_mouse_buttons and make it an int. + + * w32.c (init_environment): Use it. + + * w32fns.c (w32_wnd_proc): Likewise. + + * w32proc.c (w32_pipe_read_delay): Rename from + Vw32_pipe_read_delay and make it an int. + + * w32.c (_sys_read_ahead): Use it. + + * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition. + + * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid. + + * w32inevt.c (w32_console_mouse_position, do_mouse_event) + (key_event): Don't mix Lisp_Object and int. + + * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location. + + * keyboard.c (kbd_buffer_get_event): Don't use event->code and + modifiers in language change event. + +2004-05-17 Kim F. Storm <storm@cua.dk> + + * alloc.c (mark_object): Ignore Lisp_Misc_Free objects. + Such objects may be freed markers which still exist on an undo list. + +2004-05-16 Juanma Barranquero <lektu@terra.es> + + * data.c (Fset_default): Make argument names match their use in + docstring. + +2004-05-15 Andreas Schwab <schwab@suse.de> + + * emacs.c (gdb_array_mark_flag): Define. + * .gdbinit: Mask off gdb_array_mark_flag from vector sizes. + +2004-05-15 Eli Zaretskii <eliz@gnu.org> + + * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use + __attribute__((__aligned__)), so that USE_LSB_TAG would not become + defined for the MS-DOS build. + +2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca> + + * w32fns.c (Fw32_define_rgb_color): Avoid XSET. + +2004-05-14 Kenichi Handa <handa@m17n.org> + + * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS. + +2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c + section to frame.c section. + (Fxw_display_color_p, Fx_file_dialog): Declare if + HAVE_WINDOW_SYSTEM defined. + + * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup. + + * macmenu.c (set_frame_menubar): Use NILP to test a lisp value. + + * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers) + (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values. + (XTread_socket): Fix int/Lisp_Object mixup. + (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup. + + * macterm.h (struct frame, struct face, struct image) + (display_x_get_resource, Fx_display_color_p) + (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs): + Add prototypes. + +2004-05-14 Kim F. Storm <storm@cua.dk> + + * process.c (wait_reading_process_input): Make reentrant. + Make Available and Connecting non-static. Save and restore value + of waiting_for_user_input_p. + +2004-05-13 Kim F. Storm <storm@cua.dk> + + * keyboard.c (mark_kboards): Don't mark x and y members + that are overloaded in selection request events. + +2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca> + + * lisp.h (USE_LSB_TAG): Make it the default when it is known to work. + +2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk> + + * window.c (Fdisplay_buffer, Fsplit_window) + (split-height-threshold): Doc fix. + +2004-05-13 Juanma Barranquero <lektu@terra.es> + + * xfaces.c (Ftty_supports_face_attributes_p) + (Finternal_copy_lisp_face): Fix typo in docstring. + (Finternal_get_lisp_face_attribute): Fix docstring. + +2004-05-12 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK. + +2004-05-11 Steven Tamm <steventamm@mac.com> + + * macfns.c (Fx_create_frame): Default to using tool-bar by + setting tool-bar-lines to 1 in default-frame-alist. + +2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v) + (xpm_get_color_table_v, xpm_make_color_table_h) + (xpm_put_color_table_h, xpm_get_color_table_h) + (xpm_str_to_color_key, xpm_load_image, xpm_load) + (syms_of_image): Support XPM on Carbon Emacs. Does not + depend on libXpm, but only supports XPM version 3 without extensions. + +2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P + instead of FRAME_X_P. + +2004-05-11 Kim F. Storm <storm@cua.dk> + + * process.c (read_process_output): Grow decoding_buf when needed; + this could cause a crash in allocate_string and compact_small_strings. + +2004-04-29 Jim Blandy <jimb@redhat.com> + + * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2 + against proper opcode. + +2004-05-10 Juanma Barranquero <lektu@terra.es> + + * process.c (Fstart_process): Fix docstring. + + * charset.c (Fget_unused_iso_final_char): Fix typos in docstring. + (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction) + (Fsplit_char, Fchar_charset): Make argument names match their use + in docstring. + +2004-05-10 Richard M. Stallman <rms@gnu.org> + + * print.c (print_preprocess): Use being_printed, loop_count and + halftail to detect overdeep nesting and cyclic cdr chains. + +2004-05-10 Andreas Schwab <schwab@suse.de> + + * lisp.h (Fmake_symbolic_link): Declare. + + * fileio.c (Frename_file): Remove extra argument in call to + Fmake_symbolic_link. + +2004-05-10 Kim F. Storm <storm@cua.dk> + + * xdisp.c (calc_line_height_property): Use string position when + object is a string. + +2004-05-10 Kenichi Handa <handa@m17n.org> + + * print.c (temp_output_buffer_setup): Bind inhibit-read-only and + inhibit-modification-hooks to t temporarily before calling + Ferase_buffer. + + * xfns.c (x_create_tip_frame): Bind inhibit-read-only and + inhibit-modification-hooks to t temporarily before calling + Ferase_buffer. + + * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and + inhibit-modification-hooks to t temporarily before calling + Ferase_buffer. + + * fns.c (count_combining): Delete it. + (concat): Don't check combining bytes. + +2004-05-09 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Vw32_ansi_code_page): New Lisp variable. + (globals_of_w32fns): Set it. + +2004-05-09 Piet van Oostrum <piet@cs.uu.nl> + + * data.c (Fquo): Simplify. + +2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change) + + * data.c (Fquo): If any argument is float, do the computation in + floating point. + +2004-05-08 Juanma Barranquero <lektu@terra.es> + + * process.c (Fwaiting_for_user_input_p, Fmake_network_process) + (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering): + Fix spelling of Emacs on docstring. + (Fset_process_coding_system, Fprocess_coding_system) + (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p): + Make argument names match their use in docstring. + (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process): + Fix docstring. + + * editfns.c (Finsert_buffer_substring): Make argument names match their + use in docstring. + + * syntax.c (Fmodify_syntax_entry): Fix docstring. + +2004-05-07 Steven Tamm <steventamm@mac.com> + + * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT + around call to ReceiveEvent to avoid certain crashes. + +2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData) + (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap) + (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap): + Save/restore the current graphics port and device handle when + drawing into an offscreen graphics world. + + * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1) + (gif_load): Likewise. + +2004-05-07 Juanma Barranquero <lektu@terra.es> + + * window.c (Fset_window_buffer): Fix docstring. + +2004-05-06 Thien-Thi Nguyen <ttn@gnu.org> + + * emacs.c (main) [VMS]: Fix var ref. + +2004-05-06 Romain Francoise <romain@orebokech.com> + + * data.c (Fsetq_default): Fix docstring. + +2004-05-06 Jason Rumney <jasonr@gnu.org> + + * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h + to avoid name clash. + +2004-05-04 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * fileio.c (barf_or_query_if_file_exists): Use lstat. + (Frename_file): Handle renaming of symlinks across file systems. + (Frename_file): Put symlink handling inside #ifdef S_IFLNK. + +2004-05-04 Kim F. Storm <storm@cua.dk> + + * xdisp.c (Qtotal): New var. + (syms_of_xdisp): Intern and staticpro it. + (calc_line_height_property): New arg total. Set it if + line-spacing property has format (total . VALUE). + (x_produce_glyphs): Ignore line-spacing if line-height is 0. + Handle total line-spacing property. + +2004-05-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear + "under" scroll bar when size/position changes. + +2004-05-03 Jason Rumney <jasonr@gnu.org> + + * makefile.nt: Remove. + +2004-05-02 Eli Zaretskii <eliz@gnu.org> + + * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT): + Avoid compiler warnings. + + * Makefile.in (region-cache.o): Depend on config.h. + +2004-05-02 Romain Francoise <romain@orebokech.com> + + * indent.c (compute_motion): Save vpos in prev_vpos when dealing + with continuation lines, too. + +2004-05-02 Thien-Thi Nguyen <ttn@gnu.org> + + * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'. + +2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * xdisp.c (calc_line_height_property): YAILOM (yet another + int/Lisp_Object mixup). + +2004-05-01 Eli Zaretskii <eliz@gnu.org> + + * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to + undo bad effect of pack(4) in some versions of system headers. + +2004-05-01 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_draw_hollow_cursor): Sync with xterm.c. + +2004-04-30 Kim F. Storm <storm@cua.dk> + + * buffer.c (syms_of_buffer) <line-spacing>: Allow float value. + (syms_of_buffer) <cursor-type>: Doc fix. + + * dispextern.h (struct it): Remove member use_default_face. + Add members override_ascent, override_descent, override_boff. + + * xdisp.c (init_iterator): Handle line-spacing float value. + Initialize override_ascent member. + (append_space_for_newline): Reset override_ascent. + Remove use_default_face. + (calc_line_height_property): New function to calculate value of + line-height and line-spacing properties. Look at overlays, too. + Set override_ascent, override_descent, override_boff members when + using another face than the current face. Float values are now + relative to the frame default font, by default; accept a cons + of ratio and face name to specify value relative to a specific face. + (x_produce_glyphs): Use calc_line_height_property. + Use override_ascent etc. when set to handle different face heights. + A negative line-spacing property value is interpreted as a total + line height, rather than inter-line spacing. + (note_mouse_highlight): Allocate room for 40 overlays initially. + +2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca> + + * data.c (Fsubr_name): New fun. + (syms_of_data): Defsubr it. + +2004-04-29 Kim F. Storm <storm@cua.dk> + + * xdisp.c (null_glyph_slice): New var. + (append_glyph, append_composite_glyph, append_stretch_glyph): + Use it to initialize glyph slice. + +2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca> + + * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup. + (on_hot_spot_p): Make sure we always return a value. + (Flookup_image_map): Remove unused var ix and iy. + (note_mode_line_or_margin_highlight): Remove unused var `image'. + +2004-04-27 Eli Zaretskii <eliz@gnu.org> + + * msdos.c (init_environment): If one of the TMP... environment + variables is set to a drive letter without a trailing slash, + append a slash. + +2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org> + + * editfns.c (lisp_time_argument): Provide externally. + + * fileio.c (Fset_file_times): New function. + (syms_of_fileio): Intern and staticpro it. + +2004-04-27 Kim F. Storm <storm@cua.dk> + + * xdisp.c (x_produce_glyphs): Fix last change; handle newline in + header line strings. + + * dispextern.h (struct it): New member use_default_face. + + * xdisp.c (Qline_height): New variable. + (syms_of_xdisp): Intern and staticpro it. + (append_space_for_newline): Partially undo 2004-04-25 change; + add default_face_p arg, and restore callers. + Clear it->use_default_face after use. + (x_produce_glyphs): Set default font for ascii char if + it->use_default_font is set. Change line-spacing property to set + just extra line spacing. Handle new line-height property. + +2004-04-26 Andreas Schwab <schwab@suse.de> + + * print.c (print_object): Print non-ascii characters in bool + vector representation as octal escapes. + + * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define. + * print.c (print_object): Use it instead of BITS_PER_CHAR for + bool vectors. + * lread.c (read1): Likewise. + * alloc.c (Fmake_bool_vector): Likewise. + * data.c (Faref, Faset): Likewise. + * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray) + (mapcar1): Likewise. + +2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local> + + * lread.c (init_lread): Fix typo in HAVE_CARBON test logic. + +2004-04-26 Miles Bader <miles@gnu.org> + + * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c. + +2004-04-26 Juanma Barranquero <lektu@terra.es> + + * buffer.c (Fpop_to_buffer): Fix docstring. + +2004-04-26 Steven Tamm <steventamm@mac.com> + + * lread.c (init_lread): Don't display missing lisp directory + warnings with Carbon Emacs because self-contained bundled Emacs + may be built without correct installation path. + +2004-04-25 Kim F. Storm <storm@cua.dk> + + * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines. + + * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines. + + * xdisp.c (append_space_for_newline): Rename from append_space. + Remove DEFAULT_FACE_P arg; always use current face. Callers changed. + (x_produce_glyphs): Handle line-spacing property on newline char. + If value is t, adjust ascent and descent to fit current row height. + If value is an integer or float, set extra_line_spacing to integer + value, or to float value x current line height. + +2004-04-23 Kenichi Handa <handa@m17n.org> + + * fontset.c (Finternal_char_font): If POSITION is nil, return + font for displaying CH with the default face. + +2004-04-23 Juanma Barranquero <lektu@terra.es> + + * makefile.w32-in: Add "-*- makefile -*-" mode tag. + +2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca> + + * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]: + Don't make assumptions about the relative place of i and val. + (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well. + +2004-04-21 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct glyph_slice): New struct. + (struct glyph): New member slice. + (GLYPH_SLICE_EQUAL_P): New macro. + (GLYPH_EQUAL_P): Use it. + (struct glyph_string): New member slice. + (struct it_slice): New struct. + (struct it): New member slice, add member to stack too. + New member constrain_row_ascent_descent_p. + (image_ascent): Add prototype. + + * dispnew.c (buffer_posn_from_coords): Return full image width + and height even for image slices (posn is relative to full image). + (marginal_area_string): Adjust x0,y0 for image slice. + + * image.c (image_ascent): Add slice arg; calculate ascent for + image slice (or full image). + + * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns. + (syms_of_keyboard): Defsubr them. + + * lisp.h (pos_visible_p): Fix prototype. + + * macterm.c (x_draw_relief_rect): Add top_p and bot_p args. + (x_draw_glyph_string_box): Fix call to x_draw_relief_rect. + (x_draw_image_foreground, x_draw_image_relief) + (x_draw_image_foreground_1, x_draw_image_glyph_string): + Draw sliced images. + + * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args. + (x_draw_glyph_string_box): Fix call to x_draw_relief_rect. + (x_draw_image_foreground, x_draw_image_relief) + (w32_draw_image_foreground_1, x_draw_image_glyph_string): + Draw sliced images. + + * w32term.h (image_ascent): Remove prototype. + + * window.c (Fpos_visible_in_window_p): Return pixel position if + PARTIALLY arg is non-nil. Simplify. Doc fix. + (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg + to return/set vscroll in pixels. + + * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN. + + * xdisp.c (Qslice): New variable. + (syms_of_xdisp): Intern and staticpro it. + (pos_visible_p): Return pixel position in new x and y args. + (init_iterator): Reset it->slice info. + (handle_display_prop): Parse (slice ...) property. + (push_it, pop_it): Save/restore slice info. + (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not + force repositioning of tall row if window is vscrolled, as that + would reset vscroll. + (append_space): Set it->constrain_row_ascent_descent_p to avoid + increasing row height if row is non-empty. + (fill_image_glyph_string): Copy slice info. + (take_vertical_position_into_account): Simplify. + (produce_image_glyph): Handle iterator slice info, setup glyph + slice info. Do not force minimum line height. + (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set, + do not increase height (ascent/descent) of non-empty row when + adding normal character glyph; instead reduce glyph ascent/descent + appropriately; if row is higher than current glyph, adjust glyph + descent/ascent to reposition glyph within the existing row. + Likewise, when char is newline, only set ascent/descent if row is + currently empty. + (note_mouse_highlight): Handle hotspots with sliced image. + + * xterm.c (x_draw_relief_rect): Add top_p and bot_p args. + (x_draw_glyph_string_box): Fix call to x_draw_relief_rect. + (x_draw_image_foreground, x_draw_image_relief) + (x_draw_image_foreground_1, x_draw_image_glyph_string): + Draw sliced images. + + * xterm.h (image_ascent): Remove prototype. + +2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup. + +2004-04-20 John Paul Wallington <jpw@gnu.org> + + * fns.c (Fassoc, Feql): Fix indentation. + + * fontset.c (regularize_fontname): Rename from regulalize_fontname. + +2004-04-19 John Paul Wallington <jpw@gnu.org> + + * fns.c (Feql): New function. + (syms_of_fns): Defsubr it. + +2004-04-18 Jason Rumney <jasonr@gnu.org> + + * w32select.c (Fw32_set_clipboard_data): Get sequence number + after closing the clipboard. + +2004-04-16 Luc Teirlinck <teirllm@auburn.edu> + + * buffer.c (Fbuffer_base_buffer): Doc fix. + +2004-04-17 Kim F. Storm <storm@cua.dk> + + * keymap.c (Fkey_description): Add optional PREFIX arg. + Combine prefix with KEYS to make up the full key sequence to describe. + Correlate meta_prefix_char and following (simple) key to describe + as meta modifier. All callers changed. + (describe_map): Rename arg `keys' to `prefix'. Remove local + `elt_prefix' var. Use Fkey_description with prefix instead of + elt_prefix combined with Fsingle_key_description. + (describe_vector): Declare static. Replace arg `elt_prefix' with + `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it + if !KEYMAP_P. Use Fkey_description with prefix instead of + Fsingle_key_description. + + * keymap.h (Fkey_description): Fix prototype. + (describe_vector): Remove prototype. + + * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0. + + * image.c (PNG_BG_COLOR_SHIFT): Remove. + (png_load): Fix calculation of transparent background color on X + and W32 platforms. + +2004-04-16 Juanma Barranquero <lektu@terra.es> + + * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is + not too large before computing how much to scroll. + +2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca> + + * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler. + +2004-04-14 Luc Teirlinck <teirllm@auburn.edu> + + * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime): + Add hyperlink to Elisp manual to the docstring. + +2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca> + + * callint.c (fix_command): Use XDCR. + +2004-04-14 Nick Roberts <nick@nick.uklinux.net> + + * window.c (Fget_lru_window): Doc fix. + +2004-04-14 Kim F. Storm <storm@cua.dk> + + * editfns.c (Fformat): Fix allocation size of precision array. + + * dispnew.c (update_window): Only set changed_p if + scrolling_window actually did scroll. + (scrolling_window): Only return 1 if we actually did scroll. + + * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor + height to glyph height when cursor row is not fully visible. + (make_cursor_line_fully_visible): Add FORCE_P arg to return + failure in case row is higher than window. Callers changed. + (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd). + Try to scroll partially visible, higher-than-window cursor row. + (redisplay_window): Always try to scroll partially visible, + higher-than-window cursor row - both initially and again with + centering_position = 0. + Clear desired matrix before retrying with centering_position = 0. + +2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca> + + * syntax.c (scan_lists): Simplify backward string scan. + Fix off-by-one boundary check for string and comment fences. + +2004-04-13 Joe Buehler <jbuehler@hekimian.com> + + * sheap.c, unexcw.c: New files. + +2004-04-12 Luc Teirlinck <teirllm@auburn.edu> + + * buffer.c (Fmake_indirect_buffer): Throw an error if the intended + base buffer has been killed. Correct the error message if the + base buffer does not exist. + +2004-04-12 Joe Buehler <jbuehler@hekimian.com> + + * s/cygwin.h: Changes for Cygwin unexec() support, changes in + Cygwin itself. Add support for Xaw3d scrollbars. + + * puresize.h: Set up PURE_P() for Cygwin unexec() support. + + * lastfile.c: Define my_endbss[] for Cygwin unexec() support. + + * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(), + before Cygwin unexec. + + * Makefile.in: Link changes for Cygwin unexec() support. + +2004-04-12 Andreas Schwab <schwab@suse.de> + + * buffer.c (Fmake_indirect_buffer): Check that NAME is a string. + +2004-04-11 Luc Teirlinck <teirllm@auburn.edu> + + * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if + IGNORE argument equals NAME. Doc fix. + +2004-04-11 Masatake YAMATO <jet@gyve.org> + + * buffer.c (fix_start_end_in_overlays): Make overlays + empty if they are backwards. + +2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca> + + * xfaces.c (face_color_supported_p): Fix compilation without X11. + +2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca> + + * doc.c (Fsnarf_documentation): Ignore new file name entries. + +2004-04-06 Kim F. Storm <storm@cua.dk> + + * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden. + (dos_rawgetc): Set mouse_face_hidden after clearing highlight. + + * w32term.c (w32_read_socket): Set mouse_face_hidden after + clearing highlight. + + * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden. + + * xterm.c (handle_one_xevent): Set mouse_face_hidden after + clearing highlight. + + * indent.c (vmotion): Do not reserve one column for continuation + marks on window frames. + +2004-04-04 Eli Zaretskii <eliz@gnu.org> + + * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings + from GCC. + +2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * .gdbinit-union: Remove. + + * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION. + (xgetptr, xgetint, xgettype): New funs. Use them everywhere. + ($nonvalbits): Remove. + ($valmask): Set it by calling xreload to avoid redundancy. + + * emacs.c (gdb_use_union, gdb_use_lsb): New vars. + (gdb_emacs_intbits): Remove. + +2004-03-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes. + +2004-03-30 Kenichi Handa <handa@m17n.org> + + * editfns.c (Fformat): Fix initialization of the array info. + +2004-03-30 Kim F. Storm <storm@cua.dk> + + * xterm.c (x_mouse_click_focus_ignore_position): New var. + (syms_of_xterm): DEFVAR_BOOL it. + (ignore_next_mouse_click_timeout): New var. + (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify. + Use it to filter mouse clicks following focus event. + +2004-03-29 David Ponce <david@dponce.com> + + * callint.c (Fcall_interactively): Fix last change. + +2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * eval.c (Fcommandp): Simplify. + + * data.c (Finteractive_form): Rename from Fsubr_interactive_form. + Extend to handle all kinds of functions. + + * lisp.h (Finteractive_form): Declare. + + * callint.c (Fcall_interactively): Use it. + +2004-03-26 Kim F. Storm <storm@cua.dk> + + * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error + to catch errors in calc_pixel_width_or_height during redisplay. + +2004-03-26 Masatake YAMATO <jet@gyve.org> + + * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range. + + * lisp.h (fix_start_end_in_overlays): Likewise. + + * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays. + + * editfns.c (Ftranspose_regions): Likewise. + +2004-03-20 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): Do not pass key press events to GTK. + +2004-03-19 Richard M. Stallman <rms@gnu.org> + + * s/sol2-6.h: Delete previous change. + +2004-03-19 Kim F. Storm <storm@cua.dk> + + * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when + to_charpos corresponds to newline in right fringe. Use local + BUFFER_POS_REACHED_P macro. + +2004-03-19 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM + to compile on non-window system. + +2004-03-19 Kim F. Storm <storm@cua.dk> + + * dispextern.h (calc_pixel_width_or_height): Add prototype. + + * image.c (Qcenter): Move to xdisp.c. + + * xdisp.c (Qcenter): Declare here. + (syms_of_xdisp): Intern and staticpro it. + (handle_single_display_prop): Allow space display property on all + platforms. + (display_mode_line): Set mode_line_p before displaying line. + (calc_pixel_width_or_height): Declare extern. Add separate :align-to + handling. Remove complex cases for fringes and scroll-bars. + Add left, right, and center alignment positions. Add text (area) + width/height. Return width or height for image specs. + (produce_stretch_glyph): Improve handling of :align-to. Is now + relative to left of text area by default, but other base offsets + can be specified -- also for text lines. + + * term.c (produce_glyphs): Handle IT_STRETCH. + (produce_stretch_glyph): New function to handle space width and + align-to display properties on non-window systems. + +2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (Fread_file_name): Set completion-ignore-case for + case-insensitive systems. + +2004-03-14 Masatake YAMATO <jet@gyve.org> + + * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE + when keymap and cursor are setup. + +2004-03-14 Steven Tamm <steventamm@mac.com> + + * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o. + +2004-03-14 Kim F. Storm <storm@cua.dk> + + * dispextern.h (x_find_image_file): Add prototype. + + * image.c (x_find_image_file): Make extern. + + * xfns.c (x_find_image_file): Remove prototype. + +2004-03-13 Eli Zaretskii <eliz@gnu.org> + + * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined. + + * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined. + +2004-03-12 Richard M. Stallman <rms@gnu.org> + + * fns.c (internal_equal): New arg PROPS controls comparing + text properties. All callers changed. + (Fequal_including_properties): New function. + (syms_of_fns): defsubr it. + +2004-03-12 Kim F. Storm <storm@cua.dk> + + Fix image support on MAC. From YAMAMOTO Mitsuharu. + + * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs. + (image_background, image_background_transparent): Fix prototypes. + + * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h. + + * macfns.c (x_list_fonts, x_get_font_info, x_load_font) + (x_query_font, x_find_ccl_program, x_set_window_size) + (x_make_frame_visible, mac_initialize, XCreatePixmap) + (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground) + (mac_draw_line_to_pixmap): Move prototypes to macterm.h. + + * macterm.h (x_list_fonts, x_get_font_info, x_load_font) + (x_query_font, x_find_ccl_program, x_set_window_size) + (x_make_frame_visible, mac_initialize, XCreatePixmap) + (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground) + (mac_draw_line_to_pixmap): Add prototypes. + +2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * macterm.c (XTread_socket): Fix mouse click on tool bar. + +2004-03-11 Kim F. Storm <storm@cua.dk> + + * dispextern.h: Move image related prototypes from xfns.c section + to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than + HAVE_X_WINDOWS. + + * Makefile.in (XOBJ): Consolidate into one list. Add image.o. + Move gtkutil.o to new GTK_OBJ list. + (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place. + (GTK_OBJ) [USE_GTK]: New declaration. + (obj): Add $(GTK_OBJ) to list. + +2004-03-11 Steven Tamm <steventamm@mac.com> + + * image.c [MAC_OSX]: Include sys/stat.h. + + * macfns.c (syms_of_macfns): Remove definitions of things now + defined in image.c. + +2004-03-11 Kim F. Storm <storm@cua.dk> + + The following changes consolidates the identical/similar image + support code previously found in xfns.c, w32fns.c, and macfns.c + into a new file image.c. + + * makefile.w32-in (OBJ1): Add image.o. + ($(BLD)/image.$(O)): Add dependencies. + + * Makefile.in (XOBJ, MAC_OBJ): Add image.o. + (image.o): Add dependencies. + + * image.c: New file with consolidated image support code. + (COLOR_TABLE_SUPPORT): New define to control whether + color table support is available (X only). + (Bitmap_Record): Common name for x_bitmap_record, + w32_bitmap_record, and mac_bitmap_record. + (XImagePtr): Common name for pointer to XImage or equivalent. + (XImagePtr_or_DC): New type to simplify code sharing; equivalent + to XImagePtr on X+MAC, and to HDC on W32. + (GET_PIXEL): Wrapper for XGetPixel or equivalent. + (NO_PIXMAP): Common name for "None" or equivalent. + (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors. + (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value. + (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c). + (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen): + Define with suitable equivalents on W32 and MAC for code sharing. + (XDrawLine): Define on MAC for code sharing. + (Destroy_Image, Free_Pixmap): Wrappers for code sharing. + (IF_LIB_AVAILABLE): Macro to simplify code sharing. + (Vx_bitmap_file_path, Vimage_cache_eviction_delay) + (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) + (x_reference_bitmap, x_create_bitmap_from_data) + (x_create_bitmap_from_file, x_destroy_bitmap) + (x_destroy_all_bitmaps, x_create_bitmap_mask) + (XGetImage, XPutPixel, XGetPixel, XDestroyImage) + (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) + (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) + (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) + (define_image_type, lookup_image_type, valid_image_p) + (image_error, enum image_value_type, struct image_keyword) + (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) + (make_image, free_image, prepare_image_for_display, image_ascent) + (four_corners_best, image_background, image_background_transparent) + (x_clear_image_1, x_clear_image, x_alloc_image_color) + (make_image_cache, free_image_cache, clear_image_cache) + (Fclear_image_cache, postprocess_image, lookup_image, cache_image) + (forall_images_in_image_cache, x_create_x_image_and_pixmap) + (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) + (find_image_fsspec, image_load_qt_1, image_load_quicktime) + (init_image_func_pointer, image_load_quartz2d) + (struct ct_color, init_color_table, free_color_table) + (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) + (cross_disabled_images, x_to_xcolors, x_from_xcolors) + (x_detect_edges, x_emboss, x_laplace, x_edge_detection) + (x_disable_image, x_build_heuristic_mask) + (XBM support, XPM support, PBM support, PNG support, JPEG support) + (TIFF support, GIF support, Ghostscript support): Consolidate image + code from xfns.c, w32fns.c, and macfns.c. + (syms_of_image): Consolidate image related symbol setup here. + (init_image): Consolidate image related initializations here. + + * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image + and init_image. Remove call to init_xfns. + + * macterm.h (struct mac_bitmap_record): Add file member. + Not currently used, but simplifies code sharing. + + * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay) + (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) + (x_reference_bitmap, x_create_bitmap_from_data) + (x_create_bitmap_from_file, x_destroy_bitmap) + (x_destroy_all_bitmaps, x_create_bitmap_mask) + (XGetImage, XPutPixel, XGetPixel, XDestroyImage) + (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) + (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) + (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) + (define_image_type, lookup_image_type, valid_image_p) + (image_error, enum image_value_type, struct image_keyword) + (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) + (make_image, free_image, prepare_image_for_display, image_ascent) + (four_corners_best, image_background, image_background_transparent) + (x_clear_image_1, x_clear_image, x_alloc_image_color) + (make_image_cache, free_image_cache, clear_image_cache) + (Fclear_image_cache, postprocess_image, lookup_image, cache_image) + (forall_images_in_image_cache, x_create_x_image_and_pixmap) + (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) + (find_image_fsspec, image_load_qt_1, image_load_quicktime) + (init_image_func_pointer, image_load_quartz2d) + (struct ct_color, init_color_table, free_color_table) + (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) + (cross_disabled_images, x_to_xcolors, x_from_xcolors) + (x_detect_edges, x_emboss, x_laplace, x_edge_detection) + (x_disable_image, x_build_heuristic_mask) + (XBM support, XPM support, PBM support, PNG support, JPEG support) + (TIFF support, GIF support, Ghostscript support): Merge with image + code from xfns.c and macfns.c into image.c. + (syms_of_xfns): Move image related symbols to image.c. + (init_external_image_libraries, init_xfns): Remove; initialization + moved to init_image in image.c. + + * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay) + (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) + (x_reference_bitmap, x_create_bitmap_from_data) + (x_create_bitmap_from_file, x_destroy_bitmap) + (x_destroy_all_bitmaps, x_create_bitmap_mask) + (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) + (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) + (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) + (define_image_type, lookup_image_type, valid_image_p) + (image_error, enum image_value_type, struct image_keyword) + (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) + (make_image, free_image, prepare_image_for_display, image_ascent) + (four_corners_best, image_background, image_background_transparent) + (x_clear_image_1, x_clear_image, x_alloc_image_color) + (make_image_cache, free_image_cache, clear_image_cache) + (Fclear_image_cache, postprocess_image, lookup_image, cache_image) + (forall_images_in_image_cache, x_create_x_image_and_pixmap) + (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) + (struct ct_color, init_color_table, free_color_table) + (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) + (cross_disabled_images, x_to_xcolors, x_from_xcolors) + (x_detect_edges, x_emboss, x_laplace, x_edge_detection) + (x_disable_image, x_build_heuristic_mask) + (XBM support, XPM support, PBM support, PNG support, JPEG support) + (TIFF support, GIF support, Ghostscript support): Merge with image + code from xfns.c and macfns.c into image.c. + (syms_of_xfns): Move image related symbols to image.c. + (init_external_image_libraries, init_xfns): Remove; initialization + moved to init_image in image.c. + + * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay) + (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) + (x_reference_bitmap, x_create_bitmap_from_data) + (x_create_bitmap_from_file, x_destroy_bitmap) + (x_destroy_all_bitmaps, x_create_bitmap_mask) + (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols) + (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask) + (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter) + (define_image_type, lookup_image_type, valid_image_p) + (image_error, enum image_value_type, struct image_keyword) + (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p) + (make_image, free_image, prepare_image_for_display, image_ascent) + (four_corners_best, image_background, image_background_transparent) + (x_clear_image_1, x_clear_image, x_alloc_image_color) + (make_image_cache, free_image_cache, clear_image_cache) + (Fclear_image_cache, postprocess_image, lookup_image, cache_image) + (forall_images_in_image_cache, x_create_x_image_and_pixmap) + (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file) + (struct ct_color, init_color_table, free_color_table) + (lookup_rgb_color, lookup_pixel_color, colors_in_color_table) + (cross_disabled_images, x_to_xcolors, x_from_xcolors) + (x_detect_edges, x_emboss, x_laplace, x_edge_detection) + (x_disable_image, x_build_heuristic_mask) + (XBM support, XPM support, PBM support, PNG support, JPEG support) + (TIFF support, GIF support, Ghostscript support): Merge with + w32fns.c and macfns.c image code into image.c. + (syms_of_xfns): Move image related symbols to image.c. + (init_xfns): Remove; initialization moved to init_image in image.c. + + * lisp.h (syms_of_image, init_image): Add protoypes. + (init_xfns): Remove prototype. + + * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) + (x_reference_bitmap, x_create_bitmap_from_data) + (x_create_bitmap_from_file, x_destroy_bitmap) + (x_create_bitmap_mask): Move prototypes from dispextern.h. + (gamma_correct) [MAC_OS]: Add prototype. + + * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap) + (x_reference_bitmap, x_create_bitmap_from_data) + (x_create_bitmap_from_file, x_destroy_bitmap) + (x_create_bitmap_mask): Move prototypes to dispextern.h. + +2004-03-09 Kenichi Handa <handa@etlken2> + + * coding.c (decode_coding_emacs_mule): Handle insufficent source + correctly. + +2004-03-04 Richard M. Stallman <rms@gnu.org> + + * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition. + + * window.c (Fdisplay_buffer): Doc fix. + + * buffer.c (Fpop_to_buffer): Doc fix. + +2004-03-03 Kim F. Storm <storm@cua.dk> + + * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row. + +2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca> + + * editfns.c (Ftranslate_region): Lisp_Object/int mixup. + +2004-03-02 Richard M. Stallman <rms@gnu.org> + + * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc. + +2004-03-02 Kenichi Handa <handa@m17n.org> + + * doc.c (Fsubstitute_command_keys): Fix counding bytes. + +2004-03-02 Kim F. Storm <storm@cua.dk> + + * window.h (struct window): New member overlay_arrow_bitmap. + + * window.c (make_window): Initialize overlay_arrow_bitmap. + + * xdisp.c (Voverlay_arrow_variable_list): New variable to properly + implement and integrate multiple overlay arrows with redisplay. + (syms_of_xdisp): DEFVAR_LISP and initialize it. + (last_arrow_position, last_arrow_string): Replace by properties. + (Qlast_arrow_position, Qlast_arrow_string) + (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables. + (syms_of_xdisp): Intern and staticpro them. + (overlay_arrow_string_or_property, update_overlay_arrows) + (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p) + (overlay_arrow_at_row): New functions for multiple overlay arrows. + (redisplay_internal): Use them instead of directly accessing + Voverlay_arrow_position etc. for multiple overlay arrows. + (mark_window_display_accurate): Use update_overlay_arrows. + (try_cursor_movement): Use overlay_arrow_in_current_buffer_p. + (try_window_id): Use overlay_arrows_changed_p. + (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg. + (display_line): Use overlay_arrow_at_row to check multiple + overlay arrows, and get relevant overlay-arrow-string and + overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly. + (produce_image_glyph): Set pixel_width = 0 for fringe bitmap. + (syms_of_xdisp): Remove last_arrow_position and last_arrow_string. + + * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set. + (update_window_fringes): Remove unused code. + +2004-03-01 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_read_socket): Fix last change to ButtonPress handling. + +2004-03-01 Juanma Barranquero <lektu@terra.es> + + * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring. + + * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies. + +2004-03-01 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (Fx_display_color_cells): Use number of planes to calculate + how many colors can be displayed. + +2004-03-01 Kenichi Handa <handa@m17n.org> + + * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE + correctly. + +2004-02-28 Kim F. Storm <storm@cua.dk> + + * dispnew.c (update_window): Update header line also if there are + no other changes in window (move code after set_cursor label). + + * lisp.h (mark_window_display_accurate): Remove prototype. + + * window.c (window_loop, Fforce_window_update): Force mode line + updates by setting prevent_redisplay_optimizations_p and + update_mode_lines. + +2004-02-28 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_window): Fix indentation. + + * xterm.c (x_calc_absolute_position): Call x_real_positions + to get WM window sizes and use those to calculate position. + (x_set_offset): Remove code commented out. + +2004-02-28 Miles Bader <miles@gnu.org> + + * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert. + +2004-02-28 Kim F. Storm <storm@cua.dk> + + * keyboard.c (kbd_buffer_store_event_hold): New function to store + an event into kbd fifo, but with special handling of quit event; + a quit event is saved for later, and further events are discarded + until the saved quit event has been processed. + (kbd_buffer_store_event): Use kbd_buffer_store_event_hold. + (gen_help_event): Store help event in kbd fifo. + (NREAD_INPUT_EVENTS): Remove. + (read_avail_input): Adapt to new read_socket_hook interface. + Remove allocation and initialization of local input_event buffer, + as read_socket_hook stores events directly in fifo. Allocate and + initialize local hold_quit event to handle postponed quit event + (and store it if set by kbd_buffer_store_event_hold). + + * keyboard.h (kbd_buffer_store_event_hold): Add prototype. + (gen_help_event): Fix prototype. + + * macterm.c (XTread_socket): Remove bufp_r and + numcharsp args. Add hold_quit arg. + Rework to use just one, local, inev input_event. Store inev + directly in fifo using kbd_buffer_store_event_hold. + + * sysdep.c (BUFFER_SIZE_FACTOR): Remove. + (read_input_waiting): Adapt to new read_socket_hook interface. + Remove allocation and initialization of local input_event buffer, + as read_socket_hook stores events directly in fifo. Allocate and + initialize local hold_quit event to handle postponed quit event + (and store it if set by kbd_buffer_store_event_hold). + + * term.c (read_socket_hook): Fix arg list. + + * termhooks.h (read_socket_hook): Fix prototype. + + * w32inevt.c (w32_console_read_socket): Remove bufp_r and + numcharsp args. Add hold_quit arg. + Rework to use just one, local, inev input_event. Store inev + directly in fifo using kbd_buffer_store_event_hold. + + * w32inevt.h (w32_console_mouse_position): Fix prototype. + + * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args. + Add hold_quit arg. Rework to use just one, local, inev + input_event. Store inev directly in fifo using + kbd_buffer_store_event_hold. Update count in one place. + Postpone call to gen_help_event until inev is stored; use new + local do_help for this. + Remove local emacs_event in handing of ButtonPress event; just use + inev instead (so no reason to copy it later). + + * xsmfns.c (x_session_check_input): Remove numchars arg. + + * xterm.c (x_focus_changed, x_detect_focus_change): + Remove numchars arg. Always store event into bufp arg. + Return nothing. Callers changed accordingly. + (glyph_rect): Simplify. + (STORE_KEYSYM_FOR_DEBUG): New macro. + (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc. + (current_bufp, current_numcharsp) [USE_GTK]: Remove. + (current_hold_quit) [USE_GTK]: Add. + (event_handler_gdk): Adapt to new handle_one_xevent. + (handle_one_xevent): Remove bufp_r and numcharsp args. + Add hold_quit arg. Rework to use just one, local, inev + input_event. Store inev directly in fifo using + kbd_buffer_store_event_hold. Update count in one place. + Postpone call to gen_help_event until inev is stored; use new + local do_help for this. + Simplify handling of keysyms (consolidate common code). Fix bug + where count was updated with nchars instead of nbytes. + Remove local emacs_event in handing of ButtonPress event; just use + inev instead (so no reason to copy it later). + Remove `out' label. Rename label `ret' to `done'; add various + `goto done' to clarify code flow in deeply nested blocks. + (x_dispatch_event): Simplify as handle_one_xevent now calls + kbd_buffer_store_event itself. + (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit + arg. Call handle_one_xevent with new arglist. Store event from + x_session_check_input in fifo. + [USE_GTK]: Setup current_hold_quit. + Decrement handling_signal before unblocking input. + (x_initialize) [USE_GTK]: Initialize current_count. + + * xterm.h (x_session_check_input): Fix prototype. + +2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'. + + * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in + macgui.h). + + * emacs.c (main) [HAVE_CARBON]: Call init_xfns. + + * macgui.h [MAC_OSX]: Include Carbon/Carbon.h. + (mktime, DEBUG, Z, free, malloc, realloc, max, min) + (init_process) [MAC_OSX]: Avoid conflicts with Carbon/Carbon.h. + [!MAC_OSX]: Include QDOffscreen.h and Controls.h. + (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h. + (Bitmap): Remove typedef. + (Pixmap): Change int to GWorldPtr. + + * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h). + + * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h). + (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG): + New #define to extract 16-bit depth color components from unsigned + long representation. + (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel + colors used for masks. + (struct mac_display_info): Add color_p. Remove n_cbits. + + * macfns.c: Include sys/types.h and sys/stat.h. + [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h). + Include QuickTime/QuickTime.h. + (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap) + (XSetForeground, mac_draw_line_to_pixmap): Add externs for + functions defined in macterm.c. + (XImagePtr): New typedef. Corresponds to XImage * in xfns.c. + (ZPixmap): New #define for compatibility with xfns.c. + (XGetImage, XPutPixel, XGetPixel, XDestroyImage) + (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image) + (find_image_fsspec, image_load_qt_1, image_load_quicktime): + New functions. + (four_corners_best, x_create_x_image_and_pixmap) + (x_destroy_x_image, unwind_create_frame, x_disable_image) + (x_edge_detection, init_color_table, colors_in_color_table) + (lookup_rgb_color, lookup_pixel_color, postprocess_image) + (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image) + (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors) + (x_from_xcolors, x_detect_edges): New declarations (from xfns.c). + (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned + long mixup. + (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc. + (x_decode_color): Don't use n_cbits (in struct mac_display_info). + (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c. + (x_set_cursor_type, Fxw_color_values, valid_image_p) + (image_value_type, parse_image_spec, image_ascent, x_clear_image) + (x_alloc_image_color, clear_image_cache, lookup_image) + (x_find_image_file, xbm_read_bitmap_file_data) + (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan) + (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number) + (enum pbm_keyword_index, pbm_format, enum png_keyword_index) + (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format) + (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p) + (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c. + (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with + #if 0. + (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with + #if 0. Free white_relief.gc and black_relief.gc. + (unwind_create_frame, x_emboss, x_laplace, x_edge_detection): + New functions (from xfns.c). + (Fx_create_frame): Record unwind_create_frame. + (Fxw_display_color_p): Use dpyinfo->color_p. + (Fx_display_grayscale_p, Fx_display_planes): Don't use + dpyinfo->n_cbits. + (Fx_display_color_cells): Use dpyinfo->n_planes; + (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection) + (Qheuristic, cross_disabled_images, emboss_matrix) + (laplace_matrix): New variables (from xfns.c). + (Fimage_size, Fimage_mask_p, four_corners_best, image_background) + (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image) + (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges) + (image_background_transparent): New function (from xfns.c). + Use PIX_MASK_DRAW/PIX_MASK_RETAIN. + (image_load_quicktime): Add declaration. + [MAC_OSX] (image_load_quartz2d): Likewise. + [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef. + [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable. + [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs. + (xbm_load_image_from_file, x_laplace_read_row) + (x_laplace_write_row, pbm_read_file): Remove functions. + [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p) + (xpm_load): Sync with xfns.c (although XPM is not supported yet). + (colors_in_color_table): Sync with xfns.c (although not used). + (lookup_rgb_color): Don't lookup color table. Just do gamma + correction. + (COLOR_INTENSITY): New #define (from xfns.c). + (x_disable_image): New function (from xfns.c). + Use PIX_MASK_DRAW/PIX_MASK_RETAIN. + (x_build_heuristic_mask): Sync with xfns.c. + Use PIX_MASK_DRAW/PIX_MASK_RETAIN. + (HAVE_PBM): Remove #ifdef. + (pbm_load): Sync with xfns.c. Set img->width and img->height + before IMAGE_BACKGROUND. + (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG. + (Qpng, enum png_keyword_index, png_format, png_type, png_image_p): + Don't enclose with #if HAVE_PNG. + [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a + symbol _CGImageCreateWithPNGDataProvider is defined. + Otherwise use image_load_quicktime. + [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime. + [HAVE_PNG] (png_load): Sync with xfns.c. + Use PIX_MASK_DRAW/PIX_MASK_RETAIN. + (jpeg_image_p, jpeg_load): Don't enclose declarations with #if + HAVE_JPEG. + (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type) + (jpeg_image_p): Don't enclose with #if HAVE_JPEG. + [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d. + [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime. + [HAVE_JPEG] (jpeg_load): Sync with xfns.c. + (tiff_image_p, tiff_load): Don't enclose declarations with #if + HAVE_TIFF. + (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type) + (tiff_image_p): Don't enclose with #if HAVE_TIFF. + [!HAVE_TIFF] (tiff_load): Use image_load_quicktime. + [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler): + New functions (from xfns.c). + [HAVE_TIFF] (tiff_load): Sync with xfns.c. + (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF. + (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p): + Don't enclose with #if HAVE_GIF. + [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is + animated gif. Otherwise use image_load_quicktime. + [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as + gif_DrawText to avoid conflict with QuickdrawText.h. + [HAVE_GIF] (gif_load): Sync with xfns.c. + (enum gs_keyword_index, gs_format, gs_image_p, gs_load) + [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although + Ghostscript is not supported yet). + (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic, + QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL + cross_disabled_images (from xfns.c). Remove #if 0 for supported + image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and + HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p. + (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and + HAVE_PNG. Call EnterMovies to support animated gifs. + Call init_image_func_pointer to bind a symbol + _CGImageCreateWithPNGDataProvider if it is defined. + + * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h). + (x_draw_bar_cursor): Sync declaration with xterm.c. + (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area) + (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen + graphics). + (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc. + (mac_draw_line_to_pixmap, XCreatePixmap) + (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap) + (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap): + New functions. + (mac_draw_bitmap) [TARGET_API_MAC_CARBON]: + Use GetPortBitMapForCopyBits instead of the cast to Bitmap *. + Cast bits to char *. + (reflect_byte): New function (from w32fns.c). + (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits + due to byte alignment. + (mac_scroll_area) [TARGET_API_MAC_CARBON]: + Use GetPortBitMapForCopyBits instead of the cast to Bitmap *. + (XSetForeground): Remove static (now used in macfns.c). + (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c). + (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c. + (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect) + (x_draw_glyph_string_box, x_draw_image_foreground) + (x_draw_image_foreground_1, x_draw_image_glyph_string) + (x_draw_stretch_glyph_string, x_draw_glyph_string) + (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor): + Sync with xterm.c. + (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter + than the xterm.c version when a strictly horizontal or vertical + line is drawn. + (XTset_terminal_window): Add static. + (x_make_frame_visible): Add UNBLOCK_INPUT. + (x_free_frame_resources): New funcion (from xterm.c). + (XTread_socket): Call handle_tool_bar_click if mouse up/down event + occurs in tool bar area. + (mac_initialize_display_info): Remove dpyinfo->n_cbits. + Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth. + Initialize image cache. + (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match): + Enclose unused functions with #if 0. + (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables. + (decode_mac_font_name): New function to apply code conversions + from a mac font name to an XLFD font name according to its script code. + (x_font_name_to_mac_font_name): Apply code conversion from an XLFD + font name to a mac font name according to REGISTRY and ENCODING fields. + (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font + whose name starts with `.'. + (init_font_name_table): Use decode_mac_font_name. Add both + jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code + of a font is smJapanese. + (mac_do_list_fonts): New function to list fonts that match a given + pattern. + (x_list_fonts, XLoadQueryFont): Use it. + (XLoadQueryFont): Set rbearing field for each variable width + character to avoid needless redraw. + (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr. + +2004-02-26 Kim F. Storm <storm@cua.dk> + + * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512 + as read_socket_hook handler on X aborts if buffer is too small + and W32 handler doesn't always check buffer limit. + + * xdisp.c (handle_single_display_prop): Handle left-fringe and + right-fringe similar to a display margin image. Specifically, + the characters having the fringe prop are no longer shown, and + we use IT_IMAGE/next_element_from_image with image_id = -1 to + do this. Set fringe bitmap face_id in it->face_id. + (produce_image_glyph): Handle image_id < 0 as "no image" case, but + still realize it->face (i.e. the fringe bitmap face). + +2004-02-25 Miles Bader <miles@gnu.org> + + * xdisp.c (check_it): Check string/string_pos consistency. + (init_iterator): Initialize string-related fields properly. + +2004-02-11 Miles Bader <miles@gnu.org> + + * xdisp.c (produce_image_glyph): Force negative descents to zero. + +2004-02-10 Miles Bader <miles@gnu.org> + + * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked); + BLOCK_INPUT can be nested, so it doesn't make much sense. + +2004-02-24 Michael Mauger <mmaug@yahoo.com> + + * w32fns.c (slurp_file, xbm_scan, xbm_load_image) + (xbm_read_bitmap_data): Use unsigned char for image data. + +2004-02-23 Luc Teirlinck <teirllm@auburn.edu> + + * abbrev.c (Finsert_abbrev_table_description): Doc fix. + +2004-02-22 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps + correctly over other bitmaps. + +2004-02-21 Eli Zaretskii <eliz@gnu.org> + + * emacs.c (USAGE1): Split into two halves. + (USAGE2): Second half of the old USAGE1. + (USAGE3): Rename from USAGE2. + (USAGE4): Rename from USAGE3. + +2004-02-21 Juri Linkov <juri@jurta.org> + + * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2. + Fix --multibyte. Move --help, --version to USAGE2. Add alias + --file. Fix -f, -l. Sort options. Untabify. + (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify. + +2004-02-19 Luc Teirlinck <teirllm@auburn.edu> + + * category.c (Fdefine_category, Fcategory_docstring) + (Fget_unused_category, Fset_category_table) + (Fcategory_set_mnemonics): Doc fixes. + +2004-02-20 Kim F. Storm <storm@cua.dk> + + * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes. + The following changes are relative to the 2004-01-21 revision. + (NREAD_INPUT_EVENTS): Define as max number of input events to read + in one call to read_socket_hook. Value is 8. + (read_avail_input): Separate and rework handling of read_socket_hook + and non-read_socket_hook cases. Use smaller input_event buffer + in read_socket_hook case, and repeat if full buffer is read. + Use new local variable 'discard' to skip input after C-g. + In non-read_socket_hook case, just use a single input_event, and + call kbd_buffer_store_event on the fly for each character. + +2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca> + + * lisp.h (union Lisp_Object): Give a more precise type for `type'. + Remove unused `gu' alternative. + +2004-02-19 Andreas Schwab <schwab@suse.de> + + * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid + warning. + +2004-02-18 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_window_cursor_type, display_and_set_cursor): + Fix last change. + +2004-02-17 Kim F. Storm <storm@cua.dk> + + * xdisp.c (fast_find_position): Fix return value of new version; + it was inverted compared to the 21.1 version. + (get_window_cursor_type): Don't look at glyph if NULL. + (display_and_set_cursor): Set glyph to NULL if cursor in fringe. + + * keyboard.c: Rework previous change; it didn't consider that the + buf array was allocated on the stack. + (prev_read): Remove variable. + (read_avail_input_buf): New static event buffer array. + (in_read_avail_input): New static variable to handle re-entrancy. + (read_avail_input): Change buf to pinter to read_avail_input_buf. + Use in_read_avail_input to handle re-entrance; when re-entered, + fully initialize and use tmp_buf array instead of read_avail_input_buf. + Do not initialize read_avail_input_buf in full here; instead assume it + is always cleared on entry. To ensure that, we clear (just) the + entries that were used before we return. + (init_keyboard): Initialize read_avail_input_buf here. + +2004-02-16 Jesper Harder <harder@ifa.au.dk> + + * cmds.c (Fend_of_line): Doc fix. + +2004-02-16 Dmitry Antipov <dmantipov@yandex.ru> (tiny change) + + * keyboard.c (prev_read): New static variable. + (read_avail_input): Use it to zero out only those slots in buf[] + that were used last time we were called. + +2004-02-16 Eli Zaretskii <eliz@gnu.org> + + * Makefile.in (obj): Move fringe.o from here... + (XOBJ, MAC_OBJ): ...to here. + +2004-02-16 Stephen Eglen <stephen@gnu.org> + + * fringe.c (init_fringe_bitmap): Define j in MAC_OS code. + +2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca> + + * data.c (Fbyteorder): + * fringe.c (Fdefine_fringe_bitmap): + * xdisp.c (handle_single_display_prop): + * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup. + +2004-02-16 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps. + +2004-02-15 Steven Tamm <steventamm@mac.com> + + * macterm.c (Vmac_emulate_three_button_mouse): New variable for + controlling emulation of a three button mouse with option and + command keys. + (Qreverse, mac_get_enumlated_btn): Handle the emulation. + (mac_event_to_emacs_modifiers, XTread_socket): Ditto. + +2004-02-15 Kim F. Storm <storm@cua.dk> + + * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries. + + * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]: + Perform byte-swapping. + +2004-02-14 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct draw_fringe_bitmap_params): Change member + bits from char to short to facilitate wider bitmaps. + (struct redisplay_interface): Fix prototype of define_fringe_bitmap + member. + + * fringe.c (struct fringe_bitmap): Change member bits from char to + short to facilitate 16 bits wide bitmaps. Modify all standard + bitmaps accordingly. + (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros. + (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof. + (draw_fringe_bitmap): Ditto. + (init_fringe_bitmap) [MAC_OS]: Don't bitswap. + (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to + handle up to 16 bits wide bitmaps. + (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps. + (Ffringe_bitmaps_at_pos): Add missing arg declarations. + + * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly. + (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer + need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap. + + * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide, + so it is no longer necessary to expand them here. + + * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits). + +2004-02-12 Kim F. Storm <storm@cua.dk> + + * window.c (Fwindow_fringes): Doc fix. + +2004-02-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xselect.c (x_get_foreign_selection): Add new optional parameter + time_stamp. + (Fx_get_selection_internal): Ditto, pass time_stamp to + x_get_foreign_selection. + + * data.c (Fbyteorder): New function. + +2004-02-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * atimer.c: Move include stdio.h to same place as in other files. + + * region-cache.c: Ditto. + + * sysdep.c: Ditto. + + * xfaces.c: Ditto. + +2004-02-09 Sam Steingold <sds@gnu.org> + + * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch. + +2004-02-09 Kim F. Storm <storm@cua.dk> + + * fringe.c: New file. Move original fringe related declarations + and code from dispextern.h and xdisp.c here. + Rework code to support user defined fringe bitmaps, redefining + standard bitmaps, ability to overlay user defined bitmap with + overlay arrow bitmap, and add faces to bitmaps. + (Voverflow_newline_into_fringe): Declare here. + (enum fringe_bitmap_align): New enum. + (..._bits): All bitmaps are now defined without bitswapping; that + is now done in init_fringe_once (if necessary). + (standard_bitmaps): New array with specifications for the + standard fringe bitmaps. + (fringe_faces): New array. + (valid_fringe_bitmap_id_p): New function. + (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap. + (draw_fringe_bitmap): New function which draws fringe bitmap, + possibly overlaying bitmap with cursor in right fringe or the + overlay arrow in the left fringe. + (update_window_fringes): Do not handle overlay arrow here. + Compare and copy fringe bitmap faces. + (init_fringe_bitmap): New function. + (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to + define and destroy user defined fringe bitmaps. + (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap. + (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps. + (syms_of_fringe): New function. Defsubr new DEFUNs. + DEFVAR_LISP Voverflow_newline_into_fringe. + (init_fringe_once, init_fringe): New functions. + (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions. + + * Makefile.in (obj): Add fringe.o. + (fringe.o): New dependencies. + + * dispextern.h (FRINGE_ID_BITS): New definition for number of + bits allocated to hold a fringe number. Increase number of bits + from 4 to 8 to allow user defined fringe bitmaps. + (struct glyph_row, struct it): New members left_user_fringe_bitmap, + left_user_fringe_face_id, right_user_fringe_bitmap, + right_user_fringe_face_id. + (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps): + Move to new file fringe.c. + (MAX_FRINGE_BITMAPS): Define here. + (struct draw_fringe_bitmap_params): New members bits, cursor_p, + and overlay_p. Change member which to int. + (struct redisplay_interface): New members define_fringe_bitmap + and destroy_fringe_bitmap. + (valid_fringe_bitmap_id_p): Add prototype. + (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes. + + * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay + arrows. + (update_frame): Do flush_display if force_flush_display_p to + ensure display (specifically fringes) are updated in a timely + manner when resizing the frame by dragging the mouse. + (update_window_line): Update row if overlay arrow changed. + (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces + or overlay arrow changed. + + * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once, + syms_of_fringe, and init_fringe. + + * frame.h (struct frame): New member force_flush_display_p. + + * lisp.h (syms_of_fringe, init_fringe, init_fringe_once): + Add prototypes. + + * macterm.c (mac_draw_bitmap): Add overlay_p arg. + (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps; + thanks to YAMAMOTO Mitsuharu for advice on how to do this. + Use cursor color for displaying cursor in fringe. + (x_redisplay_interface): Add null handlers for + define_fringe_bitmap and destroy_fringe_bitmap functions. + + * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from + xterm.c to handle overlayed fringe bitmaps and to use cursor color + for displaying cursor in fringe. + (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32 + specific functions to define and destroy fringe bitmaps in fringe_bmp. + (w32_redisplay_interface): Add them to redisplay_interface. + (w32_term_init): Call w32_init_fringe instead of explicitly + defining fringe bitmaps in fringe_bmp array. + (x_delete_display): Call w32_reset_fringes instead of explicitly + destroying fringe bitmaps in fringe_bmp array. + + * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp) + (left_bits, right_bits, up_arrow_bits, down_arrow_bits) + (continued_bits, continuation_bits, ov_bits, first_line_bits) + (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits) + (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits) + (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps) + (draw_window_fringes, compute_fringe_widths, update_window_fringes): + Move fringe handling vars and code to new file fringe.c. + (handle_display_prop): Handle left-fringe and right-fringe + display properties; store user fringe bitmaps in iterator. + (move_it_in_display_line_to): Handle cursor in fringe at eob. + (clear_garbaged_frames): Set force_flush_display_p if resized. + (redisplay_window): Redraw fringe bitmaps if not just_this_one_p. + (display_line): Handle cursor in fringe at eob. + (display_line): Set row user fringe bitmaps from iterator. + + * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps. + Use cursor color for displaying cursor in fringe. + (x_redisplay_interface): Add null handlers for + define_fringe_bitmap and destroy_fringe_bitmap functions. + +2004-02-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * macfns.c (Fx_change_window_property): Make doc string and + parameters same as for X version. + + * w32fns.c (Fx_change_window_property): Ditto. + +2004-02-07 Kim F. Storm <storm@cua.dk> + + * xdisp.c (hscroll_window_tree): Position cursor near to right + margin in hscrolled window when jumping to end of line (rather + than centering cursor). + + * process.c (wait_reading_process_input): Don't do adaptive read + buffering if waiting for a specific process. + +2004-02-05 Luc Teirlinck <teirllm@auburn.edu> + + * minibuf.c (Fminibufferp, Fread_from_minibuffer) + (Fread_minibuffer, Feval_minibuffer) + (Fread_string, Fread_no_blanks_input) + (Fcompleting_read): Doc fixes. + (syms_of_minibuf): Doc fixes for minibuffer-completion-table and + completion-regexp-list. Define Qcase_fold_search and staticpro it. + (read_minibuf): Fix initial comment. + (Ftry_completion, Fall_completions, Ftest_completion): Bind + case-fold-search to the value of completion-ignore-case when + checking completion-regexp-list. + (Fdisplay_completion_list): Make it handle arguments that are + symbols. Doc fix. + +2004-02-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h: Add declaration of free_frame_menubar. + + * xfns.c (x_create_bitmap_mask): Removed unused variable depth. + (x_set_menu_bar_lines): Added ! defined USE_GTK for olines. + (Fx_change_window_property): Add declaration of parameters type and + format. Remove unused variable cons. + + * xselect.c: Include stdio.h. + +2004-02-05 Kenichi Handa <handa@m17n.org> + + * fns.c (Fset_char_table_range): Fix previous change. + + * buffer.c (Fset_buffer_multibyte): Fix docstring. + +2004-02-04 Luc Teirlinck <teirllm@auburn.edu> + + * editfns.c (Fchar_after, Fchar_before): Doc fixes. + +2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca> + + * keymap.c (Vmouse_events): Rename from Vmenu_events. + (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it. + +2004-02-04 Kenichi Handa <handa@m17n.org> + + * fns.c (Fset_char_table_range): Handle charsets ascii, + eight-bit-control, and eight-bit-graphic correctly. + +2004-02-03 Jason Rumney <jasonr@gnu.org> + + * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe. + + * w32fns.c (x_to_w32_font): Likewise. + +2004-02-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h: Add x_handle_dnd_message, x_check_property_data, + x_fill_property_data, x_property_data_to_lisp and check_x_display_info. + + * xterm.c (handle_one_xevent): Call x_handle_dnd_message for + ClientMessages. + + * xselect.c: Include termhooks.h and X11/Xproto.h. + (x_check_property_data, x_fill_property_data) + (x_property_data_to_lisp, mouse_position_for_drop) + (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support. + (Fx_send_client_event): Move here from xfns.c. + (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message. + + * xfns.c (x-send-client-message): Move to xselect.c. + (Fx_change_window_property): Add optional arguments TYPE, FORMAT and + OUTER_P. + (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P, + VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp + if vector_ret_p is true. + (syms_of_xfns): Sx_send_client_message moved to xselect.c. + +2004-02-02 Eli Zaretskii <eliz@gnu.org> + + * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the + basename of FILE relative to it, not FILE itself. + +2004-02-02 Kenichi Handa <handa@m17n.org> + + * coding.c (coding_restore_composition): Check invalid + composition data more rigidly. + +2004-01-30 Luc Teirlinck <teirllm@auburn.edu> + + * fileio.c (Fread_file_name_internal): Correctly handle the case + where insert-default-directory is nil. + (Fread_file_name): Always return an empty string if the user exits + with an empty minibuffer. Adapt the docstring accordingly. + (syms_of_fileio): Adapt the docstring of insert-default-directory + to the change in Fread_file_name. + +2004-01-29 Eli Zaretskii <eliz@gnu.org> + + * alloca.c [!alloca]: Fix the prototype for xfree. + +2004-01-29 Kenichi Handa <handa@m17n.org> + + * fns.c (string_char_to_byte): Optimize for ASCII only string. + (string_byte_to_char): Likewise. + +2004-01-28 Peter Runestig <peter@runestig.com> + + * makefile.w32-in, w32fns.c: Add `default-printer-name' function. + +2004-01-27 Steven Tamm <steventamm@mac.com> + + * unexmacosx.c (unexec_copy): Do not copy more than was + requested to prevent overwriting during unexec. + +2004-01-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * process.c (sigchld_handler): Add comment about not calling malloc. + + * process.h: Add extern to synch_process_termsig. + +2004-01-27 Steven Tamm <steventamm@mac.com> + + * macterm.c (make_mac_frame, make_mac_terminal_frame): + Move setting of scroll bars from make_mac_frame to + make_mac_terminal_frame to prevent clobbering of scroll-bar-mode. + +2004-01-26 Richard M. Stallman <rms@gnu.org> + + * search.c (Freplace_match): Handle nonexistent + back-references properly. + +2004-01-03 Richard M. Stallman <rms@gnu.org> + + * window.c (decode_any_window): New function. + (Fwindow_height, Fwindow_width, Fwindow_edges) + (Fwindow_pixel_edges, Fwindow_inside_edges) + (Fwindow_inside_pixel_edges): Use decode_any_window. + +2004-01-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * process.h: synch_process_termsig new variable. + + * callproc.c: Define synch_process_termsig. + (Fcall_process): Initiate synch_process_termsig to zero and + check if non-zero and get signal name after subprocess has ended. + + * process.c (sigchld_handler): Set synch_process_termsig + if terminated by a signal. synch_process_death setting removed. + + * sysdep.c (mkdir, rmdir): Also check synch_process_termsig. + +2004-01-26 Andreas Schwab <schwab@suse.de> + + * print.c (print_preprocess): Declare size as EMACS_INT to not + lose bits. + (print_object): Likewise. + * alloc.c (Fpurecopy): Likewise. + +2004-01-25 Luc Teirlinck <teirllm@auburn.edu> + + * window.c (Fwindow_minibuffer_p): Doc fix. + +2004-01-24 Jonathan Yavner <jyavner@member.fsf.org> + + * editfns.c (Fformat): Make both passes accept the same set of flags. + +2004-01-23 Kenichi Handa <handa@m17n.org> + + * fns.c (Fmd5): If OBJECT is a buffer different from the current + one, set buffer to OBJECT temporarily. + +2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca> + + * keyboard.c (kbd_buffer_gcpro): Remove. + (kbd_buffer_store_event, clear_event, Fdiscard_input) + (stuff_buffered_input, init_keyboard, syms_of_keyboard): + Don't initialize and/or maintain the variable any more. It was made + redundant by my commit of 2003-06-15. + + * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error. + +2004-01-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * lisp.h: Add undef DECL_ALIGN. + +2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca> + + * process.c (wait_reading_process_input) [SYNC_INPUT]: + Check interrupt_input_pending explicitly. + + * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well. + + * keyboard.c (handle_async_input): New fun, + extracted from input_available_signal. + (input_available_signal, reinvoke_input_signal): Use it. + +2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca> + + * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN. + + * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value + manipulation macros for when tags are in the lower bits. + (struct Lisp_Free) [USE_LSB_TAG]: Add padding. + (DECL_ALIGN): New macro. + (DEFUN): Use it. + + * lisp.h [ENABLE_CHECKING]: Don't force union type. + + * s/darwin.h (__attribute__): Remove outdated workaround. + + * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram. + + * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]: + Don't check range of malloc address. + (pure_alloc) [USE_LSB_TAG]: Enforce alignment. + + * process.c (wait_reading_process_input): Lisp_Object/int mixup. + + * dired.c (Ffile_attributes): Lisp_Object/int mixup. + +2004-01-19 Kenichi Handa <handa@m17n.org> + + * fontset.c (fontset_font_pattern): Fix previous change. + +2004-01-16 Miles Bader <miles@gnu.ai.mit.edu> + + * xdisp.c (Voverflow_newline_into_fringe) + (move_it_in_display_line_to, redisplay_internal) + (update_window_fringes, redisplay_window, display_line, window): + Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so + that it compiles without a window-system. + * dispnew.c (direct_output_for_insert, update_window): Likewise. + +2004-01-16 Kim F. Storm <storm@cua.dk> + + * buffer.h (struct buffer): New member indicate_buffer_boundaries. + + * buffer.c (init_buffer_once): Set buffer_defaults and + buffer_local_flags for indicate_buffer_boundaries. + (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro + default- variable for it. + + * dispextern.h (struct glyph_row): New members left_fringe_bitmap, + right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling. + New members exact_window_width_line_p and cursor_in_fringe_p for + overflowing newlines into right fringe. + New members indicate_bob_p, indicate_top_line_p, indicate_eob_p, + and indicate_bottom_line_p for buffer boundaries and scrolling. + (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP, + FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP, + HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP, + and HOLLOW_SQUARE_BITMAP. + (draw_fringe_bitmap, draw_window_fringes, update_window_fringes): + Add prototypes. + + * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps + instead of related indicator fields. + Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators. + (direct_output_for_insert): Handle exact width lines like + contined lines. Call update_window_fringes. + (update_window): Call update_window_fringes. + (scrolling_window): Don't skip desired rows with changed bitmaps. + Check if fringe bitmaps changes when assigning scrolled rows. + + * xdisp.c (Voverflow_newline_into_fringe): New variable. + (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro. + (move_it_in_display_line_to): Overflow newline into fringe for + rows that are exactly as wide as the window. + (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits) + (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits) + (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps. + (fringe_bitmaps): Add new bitmaps. + (draw_fringe_bitmap): Make extern. Remove WHICH arg. + Select proper bitmap for cursor in fringe when appropriate. + Handle alignment of bitmap to top or bottom of row. + (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now + done by update_window_fringes. + (update_window_fringes, draw_window_fringes): New functions. + (redisplay_internal): Call update_window_fringes in case only + cursor row is updated. + (redisplay_window): Call update_window_fringes. + Explicitly call draw_window_fringes if redisplay was done using + the current matrix or the overlay arrow is in the window. + (try_window_reusing_current_matrix): Mark scrolled rows for + fringe update (to update buffer-boundaries / scrolling icons). + (find_last_unchanged_at_beg_row): Handle exact width lines line + continued lines. + (display_line): Overflow newline into fringe for rows that are + exactly as wide as the window. Don't append space for newline + in this case. + (notice_overwritten_cursor): Explicitly clear cursor bitmap + in fringe as if it had been overwritten. + (erase_phys_cursor): Erase cursor bitmap in fringe. + (syms_of_xdisp): Mark show-trailing-whitespace and + void-text-area-pointer as user options. + DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default. + + * xterm.c (x_update_window_end): Call draw_window_fringes. + (x_after_update_window_line): Just set redraw_fringe_bitmaps_p + in row instead of actually drawing fringe bitmaps. + (x_draw_fringe_bitmap): Handle bottom aligned bitmaps. + (x_draw_window_cursor): Draw cursor in fringe. + + * w32term.c (x_update_window_end): Call draw_window_fringes. + (x_after_update_window_line): Just set redraw_fringe_bitmaps_p + in row instead of actually drawing fringe bitmaps. + (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps. + (w32_draw_window_cursor): Draw cursor in fringe. + + * macterm.c (x_update_window_end): Call draw_window_fringes. + (x_after_update_window_line): Just set redraw_fringe_bitmaps_p + in row instead of actually drawing fringe bitmaps. + (x_draw_fringe_bitmap): Handle bottom aligned bitmaps. + (mac_draw_window_cursor): Draw cursor in fringe. + +2004-01-16 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): Don't handle characters that are part + of an old style (XLookupString) compose sequence. + +2004-01-15 Kenichi Handa <handa@m17n.org> + + * search.c (Freplace_match): Use make_multibyte_string or + make_unibyte_string according to the buffer multibyteness. + +2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (struct interval_block, struct string_block) + (struct symbol_block, struct marker_block, live_string_p) + (live_cons_p, live_symbol_p, live_float_p, live_misc_p): + Better preserve alignment for objects in blocks. + (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding. + + * lread.c (defvar_per_buffer): Remove dead declaration. + + * macterm.c (do_check_ram_size): Don't hardcode the lisp address + space size. + +2004-01-12 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (popup_get_selection): Check new parameter down_on_keypress + if a key press should pop down. Only pop down if a key is pressed + outside the menu/dialog. + (create_and_show_popup_menu): Pass 0 for down_on_keypress to + popup_get_selection. + (create_and_show_dialog): Pass 1 for down_on_keypress to + popup_get_selection. + +2004-01-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * alloc.c (allocate_vectorlike): Surround calls to mallopt with + BLOCK/UNBLOCK_INPUT. + +2004-01-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are + specified. + +2004-01-08 Kenichi Handa <handa@m17n.org> + + * editfns.c (Fformat): Fix '&' to '&&'. + +2004-01-08 Andreas Schwab <schwab@suse.de> + + * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask + size if PSEUDOVECTOR_FLAG is set. + +2004-01-07 Kenichi Handa <handa@m17n.org> + + * charset.c (Fdeclare_equiv_charset): Fix docstring. + + * fontset.c (fontset_ref_via_base): Fix previous change. + +2004-01-07 Kim F. Storm <storm@cua.dk> + + * process.c (read_process_output): Only activate adaptive + buffering if we read less than 256 bytes at a time. + +2004-01-06 Kim F. Storm <storm@cua.dk> + + * dispnew.c (buffer_posn_from_coords): Return both buffer/string + object and image object. Return glyph width and height. + (mode_line_string, marginal_area_string): Ditto. + + * dispextern.h (buffer_posn_from_coords, mode_line_string) + (marginal_area_string): Fix prototypes. + + * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from + POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed. + (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros. + + * keyboard.c (make_lispy_position): Use modified mode_line_string, + buffer_posn_from_coords, and marginal_area_string functions to + include both string object and image object in the lispy position. + Also add actual glyph width and height to position. + (read_key_sequence): Use real buffer position from mouse + event to find keymap property even when click is in marginal area. + + * xdisp.c (note_mode_line_or_margin_highlight): Use modified + mode_line_string and marginal_area_string functions to handle + both string object and image object properties. + +2004-01-06 Andreas Schwab <schwab@suse.de> + + * syntax.c (skip_chars): Treat '-' at end of string as ordinary + character. + +2004-01-02 Andreas Schwab <schwab@suse.de> + + * macterm.c (emacs_options, x_initialized, same_x_server): + Remove unused (and duplicated) definitions. + +2004-01-02 Kim F. Storm <storm@cua.dk> + + * process.h (struct Lisp_Process): New members for adaptive read + buffering: adaptive_read_buffering, read_output_delay, and + read_output_skip. + + * process.c (ADAPTIVE_READ_BUFFERING): New conditional. + (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX) + (READ_OUTPUT_DELAY_MAX_MAX): New constants. + (process_output_delay_count, process_output_skip): New vars. + (Vprocess_adaptive_read_buffering): New variable. + (make_process): Initialize adaptive read buffering members. + (Fstart_process): Set adaptive_read_buffering member. + (deactivate_process): Cleanup adaptive read buffering. + (wait_reading_process_input): Temporarily omit delayed + subprocesses from the set of file descriptors to read from; + adjust the select timeout if we skipped any subprocesses. + (read_process_output): Increase adaptive read buffering delay if + we read less than a full buffer; reduce delay when we read a + full buffer. + (send_process): Simplify using local Lisp_Process var. + Reset adaptive read buffering delay after write. + (init_process): Initialize process_output_delay_count and + process_output_skip. + (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering. + +2004-01-01 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_text_out): Use s->font, for consistency with callers. + +2003-12-30 Luc Teirlinck <teirllm@auburn.edu> + + * print.c (Ferror_message_string): Add hyperlink in the docstring + to the definition of `signal' in the Elisp manual. + * eval.c (Fsignal): Ditto. + +2003-12-29 James Clark <jjc@jclark.com> + + * fns.c (internal_equal): Return t for two NaN arguments. + +2003-12-29 Richard M. Stallman <rms@gnu.org> + + * data.c (store_symval_forwarding): Handle setting + default-fill-column, etc., by changing the value in + buffers that use the default. + + * minibuf.c (Fset_minibuffer_window): Doc fix. + + * fileio.c (choose_write_coding_system): Ignore auto_saving + if using the visited file for auto saves. + (Fwrite_region): Don't update SAVE_MODIFF + if auto-saving in visited file. + +2003-12-29 Kenichi Handa <handa@m17n.org> + + * dispextern.h (face_font_available_p): Extern it. + + * fontset.c (Voverriding_fontspec_alist): New variable. + (lookup_overriding_fontspec): New function. + (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary. + (fontset_font_pattern): Likewise. + (regulalize_fontname): New function. + (Fset_fontset_font): Call regulalize_fontname. + (Fset_overriding_fontspec_internal): New function. + (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist. + Defsubr Sset_overriding_fontspec_internal. + + * xfaces.c (face_font_available_p): New function. + +2003-12-28 Richard M. Stallman <rms@gnu.org> + + * buffer.c (Fother_buffer): Don't crash if BUF is nil + or if its name is nil. + + * buffer.c (Fkill_buffer): Don't delete auto-save file + if it's the same as the visited file. + +2003-12-28 Luc Teirlinck <teirllm@auburn.edu> + + * coding.c (Fcheck_coding_system): Doc fix. + +2003-12-28 Kim F. Storm <storm@cua.dk> + + * Makefile.in (eval.o): Depend on dispextern.h. + + * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for + image glyph using image's ascent. + (mode_line_string): Return image glyph as object clicked on. + Adjust y0 for image glyph using image's ascent. + + * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines. + (struct glyph): New members, ascent and descent. Used to save + this glyph's ascent and descent, instead of having. + (struct glyph): Declare member face_id using FACE_ID_BITS. + (find_hot_spot): Add prototype. + + * keyboard.c (Qimage): Remove extern (now in lisp.h). + (QCmap): Declare extern. + (make_lispy_position): When position is inside image hot-spot, + use hot-spot element's id as posn element. + + * lisp.h (IMAGEP): New macro to test for image object type. + (Qimage): Declare extern. + + * macfns.c (Qimage): Remove extern (now in lisp.h). + (valid_image_p, parse_image_spec): Use IMAGEP macro. + + * macterm.c (Qface, Qmouse_face): Remove unused externs. + + * w32fns.c (Qimage): Remove extern (now in lisp.h). + (valid_image_p, parse_image_spec): Use IMAGEP macro. + + * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs. + + * w32term.c (Qface, Qmouse_face): Remove unused externs. + + * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for + pointer types. + (Qrelative_width, Qalign_to): Remove unused variables. + (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void. + (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for image + maps. + (x_y_to_hpos_vpos): Return glyph relative coordinates through new + dx and dy args. Remove buffer_only_p arg (always 0). Simplify + code accordingly. + (get_glyph_string_clip_rect): Draw cursor using glyph's rather + than row's ascent and height, to get sensible height on tall rows. + (build_desired_tool_bar_string): Remove Qimage extern. + (get_tool_bar_item): Fix call to x_y_to_hpos_vpos. + (produce_image_glyph): Adjust it.ascent to minimum row ascent if + image glyph is alone on the last line. + (append_glyph, append_composite_glyph, produce_image_glyph) + (append_stretch_glyph): Set glyph's ascent and descent. + (on_hot_spot_p): New function to check if position is inside an + rectangular, circular, or polygon-shaped image hot-spot, + (find_hot_spot): New function to search for image hot-spot. + (Flookup_image_map): New defun to search for image hot-spot. + (define_frame_cursor1): New aux function to determine frame + pointer. + (note_mode_line_or_margin_highlight, note_mouse_highlight): Handle + `pointer' text property and :pointer image property to control + frame pointer shape. Detect image hot-spots for pointer and + help_echo properties. Use define_frame_cursor1. + (note_mouse_highlight): Use Vvoid_text_area_pointer. + (syms_of_xdisp): Defsubr new defun. Intern and staticpro new + variables. DEFVAR_LISP Vvoid_text_area_pointer instead of + Vshow_text_cursor_in_void. + + * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID. + + * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call. + (Qimage): Remove extern (now in lisp.h). + (valid_image_p, parse_image_spec): Use IMAGEP macro. + + * xmenu.c (show_help_event): Remove unused code. + + * xterm.c (Qface, Qmouse_face): Remove unused externs. + (x_draw_hollow_cursor): Draw cursor using glyph's rather than + row's ascent and descent, to get a sensible height on tall rows. + +2003-12-25 Luc Teirlinck <teirllm@auburn.edu> + + * minibuf.c (Fcompleting_read): Undo previous change. + +2003-12-25 Lars Hansen <larsh@math.ku.dk> + + * dired.c (Fdirectory_files, Fdirectory_files_and_attributes): + Arguments GCPRO'ed in call to file name handler. + +2003-12-25 Thien-Thi Nguyen <ttn@gnu.org> + + * termcap.c (tgetst1): Scan for "%pN"; if all + N are continuous in [1,9], remove all "%pN". + +2003-12-24 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint. + + * xfaces.c (lface_fully_specified_p): Take into account that + MAC OS always have unspecified stipple. + +2003-12-24 Thien-Thi Nguyen <ttn@gnu.org> + + * tparam.c (tparam1): Add handling for `%pN', which + means use param N for the next substitution. + +2003-12-24 Thien-Thi Nguyen <ttn@gnu.org> + + * xfaces.c (Fcolor_gray_p): Fix omission bug: + In case `frame' is nil, consult the selected frame. + (Fcolor_supported_p): Likewise. + +2003-12-23 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range): + Doc fixes. + + * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string + and an integer. Adapt the introductory comment accordingly. + (Fread_from_minibuffer): Delete code moved into read_minibuf. + Doc fix. + (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in + read_minibuf. + (Fcompleting_read): Delete code moved into read_minibuf. + (Ftest_completion): Make it handle obarrays and hash tables correctly. + +2003-12-03 Kenichi Handa <handa@m17n.org> + + * coding.c (decode_coding_iso2022): Fix for preserving UTF-8 + encoding sequence. + +2003-12-01 Kenichi Handa <handa@m17n.org> + + * composite.c (syms_of_composite): Don't make the compostion hash + table week. + +2003-11-30 Luc Teirlinck <teirllm@auburn.edu> + + * intervals.h: Add EXFUN for Fget_char_property_and_overlay. + * textprop.c (Fget_char_property_and_overlay): New function. + (syms_of_textprop): Defsubr it. + +2003-11-29 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM + to compile on terminal configuration. + + * fileio.c (Fread_file_name): Check use_file_dialog also before + calling Fx_file_dialog. + + * fns.c (use_file_dialog): New variable. + (syms_of_fns): DEFVAR_BOOL use-file-dialog. + +2003-11-29 Kim F. Storm <storm@cua.dk> + + * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern. + (syms_of_msdos): Don't intern and staticpro them. + +2003-11-27 Kim F. Storm <storm@cua.dk> + + * dispnew.c (buffer_posn_from_coords): Calculate and return pixel + coordinates relative to glyph at posn. If glyph is an image, + return that as object at posn. Callers changed. + (mode_line_string, marginal_area_string): Calculate and return + pixel coordinates relative to glyph. Callers changed. + + * dispextern.h (buffer_posn_from_coords, mode_line_string) + (marginal_area_string): Fix prototypes. + (window_box_left_offset, window_box_right_offset): Add prototypes. + + * frame.h (get_specified_cursor_type, get_window_cursor_type): + Remove prototypes. + + * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines. + + * keyboard.c (make_lispy_position): Add x and y coordinates + relative to the current glyph as 7th element of position. + If glyph is an image, return it in the object element. + (read_key_sequence): Skip checks for keymap property in cases + where POSN_STRING is not a string (e.g. an image). + + * xdisp.c (Vdisplay_pixels_per_inch): New variable. + (Vshow_text_cursor_in_void): New variable. + (glyph_to_pixel_coords): Don't use negative hpos. + (x_y_to_hpos_vpos): Fix for partially visible first glyph. + (append_stretch_glyph): Change ascent arg to be actual value + in pixels rather than ratio to height. Callers changed. + (calc_pixel_width_or_height): New aux function, implementing + pixel based artihmetic for glyph widths and heights. + (produce_stretch_glyph): Use calc_pixel_width_or_height for + :width, :height, :align-to, and :ascent, thus allowing these to + be specified in pixels as well as multiples of characters. + Don't produce stretch glyphs with zero width or height. + (get_specified_cursor_type): Declare static. + (get_window_cursor_type): Declare static. Add glyph arg to be + able to know when cursor is on an image; always substitute + hollow-box cursor for filled-box cursor on images, to avoid + negative images and flicker when blinking the cursor. + (display_and_set_cursor): Pass glyph to get_window_cursor_type. + (note_mode_line_or_margin_highlight): Use non-text cursor rather + than vertical scroll-bar cursor in display margins. + (note_mouse_highlight): Use non-text cursor rather than text + cursor in fringes and over images in the text area. + Use non-text cursor when mouse pointer is outside editable text, + i.e. in the void after end-of-line or end-of-buffer; this was + already done for W32, but is now standard for all systems -- + user can toggle show-text-cursor-in-void to get old behaviour. + (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and + Vdisplay_pixels_per_inch. + +2003-11-25 Andreas Schwab <schwab@suse.de> + + * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as + EMACS_INT to not lose bits. + (Ffillarray): Don't set bits beyond the size of a bool vector. + +2003-11-25 Kim F. Storm <storm@cua.dk> + + * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not + define this defun on systems that cannot use stderr as lvalue. + +2003-11-24 Gerd Moellmann <gerd@gnu.org> + + * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS) + [__FreeBSD_version >= 500042]: Define as -znocombreloc because + ld's default is incompatible with unexec. + +2003-11-23 Kim F. Storm <storm@cua.dk> + + * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS. + (window_loop): Handle REDISPLAY_BUFFER_WINDOWS. + (Fforce_window_update): New defun. + (syms_of_window): Defsubr it. + (Fset_window_margins, Fset_window_fringes): Doc fix. + + * print.c (Fredirect_debugging_output): New defun. + (syms_of_print): Defsubr it. + +2003-11-22 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Fset_char_table_parent): Doc fix. + +2003-11-22 Kim F. Storm <storm@cua.dk> + + * dispnew.c (buffer_posn_from_coords): Return actual row/column + for glyph clicked on, rather than (unused) pixel positions. + (mode_line_string, marginal_area_string): Change X and Y args to + pointers for returning actual row/column for glyph clicked on. + Simplify and optimize loops. + + * dispextern.h (mode_line_string, marginal_area_string): + Update prototypes. + + * keyboard.c (make_lispy_position): New function for generating + mouse click positions from frame and pixel coordinates. + Enhanced to return buffer position and actual row/column for + events outside the text area using updated mode_line_string and + marginal_area_string functions. + Return left-fringe and right-fringe clicks as such, rather than + clicks in text area. + (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call + pixel_to_glyph_coords, as we never use the results. + (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT, + WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code. + Eliminate unused code in WHEEL_EVENT handling. + (make_lispy_movement): Use make_lispy_position. + + * window.c (coordinates_in_window): Remove redundant tests. + Fix returned X pixel value for left-margin. + + * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new + mode_line_string and marginal_area_string parameters. + +2003-11-22 Lars Hansen <larsh@math.ku.dk> + + * w32.c (struct the_group, getgrgid): Add. + * mac.c (struct my_group, getgrgid): Add. + +2003-11-21 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes. + +2003-11-21 Lars Hansen <larsh@math.ku.dk> + + * dired.c (Ffile_attributes): Add parameter ID-FORMAT and + include in call to file name handler. Optionally translate numeric + UID and GID to strings. Update docstring. + (directory_files_internal): Add parameter ID-FORMAT. + (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and + include in call to file name handler and call to + directory_files_internal. Update Docstring. + (Fdirectory_files): Add dummy parameter in call to + directory_files_internal. + * lisp.h (Qinteger): Add. + (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove. + (Ffile_attributes): Add parameter. + * data.c (Qinteger): Export. + +2003-11-21 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Freverse, Fnreverse): Doc fixes. + +2003-11-19 Kim F. Storm <storm@cua.dk> + + * xdisp.c (init_iterator): Initialize it->start to position + before reseating (in case start position is invisible). + (init_to_row_start): Set it->start to row-start. + (redisplay_window): Accept optional_new_start if start position + is invisible (in which case IT_CHARPOS overshoots PT). + (display_line): Setup row->start from it->start (rather than + it->current which is wrong if first char on line is invisible). + When done, reseat it->start to it->current (= start of next row). + (expose_area): Fix exposure of text area when first char (e.g. TAB) + is only partially visible. + + * dispextern.h (struct it): New member start. + +2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca> + + * alloc.c (make_float, Fcons): Clear the markbit at init time. + (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment + of block_index outside of the macro call. + (Fgarbage_collect): Remove null code. + + * m/amdx86-64.h: Don't redefine XPNTR. + + * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead + of VALMASK. + + * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put) + (sxhash_string, sxhash): Use INTMASK instead of VALMASK. + (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM. + + * lisp.h (VALMASK): Only define for non-union type. + (MARKBIT): Remove. + (ARRAY_MARK_FLAG): Use previous value of MARKBIT. + (XTYPE): Define unconditionally. + (XSETTYPE): Remove one more remnant. + (EQ): Define differently for the union and non-union cases. + (INTMASK): New bit mask. + (struct Lisp_Marker): Move down to prepare for upcoming patch. + (GC_EQ): Delegate to EQ. + + * coding.c (coding_restore_composition): Lisp_Object/int mixup. + +2003-11-17 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_window_to_scroll_bar): Move check of display to + where window_id is compared. + +2003-11-17 Kim F. Storm <storm@cua.dk> + + * dispextern.h (struct it): New member first_vpos. + + * xdisp.c (start_display): Set it->first_vpos. + (try_window_id): Use first_vpos to start display in first _text_ + line if no reusable lines at start of window with header line. + +2003-11-16 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * w32fns.c (XPutPixel): + * w32bdf.c (w32_init_bdf_font): + * sunfns.c (sel_read): + * process.c (Fmake_network_process): + * frame.c (store_frame_param): + * fontset.c (Fset_fontset_font): + * emacs.c (shut_down_emacs): + * ccl.c (ccl_driver): Remove period at end of error message. + + * config.in: Regenerate. + + * xfns.c (x_window_to_frame, x_any_window_to_frame) + (x_non_menubar_window_to_frame, x_menubar_window_to_frame) + (x_top_window_to_frame): Add Display* argument to xg_win_to_widget. + (x_create_bitmap_mask, xg_set_icon, create_frame_xic) + (xic_set_statusarea, x_window, gif_load): Formatting adjustments. + + * xterm.h (struct x_display_info): New field xg_cursor for GTK. + + * xterm.c: Add Display * to x_window_to_scroll_bar declaration. + (XTmouse_position, handle_one_xevent): Pass Display* to + x_window_to_scroll_bar. + (x_window_to_scroll_bar): Take a Display* argument. + Check that display for frame is equal to Display* argument. + (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from + x_display_info_for_display instead. Use Display in xev instead + of GDK_DISPLAY. + (x_dispatch_event): Call x_display_info_for_display. + (XTread_socket): Move GTK part out of loop. current_dpyinfo removed. + (x_connection_closed): Call xg_display_close for GTK. + (x_term_init): Call xg_display_open for additional displays. + Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor + for GTK. + + * xmenu.c (single_menu_item, mouse_position_for_popup) + (x_activate_menubar): Formatting adjustments. + + * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting + adjustments. + + * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open) + (xg_display_close, xg_create_default_cursor) + (xg_get_gdk_pixmap_and_mask): New functions for multiple display + handling. + (xg_left_ptr_cursor): Remove. + (xg_set_cursor): Change cursor to GdkCursor*. Do not create + cursor here. + (xg_win_to_widget): Take Display* argument, call + gdk_xid_table_lookup_for_display. + (xg_create_frame_widgets, xg_get_file_name, create_menus) + (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen. + (xg_create_widget, xg_create_scroll_bar): Use xg_cursor + in FRAME_X_DISPLAY_INFO. + (xg_get_scroll_id_for_window): Take Display* argument. + (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask. + (xg_initialize): Remove xg_left_ptr_cursor. + + * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add + Display* argument. + (xg_display_open, xg_display_close, xg_create_default_cursor): Declare. + +2003-11-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_detect_focus_change): Do not change focus frame for + Enter/LeaveNotify if the current focus frame has explicit focus. + +2003-11-14 Kim F. Storm <storm@cua.dk> + + * dispnew.c (update_text_area): Fix redisplay error when hscroll + is active and first glyph is only partially visible. + +2003-11-13 Kenichi Handa <handa@m17n.org> + + * xdisp.c (select_frame_for_redisplay): New function. + (redisplay_internal): Record also selected_frame for + unwind_redisplay. Call select_frame_for_redisplay before + redrawing each frame. + (unwind_redisplay): Argument changed to a cons. + +2003-11-12 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Fstring_to_multibyte): Doc fix. + +2003-11-11 Kenichi Handa <handa@m17n.org> + + * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts. + +2003-11-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_window): Set XtNx and XtNy in shell widget for + program specified positions. + +2003-11-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E. + +2003-11-08 Kenichi Handa <handa@m17n.org> + + * Makefile.in (lisp): Add kannada.el. + (shortlisp): Likewise. + +2003-11-07 Kenichi Handa <handa@m17n.org> + + * coding.c (coding_allocate_composition_data): + Reset coding->composing to COMPOSITION_NO. + (coding_restore_composition): Detect invalid composition data. + Give Fstring and Fvector a Lispy integer, not C int. + +2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca> + + * floatfns.c (Flogb): Don't use VALMASK. + + * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove. + * m/ia64.h (VALBITS, XINT, XUINT): Remove. + + * lisp.h (XINT): Move the cast to clarify what is going on. + (GCTYPEMASK, XSETTYPE): Remove. + (XGCTYPE): Make it an alias of XTYPE. + +2003-11-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_term_init): Fix formatting. + +2003-11-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.h (xg_have_tear_offs): Declare. + (xg_keep_popup, xg_did_tearoff): Remove. + + * gtkutil.c: Remove variable xg_did_tearoff. + (xg_have_tear_offs): New function. + (tearoff_remove): Just decrease xg_detached_menus. + (tearoff_activate): Increase xg_detached_menus and call + tearoff_remove when tearoff is removed. + (xg_keep_popup): Remove function. + (create_menus): Give add_tearoff_p as argument to recursive + call to create_menus. + (xg_create_widget): Use variables instead of multiple + strcmp. Tell create_menus to create tear off only for + menu bar menus. + (xg_update_menubar): Change title for a detached menu also. + (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless + of deep_p. + (xg_initialize): Initialize xg_detached_menus, remove + initialization of xg_did_tearoff. + + * xmenu.c (set_frame_menubar): For GTK, set deep_p if + xg_have_tear_offs returns non-zero. + (create_and_show_popup_menu): Remove setting of xg_did_tearoff and + call to xg_keep_popup. + +2003-11-01 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (XTread_socket): Handle menubar selection and grow + window only for mouseDown events. + +2003-10-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_term_init): For GTK part, increase x_initialized + to check for more than one display. Use error instead of return 0. + +2003-10-31 Andrew Choi <akochoi@shaw.ca> + + * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando). + (copy_dysymtab): Call it. + +2003-10-31 Luc Teirlinck <teirllm@auburn.edu> + + * eval.c (Fdefvaralias): Doc fix. + +2003-10-26 Luc Teirlinck <teirllm@auburn.edu> + + * data.c (Fsetplist): Doc fix. + +2003-10-14 Lute Kamstra <lute@gnu.org> + + * window.c (Fset_window_fringes): Clarify docstring. + +2003-10-14 Kim F. Storm <storm@cua.dk> + + * window.c (Fset_window_margins): Simplify arg checking. + +2003-10-13 Richard M. Stallman <rms@gnu.org> + + * regex.c (MAX_BUF_SIZE): Reduce to 2**15. + (print_partial_compiled_pattern): Replace assert with a printout. + (skip_noops, mutually_exclusive_p): Change args, values to re_char *. + + * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full. + + * window.c (Fset_window_margins): Allow only integers as args. + (syms_of_window) <special-display-buffer-names, + special-display-regexps>: Doc fixes. + +2003-10-13 Lute Kamstra <lute@gnu.org> + + * window.c (Fset_window_fringes): Elaborate docstring. + +2003-10-12 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (XTread_socket): Call DragWindow only for mouseDown events. + + * s/darwin.h (GC_MARK_STACK): Define. + +2003-10-12 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * window.c (shrink_windows): New function. + (size_window): Call shrink_windows to calculate window sizes when + shrinking frame with more than one window. + +2003-10-12 Kim F. Storm <storm@cua.dk> + + * xdisp.c (compute_fringe_widths): Doc fix. + +2003-10-08 Kenichi Handa <handa@m17n.org> + + * coding.c (Fcoding_system_p): Return t for auto-loading coding system. + +2003-10-07 Kenichi Handa <handa@m17n.org> + + * coding.c (Qcoding_system_define_form): New variable. + (syms_of_coding): Intern and staticpro it. + (Fcheck_coding_system): Try to autoload the definition of + CODING-SYSTEM. + +2003-10-05 Luc Teirlinck <teirllm@auburn.edu> + + * fns.c (Frequire): Doc fix. + +2003-10-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (Fx_send_client_event): New function as a base for + manipulating extended window manager hints. + (Fx_send_client_event): Remove unused variable s. + + * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move, + that function is removed. + + * xterm.c (x_set_offset): Use move_offset_left/top instead of + x/y_pixels_outer_diff. + (x_check_expected_move): Calculate move_offset_left/top. + + * xterm.h (struct x_output): New members: move_offset_top/left. + + * frame.c (x_set_frame_parameters): Remove x_fullscreen_move, + call x_set_offset directly. + + * frame.h (enum): FULLSCREEN_MOVE_WAIT removed. + + * frame.c (Fdelete_frame): Free decode_mode_spec_buffer. + + * xterm.c (x_delete_display): Free font names and font_encoder + in dpyinfo->font_table. + + * xfns.c (Fx_close_connection): Only call XFreeFont here. + Move xfree of font names to x_delete_display. + + * xterm.h (struct x_display_info): New member, wm_type. + (struct x_output): New members, expected_top/left and + check_expected_move. + + * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify + is received. + (handle_one_xevent): Rename x_check_expected_move from + x_check_fullscreen_move. + (x_set_offset): Only add WM decoration sizes to modified_top/left + for X_WMTYPE_A. Set check_expected_move when WM type is unknown. + (x_check_expected_move): Rename from x_check_fullscreen_move. + Removed fullscreen specific code. Use check_expected_move, + expected_left/top instead. Also, set wm_type. + (x_term_init): Initialize wm_type to unknown. + + * frame.c (x_fullscreen_move): Remove addition of WM decoration + sizes to move_x/y. + +2003-10-03 Kenichi Handa <handa@m17n.org> + + * macterm.c (x_load_font): Clear all members of FONTP before start + filling them. + +2003-10-02 Kenichi Handa <handa@m17n.org> + + * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL + before calling find_ccl_program_func. Call find_ccl_program_func + only when fontp->font_encoder is not NULL. + + * xterm.c (x_load_font): Clear all members of FONTP before start + filling them. + +2003-10-03 John Paul Wallington <jpw@gnu.org> + + * keymap.c (map_keymap): Don't abort when binding is a vector. + +2003-10-02 Jason Rumney <jasonr@gnu.org> + + * makefile.w32-in (emacs.o, coding.o, bytecode.o): + Sync dependencies with Makefile.in. + (alloca.o): Remove. + + * w32fns.c (w32_load_system_font): Clear all members of FONTP before + filling them. + + * w32bdf.c (w32_load_bdf_font): Likewise. + +2003-09-30 Richard M. Stallman <rms@gnu.org> + + * term.c (set_tty_color_mode): Calculate current_mode_spec + regardless of value of VAL. + + * intervals.c (graft_intervals_into_buffer): + Set BUF_INTERVALS (buffer)->up_obj when appropriate. + Handle over_used when splitting UNDER. + +2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * regex.c (regex_compile): Free the stack when returning from function. + +2003-09-28 Kenichi Handa <handa@m17n.org> + + * fontset.c (Finternal_char_font): Change return value to + cons (FONT-NAME . GLYPH-CODE). + +2003-09-28 Eli Zaretskii <eliz@gnu.org> + + * term.c (tty_setup_colors): Treat any negative argument as -1. + +2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change) + + * process.c (send_process): Delete unused temp_buf. + +2003-09-26 Dave Love <fx@gnu.org> + + * xterm.c (x_bitmap_mask): Declare. + +2003-09-25 Dave Love <fx@gnu.org> + + * Makefile.in (fns.o): Depend on md5.h. + +2003-09-25 Kim F. Storm <storm@cua.dk> + + * window.c (set_window_buffer): Fix redisplay problems when + switching between buffers with different display margin widths. + +2003-09-23 Kim F. Storm <storm@cua.dk> + + * process.c (set_socket_option): Fix :bindtodevice option. + (Fset_network_process_option): Update process contact list when + setting option succeeds. + (Fmake_network_process): Doc fix. + +2003-09-23 Dave Love <fx@gnu.org> + + * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros. + +2003-09-22 Eli Zaretskii <eliz@gnu.org> + + * term.c (set_tty_color_mode): Use INTEGERP to test whether a + color mode is an integer number (it could be -1). + +2003-09-22 Richard M. Stallman <rms@gnu.org> + + * intervals.c (graft_intervals_into_buffer): Correct the main loop + in the case where OVER is longer than UNDER. + +2003-09-22 Masatake YAMATO <jet@gyve.org> + + * window.c (Fset_window_scroll_bars): Validate the value of + `vertical_type'. + +2003-09-21 Kim F. Storm <storm@cua.dk> + + * frame.c (Vdefault_frame_scroll_bars): New variable. + (x_set_vertical_scroll_bars): Use it instead of hardcoded values. + (syms_of_frame): DEFVAR_LISP it, and initialize according to + window-system default scroll bar position. + + * window.c (Fwindow_scroll_bars): Doc fix. + +2003-09-19 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_set_offset): Take window manager decorations into account. + +2003-09-19 Richard M. Stallman <rms@gnu.org> + + * atimer.h: Don't include lisp.h. + (P_): Define it here (as well as elsewhere). + + * print.c (Fprin1_to_string): Move the PRINTPREPARE + later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks. + + * data.c (Fvariable_binding_locus): New function. + (syms_of_data): defsubr it. + (Flocal_variable_p): Delete duplicate call to indirect_variable. + +2003-09-18 Dave Love <fx@gnu.org> + + * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h. + + * process.c (Fnetwork_interface_info): Fix type error. + (Fnetwork_interface_list): Doc fix. + (read_process_output, read_process_output): Delete unused var. + +2003-09-17 Kim F. Storm <storm@cua.dk> + + * process.c (Fnetwork_interface_list, Fnetwork_interface_info): + Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns. + (Fnetwork_interface_info): Check that ifreq struct has required + fields before accessing them; this requires that those fields are + defined as macros, which may be too restrictive on some platforms, + but it is better than failing on other platforms. + (syms_of_process): Only defsubr above fns when included. + +2003-09-17 Dave Love <fx@gnu.org> + + * unexalpha.c: Don't include varargs.h. + +2003-09-17 Kim F. Storm <storm@cua.dk> + + * process.c (Fset_process_sentinel): Add sentinel to childp plist + for network process. + (socket_options): Add `:' prefix to option names. Add optbit field. + (set_socket_option): Remove no_error arg and special handling of s < 0. + Return 1<<optbit for known option, 0 for unknown. + Do not interpret 0 as false for boolean option (only nil). + Pass failed option and value to report_file_error. + (Fset_network_process_options): Replace by Fset_network_process_option. + (Fset_network_process_option): New function to set just one option. + (Fmake_network_process): Allow :coding arg to be a cons. + Allow :server arg to be an integer specifying backlog size. + Remove :options arg, and allow options to be specified directly + as :KEY, VALUE pairs. Parse these options before binding socket. + As before, :reuseaddr t is default for a server process, but this + can now be disabled by specifying :reuseaddr nil. + (Fnetwork_interface_info): Rename from Fget_network_interface_info. + (init_process): Availability of network options is now checked with + simpler syntax (featurep 'make-network-process :OPTION); use loop to + setup features. + (syms_of_process): Fix defsubr's for the replaced functions. + +2003-09-16 Dave Love <fx@gnu.org> + + * Makefile.in: Depend on coding.h. + +2003-09-14 Kim F. Storm <storm@cua.dk> + + * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h. + (Fnetwork_interface_list, Fget_network_interface_info): New defuns. + (syms_of_process): Defsubr them. + + * config.in: Regenerate. + +2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca> + + * m/sr2k.h (XMARKBIT, XUNMARK): Remove. + * m/news-r6.h (XUNMARK): Remove. + * m/mips.h (XUNMARK): Remove. + * m/mips-siemens.h (XUNMARK): Remove. + * m/iris4d.h (XUNMARK): Remove. + * m/hp800.h (XMARKBIT, XUNMARK): Remove. + +2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca> + + * lisp.h (VALBITS): Don't remove 1 for the markbit. + (union Lisp_Object): Use unsigned int for types. Remove markbit. + (MARKBIT): Remove 1 from VALBITS so we still use same old val. + (XTYPE): Use unsigned right-shift. + (XMARKBIT, XMARK, XUNMARK): Remove. + + * alloc.c (init_intervals, init_symbol, init_marker): + Don't preallocate anything. + (Fgarbage_collect, mark_object): Ignore the markbit. + + * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit. + +2003-09-08 Lute Kamstra <lute@gnu.org> + + * xdisp.c (pint2hrstr): New function. + (decode_mode_spec): Add `%i' and `%I' specs. + * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs + for `mode-line-format'. + +2003-09-07 Andreas Schwab <schwab@suse.de> + + * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to + avoid warning. + +2003-09-07 Eli Zaretskii <eliz@gnu.org> + + * editfns.c (region_limit): Support any non-zero value of BEGINNINGP. + +2003-09-03 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01 + change (superseded by 2002-08-30 change); the default blink-off + cursor is now again "no cursor". + +2003-09-01 Jason Rumney <jasonr@gnu.org> + + * makefile.w32-in (alloca.o): Remove. + (coding.o): Depend on intervals.h + (emacs.o, bytecode.o): Depend on window.h. + +2003-09-01 Dave Love <fx@gnu.org> + + * Makefile.in (alloca.o): Remove commands. + (coding.o): Depend on intervals.h composite.h window.h. + (emacs.o): Depend on window.h keyboard.h keymap.h. + (gtkutil.o): Depend on keyboard.h charset.h coding.h. + (bytecode.o): Depend on window.h. + +2003-08-31 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_per_char_metric): Allow cached metrics to be + returned even when font_type is unknown. + + * xdisp.c (init_iterator): Remove old WINDOWSNT conditional. + +2003-08-30 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_term_init): Initialize new fields in x_display_info. + + * xterm.h (struct x_display_info): Add red/green/blue_bits and + *_offset. + + * xfns.c (lookup_rgb_color): Use new fields in x_display_info to + calculate pixel value. + +2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de> + + * xdisp.c (redisplay_internal): Fix change of 2003-04-30. + Don't tell redisplay display is accurate when it's actually been + paused for pending input. + +2003-08-29 Richard M. Stallman <rms@gnu.org> + + * dispnew.c (adjust_glyph_matrix): Call window_box + whenever W is nonzero. + + * data.c (Fmake_variable_buffer_local, Fmake_local_variable) + (Fkill_local_variable, Fmake_variable_frame_local) + (Flocal_variable_p, Flocal_variable_if_set_p): + Use indirect_variable to trace thru variable aliases. + + * config.in: Updated. + + * callint.c (Fcall_interactively): Save and restore + Vthis_command, Vthis_original_command, real_this_command, + and current_kboard->Vlast_command. + + * abbrev.c (Fexpand_abbrev): Insert before deleting. + +2003-08-29 Gerd Moellmann <gerd@gnu.org> + + * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially. + +2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change) + + * coding.c (decode_coding_iso2022): Initialize local variable c2. + (decode_coding_sjis_big5): Likewise. + +2003-08-27 Jason Rumney <jasonr@gnu.org> + + * w32.c (sys_pipe): Protect against file descriptor overflow. + + * w32fns.c (syms_of_w32fns): Remove non-existent functions. + + * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment. + +2003-08-26 Terje Rosten <terjeros@phys.ntnu.no> + + * xfns.c (Vgtk_version_string): New variable. + (syms_of_xfns): DEFVAR_LISP it. Provide gtk. + +2003-08-24 Eli Zaretskii <eliz@gnu.org> + + * term.c (term_init): Remove `const' from buffer_size's declaration. + + * Makefile.in (msdos.o): Depend on intervals.h. + + * msdos.c: Include intervals.h, since STRING_INTERVALS requires that. + +2003-08-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h (struct x_display_info): New fields: client_leader_window + and Xatom_wm_client_leader. + + * xterm.c (x_initialize): Move call to x_session_initialize to ... + (x_term_init): ... here. Initialize client_leader fields in dpyinfo. + + * xsmfns.c (create_client_leader_window): New function. + (x_session_initialize): Call create_client_leader_window, take + dpyinfo as argument. + + * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER. + + * Makefile.in (xsmfns.o): Add more depenedencies. + +2003-08-21 Dave Love <fx@gnu.org> + + * m/iris4d.h: Use _MIPS_SZLONG, not _LP64. + +2003-08-21 Kenichi Handa <handa@m17n.org> + + * term.c (term_init): Fix previous change; don't rely on the + length of `buffer' if TERMINFO is defined. + +2003-08-20 Dave Love <fx@gnu.org> + + * atimer.h: Include lisp.h. + + * lisp.h (EMACS_LISP_H): New. + (popup_activated_flag): Don't declare. + + * alloca.c: Some merging with gnulib. Change logic and doc + concerning (x)malloc/(x)free -- no longer Emacs-specific. + [DO_BLOCK_INPUT]: Don't include lisp.h. + (xmalloc, xfree): Declare. + (malloc): Don't declare. + + * Makefile.in (LWLIB_OPTIONS): Remove (unused). + (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on + atimer.h, blockinput.h. + + * alloc.c (lisp_align_malloc): Change type of `aligned'. + + * alloca.s: Remove. + +2003-08-19 Gerd Moellmann <gerd@gnu.org> + + * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO, + use -lncurses. + + * term.c (term_init): Use a buffer of size 4096 for tgetent since + FreeBSD returns something longer than 2044. Abort if the end of + the buffer is overwritten. + +2003-08-19 Miles Bader <miles@gnu.org> + + * xterm.c (x_term_init): Correctly use result of Ffile_readable_p. + +2003-08-19 Gerd Moellmann <gerd@gnu.org> + + * alloc.c (lisp_align_malloc): Check for memory full when + allocating ablocks, which also avoids freeing a pointer into an + ablocks structure. + + * puresize.h (BASE_PURESIZE): Increase to 1100000. + + * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally. + +2003-08-16 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fencode_time): Doc fix. + +2003-08-16 David Ponce <david@dponce.com> + + * fileio.c (Fwrite_region): Fix conditional expression to issue + the right message. + +2003-08-16 Juri Linkov <juri@jurta.org> + + * syntax.c (Fforward_word): Argument changed to optional. + Set default value to 1. + +2003-08-15 Kenichi Handa <handa@m17n.org> + + * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not + what autoscaled. + (best_matching_font): Once we find a better scalable font, set + non_scalable_has_exact_height_p to 1. + (try_font_list): Call try_alternative_families to try any family + with the given registry. + +2003-08-09 Andreas Schwab <schwab@suse.de> + + * alloc.c (mark_object): Handle Lisp_Misc_Save_Value. + + * print.c (print_string): Fix printing of multibyte string with + nontrivial printcharfun. + +2003-07-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2. + + * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds. + +2003-07-31 Kenichi Handa <handa@m17n.org> + + * process.c (read_process_output): Return the actually read bytes + instead of the result of decoding. + +2003-07-31 Kenichi Handa <handa@m17n.org> + + * xterm.h (struct x_bitmap_record): New member have_mask. + + * xfns.c (x_create_bitmap_from_data): Initialize have_mask member + to 0. + (x_create_bitmap_from_file): Likewise. + (x_destroy_bitmap): Check have_mask member before freeing a mask. + (x_destroy_all_bitmaps): Likewise. + (x_create_bitmap_mask): Set have_mask member to 1. + +2003-07-30 Richard M. Stallman <rms@gnu.org> + + * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change. + +2003-07-29 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_mark_data): Update calls to mark_object. + +2003-07-29 Richard M. Stallman <rms@gnu.org> + + * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy): + Conditionalize XIM code on HAVE_XIM. + + * fns.c (Fclear_string): New function. + (syms_of_fns): defsubr it. + +2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> + + * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x. + +2003-07-22 Stefan Monnier <monnier@cs.yale.edu> + + * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it. + + * buffer.c (delete_all_overlays): New function. + * buffer.h (delete_all_overlays): Declare. + * coding.c (run_pre_post_conversion_on_str): + * print.c (temp_output_buffer_setup): + * fileio.c (Finsert_file_contents): + * minibuf.c (get_minibuffer): Use it. + +2003-07-22 Andrew Choi <akochoi@shaw.ca> + + * unexmacosx.c (unexec_regions_sort_compare): + (unexec_regions_merge): New functions. Sort and merge unexec + regions before dumping them. + +2003-07-22 Dave Love <fx@gnu.org> + + * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h. + +2003-07-21 Stefan Monnier <monnier@cs.yale.edu> + + * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P) + (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than + MARKBIT as the gcmarkbit for strings. + +2003-07-21 Richard M. Stallman <rms@gnu.org> + + * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef. + + * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes. + (syms_of_fns): Corresponding change. + + * alloc.c (syms_of_alloc): Doc fixes. + +2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change) + + * s/netbsd.h: Use -Wl syntax. + +2003-07-17 Richard M. Stallman <rms@gnu.org> + + * xterm.c (xim_initialize): Redo 6/24 change. + +2003-07-15 Stefan Monnier <monnier@cs.yale.edu> + + * buffer.c (copy_overlays): Use EMACS_INT for positions. + (Fswitch_to_buffer): Don't signal an error when switching to the same + buffer in a dedicated window. + + * alloc.c: Use bitmaps for cons, as was done for floats. + (init_float, init_cons): Let the normal code allocate the first block. + (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size. + (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK): + New macros. + (struct cons_block): Move conses to the beginning. Add gcmarkbits. + (Fcons): Use lisp_align_malloc and CONS_UNMARK. + (live_cons_p): Check the pointer is not past the `conses' array. + (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P. + (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK. + (survives_gc_p): Use CONS_MARKED_P and simplify. + (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free. + +2003-07-13 Paul Eggert <eggert@twinsun.com> + + GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it + puts it into BSS instead, at least on Solaris 8 and 9. + This is a valid optimization, and it may occur on other platforms, + so Emacs should not assume that initializing a static variable to + zero puts it into data. + * alloc.c (pure, staticvec): + Initialize these arrays to nonzero, so that they're not + put into BSS by that optimization. + +2003-07-13 Stefan Monnier <monnier@cs.yale.edu> + + * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users. + (lisp_align_malloc): Use posix_memalign is available. + (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization. + (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK + for consistency. Update users. + +2003-07-13 Richard M. Stallman <rms@gnu.org> + + * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them. + +2003-07-13 Terje Rosten <terjeros@phys.ntnu.no> + + * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask, + and use the Gtk+ function gtk_window_icon_from_file if available. + + * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to + handle mask of bitmaps. + (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the + mask property. + (xg_set_icon): New function, wrapper for gtk_window_icon_from_file. + + * xterm.h (xg_set_icon): New function. + +2003-07-12 Paul Eggert <eggert@twinsun.com> + + * unexelf.c (unexec): Consider a section to precede the .bss + section if its addresses overlap that of .bss. + +2003-07-12 Richard M. Stallman <rms@gnu.org> + + * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g. + + * config.in (HAVE_CRTIN): Add #undef. + (INLINE): Really inline only if OPTIMIZE is defined. + + * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1, + END_FILES_1. + (START_FILES_1, END_FILES_1): New macros (conditional). + (LD_SWITCH_SYSTEM_TEMACS): Define. + + * s/openbsd.h: Don't include bsd4-3.h. + (TERMINFO): Define. + (LIBS_TERMCAP): Define. + (LD_SWITCH_SYSTEM): Define (two definitions). + + * xfns.c: Include libpng/png.h instead of png.h. + +2003-07-11 Andreas Schwab <schwab@suse.de> + + * buffer.c (modify_overlay): Update prototype. + * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete): + Likewise. + +2003-07-09 Stefan Monnier <monnier@cs.yale.edu> + + * lisp.h (VALBITS): Define in terms of GCTYPEBITS. + (struct interval): Move to intervals.h. + (struct Lisp_Marker): Use EMACS_INT for position info. + (forward_point): Remove prototype of defunct function. + (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change) + (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all) + (syms_of_textprop, set_text_properties): Remove prototypes that are + already in intervals.h. + + * intervals.h (struct interval): Move from lisp.h. + Use EMACS_INT for position and size info. + + * coding.c: Include intervals.h for Fset_text_properties. + + * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for + position and length information. + +2003-07-09 Stefan Monnier <monnier@cs.yale.edu> + + * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for + position and length information. + +2003-07-09 Stefan Monnier <monnier@cs.yale.edu> + + Change overlays_after and overlays_before so the overlays themselves + are linked into lists, rather than using cons cells. After all each + Lisp_Misc already occupies 5 words, so we can add a `next' field to + Lisp_Overlay for free and save up one cons cell per overlay (not + to mention one indirection when traversing the list of overlay). + + * lisp.h (struct Lisp_Overlay): New field `next'. + + * buffer.h (struct buffer): Change overlays_before and overlays_after + from Lisp lists of overlays to pointers to overlays. + + * buffer.c (overlay_strings, recenter_overlay_lists): + Fix typo in eassert in last commit. + (unchain_overlay): New function. + (add_overlay_mod_hooklist): Use AREF. + (copy_overlays, reset_buffer, overlays_at, overlays_in) + (overlay_touches_p, overlay_strings, recenter_overlay_lists) + (fix_overlays_in_range, fix_overlays_before, Fmake_overlay) + (Fmove_overlay, Fdelete_overlay, Foverlay_lists) + (report_overlay_modification, evaporate_overlays, init_buffer_once): + Adjust to new type of overlays_(before|after). + + * alloc.c (mark_object): Mark the new `next' field of overlays. + (mark_buffer): Manually mark the overlays_(after|before) fields. + + * coding.c (run_pre_post_conversion_on_str): + * editfns.c (overlays_around): + * xdisp.c (load_overlay_strings): + * fileio.c (Finsert_file_contents): + * indent.c (current_column): + * insdel.c (signal_before_change, signal_after_change): + * intervals.c (set_point_both): + * print.c (temp_output_buffer_setup): Use new type for + overlays_(before|after). + +2003-07-08 Stefan Monnier <monnier@cs.yale.edu> + + * buffer.c (report_overlay_modification): Don't run hooks while + traversing the list of overlays. + + * buffer.h (struct buffer): Use an int for overlay_center. + (overlays_at, evaporate_overlays, recenter_overlay_lists) + (overlay_strings, fix_overlays_before): Use EMACS_INT for positions. + + * buffer.c (reset_buffer, recenter_overlay_lists) + (adjust_overlays_for_insert, adjust_overlays_for_delete) + (fix_overlays_in_range, Fmake_overlay, Fmove_overlay) + (evaporate_overlays, init_buffer_once): Update use of overlay_center. + (overlays_at, evaporate_overlays, recenter_overlay_lists) + (overlay_strings, fix_overlays_before): Use EMACS_INT for positions. + + * xdisp.c (fast_find_position): Remove unused var. + + * cmds.c (Qexpand_abbrev): New sym. + (syms_of_cmds): Initialize it. + (internal_self_insert): Use it to call expand-abbrev. + +2003-07-09 Kim F. Storm <storm@cua.dk> + + * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs + was configured with --without-xim. + (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM. + +2003-07-07 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (reseat_1): Set it->area to TEXT_AREA. + + * alloc.c (Fgarbage_collect): Doc fix. + +2003-07-07 Nozomu Ando <nand@mac.com> + + * buffer.c (Fkill_buffer): Clear charpos cache if necessary. + +2003-07-06 Stefan Monnier <monnier@cs.yale.edu> + + * minibuf.c (read_minibuf): UNGCPRO before returning. + (Ftry_completion, Fall_completions): Doc fix. + + * alloc.c (live_float_p): Check that p is not past the `floats' array, + now that `floats' is not the last element of the struct any more. + +2003-07-06 Jason Rumney <jasonr@gnu.org> + + * w32term.h (ClipboardSequence_Proc): New type. + + * w32fns.c (clipboard_sequence_fn): New variable. + (globals_of_w32fns): Initialize it. + + * w32select.c (last_clipboard_sequence_number): New variable. + (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence + number if possible. + +2003-07-06 Stefan Monnier <monnier@cs.yale.edu> + + * m/amdx86-64.h (MARKBIT): + * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare + MARKBIT and ARRAY_MARK_FLAG any more. + + * m/hp800.h (XSETMARKBIT): + * m/sr2k.h (XSETMARKBIT): + * lisp.h (XSETMARKBIT): Remove unused macro. + + * lisp.h (mark_object): Change prototype. + + * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object. + (last_marked): Change accordingly. + (mark_interval, mark_maybe_object, mark_maybe_pointer) + (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image) + (mark_buffer): Update calls to mark_object. + + * bytecode.c (mark_byte_stack): + * fns.c (sweep_weak_table): + * keyboard.c (mark_kboards): Update calls to mark_object. + +2003-07-06 Jason Rumney <jasonr@gnu.org> + + * alloc.c (struct ablock): Only include padding when there is some. + +2003-07-04 Stefan Monnier <monnier@cs.yale.edu> + + * alloc.c (ALIGN): Add casts to simplify usage. + (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE) + (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros. + (struct ablock, struct ablocks): New types. + (free_ablock): New global var. + (lisp_align_malloc, lisp_align_free): New functions. + (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES. + (struct float_block): Reorder and add gcmarkbits. + (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX) + (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros. + (init_float, make_float): Use lisp_align_malloc. + (free_float, live_float_p): Don't use `type' any more. + (make_float): Use FLOAT_UNMARK to access to mark bit. + (mark_maybe_object, mark_maybe_pointer, survives_gc_p): + Use FLOAT_MARKED_P to access the mark bit. + (pure_alloc): Simplify use of ALIGN. + (mark_object): Use FLOAT_MARK to access the mark bit. + (gc_sweep): Use new macros to access the float's mark bit. + (init_alloc_once): Init free_ablock. + + * lisp.h (struct Lisp_Float): Remove unused field `type'. + +2003-06-27 Stefan Monnier <monnier@cs.yale.edu> + + * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros. + (GC_STRING_BYTES): Don't mask markbit (it's only used on `size'). + (allocate_buffer): Move. + (string_bytes): Don't mask markbit of `size_byte'. + (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect) + (mark_object, mark_buffer, survives_gc_p, gc_sweep): + Use the `size' field of buffers (rather than the `name' field) for + the mark bit, as is done for all other vectorlike objects. + Use the new macros to access the mark bit of vectorlike objects. + +2003-06-26 Richard M. Stallman <rms@gnu.org> + + * puresize.h (BASE_PURESIZE): Increment base size. + + * xdisp.c (fast_find_position): Enable Gerd's new definition. + + * xterm.c (xim_initialize): Undo previous change. + +2003-06-26 Stefan Monnier <monnier@cs.yale.edu> + + * alloc.c (survives_gc_p): Simplify. + + * buffer.c (set_buffer_internal_1): Test CONSP for lists. + + * window.c (Fset_window_dedicated_p): Simplify. + (display_buffer_1): Don't raise the win from which minibuf was entered. + (temp_output_buffer_show): Don't assume BEG == 1. Simplify. + (Fminibuffer_selected_window): Simplify. + + * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker. + + * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker. + (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'. + + * insdel.c (check_markers, adjust_markers_for_delete) + (adjust_markers_for_insert, adjust_markers_for_replace) + (prepare_to_modify_buffer, RESTORE_VALUE): + * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos) + (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker) + (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers): + * alloc.c (Fmake_marker, free_marker, gc_sweep): + * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte): + * editfns.c (save_excursion_restore, transpose_markers): + * window.c (delete_window): + * xdisp.c (message_dolog): Update for new types. + +2003-06-26 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfaces.c (set_font_frame_param): Set default_face_done_p to zero. + (realize_default_face): Use default_face_done_p for the force_p + argument to set_lface_from_font_name. Set default_face_done_p to one. + + * frame.c (make_frame): Initialize default_face_done_p. + + * frame.h (struct frame): Add default_face_done_p. + + * config.in: Add XRegisterIMInstantiateCallback_arg6 so it + will be defined. + +2003-06-25 Stefan Monnier <monnier@cs.yale.edu> + + * alloc.c (make_interval, Fmake_symbol, allocate_misc): + Initialize the new field `gcmarkbit'. + (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field. + (mark_interval_tree): Don't mark the tree separately from the nodes. + (UNMARK_BALANCE_INTERVALS): Don't unmark the tree. + (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect) + (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields. + + * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free) + (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd) + (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value) + (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay) + (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field. + +2003-06-24 Dave Love <fx@gnu.org> + + * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6. + + * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes + from gnulib. + +2003-06-21 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fwrite_region): Alternate messages + for append and partial write. + + * keyboard.c (read_key_sequence): When converting upcase fn key to + downcase, update fkey and keytran so `backspace' gets translated. + + * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode. + + * process.c (wait_reading_process_input): Don't signal SIGIO + in batch mode. + +2003-06-17 Kenichi Handa <handa@m17n.org> + + * Makefile.in (xselect.o): Don't depend on charset.h, coding.h, + composite.h. + + * xselect.c: Don't include charset.h, coding.h, composite.h. + (Qforeign_selection): New variable. + (syms_of_xselect): Intern and static it. + (selection_data_to_lisp_data): Return a unibyte string made from + data with `foreign-selection' text property. + +2003-06-15 Stefan Monnier <monnier@cs.yale.edu> + + * termhooks.h (EVENT_INIT): New macro. + + * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer. + + * alloc.c (mark_kboards): Move to keyboard.c. + + * keyboard.c (record_asynch_buffer_change, read_avail_input): + * xterm.c (x_dispatch_event): + * xmenu.c (find_and_call_menu_selection): + * xdisp.c (handle_tool_bar_click): + * w32menu.c (menubar_selection_callback): + * sysdep.c (kbd_input_ast, read_input_waiting): + * msdos.c (dos_rawgetc): + * macterm.c (mac_check_for_quit_char): + * macmenu.c (menubar_selection_callback): + * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized + data to kbd_buffer_store_event. + +2003-06-15 Kim F. Storm <storm@cua.dk> + + * xdisp.c (x_fix_overlapping_area): Always use area relative X + to fix redisplay problem with tall characters (such as ,AC(B). + +2003-06-13 Kai Gro,A_(Bjohann <kai.grossjohann@gmx.net> + + * fileio.c (Fcopy_file): Doc fix: copies file modes, too. + +2003-06-12 Kenichi Handa <handa@m17n.org> + + * fileio.c (Fwrite_region): Save and restore restriction. + +2003-06-12 Dave Love <fx@gnu.org> + + * alloca.c (alloca): Declare arg as size_t. + + * sysdep.c: Remove redundant include of unistd.h, stdlib.h. + Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED. + +2003-06-11 Dave Love <fx@gnu.org> + + * search.c (shrink_regexp_cache): Use xrealloc. + (syms_of_search): Use xmalloc. + +2003-06-10 Kim F. Storm <storm@cua.dk> + + * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change. + Adjust phys_cursor.x to be relative to window box, rather than + text area before checking -- to ensure cursor is redrawn when + exposing window. + Note: This also fixes a similar (older) bug if display margins + are present. + +2003-06-06 Kenichi Handa <handa@m17n.org> + + * coding.c (encoding_buffer_size): If coding->type is + coding_type_ccl, double magnification on CRLF encoding. + +2003-06-06 Jason Rumney <jasonr@gnu.org> + + * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant. + (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last. + + * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and + Mac too. + +2003-06-05 Dave Love <fx@gnu.org> + + * strftime.c: Merge changes from gnulib. + + * mktime.c (__mktime_internal): Merge changes from gnulib + involving year 69 and dst2. + + Changes to merge with gnulib version and be consistent with the + autoconf test: + + * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H. + Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION. + [HAVE_LOCALE_H]: Include locale.h. + (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale. + +2003-06-05 Kim F. Storm <storm@cua.dk> + + * window.c (coordinates_in_window): Convert X and Y to window + relative coordinates inside mode-line and header-line parts. + Convert X and Y to margin area relative coordinates inside left + and right display margin parts. + +2003-06-05 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (add_system_logical_colors_to_map): New function. + (Fx_open_connection): Use it. + +2003-06-04 Stefan Monnier <monnier@cs.yale.edu> + + * process.c (allocate_pty): Revert part of the previous patch. + (Faccept_process_output): Simplify. + +2003-06-04 Jason Rumney <jasonr@gnu.org> + + * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT. + + * keyboard.c (Qmouse_wheel, mouse_wheel_syms) + (lispy_mouse_wheel_names): Remove. + (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms. + Always define drag_and_drop_syms. + + * macterm.c (XTread_socket): Map mouse wheel events to Emacs + WHEEL_EVENT events. + +2003-06-03 Stefan Monnier <monnier@cs.yale.edu> + + * xdisp.c (update_tool_bar): Add missing UNGCPRO. + + * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local. + +2003-06-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL + menu item label. + +2003-06-03 Richard M. Stallman <rms@gnu.org> + + * window.c (Fwindow_edges): Doc fix. + (Fwindow_pixel_edges, Fwindow_inside_edges) + (Fwindow_inside_pixel_edges): New functions. + (syms_of_window): defsubr them. + + * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS) + (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros. + +2003-06-02 Stefan Monnier <monnier@cs.yale.edu> + + * dispnew.c (Fsit_for): Don't lie about the number of args. + +2003-06-02 Dave Love <fx@gnu.org> + + * callproc.c: Use HAVE_FCNTL_H, not USG5. + (syms_of_callproc) <process-environment>: Doc fix. + + * doc.c: Use HAVE_FCNTL_H, not USG5. + + * xfaces.c (font_rescale_ratio): Fix for K&R. + + * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION. + + * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H. + + * lread.c [HAVE_FCNTL_H]: Include fcntl.h. + + * gtkutil.c: Include keyboard.h, charset.h, coding.h. + (xg_create_frame_widgets): Use ENCODE_UTF_8. + + * xterm.c (Qutf_8): Move to coding.c. + + * xmenu.c (ENCODE_MENU_STRING): New. + (list_of_panes, list_of_items, digest_single_submenu, xmenu_show): + Use it. + + * coding.h (ENCODE_UTF_8): New. + (Qutf_8): Declare. + + * coding.c (Qutf_8): New. + (syms_of_coding): Intern it. + + * fns.c: Doc fixes. + +2003-06-02 Kenichi Handa <handa@m17n.org> + + * buffer.c (Fset_buffer_multibyte): Fix previous change. + +2003-06-01 Stefan Monnier <monnier@cs.yale.edu> + + * lread.c (openp): Make sure STR is a string. + +2003-06-01 David Ponce <david@dponce.com> + + * termhooks.h (enum event_kind): Add new WHEEL_EVENT event. + Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined. + + * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined. + (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise. + (discard_mouse_events): Discard WHEEL_EVENT events too. + (lispy_wheel_names, wheel_syms): New. + (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and + staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined. + (make_lispy_event): Add WHEEL_EVENT handler. + + * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT. + (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs + WHEEL_EVENT events. + +2003-05-31 John Paul Wallington <jpw@gnu.org> + + * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and + timer are in lisp/emacs-lisp. + +2003-05-31 Kenichi Handa <handa@m17n.org> + + * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed + region when a buffer is changed to unibyte. + + * charset.h (VALID_LEADING_CODE_P): New macro. + (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly. + + * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags + is nonzero, accept multibyte form of eight-bit-control chars. + (decode_composition_emacs_mule): Likewise. + (decode_coding_emacs_mule): Likewise. + (encode_coding_emacs_mule): If coding->flags is nonzero, produce + multibyte form of eight-bit-control chars. + + * fileio.c (Qauto_save_coding, auto_save_coding): New variables. + (Finsert_file_contents): If coding-system-for-read is bound to + Qauto_save_coding, use the coding system emacs-mule with special + setting for recovering a file. + (choose_write_coding_system): On auto saving, use the coding + system emacs-mule with special setting for auto saving. + (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it. + +2003-05-30 Kenichi Handa <handa@m17n.org> + + * coding.c (ccl_coding_driver): Set ccl->eight_bit_control + properly before calling ccl_driver. + + * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed. + + * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero. + (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control. + (setup_ccl_program): Initialize ccl->eight_bit_control to zero. + +2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk> + + * xfaces.c (realize_default_face): Do not abort if lface is + non-existent - reverts change from 2003-05-19. + +2003-05-29 Kenichi Handa <handa@m17n.org> + + * coding.c (decode_coding_iso2022): Pay attention to the byte + sequence of CTEXT extended segment, and retain those bytes as is. + +2003-05-28 Kenichi Handa <handa@m17n.org> + + * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change + of CODING_REPLACEMENT_CHARACTER. + (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set + CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and + check this flag on encoding. + (encode_coding_sjis_big5): + Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode. + (Fset_terminal_coding_system_internal): + Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode + instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags. + + * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from + CODING_INHIBIT_CHARACTER_SUBSTITUTION. + (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro. + +2003-05-28 Richard M. Stallman <rms@gnu.org> + + * print.c (syms_of_print) <print-escape-nonascii>: Doc fix. + + * eval.c (unbind_to): Move init of this_binding to separate statement. + +2003-05-28 Kim F. Storm <storm@cua.dk> + + * xdisp.c (expose_window): Fix error in calculation of + window relative coordinates of area to redisplay. + +2003-05-27 Jason Rumney <jasonr@gnu.org> + + * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro. + +2003-05-27 David Ponce <david@dponce.com> + + Handle W32 mouse wheel events as mouse click events, like in X. + + * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle + MOUSE_WHEEL_EVENT anymore. + + * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT. + Scrolling down/up the mouse wheel is respectively mapped to mouse + button 4 and 5. + (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs + MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as + WM_MOUSEWHEEL events. + +2003-05-27 Andreas Schwab <schwab@suse.de> + + * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix. + + * xdisp.c (try_window_id): Avoid aborting if PT is inside a + partially visible line. + + * alloc.c (Fgarbage_collect): Fix last change. + +2003-05-26 John Paul Wallington <jpw@gnu.org> + + * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default. + +2003-05-25 Stefan Monnier <monnier@cs.yale.edu> + + * window.c (Fset_window_buffer): Add type of `keep_margins'. + (Fset_window_fringes, Fset_window_scroll_bars): Declare before use. + + * window.h (window_box_text_cols): Declare. + + * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps) + (x_draw_vertical_border): Remove unused var `f'. + + * xfaces.c (build_scalable_font_name): Remove `unused var + pixel_size' warning. + + * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning. + + * unexelf.c (unexec): Remove `unused var n' warning. + + * strftime.c (my_strftime_localtime_r): Remove `defined but + unused' warning. + + * process.c (allocate_pty): Remove `unused var stb' and + `cp might be used uninitialized' warnings. + + * dispnew.c (mode_line_string): Remove unused var `f'. + + * coding.c (find_safe_codings): Remove unused var `i'. + + * bytecode.c (Fbyte_code): Remove `unused val' warning. + + * buffer.c (Fkill_buffer): Remove unused var `list'. + + * alloc.c (Fgarbage_collect): Remove `unused var tail' warning. + +2003-05-25 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * frame.c (make_frame): Condition want_fullscreen with + HAVE_WINDOW_SYSTEM. + +2003-05-25 Juanma Barranquero <lektu@terra.es> + + * window.c (Fset_window_scroll_bars): Fix typo in argument name. + (Fwindow_scroll_bars): Fix typo in docstring. + +2003-05-24 Kim F. Storm <storm@cua.dk> + + The following changes serve several purposes: + + 1) Swap the position of fringes and display margins in windows, i.e. + the fringes are now displayed between the margins and the text area + (by default). + + 2) Allow fringe and scroll bar parameters to be set per-buffer and + per-window (like display margins). Such settings are now stored + in window configurations, preserved when frames are resized, and + copied when windows are split vertically or horizontally. + Several bugs related to display margins have been fixed. + + 3) Consistently use FRAME_FONT and FRAME_FONTSET macros. + + 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code + rather than FRAME_WIDTH (FRAME_FONT (f)). + + 5) Introduce a consistent naming of variables, members and macros + depending on whether their value is measured in pixels or in + canonical columns/lines. Pixel dimensions are named *_width and + *_height, while canonical columns/lines are named *_cols and + *_lines. Pixel positions are named *_x and *_y, while column/line + positions are named *_col and *_line. + + 6) Consolidate more of the X, W32, and MAC gui code by moving + common data into struct frame, and generalize it for the non-gui + case by using suitable defaults. + + 7) Cleanup and consolidate the macros controlling frame and window + layout into frame.h and window.h, and generalize the use of the + various window_box_* functions (enhanced to handle the new fringe + position and the per-window fringe and scroll bar settings). + + * frame.h (struct frame): Rename members height to text_lines, + width to text_cols, window_height to total_lines, window_width to + total_cols, new_height to new_text_lines, new_width to + new_text_cols. All uses changed. + (struct frame): New members which consolidate common members of + x_output, w32_output, and mac_output structures: left_pos, + top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff, + win_gravity, size_hint_flags, border_width, internal_border_width, + line_height, fringe_cols, left_fringe_width, right_fringe_width, + want_fullscreen. All uses changed. + (struct frame): New member column_width contaning the canonical + column width, analogue to line_height. All uses changed. + (struct frame): Rename members scroll_bar_pixel_width to + config_scroll_bar_width, and scroll_bar_cols to + config_scroll_bar_cols. All uses changed. + (struct frame): New member scroll_bar_actual_width which + consolidates and renames the vertical_scroll_bar_extra member of + x_output, w32_output, and mac_output structures. All uses changed. + (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved + from x/w32/macterm.h files. All uses changed. Also change code + which referred to f->output_data...->pixel_height. + (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved + from x/w32/macterm.h files. All uses changed. Also change code + which referred to f->output_data...->pixel_width. + (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed. + Also change code which referred to f->height. + (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed. + Also change code which referred to f->width. + (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses + to update new_text_lines and new_text_cols members directly. + (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from + FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed. + (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from + FRAME_SCROLL_BAR_COLS. All uses changed. + (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS): + Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and + FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed. + (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH) + (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros. + (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH. + (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH. + (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG. + (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro. + (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro. + (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT. + Unconditionally return line_height member (it now has proper value + also for non-window frames). + (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally + return new column_width member (rather than the default font width). + (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH) + (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved + from x/w32/macterm.h files. Unconditionally return corresponding + member of frame structure (they now have proper values also for + non-window frames). + (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH. + Calculate return value from left and right widths. + (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return + internal_border_width member (has proper value for non-window frame). + (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X. + (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y. + (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X. + (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y. + (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW, + consolidated from xterm.h, macterm.h, and w32term.h. + (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL, + consolidated from xterm.h, macterm.h, and w32term.h. + (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from + CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h. + (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from + CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h. + (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW + consolidated from x/mac/w32term.h. + (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL + consolidated from x/mac/w32term.h. + (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from + PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h. + (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from + PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h. + + * window.h (struct window): Rename members left to left_col, + top to top_line, height to total_lines, width to total_cols, + left_margin_width to left_margin_cols, right_margin_width to + right_margin_cols, orig_height to orig_total_lines, orig_top to + orig_top_line. All uses changed. + (struct window): New members left_fringe_width, right_fringe_width, + fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type. + (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT): + New macros primarily used to simplify other macros. + (WINDOW_TOTAL_COLS): New macro. Change relevant code that + referred to XINT (w->width). + (WINDOW_TOTAL_LINES): New macro. Change relevant code that + referred to XINT (w->height). + (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that + referred to XINT (w->width) * canon_x_unit. + (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that + referred to XINT (w->height) * canon_y_unit. + (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that + referred to XINT (w->left). + (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change + all uses and code that referred to XINT (w->left) + XINT (w->width). + (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that + referred to XINT (w->top). + (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that + referred to XINT (w->top) + XINT (w->height). + (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that + referred to XINT (w->left) * canon_x_unit. + (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that + referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit. + (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that + referred to XINT (w->top) * canon_y_unit. + (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that + referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit. + (WINDOW_LEFTMOST_P): New macro. + (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN. + All uses changed. + (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN. + All uses changed. + (WINDOW_BOX_LEFT_EDGE_X): Rename from + WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h. + Do not exclude left fringe width. + (WINDOW_BOX_RIGHT_EDGE_X): Rename from + WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h. + Do not exclude fringe widths. + (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH) + (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros. + Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH, + FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and + FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings. + (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro. + (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR) + (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT) + (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT) + (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS): + New macros. Change code which referenced corresponding + FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS, + FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT, + FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT, + FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to + allow per-window scroll-bar settings. + (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros. + (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that + referred to FRAME_LEFT_SCROLL_BAR_WIDTH. + (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code + that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and + FRAME_SCROLL_BAR_WIDTH. + (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH) + (WINDOW_SCROLL_BAR_AREA_X): New macros. + (WINDOW_HEADER_LINE_HEIGHT): Rename from + WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h. + (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from + WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h. + (WINDOW_BOX_TEXT_HEIGHT): Rename from + WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h. + (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y) + (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y) + (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h. + (WINDOW_LEFT_MARGIN_WIDTH): Rename from + WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h. + (WINDOW_RIGHT_MARGIN_WIDTH): Rename from + WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h. + (window_from_coordinates): Update prototype. + (Fset_window_buffer): Update EXFUN. + (set_window_buffer): Update prototype. + + * dispextern.h (struct glyph_matrix): Rename members window_left_x + to window_left_col, window_top_y to window_top_line. All uses + changed. + (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely + use FRAME_INTERNAL_BORDER_WIDTH macro instead as + internal_border_width is now set to 0 for non-window frames. + (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT) + (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT) + (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT) + (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X) + (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y) + (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y) + (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y) + (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH) + (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P): + Move to window.h and renamed [see window.h changes]. + (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH) + (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros. + (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P): + Use WINDOW_TOTAL_LINES. + (frame_update_line_height): Remove prototype. + + * buffer.h (struct buffer): Rename members measured in columns: + left_margin_width to left_margin_cols, right_margin_width to + right_margin_cols. All uses changed. + New members left_fringe_width, right_fringe_width, + fringes_outside_margins for per-buffer fringe settings. + New members scroll_bar_width and vertical_scroll_bar_type for + per-buffer scroll bar settings. + + * buffer.c (init_buffer_once): Set buffer_defaults and + buffer_local_flags for new buffer-local variables + left_fringe_width, right_fringe_width, fringes_outside_margins, + scroll_bar_width, and vertical_scroll_bar_type. + (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro + default-* variables for them. + + * dispnew.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (mode_line_string): No need to adjust width for mode lines, as it + is already adjusted by the caller. + (marginal_area_string): Handle fringes inside/outside margins. + + * frame.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (make_frame): Initialize left_fringe_width, right_fringe_width, + fringe_cols, scroll_bar_actual_width, border_width, + internal_border_width, column_width, line_height, x_pixels_diff, + y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity + members with values suitable for a non-window frames. + + * gtkutil.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * indent.c: Make (few) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * keyboard.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (make_lispy_event): Use window positions returned from + window_from_coordinates when constructing the lisp event for + MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating + (incorrect) values locally. + (make_lispy_movement): Use window positions returned from + window_from_coordinates when constructing the lisp event, rather + than calculating (incorrect) values locally. + + * scroll.c: Make (some) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and + scroll-bars. + + * sysdep.c: Make (few) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * term.c: Make (some) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * widget.c: Make (few) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * window.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (make_window): Initialize new members + left_margin_cols, right_margin_cols, left_fringe_width, + right_fringe_width, fringes_outside_margins, scroll_bar_width, + and vertical_scroll_bar_type. + (coordinates_in_window): Adapt to new fringe/margin positions + and per-window fringes and scroll-bars. + Fix bug related to incorrectly adjusting coordinates by + frame's internal_border_width (the effect normally negible since + the internal_border_width is typically 0 or 1 pixel, but very + noticeable for an internal_border_width of e.g. 25 pixels). + Upon successful return (other than ON_NOTHING), the coordinates + are now always properly converted to window relative for the + given display element. + (window_from_coordinates): Add new parameters wx and wy to + return the window relative x and y position in the returned + window and part. A null arg means, don't return the position. + All callers changed. + (adjust_window_margins): New function which may reduce the width + of the display margins if a window's text area is too small after + resizing or splitting windows. + (size_window): Fix bug that did not account for display margin + widths when checking the minimum width of a window; use + adjust_window_margins. + (set_window_buffer): Call Fset_window_fringes and + Fset_window_scroll_bars to setup per-window elements. + Add new arg KEEP_MARGINS_P. Non-nil means to keep window's + existing display margin, fringe widths, and scroll bar settings + (e.g. after splitting a window or resizing the frame). + All callers changed. + (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed. + (Fsplit_window): Duplicate original window's display margin, + fringe, and scroll-bar settings; then call Fset_window_buffer with + KEEP_MARGINS non-nil. This fixes a bug which caused a split + window to only preserve the display margins in one of the windows. + When splitting horizontally, call adjust_window_margins on both + windows to ensure that the text area of the new windows is non too + narrow. This fixes a bug which could cause Emacs to trap if the + width of the split window was less than the width of the display + margins. + (window_box_text_cols): Rename from window_internal_width. + All uses changed. Adapt to per-window fringes and scroll bars. + Fix bug that caused vertical separator to be subtracted also on + window frames. Fix another bug that did not reduce the returned + value by the columns used for display margins. + (window_scroll_line_based): Fix bug related to scrolling too much + when display margins are present (implicitly fixed by the fix to + window_box_text_cols). + (scroll_left, scroll_right): Fix bug related to scrolling too far + by default when display margins are present (implicitly fixed by + the fix to window_box_text_cols). + (struct saved_window): Rename members left to left_col, top to + top_line, width to total_cols, height to total_lines, orig_top to + orig_top_line, orig_height to orig_total_lines. All uses changed. + New members left_margin_cols, right_margin_cols, + left_fringe_width, right_fringe_width, fringes_outside_margins, + scroll_bar_width, and vertical_scroll_bar_type for saving + per-window display elements. + (Fset_window_configuration): Restore display margins, fringes, + and scroll bar settings. This fixes a bug which caused display + margins to be discarded when saving and restoring a window + configuration. + (save_window_save): Save display margins, fringes, and scroll bar + settings. This fixes a bug which caused display margins to be + discarded when saving and restoring a window configuration. + (Fset_window_margins): Do nothing if display margins are not + really changed. Otherwise, call adjust_window_margins to ensure + the text area doesn't get too narrow. This fixes a bug which + could cause Emacs to trap if setting display margins wider than + the width of the window. + (Fset_window_fringes): New defun to allow user to specifically set + this window's fringe widths and position vs. display margins. + (Fwindow_fringes): New defun to return window's actual fringe settings. + (Fset_window_scroll_bars): New defun to allow user to specifically + set this window's scroll bar width and position. + (Fwindow_scroll_bars): New defun to return window's actual scroll + bar settings. + (compare_window_configurations): Also compare display margins, + fringes, and scroll bar settings. + (syms_of_window): Defsubr new defuns for fringe and scroll bars. + + * xdisp.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (window_box_width): Adapt to per-window fringes and scroll bars, + and new fringe vs. display margin position. Note that returned + value is no longer guaranteed to be a whole multiple of the frame + column width, since per-window fringes may now be any width. + (window_box_left_offset): New function like window_box_left, but + value is relative to left border of window (rather than frame). + (window_box_right_offset): New function like window_box_right, + but value is relative to left border of window. + (window_box_left): Adapt to per-window fringes and scroll bars, + and new fringe vs. display margin position. Simplify by using + WINDOW_LEFT_EDGE_X and window_box_left_offset. + (window_box): Allow null args for unnecessary return values; + change/simplify relevant callers. + (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars, + and new fringe vs. display margin position. + Use window_box_left_offset and window_box_right_offset + (get_glyph_string_clip_rect): Adapt to per-window fringes and + scroll bars, and new fringe vs. display margin position. + Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH. + (draw_fringe_bitmap): Rework to handle per-window fringes and new + fringe vs. display margin position. + (hscroll_window_tree): Use window_box_width instead of window_box. + (redisplay_window): Adapt to per-window scroll bars. + (draw_glyphs): Rework to handle per-window fringes and scroll + bars, and new fringe vs. display margin position. + Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left. + (x_clear_end_of_line): Adapt to per-window fringes and scroll + bars, and new fringe vs. display margin position. Fix bug which + increased total width of full_width rows by width of scroll bars + although window's total width already includes that. + (x_fix_overlapping_area): Simplify using window_box_left_offset. + (expose_area): Simplify using window_box_left_offset. + (x_draw_vertical_border): Handle per-window scroll bar settings, + mixing windows with left, right and no scroll bars. + + * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to + where it's used in x_list_fonts (for clarity). + (frame_update_line_height): Remove unused function; functionality + is now done directly when setting the default font in x_set_font. + + * xfns.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * xmenu.c: Make (some) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * xterm.h (struct x_output): Move members left_pos, top_pos, + border_width, pixel_height, pixel_width, line_height, + internal_border_width, vertical_scroll_bar_extra, + left_fringe_width, right_fringe_width, fringe_cols, + fringes_extra, win_gravity, size_hint_flags, want_fullscreen, + x_pixels_diff, and y_pixels_diff to struct frame (frame.h). + (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h. + (FRAME_DEFAULT_FONT_WIDTH): Remove macro. + (PIXEL_WIDTH, PIXEL_HEIGHT) + (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH) + (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to + frame.h and renamed [see frame.h changes]. + (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH) + (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL) + (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h + and renamed [see frame.h changes]. + + * xterm.c: Make (several) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars. + (scroll_run): Adapt to new fringe position. + (glyph_rect): Use window coordinates returned from + window_from_coordinates rather than frame_to_window_pixel_xy. + (XTset_vertical_scroll_bar): Adapt to per-window fringes and + scroll-bars. + (handle_one_xevent): Simplify a USE_GTK conditional. + (x_clip_to_row): Remove superfluous whole_line_p arg and code + (fringes are now inside margins, i.e. always in the clipping area). + All callers changed. + (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT + directly, then call compute_fringe_widths. Don't call + frame_update_line_height. + + * w32term.h (struct w32_output): Move members left_pos, top_pos, + border_width, pixel_height, pixel_width, line_height, + internal_border_width, vertical_scroll_bar_extra, + left_fringe_width, right_fringe_width, fringe_cols, + fringes_extra, win_gravity, size_hint_flags, want_fullscreen, + x_pixels_diff, and y_pixels_diff to struct frame (frame.h). + (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h. + (FRAME_DEFAULT_FONT_WIDTH): Remove macro. + (PIXEL_WIDTH, PIXEL_HEIGHT) + (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH) + (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to + frame.h and renamed [see frame.h changes]. + (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH) + (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL) + (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h + and renamed [see frame.h changes]. + + * w32term.c: Make (several) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars. + (glyph_rect): Use window coordinates returned from + window_from_coordinates rather than frame_to_window_pixel_xy. + (XTset_vertical_scroll_bar): Adapt to per-window fringes and + scroll-bars. + (w32_clip_to_row): Remove superfluous whole_line_p arg and code + (fringes are now inside margins, i.e. always in the clipping area). + All callers changed. + (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT + directly, then call compute_fringe_widths. Don't call + frame_update_line_height. + + * w32console.c: Make (few) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * w32fns.c: Make (many) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * w32menu.c: Make (few) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * macterm.h (struct mac_output): Move members left_pos, top_pos, + border_width, pixel_height, pixel_width, line_height, + internal_border_width, vertical_scroll_bar_extra, + left_fringe_width, right_fringe_width, fringe_cols, + fringes_extra, win_gravity, size_hint_flags, want_fullscreen, + x_pixels_diff, y_pixels_diff to struct frame (frame.h). + (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h. + (FRAME_DEFAULT_FONT_WIDTH): Remove macro. + (PIXEL_WIDTH, PIXEL_HEIGHT) + (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH) + (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to + frame.h and renamed [see frame.h changes]. + (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH) + (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL) + (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h + and renamed [see frame.h changes]. + + * macterm.c: Make (several) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars. + (glyph_rect): Use window coordinates returned from + window_from_coordinates rather than frame_to_window_pixel_xy. + (XTset_vertical_scroll_bar): Adapt to per-window fringes and + scroll-bars. + (x_clip_to_row): Remove superfluous whole_line_p arg and code + (fringes are now inside margins, i.e. always in the clipping area). + All callers changed. + (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT + directly, then call compute_fringe_widths. Don't call + frame_update_line_height. + + * macfns.c: Make (several) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0. + + * macmenu.c: Make (few) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + + * msdos.h (struct x_output): Remove members left_pos, top_pos, + and line_height, and use corresponding new members in struct + frame. All uses changed. + (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros; + superseeded by corresponding macros in frame.h. + + * msdos.c: Make (several) trivial substitutions for renamed and + new macros in dispextern.h, frame.h and window.h. + (IT_note_mouse_highlight): Use updated window coordinates returned + by window_from_coordinates, rather than adjusting them locally. + (internal_terminal_init): No need to initialize line_height here; + it now defaults to 1. + +2003-05-24 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (read_key_sequence): Adjust fkey and keytran when + dropping `down' events. + +2003-05-24 Andreas Schwab <schwab@suse.de> + + * coding.c (find_safe_codings): Fix last change. + +2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change) + + * xfns.c (x_window): Fix typo from 2003-05-21 change. + +2003-05-23 Stefan Monnier <monnier@cs.yale.edu> + + * xdisp.c (display_mode_element): Increase max depth. + Simplify the error handling code. Use a different error string + for the case where we hit the depth limit. + + * lisp.h (Vfundamental_mode_abbrev_table): Don't declare. + + * buffer.c (reset_buffer_local_variables): Remove redundant setting. + +2003-05-21 Stefan Monnier <monnier@cs.yale.edu> + + * intervals.c (get_local_map): Don't get char-property of previous + point any more: get_pos_property already does it and better. + +2003-05-21 Dave Love <fx@gnu.org> + + [Merged from unicode branch.] + + * xfns.c (x_window, x_window): Use use_xim. + + * xterm.c (use_xim): Initialize. + (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim. + (x_term_init): Maybe set use_xim. + + * xterm.h (use_xim) [HAVE_X_I18N]: Declare. + +2003-05-21 Jason Rumney <jasonr@gnu.org> + + * unexw32.c (_start): Remove _fmode initialization. + + * emacs.c (main) [WINDOWSNT]: Move it here. + +2003-05-20 Dave Love <fx@gnu.org> + + * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional. + +2003-05-19 Richard M. Stallman <rms@gnu.org> + + * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified + as value for QCfont attribute. + (realize_default_face): lface should already exist; crash if not. + Specify 0 for FORCE_P when calling set_lface_from_font_name. + + * frame.c (Fignore_event): Doc fix. + +2003-05-19 Kenichi Handa <handa@m17n.org> + + * coding.c (decode_coding_string): Handle post-read-conversion + even if the coding doesn't require decoding. + +2003-05-18 Richard M. Stallman <rms@gnu.org> + + * callproc.c (Fcall_process_region): Doc fix. + +2003-05-17 Stefan Monnier <monnier@cs.yale.edu> + + * lread.c (Fload): Print a message if package is obsolete. + + * window.c (Fselect_window): Add optional `norecord' arg. + (select_window_1): Fold into Fselect_window. + (select_window_norecord): New function. + (temp_output_buffer_show): Use it. Preserve current buffer. + + * window.h (Fselect_window): Update declaration. + + * window.c (delete_window, Fother_window, Fset_window_configuration): + * minibuf.c (read_minibuf): + * macterm.c (x_new_focus_frame): + * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame): + * callint.c (Fcall_interactively): + * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window. + + * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window. + +2003-05-17 David Kastrup <dak@gnu.org> + + * process.c (read_process_output): Back out change from 2003-03-09. + +2003-05-17 Stefan Monnier <monnier@cs.yale.edu> + + * editfns.c (get_pos_property): Don't assume that `object' = nil. + + * textprop.c (text_property_stickiness): New arg `buffer'. + + * intervals.h (text_property_stickiness): New arg `buffer'. + (get_pos_property): Declare. + + * intervals.c (get_local_map): Use get_pos_property, to obey + stickiness and empty overlays. + (create_root_interval, graft_intervals_into_buffer): Use BEG. + (merge_properties, intervals_equal, merge_properties_sticky): + Use XCAR, XCDR. + (adjust_for_invis_intang): Pass new arg to text_property_stickiness. + +2003-05-17 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (read_minibuf): If buffer is empty, record the default + in the history. + (Fminibuffer_complete_word): When deleting the overlap, take account + of its real position. + + * fns.c (map_char_table): Fix previous change. + + * syntax.c (find_defun_start): + When open_paren_in_column_0_is_defun_start, + return beginning of buffer. + + * lisp.h (map_char_table): Declare added arg. + + * fns.c (map_char_table): New arg TABLE gets the master table. + All calls changed. + Process default and inheritance, resorting to Faref if necessary. + + * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap) + (Faccessible_keymaps): Pass new arg to map_char_table. + + * fontset.c (Ffontset_info): Pass new arg to map_char_table. + + * casetab.c (set_case_table): Pass new arg to map_char_table. + + * data.c (let_shadows_buffer_binding_p): Make target of p volatile. + + * lisp.h (specbinding_func): New typedef. + (struct specbinding): Use specbinding_func, to put the `volatile' + in the right place. + + * alloc.c (Fgarbage_collect): Cast pointers into specpdl + to avoid GCC warning. + +2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> + + * fileio.c (Fdelete_file): Handle symlinks pointing to directories. + +2003-05-15 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (apply_modifiers): Don't fill the other cache. + +2003-05-14 Stefan Monnier <monnier@cs.yale.edu> + + * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users. + + * window.h (Qwindowp, Qwindow_live_p, Vwindow_list) + (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer) + (Fget_buffer_window, Fsave_window_excursion, Fsplit_window) + (Fset_window_configuration, Fcurrent_window_configuration) + (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at) + (Fpos_visible_in_window_p, mark_window_cursors_off) + (window_internal_height, window_internal_width, Frecenter) + (Fscroll_other_window, Fset_window_start, temp_output_buffer_show) + (replace_buffer_in_all_windows, init_window_once, init_window) + (syms_of_window, keys_of_window): Move from lisp.h. + * lisp.h: Move window.c declarations to window.h. + + * bytecode.c: Include window.h. + * emacs.c: Include window.h. + + * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key. + (keyremap): Add `parent' field. + (keyremap_step): Use it. Remove `parent' argument. + (read_key_sequence): Setup and use the new `parent' field. + +2003-05-11 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (adjust_point_for_property): Ensure termination. + +2003-05-10 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (follow_key): Remove dead variable `did_meta'. + (access_keymap_keyremap, keyremap_step): New funs, extracted from the + duplicated handling of function-key-map and key-translation-map + in read_key_sequence. + (read_key_sequence): Use them. + + * keyboard.c (adjust_point_for_property): Try harder to move point + to the non-sticky end of an invisible property. + + * xdisp.c (single_display_prop_intangible_p): Make `space' display + property intangible as well. + +2003-05-10 Andreas Schwab <schwab@suse.de> + + * xmenu.c (single_menu_item): Change last parameter to void* to + avoid warning. + +2003-05-09 Richard M. Stallman <rms@gnu.org> + + * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc. + Bind Qinhibit_modification_hooks to t so there will be no GC. + Rename local `tem' to `save_deactivate_mark'. + + * eval.c (specpdl_ptr): Declare volatile. + (unbind_to): Copy the whole binding and decrement specpdl_ptr + before doing the work of unbinding it. + + * lisp.h (struct specbinding): Declare elements volatile. + (specpdl_ptr): Declare volatile. + + * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling. + + * alloca.c: Test DO_BLOCK_INPUT rather than `emacs' + for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h. + +2003-05-08 Dave Love <fx@gnu.org> + + * coding.c (Vlast_coding_system_used): Doc fix. + +2003-05-07 Jason Rumney <jasonr@gnu.org> + + * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even + when system does not support them. + +2003-05-05 Stefan Monnier <monnier@cs.yale.edu> + + * fileio.c (Qwrite_region_annotate_functions): New var. + (build_annotations): Use it to process the global part of the hook. + (syms_of_fileio): Init and staticpro it. + + * keyboard.c (safe_run_hooks_error): Display a message instead of + silently ignoring the error. + +2003-05-03 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (input_available_signal): Mark static. + (menu_bar_items): Use map_keymap. + (menu_bar_one_keymap): Remove. + (menu_bar_item): Adjust arglist (for use in map_keymap). + Properly hide a second binding when not both are keymaps. + + * xmenu.c (struct skp): New struct, to pass args through map_keymap. + (single_keymap_panes): Use it and map_keymap. + (single_menu_item): Use skp as well. + + * keymap.h (map_keymap_function_t): New type. + (map_keymap): Declare. + + * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap) + (map_keymap_call, Fmap_keymap): New functions. + (syms_of_keymap): Defsubr map-keymap. + +2003-05-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (create_dialog, make_widget_for_menu_item) + (make_menu_item, create_menus, xg_update_menu_item): Don't call + ..._with_mnemonic functions for menu items. + +2003-05-01 Kenichi Handa <handa@m17n.org> + + * coding.c (coding_system_accept_latin_extra_p): Delete this + function. + (find_safe_codings): Pay attention to + the property tranlsation-table-for-encode of each codings. + (syms_of_coding): Give Qtranslation_table the extra slot number 2. + +2003-05-01 Stefan Monnier <monnier@cs.yale.edu> + + * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil. + +2003-04-30 Stefan Monnier <monnier@cs.yale.edu> + + * eval.c (unbind_to): Don't handle symbol = Qnil any more. + + * lisp.h (CHECK): Wrap args in parenthesis. + (specbind): Fix doc: symbol = Qnil is not supported any more. + + * bytecode.c (Fbyte_code) <unwind-protect>: + Use Fprogn rather than 0 and Qnil. + + * keyboard.c (parse_modifiers_uncached): Parse `down', `drag', + `double', and `triple' modifiers as well. + +2003-04-30 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (echo_char): Don't clear out a dash that follows a space. + + * alloc.c (abort_on_gc): New variable. + (Fgarbage_collect): Abort if abort_on_gc is set. + + * lisp.h (abort_on_gc): Add decl. + + * eval.c (Fsignal): Clear abort_on_gc. + + * editfns.c (Fformat): Set abort_on_gc during first scan of format. + Reinit FORMAT_START and END before second scan. + + * xdisp.c (move_it_vertically_backward): Do the final big else + even if nlines is 0. + + * xdisp.c (redisplay_internal): Finish the per-frame loop + even if redisplay is suspended by input. + +2003-04-24 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (x_list_fonts): Return all fonts that match if + maxnames = -1. + +2003-04-25 Kenichi Handa <handa@m17n.org> + + * syntax.c (skip_chars): Fix previous change. + +2003-04-24 Kenichi Handa <handa@m17n.org> + + * syntax.c (skip_chars): Make the code faster by using the common + technique of *p, *stop, and *endp. + +2003-04-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xdisp.c (update_tool_bar): BLOCK_INPUT before calling + tool_bar_items so GTK tool bar expose callback does not access items + being updated. + +2003-04-19 Stefan Monnier <monnier@cs.yale.edu> + + * eval.c (Fapply): Undo last change and add a comment about why. + +2003-04-18 Miles Bader <miles@gnu.org> + + * data.c (Faset): Calculate nbytes earlier, to satisfy the now + pickier PARSE_MULTIBYTE_SEQ. + +2003-04-17 Stefan Monnier <monnier@cs.yale.edu> + + * eval.c (For, Fand, Fprogn, un_autoload, do_autoload): + Use XCDR, XCAR, CONSP. + (Fdefmacro): Fix docstring. Use XCAR, XCDR. + (Fapply): Remove unnecessary GCPRO. + + * doc.c (Fsubstitute_command_keys): Remove spurious casts. + + * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used. + + * buffer.h: Don't hardcode BEG==1. + + * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR. + +2003-04-16 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (try_window, try_window_reusing_current_matrix): + When at end of window, set window_end_pos to Z-ZV. + + * buffer.c (Foverlay_recenter): Doc fix. + +2003-04-14 Stefan Monnier <monnier@cs.yale.edu> + + * dispnew.c (Fsit_For): Support XEmacs-style arg list. + +2003-04-14 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (mac_check_for_quit_char): Don't check more often than + once a second. + +2003-04-11 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT + specially, so that they can't hide an implicit switch-frame event. + (make_lispy_event): Handle SELECT_WINDOW_EVENT. + (head_table): Use switch-frame as event_kind for select-window. + (keys_of_keyboard): Don't bind [select-window] in special-event-map. + + * editfns.c (Fformat): Lisp_Object/int mixup. + (format2): Remove unused var numargs. + +2003-04-11 Kenichi Handa <handa@m17n.org> + + * fileio.c (Vafter_insert_file_adjust_coding_function): Delete. + (Qafter_insert_file_set_coding): New variable. + (syms_of_fileio): Initialize and staticpro it. Delete declaration + for after-insert-file-adjust-coding-function. + (Finsert_file_contents): Call Qafter_insert_file_set_coding + instead of Vafter_insert_file_adjust_coding_function. + +2003-04-11 Kenichi Handa <handa@m17n.org> + + * lisp.h (temp_echo_area_glyphs): Adjust prototype. + + * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp + string. Callers changed. + +2003-04-10 Kenichi Handa <handa@m17n.org> + + * fileio.c (Vafter_insert_file_adjust_coding_function): New variable. + (syms_of_fileio): Declare it as a lisp variable. + (Finsert_file_contents): + Call Vafter_insert_file_adjust_coding_function before calling + decode-format. + +2003-04-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to + get GtkAdjustment as widget now is a GtkRange. + + * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on + GtkRange to avoid memory leak. + +2003-04-09 Kenichi Handa <handa@m17n.org> + + * xfaces.c (Vface_font_rescale_alist): New variable. + (struct font_name): New member rescale_ratio. + (font_rescale_ratio): New function. + (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio. + (better_font_p): On comparing point sized, pay attention to + recale_ratio member of fonts. + (build_scalable_font_name): Reflect font->rescale_ratio in the + font name. + (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable. + + * lread.c (read1): Before calling index, check if the 2nd + arguemnt is in ASCII range. + +2003-04-08 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Ffile_symlink_p): Doc fix. + + * editfns.c (Fformat): Translate positions of text properties + in the format string to apply them to the result. + + * fileio.c (Finsert_file_contents): Doc fix. + (syms_of_fileio) <after-insert-file-functions>: Doc fix. + +2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change) + + * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN. + +2003-04-08 Steven Tamm <steventamm@mac.com> + + * mac.c (init_mac_osx_environment): Switch libexec and bin so + that self-contained application finds libexec files. + +2003-04-08 Kenichi Handa <handa@m17n.org> + + * coding.c (code_convert_region_unwind): + Set Vlast_coding_system_used to the argument. + (code_convert_region): If post-read-conversion function changed + the value of last-coding-sytem, keep the new value in + coding->symbol so that it won't be overridden. + (run_pre_post_conversion_on_str): Likewise. + (coding_system_accept_latin_extra_p): New function. + (find_safe_codings): Pay attention to characters registered in + latin-extra-code-table. + +2003-04-07 Thien-Thi Nguyen <ttn@gnu.org> + + * Makefile.in (md5.o): Add missing dependency info. + +2003-04-06 Richard M. Stallman <rms@gnu.org> + + * xselect.c (x_handle_selection_request): Move UNGCPRO to very end. + + * marker.c (verify_bytepos): New function. + + * intervals.c (set_intervals_multibyte_1): When becoming + multibyte, adjust right and left child sizes to a whole set of + characters. If an interval gets zero total-length, delete it. + If an interval consists of just its children, delete one of them. + + * intervals.h (CHECK_TOTAL_LENGTH): New macro. + * intervals.c: Add many calls to CHECK_TOTAL_LENGTH. + + * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted. + All calls deleted. + (lisp_malloc): Do the work here directly. + +2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change) + + * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub + char tables. + +2003-04-04 Kenichi Handa <handa@m17n.org> + + * editfns.c (Fformat): Use a copy of FORMAT string so that we can + destructively change "%S" to "%s". + +2003-04-03 Miles Bader <miles@gnu.org> + + * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is + always set. + +2003-04-01 Dave Love <fx@gnu.org> + + * xfns.c (xpm_lookup_color): Grok "opaque". + +2003-03-31 Andrew Choi <akochoi@shaw.ca> + + * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report + parent window ID. + + * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols. + + * macterm.h (struct mac_output): Define x_pixels_diff and + y_pixels_diff. + +2003-03-31 Juanma Barranquero <lektu@terra.es> + + * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on + blockinput.h and files included from it. + +2003-03-31 Kim F. Storm <storm@cua.dk> + + The following changes consolidates the common code related to + frame-parameter handling from the xfns.c, w32fns.c, and macfns.c + files into frame.c. + + * frame.c: Include blockinput.h. + (Vx_resource_name, Vx_resource_class, Qx_frame_parameter) + (Qx_resource_name, Qface_set_after_frame_default): Define vars here. + (Qauto_raise, Qauto_lower, ...): Define all frame parameter + related vars here. + (struct frame_parm_table, frame_parms): New table for describing + frame parameters and their associated Q-variable. + The order of the parameters corresponds to the sequence of the + frame_parm_handlers table in redisplay_interface. + (x_fullscreen_move, x_set_frame_parameters) + (x_report_frame_params, x_set_fullscreen, x_set_line_spacing) + (x_set_screen_gamma, x_set_font, x_set_fringe_width) + (x_set_border_width, x_set_internal_border_width, x_set_visibility) + (x_set_autoraise, x_set_autolower, x_set_unsplittable) + (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type): + Generic functions for processing of frame parameters. + (validate_x_resource_name, xrdb_get_resource, Fx_get_resource) + (display_x_get_resource, x_get_resource_string): Functions for + generic access to X resources. + (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg) + (x_default_parameter, Fx_parse_geometry): Functions for generic + access to frame parameters. + (x_figure_window_size): Generic calculation of frame size. + Fixed to add space needed for tool bar. Also setup size_hint_flags. + (syms_of_frame): Intern and staticpro frame parameter variables. + Defvar_lisp Vx_resource_class and Vx_resource_name here. + Defsubr Sx_get_resource and Sx_parse_geometry. + + * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame + parameter related vars defined in frame.c. + (EMACS_CLASS): Define here. + (enum FULLSCREEN_*): Define here. + (x_set_scroll_bar_default_width, x_wm_set_icon_position) + (x_set_offset, x_new_font, x_new_fontset): Add prototypes. + (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params) + (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font) + (x_set_fringe_width, x_set_border_width, x_set_internal_border_width) + (x_set_visibility, x_set_autoraise, x_set_autolower) + (x_set_unsplittable, x_set_vertical_scroll_bars) + (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name) + (x_figure_window_size): Add prototypes. + + * dispextern.h (frame_parm_handler): New typedef. + (struct redisplay_interface): New member frame_parm_handlers. + (enum resource_types): Move declaration here. + (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg) + (x_default_parameter): Add prototypes. + + * window.c: Remove extern decl for frame parameter vars. + (change_window_heights): New generic function; + replaces x_change_window_heights. All users changed. + + * window.h (change_window_heights): Add prototype. + + * xfaces.c: Remove extern decl for frame parameter vars. + + * xterm.h (EMACS_CLASS): Remove. Use generic define. + (struct w32_display_info): Fix type of xrdb member. + (enum FULLSCREEN_*): Remove. + Remove prototypes for generic functions (in frame.h). + + * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame + parameters now defined in frame.h and frame.c. + (Vx_resource_name): Remove. Use generic var. + (enum x_frame_parms): Remove (bogus, unused enum). + (check_x_display_info): Make non-static (for frame.c). + (struct x_frame_parm_table, x_frame_parms): Remove. + (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params) + (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font) + (x_set_border_width, x_set_internal_border_width, x_set_visibility) + (x_change_window_heights, x_set_autoraise, x_set_autolower) + (x_set_vertical_scroll_bars, x_set_scroll_bar_width) + (validate_x_resource_name, Fx_get_resource, x_get_resource_string) + (x_default_parameter, Fx_parse_geometry, x_figure_window_size): + Remove. Use generic functions instead. + (enum resource_types): Remove. + (x_set_scroll_bar_default_width): New global function (for frame.c). + (Fx_create_frame): Depend on x_figure_window_size to add space for + toolbar and setup size_hint_flags. + (x_frame_parm_handlers): New table for redisplay_interface. + (syms_of_xfns): Don't intern/staticpro removed vars. + + * xterm.c: Remove unnecessary extern declarations. + (x_fullscreen_adjust): Remove. Use generic instead. + (x_redisplay_interface): Add x_frame_parm_handlers member. + + * w32gui.h (XrmDatabase): New (dummy) typedef. + + * w32term.h (EMACS_CLASS): Remove. Use generic define. + (struct w32_display_info): Fix type of xrdb member. + (enum FULLSCREEN_*): Remove. + (x_fullscreen_adjust): Remove prototype. + + * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame + parameters now defined in frame.h and frame.c. + (Vx_resource_name): Remove. Use generic var. + (enum x_frame_parms): Remove (bogus, unused enum). + (check_x_display_info): Make non-static (for frame.c). + (struct x_frame_parm_table, x_frame_parms): Remove. + (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params) + (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font) + (x_set_border_width, x_set_internal_border_width, x_set_visibility) + (x_change_window_heights, x_set_autoraise, x_set_autolower) + (x_set_vertical_scroll_bars, x_set_scroll_bar_width) + (validate_x_resource_name, Fx_get_resource, x_get_resource_string) + (x_default_parameter, Fx_parse_geometry, x_figure_window_size): + Remove. Use generic functions instead. + (enum resource_types): Remove. + (x_set_scroll_bar_default_width): New global function (for frame.c). + (Fx_create_frame): Depend on x_figure_window_size to add space for + toolbar and setup size_hint_flags. + (w32_frame_parm_handlers): New table for redisplay_interface. + (syms_of_w32fns): Don't intern/staticpro removed vars. + + * w32term.c: Remove unnecessary extern declarations. + (x_fullscreen_adjust): Remove. Use generic instead. + (x_redisplay_interface): Add w32_frame_parm_handlers member. + + * w32reg.c (x_get_string_resource): Use XrmDatabase. + + * macgui.h (XrmDatabase): New (dummy) typedef. + + * macterm.h (EMACS_CLASS): Remove. + (struct mac_display_info): Add xrdb member. + (struct mac_output): Add want_fullscreen member. + + * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame + parameters now defined in frame.h and frame.c. + (Vx_resource_name): Remove. Use generic var. + (check_x_display_info): Make non-static (for frame.c). + (struct x_frame_parm_table, x_frame_parms): Remove. + (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params) + (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font) + (x_set_border_width, x_set_internal_border_width, x_set_visibility) + (x_change_window_heights, x_set_autoraise, x_set_autolower) + (x_set_vertical_scroll_bars, x_set_scroll_bar_width) + (validate_x_resource_name, Fx_get_resource, x_get_resource_string) + (x_default_parameter, Fx_parse_geometry, x_figure_window_size): + Remove. Use generic functions instead. + (enum resource_types): Remove. + (x_set_scroll_bar_default_width): New global function (for frame.c). + (mac_frame_parm_handlers): New table for redisplay_interface. + (syms_of_macfns): Don't intern/staticpro removed vars. + + * macterm.c: Remove unnecessary extern declarations. + (x_redisplay_interface): Add mac_frame_parm_handlers member. + + * Makefile.in (frame.o): Add dependency on blockinput.h and files + included from it (atimer.h and systime.h). + +2003-03-30 Andreas Schwab <schwab@suse.de> + + * xdisp.c (x_insert_glyphs): Fix swapped width and height + parameters for shift_glyphs_for_insert. + + * macterm.c (x_redisplay_interface): Add missing entry for + draw_vertical_window_border. + +2003-03-29 Kai Gro,A_(Bjohann <kai.grossjohann@gmx.net> + + * fileio.c (Fexpand_file_name): In the no-handler case, after + expanding, look again for a handler and invoke it. This is needed + for filenames like "/foo/../user@host:/bar/../baz" -- the first + expansion produces "/user@host:/bar/../baz" which needs to be + expanded again for the finame result "/user@host:/baz". + +2003-03-28 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size + of area to be redrawn for better performance. + +2003-03-28 Stefan Monnier <monnier@cs.yale.edu> + + * xterm.c (take_vertical_position_into_account): Remove. + (xt_action_hook): Call set_vertical_scroll_bar if needed. + (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0). + (xm_scroll_callback, x_create_toolkit_scroll_bar) + (x_set_toolkit_scroll_bar_thumb): Simplify. + (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS. + (XTread_socket): Remove unused var. + (x_make_frame_invisible): Replace goto with else. + + * xdisp.c (set_vertical_scroll_bar): New fun. + (redisplay_window): Use it. + +2003-03-26 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (update_tool_bar): Recompute tool bar if + update_mode_lines is set. Set w->update_mode_line + only if the tool bar contents actually change. + (update_menu_bar): Undo previous change. + +2003-03-26 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared. + (xg_frame_set_char_size): Calculate scroll bar width before frame + width. Call SET_FRAME_GARBAGED and cancel_mouse_face. + (xg_separator_p): Check for all documented separator types. + (xg_update_scrollbar_pos): Variable gheight not needed, use height. + (update_frame_tool_bar): Don't call gdk_window_process_all_updates. + + * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt + so tool bar gets updated. + +2003-03-26 Stefan Monnier <monnier@cs.yale.edu> + + * data.c (store_symval_forwarding): Re-instate part of the code + that was deleted with too much enthusiasm. + +2003-03-25 Stefan Monnier <monnier@cs.yale.edu> + + * data.c (store_symval_forwarding): Delete special read-only + hack for type == -1, since we now use ->constant instead. + (Fkill_local_variable): Don't use XBUFFER if it can be nil. + + * buffer.c (overlays_in): Declare static. + (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's + `constant' field rather than the variable's `type' field. + +2003-03-24 Andrew Choi <akochoi@shaw.ca> + + * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp. + + * dispextern.h [HAVE_CARBON]: Include Carbon.h. + + * fns.c [MAC_OSX]: Do not redefine vector. + + * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal. + + * macgui.h: Remove definition of No_Cursor. + + * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor. + + * xdisp.c: Define No_Cursor. + (x_write_glyphs, notice_overwritten_cursor) + (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight) + (note_mouse_highlight): Remove Mac-specific code. + (note_mouse_highlight): Use bcmp instead of == to compare Cursors. + +2003-03-24 John Paul Wallington <jpw@gnu.org> + + * xdisp.c (redisplay_window): If mini window's buffer is not + empty, then redisplay it like other windows. + +2003-03-23 Kim F. Storm <storm@cua.dk> + + * w32term.c (w32_draw_window_cursor): Fix last change. + +2003-03-23 Kenichi Handa <handa@m17n.org> + + * alloc.c (make_string_from_bytes, make_specified_string): + Add `const' for the arg CONTENTS. + + * lisp.h (make_string_from_bytes, make_specified_string): + Prototypes adjusted. + +2003-03-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif. + + * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos. + (XG_SB_RANGE): New define. + + * gtkutil.c (xg_fixed_handle_expose): New function. + (xg_create_frame_widgets): Call xg_fixed_handle_expose for + expose events. + (xg_update_scrollbar_pos): Take two more arguments, left and width + of scroll bar including borders. + Clear left and right part outside scroll bar separately as some + themes have bars that are not an even number of pixels. + Don't set reallocate_redraws, don't call + gdk_window_process_all_updates. + (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed, + so no need to change it. Calculate size and value with XG_SB_RANGE. + + * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar): + Pass left and width of scroll bar including borders to + xg_update_scrollbar_pos. + +2003-03-22 Thien-Thi Nguyen <ttn@gnu.org> + + * Makefile.in: Make sure space precedes end-of-line backslashes. + +2003-03-22 Kim F. Storm <storm@cua.dk> + + * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords): + Add generic versions here. Remove system specific versions + defined elsewhere. + + * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords): + Add prototypes. + + * xterm.h (STORE_NATIVE_RECT): New macro. + +2003-03-21 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_glyph_string_clip_rect): + Use FRAME_INTERNAL_BORDER_WIDTH. + + * dispextern.h (struct redisplay_interface): Add active_p + argument to draw_window_cursor member. All uses changed. + +2003-03-21 Kim F. Storm <storm@cua.dk> + + The following changes consolidate code related to writing and + inserting glyphs, exposing frame, the tool bar, the mouse face, + the output cursor, and help echo from xterm.c, w32term.c and + macterm.c into xdisp.c. It also generalizes the use of the + window_part enum instead of using numeric values throughout. + + * xdisp.c: Consolidate gui-independent code here. + Include keymap.h. + (Qhelp_echo): Import. + (mouse_autoselect_window, x_stretch_cursor_p): Declare here. + (help_echo_string, help_echo_window, help_echo_object) + (previous_help_echo_string, help_echo_pos): Declare here. + (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here. + (estimate_mode_line_height): Define here. Handle windowing + systems directly (without using estimate_mode_line_height_hook). + (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight): + (update_window_cursor, update_cursor_in_window_tree) + (fast_find_position, fast_find_string_pos) + (note_mode_line_highlight, note_mode_line_or_margin_highlight) + (expose_area, expose_line, expose_overlaps, expose_window) + (expose_window_tree, phys_cursor_in_rect_p): New generic versions; + declared static as they are only used locally in xdisp.c. + (draw_glyphs): Rename from x_draw_glyphs and make static. + (tool_bar_item_info, notice_overwritten_cursor): Make static. + (frame_to_window_pixel_xy, get_glyph_string_clip_rect) + (set_output_cursor, x_cursor_to, handle_tool_bar_click) + (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line): + (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor) + (display_and_set_cursor, x_update_cursor, x_clear_cursor) + (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p) + (note_mouse_highlight, x_clear_window_mouse_face) + (cancel_mouse_face, x_draw_vertical_border, expose_frame) + (x_intersect_rectangles): New generic functions for use by xdisp.c + and GUI front-ends. + (syms_of_xdisp): Initialize and staticpro help_echo* variables. + Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here. + + * dispextern.h (Display_Info): Generic typedef for *_display_info. + (NativeRectangle): Generic typedef for rectangle type. + (enum window_part): Move here from window.c. + (struct redisplay_interface): New members flush_display_optional, + define_frame_cursor, clear_frame_area, draw_window_cursor, + draw_vertical_window_border, shift_glyphs_for_insert. + Rename member clear_mouse_face to clear_window_mouse_face. + (estimate_mode_line_height_hook): Remove hook. + (auto_raise_tool_bar_buttons_p): Don't declare extern. + (tool_bar_item_info): Remove prototype. + (help_echo_string, help_echo_window, help_echo_object) + (previous_help_echo_string, help_echo_pos) + (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window): + (x_stretch_cursor_p, output_cursor): Declare extern. + (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes. + (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line) + (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor) + (display_and_set_cursor, set_output_cursor, x_cursor_to) + (x_update_cursor, x_clear_cursor, x_draw_vertical_border) + (frame_to_window_pixel_xy, get_glyph_string_clip_rect) + (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face) + (handle_tool_bar_click, clear_mouse_face, show_mouse_face) + (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles): + Add prototypes. + (mode_line_string, marginal_area_string): Fix prototypes. + + * window.c (enum window_part): Move to dispextern.h. + (coordinates_in_window): Use enum window_part member names + instead of numbers to describe return value. + (struct check_window_data): Change part member to window_part. + (check_window_containing): Return window_part unaltered. + (window_from_coordinates): Change part arg from int to enum + window_part. Allow part arg to be null. All users changed. + + * window.h (window_from_coordinates): Fix prototype. + + * term.c (estimate_mode_line_height): Move to xdisp.c. + + * keyboard.c (make_lispy_event): Use enum window_part. + + * dispnew.c (mode_line_string, marginal_area_string): Use enum + window_part instead of int in arg list. Users changed. + + * xterm.h (No_Cursor): Declare as None for X. + (struct mac_output): Replace member cross_cursor by hand_cursor. + + * xterm.c: Remove consolidated defines and code. + (BETWEEN): Remove unused macro. + (x_draw_vertical_window_border, x_shift_glyphs_for_insert) + (x_define_frame_cursor, x_clear_frame_area) + (x_draw_window_cursor): New X-specific functions for RIF. + (x_redisplay_interface): Add new members. + + * xfns.c: Setup and use hand_cursor instead of cross_cursor. + + * w32term.h (struct w32_output): Remove cross_cursor member. + + * w32term.c: Remove consolidated defines and code. + (BETWEEN): Remove unused macro. + (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert) + (w32_define_frame_cursor, w32_clear_frame_area) + (w32_draw_window_cursor): New W32-specific functions for RIF. + (w32_redisplay_interface): Add new members. + + * w32gui.h (No_Cursor): Define as 0 for W32. + (XRectangle): Add X compatible rectangle type. + (NativeRectangle): Declare as RECT for W32. + (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros. + + * w32fns.c: Remove setup of cross_cursor (already has hand_cursor). + + * w32console.c: Remove consolidated defines and code. + + * msdos.h (Display_Info): Add generic typedef. + + * msdos.c: Remove consolidated defines and code. + (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part. + + * macterm.h (struct mac_output): Replace member cross_cursor by + hand_cursor. + (activate_scroll_bars, deactivate_scroll_bars): Add prototypes. + + * macterm.c: Remove consolidated defines and code. + (BETWEEN): Remove unused macro. + (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert) + (mac_define_frame_cursor, mac_clear_frame_area) + (mac_draw_window_cursor): New Mac-specific functions for RIF. + (x_redisplay_interface): Add new members. + + * macgui.h (No_Cursor): Define as 0 for Mac. + (XRectangle): Add X compatible rectangle type. + (NativeRectangle): Declare as Rect for Mac. + (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros. + + * macfns.c (x_set_mouse_color): Setup hand_cursor. + (x_set_cursor_color): Use x_display_and_set_cursor. + + * Makefile.in (xdisp.o): Add dependency on blockinput.h and files + included from it. Add dependency on keymap.h. + + * makefile.w32-in (xdisp.o): Add dependency on keymap.h. + +2003-03-21 Kenichi Handa <handa@m17n.org> + + * fileio.c (Fexpand_file_name): Fix previous change. + +2003-03-19 Kenichi Handa <handa@m17n.org> + + * fileio.c (Ffile_name_directory): Reconstruct file name by + make_specified_string. + (Ffile_name_nondirectory, Ffile_name_as_directory) + (Fdirectory_file_name, Fexpand_file_name) + (Fsubstitute_in_file_name): Likewise. + (Fread_file_name): Compare decoded homedir with DIR and + DEFAULT_FILENAME. + + * alloc.c (make_specified_string): If NCHARS is negative, count + the number of characters. + +2003-03-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for + all widgets. + + * gtkutil.h: Removed xg_ignore_next_thumb. + +2003-03-18 Kenichi Handa <handa@m17n.org> + + * coding.c (Vchar_coding_system_table): Remove this variable. + (Vcoding_system_safe_chars): New variable. + (intersection): Remove this function. + (find_safe_codings): Don't use Vchar_coding_system_table, but try + all codings in SAFE_CODINGS. + (Ffind_coding_systems_region_internal): Adjust for the change of + find_safe_codings. Get generic coding systems from + Vcoding_system_safe_chars. + (Fdefine_coding_system_internal): New function. + (syms_of_coding): Defsubr Sdefine_coding_system_internal. + Initialize and staticpro Vcoding_system_safe_chars. + +2003-03-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values + equal old values before updating. + + * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb. + + * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb. + +2003-03-17 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos. + (xg_resize_widgets): Don't call foreach(handle_fixed_child). + (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos. + (scroll_bar_button_cb): Set bar->dragging to nil on button release. + (xg_create_scroll_bar): Pass bar to button event callback. + (xg_find_top_left_in_fixed): New function. + (xg_update_scrollbar_pos): Don't call gdk_window_clear on + whole scroll bar area. Get old position with + xg_find_top_left_in_fixed, calculate and only clear needed areas. + (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if + dragging is in progress. Calculate whole as for Motif. + Remove code that saved last values. Call gtk_range functions to + set scroll bar sizes. + + * gtkutil.h: Removed xg_ignore_next_thumb. + +2003-03-17 Juanma Barranquero <lektu@terra.es> + + * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h + and files included from it. + +2003-03-18 Stefan Monnier <monnier@cs.yale.edu> + + * keymap.c (accessible_keymaps_1): Break cycles but without preventing + multiple occurrences of the same keymap under different prefixes. + (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org. + +2003-03-16 Jason Rumney <jasonr@gnu.org> + + * w32gui.h: Use HDC for Display. + + * w32term.c (w32_encode_char): Prevent double-byte chars from + crashing Emacs. + + * w32fns.c (jpeg_load, png_load, slurp_file): Read image files + as binary. + +2003-03-16 Juanma Barranquero <lektu@terra.es> + + * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET. + +2003-03-16 Kim F. Storm <storm@cua.dk> + + The following changes consolidate some of the gui-independent + parts of the processing and drawing of "glyph strings" from + xterm.c, w32term.c, and macterm.c into xdisp.c. + + * dispextern.h (struct glyph): Reduce face_id member from 22 to + 21 bits (this reduces number of faces from 4M to 2M). + Replace W32 specific w32_font_type member (2 bits) by generic + font_type member (3 bits) for portability. + (FONT_TYPE_UNKNOWN): New define, default for font_type member. + (enum draw_glyphs_face): Define here. + (struct glyph_string): Define here. Merge W32 and X versions. + (struct redisplay_interface): New members per_char_metric, + encode_char, compute_glyph_string_overhangs, draw_glyph_string. + (VCENTER_BASELINE_OFFSET): Define here. + (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs) + (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here. + + * xdisp.c: Consolidate gui-independent "glyph string" code here. + (dump_glyph_string): Moved here. + (init_glyph_string, append_glyph_string_lists, append_glyph_string) + (prepend_glyph_string_lists, get_glyph_face_and_encoding) + (fill_composite_glyph_string, fill_glyph_string) + (fill_image_glyph_string, fill_stretch_glyph_string) + (left_overwritten, left_overwriting, right_overwritten) + (right_overwriting, get_char_face_and_encoding) + (set_glyph_string_background_width, compute_overhangs_and_x) + (append_glyph, append_composite_glyph, produce_image_glyph) + (take_vertical_position_into_account, append_stretch_glyph) + (produce_stretch_glyph): New generic functions (based on X version). + Call platform specific functions through rif. + (INIT_GLYPH_STRING): New macro, hides W32 details. + (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING) + (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING) + (BUILD_GLYPH_STRINGS): Generic macros (based on X version). + (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs) + (notice_overwritten_cursor): + Generic functions exported to platform modules. Users changed. + + * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET) + (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE) + (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): + New macros for consolidated code. + + * xterm.c: Remove consolidated defines and code. + (x_per_char_metric, x_encode_char) + (x_compute_glyph_string_overhangs): Adapt to RIF requirements. + (x_redisplay_interface): Add new members. + + * w32gui.h (Display): Add dummy typedef for consolidation. + (XChar2b): Define alias for wchar_t for consolidation. + (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros. + + * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY) + (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): + New macros for consolidation. + + * w32term.c: Remove consolidated defines and code. + (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed + to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead. + (w32_per_char_metric): Change font_type arg to int for RIF. + (w32_encode_char): Return int according to RIF requirements. + (w32_compute_glyph_string_overhangs): Adapt to RIF. + (w32_get_glyph_overhangs): New function for RIF. Uses generic + x_get_glyph_overhangs. + (w32_redisplay_interface): Add new members. + + * macgui.h (XChar2b): Move typedef here for consolidation. + (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros. + + * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY): + (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for + consolidation. + + * macterm.c: Remove consolidated defines and code. + (mac_per_char_metric): New function for RIF. + (mac_encode_char): Adapt to new RIF requirements. + (mac_compute_glyph_string_overhangs): Adapt for RIF. + (x_redisplay_interface): Add new members. + +2003-03-15 Stefan Monnier <monnier@cs.yale.edu> + + * keymap.c (Vmenu_events): New var. + (syms_of_keymap): Initialize it. + (where_is_internal): Check more carefully what is a menu event. + +2003-03-14 Richard M. Stallman <rms@gnu.org> + + * lread.c (read1): After #!, exit loop on eof. + +2003-03-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.h: Add declaration for xg_frame_cleared. + + * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK. + + * gtkutil.c (struct xg_last_sb_pos): New structure. + (handle_fixed_child): New function. + (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets + and force a redraw on them. + (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also. + (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar + so we can avoid unneeded redraws. + (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos + and force a redraw on the scroll bar. + (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar + if xg_last_sb_pos shows the positions are up to date. + (xg_frame_cleared): New function. + +2003-03-13 Kenichi Handa <handa@m17n.org> + + * coding.c (Fdetect_coding_region): Fix docstring. + (Fdetect_coding_string): Fix docstring. + +2003-03-13 Andreas Schwab <schwab@suse.de> + + * gtkutil.c: Add prototype for create_menus. + + * data.c (long_to_cons): Fix type of top. + + * xselect.c (selection_data_to_lisp_data): Use int instead of + long for an integer of size 4. + + * gtkutil.c (xg_update_frame_menubar): Add missing return value. + (xg_tool_bar_help_callback): Likewise. + +2003-03-12 Andreas Schwab <schwab@suse.de> + + * xterm.c (x_term_init) [USE_GTK]: Fix typo. + +2003-03-12 Kim F. Storm <storm@cua.dk> + + The following changes consolidate the fringe handling from + xterm.c, w32term.c, and macterm.c into xdisp.c. + + * xdisp.c: Consolidate fringe handling code here. + (left_bits, right_bits, continued_bits, continuation_bits) + (ov_bits, zv_bits): Define fringe bitmaps. + (fringe_bitmaps): New array holding fringe bitmaps. + (draw_fringe_bitmap): Draw a specific bitmap; call display + specific drawing routine via rif->draw_fringe_bitmap. + (draw_row_fringe_bitmaps): Generic replacement for + x_draw_row_fringe_bitmaps; all callers changed. + (compute_fringe_widths): Generic replacement for + x_compute_fringe_widths; all callers changed. + + * dispextern.h (enum fringe_bitmap_type): Define here. + (struct fringe_bitmap, struct draw_fringe_bitmap_params): New. + (fringe_bitmaps): Declare extern. + (struct redisplay_interface): New member draw_fringe_bitmap. + (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern. + + * xterm.c: Remove generic fringe code. + (x_draw_fringe_bitmap): Only perform actual fringe drawing. + (x_redisplay_interface): Add x_draw_fringe_bitmap member. + + * w32term.c: Remove generic fringe code. + (w32_draw_fringe_bitmap): Only perform actual fringe drawing. + (w32_redisplay_interface): Add w32_draw_fringe_bitmap member. + + * macterm.c: Remove generic fringe code. + (x_draw_fringe_bitmap): Only perform actual fringe drawing. + (x_redisplay_interface): Add x_draw_fringe_bitmap member. + +2003-03-11 Stefan Monnier <monnier@cs.yale.edu> + + * print.c (Fprin1_to_string): Return unibyte string if possible. + +2003-03-09 David Kastrup <dak@gnu.org> + + * process.c (read_process_output): We have allocated enough space + for readmax and carryover, so actually use the alloted space. + +2003-03-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c (make_lispy_event): Extend mouse_syms if needed for + toolkit scrollbar click. + + * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window + for USE_GTK. + (x_scroll_bar_handle_click): Use this function for toolkit scrollbars + also. + (handle_one_xevent): ButtonPress/Release: If event is for a toolkit + scrollbar and control is pressed, call x_scroll_bar_handle_click. + + * gtkutil.h (xg_get_scroll_id_for_window): Declare. + + * gtkutil.c (xg_get_scroll_id_for_window): New function. + (xg_tool_bar_item_expose_callback): New function. + (xg_tool_bar_expose_callback): Call update_frame_tool_bar. + (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose + on the tool bar widget. + (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback + to expose on the tool bar item widgets. + +2003-03-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of + struct image* when deciding to update (struct image* may have been + deleted from the image cache). + + * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if + the event isn't for a frame (i.e. for dialogs). + +2003-03-07 Kenichi Handa <handa@m17n.org> + + * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of + composition components reaches the limit, terminate composing. + (COMPOSITION_OK): New macro. + (detect_coding_iso2022): Use it if an escape sequence for + composition is found. + (coding_restore_composition): Adjust the number of composition + components if it is not sane. + +2003-03-06 Juanma Barranquero <lektu@terra.es> + + * w32term.h (struct w32_display_info): Add xrdb member to support + passing resources via -xrm on Windows. + + * w32term.c (w32_make_rdb): New function. + (w32_term_init): Use it to initialize xrdb member of w32_display_info + struct. Delete leftover code. + + * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check + for resources passed on the command line. + + * w32reg.c (w32_get_rdb_resource): New function. + (x_get_string_resource): Use it, so resources passed with -xrm + supercede the ones in the registry. + +2003-03-04 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_detect_focus_change): Call x_any_window_to_frame + instead of x_top_window_to_frame. + +2003-03-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options + when restarting Emacs. + +2003-03-03 Richard M. Stallman <rms@gnu.org> + + * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure + to run kill-buffer-query-functions. + (Qkill_buffer_query_functions): New var. + (syms_of_buffer): Init and staticpro it. + +2003-03-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK. + +2003-02-25 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Fix infinite loop in redisplay. + If centering point failed to make whole line visible and vscroll + is non-zero, disable vscroll and try centering point again. + + * lread.c (read1): Accept `single space' syntax like (? x). + +2003-02-25 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c (cancel_hourglass_unwind): Surround with + #ifdef HAVE_X_WINDOWS. + +2003-02-25 Kenichi Handa <handa@m17n.org> + + * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer + process only when "subprocesses" is defined. + +2003-02-24 Stefan Monnier <monnier@cs.yale.edu> + + * syntax.c (back_comment): Only check nestedness of 2nd char if needed. + +2003-02-24 Juanma Barranquero <lektu@terra.es> + + * callint.c (fix_command): Declare as static void and move before + Fcall_interactively. + + * xdisp.c (Qwhen): Declare external; it's now defined in callint.c. + (syms_of_xdisp): Don't initialize Qwhen. + +2003-02-23 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c (cancel_hourglass_unwind): New function. + (command_loop_1): Cancel hourglass with unwind-protect. + +2003-02-23 Richard M. Stallman <rms@gnu.org> + + * callint.c (fix_command): New subroutine, from Fcall_interactively. + Detect (when ... (region-beginning)) etc. + (Fcall_interactively): Call fix_command. + (Qif, Qwhen): New variables. + (syms_of_callint): Init and staticpro them. + + * regex.c (print_partial_compiled_pattern): Output to stderr. + +2003-02-23 Kai Gro,A_(Bjohann <kai.grossjohann@uni-duisburg.de> + + * dired.c (directory_files_internal): Don't expand directory. + (Fdirectory_files, Fdirectory_files_and_attributes): Do it here + instead. From Lars Hansen <larsh@math.ku.dk>. + +2003-02-22 Stefan Monnier <monnier@cs.yale.edu> + + * fns.c (string_to_multibyte): Remove unused var i. + (Flanginfo): Fix int/Lisp_Object mixup. + (void_call2): New fun. + (Fmap_char_table): Use it in place of call2. + + * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup. + + * macros.c (Fstart_kbd_macro): Remove redundant assignment. + + * keymap.c (copy_keymap_1): Make it static. + + * alloc.c (Fgarbage_collect): Don't use XSETFLOAT. + +2003-02-22 David Ponce <david@dponce.com> + + * lread.c (Fload): Don't check STRING_MULTIBYTE. + +2003-02-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * process.h: Removed subtty field from struct Lisp_Process. + + * process.c (create_process): Remove setting of subtty. + (emacs_get_tty_pgrp): New function. + (Fprocess_running_child_p, process_send_signal): + Call emacs_get_tty_pgrp instead of ioctl. + (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails. + +2003-02-21 Kai Gro,A_(Bjohann <kai.grossjohann@uni-duisburg.de> + + * keymap.c (Fdefine_key): Doc fix. + +2003-02-21 Juanma Barranquero <lektu@terra.es> + + Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>. + + * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not + POLLING_PROBLEM_IN_SELECT. + + * s/hpux11.h: Include hpux10-20.h instead of hpux10.h. + Delete #undef of POLLING_PROBLEM_IN_SELECT. + + * s/hpux10-20.h: New file. + + * process.c (wait_reading_process_input): + Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT. + +2003-02-20 Kenichi Handa <handa@m17n.org> + + * fontset.c (check_fontset_name): If NAME is nil, return the + default fontset. + (override_font_info): New function. + (Fset_fontset_font): Document that NAME nil means the default fontset. + (Ffontset_info): If FONTSET is not the default fontset, merge + FONTSET onto the copy of the default fontset, and work on that + copy. Document that NAME nil means the default fontset. + (Ffontset_font): Document that NAME nil means the default fontset. + + * process.c (setup_process_coding_systems): If the process's + in/out descriptor is -1, do nothing. + +2003-02-19 Andreas Schwab <schwab@suse.de> + + * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte): + Add prototypes. + +2003-02-19 Kenichi Handa <handa@m17n.org> + + * xfaces.c (try_alternative_families): Try all scalable fonts if + Vscalable_fonts_allowed is not Qt. + +2003-02-19 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found. + +2003-02-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_list_fonts): If maxnames is less than 0, get all font + names. + + * xfaces.c (x_face_list_fonts): Allocate struct font_name here. + (sorted_font_list): Move allocation of struct font_name to + x_face_list_fonts. + (Fx_font_family_list): Set font-list-limit to -1 to get all font names. + (Fx_list_fonts): Set maxnames to -1 to get all font names. + +2003-02-18 Kim F. Storm <storm@cua.dk> + + * lread.c (read1): Fix last change. + "`" is not always special. Allow "?" after a character constant. + +2003-02-18 Andrew Choi <akochoi@shaw.ca> + + * unexmacosx.c (copy_data_segment): Also copy __cfstring section. + +2003-02-18 Andreas Schwab <schwab@suse.de> + + * window.c (window_scroll_pixel_based): Move outside a + multi-glyph character before setting new window start. + + * xdisp.c (in_display_vector_p): New function. + * dispextern.h (in_display_vector_p): Declare. + +2003-02-18 Kim F. Storm <storm@cua.dk> + + * lread.c (read1): Fix and relax read syntax. + Recognize "[", ";", "#", and "?" after a dotted-pair dot. + Only recognize "," after dotted-pair dot if inside backquote. + Never include "`" or "," (inside backquote) in a symbol. + Allow dotted-pair dot after a character constant. + Allow "`" and "," (inside backquote) after a character constant. + +2003-02-17 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_tool_bar_expose_callback): New function. + (xg_create_tool_bar): Force style of tool bar to be horizontal with + icons. Set name of tool bar to emacs-toolbar. + (update_frame_tool_bar): Connect expose event to + xg_tool_bar_expose_callback. + +2003-02-17 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (this_command_key_count_reset): New variable. + Initiatize to 0 where this_command_key_count is set. + (read_char): Save and restore this_command_key_count_reset + around input method code. + (read_char): If this_command_key_count_reset, echo reread commands. + (Freset_this_command_lengths): Set this_command_key_count_reset to 1. + +2003-02-17 Kenichi Handa <handa@m17n.org> + + * fns.c (string_to_multibyte): Always return a multibyte string. + +2003-02-16 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_list_bdf_fonts, w32_list_fonts): + Negative max_fonts parameter means list all. + +2003-02-14 Dave Love <fx@gnu.org> + + * fns.c (Flanginfo): Doc fix. + +2003-02-13 Kim F. Storm <storm@cua.dk> + + * lread.c (read_escape): Interpret \s as a SPACE character, except + for \s-X in a character constant which still is the super modifier. + (read1): Signal an `invalid read syntax' error if a character + constant is immediately followed by a digit or symbol character. + + * search.c (Fmatch_data): Doc fix. Explicitly state that + match-data is undefined if last search failed. + + * keymap.c (Fcommand_remapping): Rename from Fremap_command. + All uses changed. + +2003-02-12 Juanma Barranquero <lektu@terra.es> + + * eval.c (Fdefmacro): Fix typo. + +2003-02-12 Kim F. Storm <storm@cua.dk> + + * macros.c (Fstart_kbd_macro): If appending, and last keyboard + macro is a string, convert meta modifiers in string when copying + the string into a vector. + +2003-02-11 Kim F. Storm <storm@cua.dk> + + * keymap.c (Fremap_command): Return nil if arg is not a symbol. + +2003-02-11 Kenichi Handa <handa@m17n.org> + + * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el. + +2003-02-10 Kim F. Storm <storm@cua.dk> + + * process.c: Doc fixes. + (syms_of_process): Add `:' prefix to QCfilter_multibyte. + +2003-02-10 Kenichi Handa <handa@m17n.org> + + * fns.c (Fstring_to_multibyte): Fix typo in the docstring. + + * process.c (QCfilter_multibyte): New variable. + (setup_process_coding_systems): New function. + (Fset_process_buffer, Fset_process_filter): + Call setup_process_coding_systems. + (Fstart_process): Initialize the member `filter_multibyte' of + struct Lisp_Process. + (create_process): Call setup_process_coding_systems. + (Fmake_network_process): New keyward `:filter-multibyte'. + Initialize the member `filter_multibyte' of struct Lisp_Process. + Call setup_process_coding_systems. + (server_accept_connection): Call setup_process_coding_systems. + (read_process_output): If the process has a filter, decide the + multibyteness of a string to given to the filter by + `filter_multibyte' member of the process. If the process doesn't + have a filter and the result of conversion is unibyte, use + Fstring_to_multibyte (not Fstring_make_multibyte) to get the + multibyte form. + (Fset_process_coding_system): Call setup_process_coding_systems. + (Fset_process_filter_multibyte): New function. + (Fprocess_filter_multibyte_p): New function. + (syms_of_process): Intern and staticpro QCfilter_multibyte. + Defsubr Sset_process_filter_multibyte and + Sprocess_filter_multibyte_p. + + * process.h (struct Lisp_Process): New member filter_multibyte. + + * lisp.h (setup_process_coding_systems): Add prototype. + + * buffer.c (Fset_buffer_multibyte): If the current buffer has a + process, update coding systems for the process. + +2003-02-09 Kenichi Handa <handa@m17n.org> + + * fns.c (string_to_multibyte): New function. + (Fstring_to_multibyte): New function. + (syms_of_fns): Defsubr it. + +2003-02-08 Andreas Schwab <schwab@suse.de> + + * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable + instead of the substitution. + +2003-02-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_make_frame_visible): Call gtk_window_deiconify. + + * xmenu.c (menu_position_func): Adjust menu popup position so that + the menu is fully visible. + +2003-02-07 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (x_text_icon, x_raise_frame, x_lower_frame) + (x_make_frame_invisible, x_wm_set_icon_position): + Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif. + + * xfns.c (x_set_name, x_set_title): Ditto. + +2003-02-04 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (echo_now): Update before_command_echo_length. + (Freset_this_command_lengths): Reset this_command_key_count etc. + immediately rather than arranging to do it later. + (before_command_key_count_1, before_command_echo_length_1) + (before_command_restore_flag): Vars deleted. + (add_command_key): Don't handle before_command_restore_flag. + (read_char, record_menu_key): Don't update before_command_key_count or + before_command_echo_length. + (read_char): Don't handle before_command_restore_flag. + + * keyboard.c (command_loop_1): Don't call adjust_point_for_property + in direct-output clauses if it wouldn't be called in the ordinary case. + +2003-02-04 Kim F. Storm <storm@cua.dk> + + * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix. + +2003-02-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (remove_from_container): Copying list is not needed. + (xg_update_menubar, xg_update_menu_item, xg_update_submenu) + (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free + on list returned from gtk_container_get_children to avoid memory leak. + +2003-02-01 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for + local malloc. + [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel + definitions in xpm.h. + (init_xpm_functions): New function. + (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm. + (init_external_image_libraries): Try to load libXpm.dll. + + * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting + timestamp. + +2003-01-31 Dave Love <fx@gnu.org> + + * syntax.c (Fskip_chars_forward) + (open-paren-in-column-0-is-defun-start): Doc fix. + +2003-01-31 Joe Buehler <jhpb@draco.hekimian.com> + + * fileio.c: Support // at start of name for Cygwin (just added proper + preprocessor tests). + + * keyboard.c: Port to Cygwin (just added proper preprocessor tests). + + * Makefile.in: Use @EXEEXT@ for Cygwin. + + * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin. + + * s/cygwin.h: Added for Cygwin port. + +2003-01-31 Juanma Barranquero <lektu@terra.es> + + * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows + when including gif_lib.h. + (init_gif_functions, init_tiff_functions): New functions. + (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for + Windows. Disable color table lookups. Call library functions + through pointers determined at runtime. + (init_external_image_libraries): Try to load libungif.dll and + libtiff.dll. + +2003-01-31 Kenichi Handa <handa@m17n.org> + + * xdisp.c (SKIP_GLYPHS): New macro. + (set_cursor_from_row): Skip all glyphs that comes from overlay string. + +2003-01-30 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (free_frame_tool_bar): Remove debug printf. + +2003-01-30 Dave Love <fx@gnu.org> + + * alloc.c (Vgc_elapsed, gcs_done): New variables. + (Fgarbage_collect): Use them. + (init_alloc, syms_of_alloc): Set them up. + +2003-01-30 Juanma Barranquero <lektu@terra.es> + + * w32fns.c (init_external_image_libraries): Add missing operator. + +2003-01-29 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as + an alternative name for jpeg.dll. + +2003-01-29 Kenichi Handa <handa@m17n.org> + + * xdisp.c (set_cursor_from_row): Pay attention to string display + properties. + +2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de> + + * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>, + <escape>. + (keycode_to_xkeysym_table): Reformat and add more comments. + (XTread_socket): Drop special case for backspace. + +2003-01-28 Andrew Choi <akochoi@shaw.ca> + + * macfns.c (x_to_mac_color): Correct the order for parsing the RGB + values in old-style RGB specs. + +2003-01-27 Juanma Barranquero <lektu@terra.es> + + * w32fns.c (init_external_image_libraries): Try alternate names for the + jpeg dll. + +2003-01-27 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (create_dialog, xg_separator_p) + (xg_item_label_same_p, xg_update_menu_item): Check for NULL string + before calling strcmp or strlen. + +2003-01-26 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display + and handle image load failure. + +2003-01-26 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper): + New functions. + (jpeg_load): Sync with xfns.c version. Adjust colors for Windows. + Disable color table lookups. Call jpeg library functions + through pointers determined at runtime. + (init_external_image_libraries): Try to load jpeg.dll. + +2003-01-25 Richard M. Stallman <rms@gnu.org> + + * lisp.h: Declare format2 instead of format1. + + * fileio.c (barf_or_query_if_file_exists): + Call format2 instead of format1. + + * editfns.c (format2): New function, replaces format1 + but takes exactly two Lisp Objects as format args. + + * buffer.c (Fkill_buffer): Call format2 instead of format1. + +2003-01-25 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h: Change to return value of x_dispatch_event to int. + + * xterm.c (x_filter_event): New function. + (event_handler_gdk, XTread_socket): Call x_filter_event. + (x_dispatch_event): Change to return value of finish. + (event_handler_gdk): Use return value from x_dispatch_event. + + * xfns.c (x_window): Call create_frame_xic for GTK version to + initialize input methods. + + * gtkutil.h: Add (void) prototypes. + + * gtkutil.c (create_menus): Remove code that puts the help menu to + the right. + +2003-01-25 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (XPutPixel): Handle monochrome images; used for masks. + [HAVE_PNG]: Sync with xfns.c version. + (png_load): Adjust colors for Windows. Use Windows + bitmaps. Disable color table lookups. + (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros. + (init_png_functions): New function. + (png_read_from_memory, png_load): Call png library functions + through pointers determined at runtime. + (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare. + (init_external_image_libraries): New function. + (init_xfns): Call it. + +2003-01-24 Andreas Schwab <schwab@suse.de> + + * minibuf.c (Fminibuffer_message): Verify type of parameter. + +2003-01-24 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_initialize): Initialize id_to_widget here instead + of static initializer. + +2003-01-24 Dave Love <fx@gnu.org> + + * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more + architectures. + + * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]: + Use __alignof__. + +2003-01-24 Kenichi Handa <handa@m17n.org> + + * keyboard.c (adjust_point_for_property): New second arg MODIFIED. + It it is nonzero, don't pretend that an invisible area doesn't exist. + (command_loop_1): Call adjust_point_for_property with proper + second arg. + +2003-01-22 Jason Rumney <jasonr@gnu.org> + + Sync changes with xterm.c and xfns.c. + + * w32term.c (x_draw_glyph_string_foreground) + (x_draw_composite_glyph_string_foreground): Implement overstriking. + + * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current + phys_cursor's hpos is overwritten. This is still not completely + correct, as it doesn't really make sense to use hpos at all to + get the cursor glyph (as that is relative to the width of the + characters on the line, which may have changed during the update). + + * w32term.c (notice_overwritten_cursor): Handle the special case + of the cursor being in the first blank non-text line at the + end of a window. + + * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor) + (x_draw_phys_cursor_glyph): Set phys_cursor_width here. + Compute from the x position returned by x_draw_glyphs. + + (x_display_and_set_cursor): Don't set phys_cursor_width here, + except for NO_CURSOR and system caret, to make phys_cursor_width + contain what its name suggests. + (notice_overwritten_cursor): Consider the cursor image erased if + the output area intersects the cursor image in y-direction. + + * w32term.c (note_mode_line_or_margin_highlight): Rename from + note_mode_line_highlight and extend. + + * w32term.c (last_window): New variable. + (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs. + (note_mouse_movement): Remove reimplemented code in #if 0. + + * w32fns.c (x_set_cursor_type): Set cursor_type_changed, + not update_mode_lines, and always set it to 1. + +2003-01-21 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (IDC_HAND): Define it if system headers don't. + +2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> + + * w32term.h (struct w32_output): New member hand_cursor. + (WM_EMACS_SETCURSOR): New message definition. + + * w32term.c (note_mode_line_highlight): Delete #if 0 to enable + function w32_define_cursor. + (note_mouse_highlight): Initialize, setup cursor accoding to mouse + position, change member name output_data.x to output_data.w32 and + add function w32_define_cursor. + (show_mouse_face): Delete #if 0 to enable function w32_define_cursor + and change member name output_data.x to output_data.w32. + (w32_initialize_display_info): + Setup dpyinfo->vertical_scroll_bar_cursor. + + * w32fns.c (Vx_hand_shape): New variable. + (w32_wnd_proc): Add message entries for WM_SETCURSOR and + WM_EMACS_SETCURSOR. + (x-create-frame): Setup Cursor types. + +2003-01-21 David Ponce <david@dponce.com> + + * w32term.c (w32_encode_char): For DIM=1 charset, set + ccl->reg[2] to -1 before calling ccl_driver. + (Sync. with xterm.c x_encode_char change by Kenichi Handa + <handa@m17n.org> on 2002-09-30.) + (w32_draw_relief_rect): Declare all args. + (w32_define_cursor): New. + + * w32fns.c (w32_load_cursor): New function. + (w32_init_class): Use it. + (x_put_x_image): Declare all args. + +2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> + + * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG. + +2003-01-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c: Must include stdio.h before termhooks.h. + +2003-01-21 Dave Love <fx@gnu.org> + + * alloc.c (Fgc_status): Print zombie list. + (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]: + Fix assignment of zombies. + (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]: + Don't take car of non-cons. + + * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define. + + * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define. + +2003-01-20 David Ponce <david@dponce.com> + + * w32menu.c (digest_single_submenu): Declare all args. + + Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org> + changes in xmenu.c: + + (parse_single_submenu): Use individual keymap's prompt + string as pane name, if there is one. + (set_frame_menubar): Save menu_items_n_panes from each call to + parse_single_submenu and use it when calling digest_single_submenu. + +2003-01-20 Steven Tamm <steventamm@mac.com> + + * macterm.c (XTread_socket): Check for valid, visible window + before sending a scroll-wheel event. + +2003-01-20 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (redisplay_window): If mini window's buffer is not + a minibuffer, then redisplay it like other windows. + +2003-01-20 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * gtkutil.c (xg_create_frame_widgets): Check if there is an + external tool bar before setting tool bar height. + +2003-01-19 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (handle_one_xevent): Surround popup_activated + with #ifdef:s for non-toolkit version. + + * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK. + (gtkutil.o): New file. + (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK. + (LIBW): Set to @GTK_LIBS@ if USE_GTK. + + * gtkutil.c: New file for GTK version. + + * gtkutil.h: New file for GTK version. + + * xterm.h: Add xt_or_gtk_widget. + Include gtk files for USE_GTK. + (struct x_output): Add toolbar_height. + (struct x_output): Add GTK widgets and Gdk size_hints. + (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET) + (FRAME_OUTER_WINDOW): New macros for USE_GTK. + (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation. + + * xterm.c: Include gtkutil.h for USE_GTK. + (free_frame_menubar): Declare extern void for USE_GTK. + (note_mouse_highlight): Check popup_activated for USE_GTK. + (xt_action_hook): Don't compile if USE_GTK. + (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK. + (xg_scroll_callback): New function. + (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK. + (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb + for USE_GTK. + (x_scroll_bar_create): Call xg_update_scrollbar_pos and + xg_show_scroll_bar for USE_GTK. + (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK. + (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK. + (event_handler_gdk): New function for USE_GTK. + (handle_one_xevent): Call xg_resize_widgets for USE_GTK. + (handle_one_xevent): Make sure widget is mapped before + calling x_real_positions for USE_GTK. + (XTread_socket): Add GTK event loop for USE_GTK. + (x_set_window_size): Call xg_frame_set_char_size for USE_GTK. + (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK. + (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK. + (x_iconify_frame): Add code for USE_GTK. + (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK. + (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version + is in gtkutil.c. + (x_term_init): Add initialization for GTK. + (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK. + + * xmenu.c: Include gtkutil.h for USE_GTK. + (Fx_popup_menu): Use current position if x and y are nil. + (single_menu_item, single_menu_item, Fx_popup_dialog): + Check for USE_GTK. + (popup_widget_loop): New function for USE_GTK. + (x_activate_menubar): Add code for USE_GTK. + (popup_activate_callback, popup_deactivate_callback) + (menu_highlight_callback, menubar_selection_callback): + Add USE_GTK versions. + (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK. + (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK. + (free_frame_menubar): Only compile if not USE_GTK. GTK version + is in gtkutil.c. + (popup_selection_callback): New version for USE_GTK. + (create_and_show_popup_menu): New fuction, one USE_GTK version and + one USE_X_TOOLKIT version. + (xmenu_show): Call create_and_show_popup_menu. + (dialog_selection_callback): New version for USE_GTK. + (create_and_show_dialog): New fuction, one USE_GTK version and + one USE_X_TOOLKIT version. + (xdialog_show): Call create_and_show_dialog. + + * xfns.c: Include gtkutil for USE_GTK. + (x_window_to_frame, x_any_window_to_frame) + (x_non_menubar_window_to_frame, x_menubar_window_to_frame) + (x_top_window_to_frame): Add code for USE_GTK. + (x_set_background_color): Call xg_set_background_color for GTK. + (x_set_menu_bar_lines): Check for USE_GTK. + (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK. + (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK. + (x_window): Call xg_create_frame_widgets for USE_GTK. + (Fx_create_frame): Check for USE_GTK. + (Fx_file_dialog): New implementation for USE_GTK. + + * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar. + (update_menu_bar): Add check for USE_GTK. + (update_tool_bar): Add check for USE_GTK and external tool bar. + (redisplay_tool_bar): Add check for USE_GTK and external tool bar. + (redisplay_internal): Add check for USE_GTK and popup_activated. + (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR. + (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR. + (display_menu_bar): Add check for USE_GTK. + + * lisp.h (Vx_resource_name): Declare extern. + + * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT + for USE_GTK. + (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK. + + * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK. + (FRAME_EXTERNAL_TOOL_BAR): New macro. + (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK. + + * fileio.c (Fread_file_name): Add check for USE_GTK. + + * dispnew.c (adjust_frame_glyphs_for_window_redisplay): + Add check for USE_GTK. + + * config.in: Added HAVE_GTK. + + * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK. + +2003-01-18 Stefan Monnier <monnier@cs.yale.edu> + + * charset.h (Funibyte_char_to_multibyte): Export. + +2003-01-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xmenu.c (mouse_position_for_popup): New function. + (Fx_popup_menu): Call mouse_position_for_popup for X and + mouse_position_hook for others. + +2003-01-17 Kim F. Storm <storm@cua.dk> + + * editfns.c (Finsert): Mention `string-make-multibyte' and + `string-as-multibyte' in doc string. + +2003-01-17 Kenichi Handa <handa@m17n.org> + + * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here. + + * editfns.c (Fformat): Convert an unibyte char argument that is + formatted by "%c" to multibyte if the total result must be a + multibyte string. + +2003-01-16 Kim F. Storm <storm@cua.dk> + + * process.c (set-process-filter): Document unibyte/multibyte-ness + of string argument. + +2003-01-16 Kenichi Handa <handa@m17n.org> + + * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros. + + * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY. + (re_search_2): Likewise. + +2003-01-15 Kenichi Handa <handa@m17n.org> + + * xdisp.c (message_dolog): Fix bug of the case that *Message* + buffer is unibyte. + +2003-01-15 Francesco Potort,Al(B <pot@gnu.org> + + * fns.c (Fsubstring): Clarify doc string. + + * textprop.c (Ftext_properties_at, Fnext_char_property_change) + (Fprevious_char_property_change) + (Fnext_single_char_property_change) + (Fprevious_single_char_property_change, Fnext_property_change) + (Fnext_single_property_change, Fprevious_property_change) + (Fprevious_single_property_change, Fadd_text_properties) + (Fput_text_property, Fset_text_properties) + (Fremove_text_properties, Fremove_list_of_text_properties) + (Ftext_property_any, Ftext_property_not_all): Clarify doc strings. + +2003-01-14 Kim F. Storm <storm@cua.dk> + + * process.h (struct Lisp_Process): New member plist replaces old + member private_vars. All uses changed. + + * process.c: Reworked 2003-01-12 change -- call a plist a plist! + (QCplist): Rename from QCvars. Change all uses. + (Fprocess_plist): Replaces Fprocess_variable. Simplified. + (Fset_process_plist): Replaces Fset_process_variable. Simplify. + (syms_of_process): Intern, staticpro, defsubr these. + (Fmake_network_process): Describe :plist arg. Remove :vars arg. + +2003-01-14 Francesco Potort,Al(B <pot@gnu.org> + + * m/delta.h: Remove (obsolete). + +2003-01-13 Francesco Potort,Al(B <pot@gnu.org> + + * fileio.c (Fdelete_directory, Fdelete_file): Document the + behaviour in front of symlinks. + (Fdelete_file): Raise an error on directories. + +2003-01-13 Dave Love <fx@gnu.org> + + * fns.c (Freverse): Use QUIT. + +2003-01-13 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (minibuffer_completion_contents): + Error if point is inside prompt. + + * keyboard.c (command_loop_1): Don't redisplay directly + if there's a post-command-hook. + + * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix. + (Fdo_auto_save): Add gcpros around Ffile_name_directory. + +2003-01-12 Kim F. Storm <storm@cua.dk> + + * process.h (struct Lisp_Process): New member private_vars. + + * process.c (QCvars): New variable. + (syms_of_process): Intern and staticpro it. + (Fset_process_contact): Removed function. + (Fprocess_variable, Fset_process_variable): New functions. + (syms_of_process): Defsubr them. + (Fstart_process): Initialize private_vars plist to nil. + (Fmake_network_process): New arg :vars to setup the private + variables for new network process. + (server_accept_connection): Copy server's private variables to + client process. + + * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious + crashes). Code rewritten and simplified. Now directly aligns the + pointer and recalculates pure_bytes_used, rather than aligning the + size and adjusting the pointer. + +2003-01-11 Kim F. Storm <storm@cua.dk> + + * process.c (Fset_process_contact): New function. + (syms_of_process): defsubr it. + (make-network-process): Update doc. + +2003-01-10 Andreas Schwab <schwab@suse.de> + + * alloc.c (pure_alloc): Correct alignment for Lisp_Floats. + Reported by Berthold Gunreben <b.gunreben@web.de>. + +2003-01-10 Dave Love <fx@gnu.org> + + * composite.c (syms_of_composite): Make composition_hash_table weak. + +2003-01-09 Kim F. Storm <storm@cua.dk> + + * process.c (Fmake_network_process): Convert new port number + to host byte order for `:service t' case. From Mario Lang. + +2003-01-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event + instead of XtAppProcessEvent. + + * xterm.c (handle_one_xevent): New function. + (x_dispatch_event): New function. + (XTread_socket): Call handle_one_xevent. + + * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New. + + * xmenu.c (Fx_popup_menu): If popping up at mouse position, + call XQueryPointer to get coordinates. + (popup_get_selection): Do not set popup_activated_flag to zero, + let popup_deactivate_callback do that. Needed for Motif. + Call x_dispatch_event instead of XtDispatchEvent. + (xmenu_show): Calculate root coordinate from frame top/left position. + +2003-01-08 Kim F. Storm <storm@cua.dk> + + * process.c (server_accept_connection): Fix recording of new + connection's local address in :local property of contact info. + (Fmake_network_process): Record local network address for new + client processes in :local property of contact info. + (format-network-address): Add arg OMIT-PORT. Change callers. + +2003-01-07 Dave Love <fx@gnu.org> + + * Makefile.in (fns.o): Depend on coding.h. + +2003-01-06 Dave Love <fx@gnu.org> + + * fns.c: Include coding.h. Use POINTER_TYPE*, not void*. + (Vlocale_coding_system): Declare. + (Qcodeset, Qdays, Qmonths, Qpaper): New. + (Flanginfo): New. + (syms_of_fns): Initialize new stuff. + +2003-01-07 Markus Rost <rost@math.ohio-state.edu> + + * minibuf.c (Fread_variable): Doc fix. + + * eval.c (Fuser_variable_p): Doc change. For custom variables, + use the same test as for custom-variable-p. + +2003-01-05 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT. + Count LAST_LINE_MISFIT in scroll margin for end of window. + Move label too_near_end before setting SCROLL_MARGIN_POS. + Set LAST_LINE_MISFIT before jumping there. + + * xdisp.c (try_scrolling): Calculate amount_to_scroll better in + scroll_conservatively case. If scrolling that much doesn't change + STARTP, move it down one line. + + * xdisp.c (redisplay_window): Pass last_line_misfit arg to + try_scrolling. Make it 1 after make_cursor_line_fully_visible fails. + + * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no + selected frame. + + * keymap.c (apropos_predicate, apropos_accumulate): Make them static. + (syms_of_keymap): Staticpro them. + (Fapropos_internal): Initialize them and clear them out. + Don't GCPRO them. + + * buffer.c (syms_of_buffer) <scroll-up|down-aggressively>: Doc fixes. + + * lisp.h: New misc type Lisp_Save_Value. + (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value. + (XSAVE_VALUE): New macro. + (struct Lisp_Save_Value): New data type. + (union Lisp_Misc): Add u_save_value alternative. + (make_save_value): Declare. + + * alloc.c (make_save_value): New function. + + * xterm.c (x_catch_errors): Save dpy using make_save_value. + (x_catch_errors_unwind): Call XSync. + +2003-01-01 Richard M. Stallman <rms@gnu.org> + + * window.c (window_scroll_pixel_based): Partially undo last change. + + * keyboard.c (command_loop_1): Call adjust_point_for_property + in direct action cases for Qforward_char and Qbackward_char. + Set already_adjusted so it won't be done twice. + +2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> + + * src/config.in (!HAVE_SIZE_T): Fix order of arguments in + type definition of size_t. + +2003-01-02 Steven Tamm <steventamm@mac.com> + + * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to + distinguish Carbon GUI builds from X11 builds on darwin. + +2002-12-30 Steven Tamm <steventamm@mac.com> + + * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2 + to default to t. + +2002-12-29 Francesco Potort,Al(B <pot@gnu.org> + + * data.c (Fstring_to_number, Fminus): Better English in doc strings. + +2002-12-28 Steven Tamm <steventamm@mac.com> + + * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to + allow building in a different directory than source. Uses some + GNU Make extensions, but there is no other make on Mac OS X. + +2002-12-26 Francesco Potort,Al(B <pot@gnu.org> + + * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local) + (Fsetq_default, Fmake_local_variable, Fkill_local_variable) + (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus) + (Fstring_to_number): Mention the returned value in the doc strings. + +2002-12-23 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer) <scroll-up-aggressively> + <scroll-down-aggressively>: Doc fix. + + * xmenu.c (parse_single_submenu): Use individual keymap's prompt + string as pane name, if there is one. + (set_frame_menubar): Save menu_items_n_panes from each call to + parse_single_submenu and use it when calling digest_single_submenu. + + * window.c (window_scroll_pixel_based): Fix check for reaching BEGV. + Don't try to make last line fully visible if it is past end of window. + +2002-12-22 Steven Tamm <steventamm@mac.com> + + * macmenu.c (MIN_POPUP_SUBMENU_ID): Add. + (mac_menu_show): Add support for hierarchical popup menus. + (add_menu_item): Remove indentation support. + (fill_submenu, fill_menu): Create hierarchical menus + instead of using indentation. + +2002-12-22 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (try_cursor_movement): Don't call try_window here. + (redisplay_window): Never redisplay minibuffer when inactive. + + * window.c (select_window_1): Undo 9/21 change. + +2002-12-22 Steven Tamm <steventamm@mac.com> + + * macterm.c (XTread_socket): Call KeyTranslate for control and + meta to deal correctly shifted non-alpha characters, like C-S-5 + being treated like C-%. Do not look for shift key to deal + with masking off control-key with mac-reverse-ctrl-meta. + +2002-12-21 Richard M. Stallman <rms@gnu.org> + + * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS. + If it is non-nil, run timers. Use an unwind-protect to requeue + the events that were read ahead. + (popup_get_selection_unwind): New subroutine. + (popup_get_selection_queue): File-scope variable now holds that queue. + (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection. + (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection. + Use an unwind-protect to pop down the dialog box. + (xdialog_show_unwind): New subroutine implements that. + + * xdisp.c (row_containing_pos): Change exit test using last_y. + (try_window_id): Abort if row_containing_pos returns null. + + * lread.c (load_error_handler): New function. + (Fload): Handle errors in Fsubstitute_in_file_name. + Don't expect Fsignal to return. + + * eval.c: Errors and throws work right with interrupt blocking. + (struct catchtag): New elt interrupt_input_blocked. + (unwind_to_catch): Restore interrupt_input_blocked from saved value. + (internal_catch, Fcondition_case, internal_condition_case) + (internal_condition_case_1, internal_condition_case_2): Save it. + (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT. + + * editfns.c (Fformat): Add parens. + + * dired.c (file_name_completion): Fix that change. + Delete special quit-handling code; just use QUIT. + +2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> + + * dired.c (file_name_completion): Close directory on error + just as in directory_files_internal. + +2002-12-19 David Kastrup <David.Kastrup@t-online.de> + + * window.c (Fset_window_configuration): Set old_point to correct + value when new_current_buffer == current_buffer. + +2002-12-17 Ben Key <bkey1@tampabay.rr.com> + + Revisited my earlier fix for the following entry in etc/PROBLEMS: + "Emacs built on Windows 9x/ME crashes at startup on Windows XP, + or Emacs builtpart of on XP crashes at startup on Windows 9x/ME." + + These changes were in part based upon suggestions made by Peter + 'Luna' Runestig [peter@runestig.com]. + + * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token) + (g_b_init_get_token_information, g_b_init_lookup_account_sid) + (g_b_init_get_sid_identifier_authority ): Add several static + global variables. + + * w32.c (globals_of_w32): New function. Used to initialize those + global variables that must always be initialized on startup even + when the global variable initialized is non zero. Its primary + purpose at this time is to set the global variables + g_b_init_is_windows_9x, g_b_init_open_process_token, + g_b_init_get_token_information, g_b_init_lookup_account_sid, and + g_b_init_get_sid_identifier_authority to 0 on startup. + Called from main. + + * w32.c (is_windows_9x): Perform initialization only if + g_b_init_is_windows_9x is equal to 0. On initialization set + g_b_init_is_windows_9x equal to 1. + + * w32.c (open_process_token): Perform initialization only if + g_b_init_open_process_token is equal to 0. On initialization set + g_b_init_open_process_token equal to 1. + + * w32.c (get_token_information): Perform initialization only if + g_b_init_get_token_information is equal to 0. On initialization + set g_b_init_get_token_information equal to 1. + + * w32.c (lookup_account_sid): Perform initialization only if + g_b_init_lookup_account_sid is equal to 0. On initialization + set g_b_init_lookup_account_sid equal to 1. + + * w32.c (get_sid_identifier_authority): Perform initialization + only if g_b_init_get_sid_identifier_authority is equal to 0. + On initialization set g_b_init_get_sid_identifier_authority equal to 1. + + * w32fns.c (globals_of_w32fns): New function. Used to initialize + those global variables that must always be initialized on startup + even when the global variable initialized is non zero. + Its primary purpose at this time is to initialize the global variable + track_mouse_event_fn. + + * w32fns.c (w32_wnd_proc): Remove initialization of + track_mouse_event_fn from the handler for the WM_SETFOCUS message. + + * w32fns.c (syms_of_w32fns): Call globals_of_w32fns. + + * w32menu.c (globals_of_w32menu): New function. Used to + initialize those global variables that must always be initialized + on startup even when the global variable initialized is non zero. + Its primary purpose at this time is to initialize the global + variables get_menu_item_info and set_menu_item_info. + + * w32menu.c (initialize_frame_menubar): Remove initialization of + get_menu_item_info and set_menu_item_info. + + * w32menu.c (syms_of_w32menu): Call globals_of_w32menu. + + * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu): + Declare them. + + * emacs.c (main): Call globals_of_w32 prior to calling + init_environment if WINDOWSNT is defined. Call globals_of_w32fns + and globals_of_w32menu if initialized is non zero and HAVE_NTGUI + is defined. + + * w32term.c (x_update_window_begin): Fix Windows API error + detected by BoundsChecker. Test to determine if + w32_system_caret_hwnd is NULL prior to attempting to use + SendMessage to send the WM_EMACS_HIDE_CARET message to it. + + * w32term.c (x_update_window_end): Fix Windows API error + detected by BoundsChecker. Test to determine if + w32_system_caret_hwnd is NULL prior to attempting to use + SendMessage to send the WM_EMACS_SHOW_CARET message to it. + +2002-12-17 Kenichi Handa <handa@m17n.org> + + * coding.c (coding_system_require_warning): New variable. + (syms_of_coding): DEFVAR it. + + * coding.h (coding_system_require_warning): Extern it. + + * fileio.c (choose_write_coding_system): Even if + Vcoding_system_for_write is non-nil, if + coding_system_require_warning is nonzero, call + Vselect_safe_coding_system_function. + +2002-12-17 Markus Rost <rost@math.ohio-state.edu> + + * Makefile.in (lisp, shortlisp): Add cus-face and timer. + (lisp): Add font-core. + +2002-12-13 Stefan Monnier <monnier@cs.yale.edu> + + * textprop.c (text_read_only): New arg `propval'. + (get_char_property_and_overlay): Remove unused var `next_overlay'. + (verify_interval_modification): Use text_read_only's new arg. + +2002-12-13 Kenichi Handa <handa@m17n.org> + + * coding.c (Funencodable_char_position): Set pend correctly. + +2002-12-12 Jason Rumney <jasonr@gnu.org> + + * w32term.c (last_mousemove_x, last_mousemove_y): New variables. + (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement. + Be more careful about when help_events are generated. + +2002-12-12 Steven Tamm <steventamm@mac.com> + + * macterm.c (mac_check_for_quit_char): Correctly set the + modifiers of the event to 0. + * mac.c (sys_select): Duplicate rfds before calling select to + ensure that rfds survive the while loop. + +2002-12-11 Kim F. Storm <storm@cua.dk> + + * xdisp.c (try_window_id): Don't call set_cursor_from_row if + row_containing_pos returned NULL. + +2002-12-10 Steven Tamm <steventamm@mac.com> + + * mac.c (sys_read): Fix sys_read to not call select if IO is + non-blocking. + (sys_select): Fix sys_select to not use a timeout larger than + the one given. + +2002-12-10 Juanma Barranquero <lektu@terra.es> + + * editfns.c (Fformat): Use alloca, not _alloca. + +2002-12-09 Richard M. Stallman <rms@gnu.org> + + * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input + as the last thing. + +2002-12-09 Dave Love <fx@gnu.org> + + * s/sol2-8.h: Removed. (Not necessary.) + +2002-12-09 Matthew Swift <swift@alum.mit.edu> + + * editfns.c (Fformat): Handle precision in string conversion + specifiers like libc functions do (ie, print at most that many + characters). + +2002-12-08 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (row_containing_pos): Check more carefully + whether charpos is really in the row before returning it. + +2002-12-07 Steven Tamm <steventamm@mac.com> + + * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read. + + * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at + each stack frame. This may change as it could be time consuming. + + * macterm.c (mac_check_for_quit_char, quit_char_comp) + (init_quit_char_handler, mac_determine_quit_char_modifiers) + (mac_initialize): Add code to check for pressing of quit_char + in the OS event queue. + + * mac.c (sys_select): Call mac_check_for_quit_char every second + while blocking on select. + + * mac.c (sys_read): Use sys_select to test for input first + before calling read, to allow C-g to break. + +2002-12-07 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (Fcompleting_read): Doc fix. + + * lread.c (syms_of_lread) <load-history>: Doc fix. + + * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call. + + * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an + autoload. + + * data.c (Fdefalias): Record in load-history redefining an autoload. + + * alloca.c: Undo ifdef change accidentally made on 12-04. + +2002-12-06 Francesco Potort,Al(B <pot@gnu.org> + + * xfns.c (png_load): Avoid double gamma correction for PNG images. + +2002-12-04 Richard M. Stallman <rms@gnu.org> + + * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H. + + * fileio.c (fcntl.h): Test only HAVE_FCNTL_H. + + * alloca.c: Don't use #error. + +2002-12-03 Dave Love <fx@gnu.org> + + * buffer.c (Qucs_set_table_for_input): New. + (Fget_buffer_create): Use it. + (Qset_buffer_major_mode_hook): Deleted. + (Fset_buffer_major_mode): Revert previous change. + (init_buffer_once): Intern ucs-set-table-for-input. + (syms_of_buffer): Delete Qset_buffer_major_mode_hook. + Add &Qucs_set_table_for_input. + +2002-12-03 Andreas Schwab <schwab@suse.de> + + * callint.c (Fcall_interactively): Use next_event only if less + than key_count. + +2002-12-02 Andrew Choi <akochoi@shaw.ca> + + * macmenu.c (add_menu_item, fill_menubar): Truncate menu item + names to 255 characters. + + * macterm.c (XTread_socket): If all frames have been collapsed, + expand the first one before handling drag-and-drop events. + + * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID, + which is detected by autoconf. + +2002-12-01 Steven Tamm <steventamm@mac.com> + + * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the + offset in two hints table to allow prebinding to be redone and + allow the executable to be stripped. + +2002-11-29 Dave Love <fx@gnu.org> + + * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was + already provided. + +2002-11-29 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (start_display): Check more intelligently for + whether the line is continued. + (move_it_vertically_backward): Clear it->continuation_lines_width. + +2002-11-28 Dave Love <fx@gnu.org> + + * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h: + * s/alliant.h, s/altos.h: Deleted. (Unused/empty.) + +2002-11-27 Steven Tamm <steventamm@mac.com> + + * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause + more descriptive error output from lread.c:Fload upon most require + cycles during boostrapping. + +2002-11-27 Jason Rumney <jasonr@gnu.org> + + * fileio.c (Finsert_file_contents): Give a more appropriate error + for files bigger than 2Gb when off_t is 32 bit. + + * dired.c (Ffile_attributes): Don't return negative file sizes for + files bigger than 2Gb when off_t is 32 bit. + +2002-11-27 Dave Love <fx@gnu.org> + + * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define. + + * systty.h: Don't conditionally define GETPGRP_NO_ARG. + Test GETPGRP_VOID instead. + [BSD_TERMIOS]: Remove definitions (never used). + + * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist): + Don't define. + (GC_SETJMP_WORKS, GC_MARK_STACK): Define. + + * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally. + +2002-11-25 Jason Rumney <jasonr@gnu.org> + + * w32.c (sys_write): Avoid non-blocking mode, which is not fully + supported. + +2002-11-25 Dave Love <fx@gnu.org> + + * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec. + + * Makefile.in (TEMACS_LDFLAGS): Update last change. + +2002-11-25 Andreas Schwab <schwab@suse.de> + + * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change. + +2002-11-24 Steven Tamm <steventamm@mac.com> + + * unexmacosx.c (unexec_realloc): Use malloc_default_zone to + determine the size of pointers alloced in unexed space instead + of using possibly invalid emacs_zone pointers. This fixes the + binary incompatibility problems caused by updates to libSystem.B. + +2002-11-24 Richard M. Stallman <rms@gnu.org> + + * search.c (Fstring_match): Doc fix. + + * callint.c (Fcall_interactively): If a command fails because + `*' detects a read-only buffer, but RECORD_FLAG is set, + record it anyway if the args don't actually do tty input. + +2002-11-22 Dave Love <fx@gnu.org> + + * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist. + + * keyboard.c (interrupt_signal): Provide forward declaration. + (kbd_buffer_store_event): Don't declare interrupt_signal. + + * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist. + +2002-11-21 Richard M. Stallman <rms@gnu.org> + + * eval.c (interactive_p): Skip any number of bytecode + and special form frames, in any order. + +2002-11-20 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (convert_mono_to_color_image): New function. + (xbm_load, xbm_load_image): Use it when foreground or background + is explicitly set. + +2002-11-19 Dave Love <fx@gnu.org> + + * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define. + +2002-11-18 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (x_build_heuristic_mask): Filter palette info from color. + (XPutPixel): Swap blue and red. + (xpm_format, pbm_format, png_format, jpeg_format, tiff_format) + (gif_format, gs_format): Use IMAGE_ASCENT_VALUE. + (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p) + (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent. + +2002-11-18 Dave Love <fx@gnu.org> + + * m/orion105.h (HAVE_ALLOCA): Don't define. + + * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca. + + * m/intel386.h: Don't include alloca.h or define alloca. + + * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare + malloc, realloc, calloc. + + * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero) + (bcmp): Don't define. + + * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define. + + * m/amdahl.h: Don't define LIB_STANDARD. + + * m/alpha.h: Move OSF1 stuff from here to s/osf1.h. + + * s/osf1.h: Move OSF1 stuff from m/alpha.h to here. + + * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h: + Don't include alloca.h. + + * s/aix3-2.h (HAVE_FSYNC): Don't define. + + * regex.c (_GNU_SOURCE): Don't define. + + * process.c (_GNU_SOURCE): Don't define. + + * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define. + +2002-11-18 Markus Rost <rost@math.ohio-state.edu> + + * s/sol2-8.h: Include sol2-6.h. + +2002-11-18 Miles Bader <miles@gnu.org> + + * dispextern.h (struct face): Add `overstrike' field. + * xterm.c (x_draw_glyph_string_foreground) + (x_draw_composite_glyph_string_foreground): Implement overstriking. + * xfaces.c (load_face_font): Set `face->overstrike' based on + result from choose_face_font. + (best_matching_font, choose_face_font): Add `needs_overstrike' + argument, and use it to return whether overstriking is desirable + for this face/font combo. + (set_font_frame_param): Pass new argument to choose_face_font. + +2002-11-17 Ben Key <BKey1@tampabay.rr.com> + + This change is my fix for the following entry in etc/PROBLEMS: + "Emacs built on Windows 9x/ME crashes at startup on Windows XP, + or Emacs builtpart of on XP crashes at startup on Windows 9x/ME." + + * w32.c: Added wrapper functions around the win32 API functions + OpenProcessToken, GetTokenInformation, LookupAccountSid, and + GetSidIdentifierAuthority. These wrapper functions serve two + purposes: + 1. They ensure that the wrapped function can never be called + when Emacs is running on an operating system on which they are + not supported (Microsoft Windows 95 / 98 / ME). + 2. They call the wrapped functions via function pointers rather + than calling them directly. This avoids taking advantage of the + undocumented fact that although these functions are not supported + in the 9x branch of Microsoft Windows, the functions do exist in + the version of advapi32.dll that is found in the 9x branch of + Microsoft Windows. + + * w32.c (init_user_info): Replace the calls to the win32 API + functions OpenProcessToken, GetTokenInformation, LookupAccountSid, + and GetSidIdentifierAuthority with calls to the newly added + wrapper functions. + + * w32.h: Added extern declarations for the following functions: + syms_of_w32term, syms_of_w32fns, syms_of_w32select, + syms_of_w32menu, and void syms_of_fontset. + + * w32fns.c (w32_wnd_proc): Add code to reinitialize the + function pointer track_mouse_event_fn in the handler for the + WM_SETFOCUS message. + + * w32menu.c (initialize_frame_menubar): Add code to + reinitialize the function pointers set_menu_item_info and + get_menu_item_info. + +2002-11-17 Ben Key <BKey1@tampabay.rr.com> + + * sound.c: Added a partial implementation of play-sound-internal + for Microsoft Windows. Added various #ifdef / #else / #endif + code blocks to separate the code that will compile under + Microsoft Windows from the code that is specific to GNU/Linux. + Moved several blocks of code around to make this separation of code + into Windows compatible and GNU/Linux compatible code blocks easier. + + * makefile.w32-in: Include sound.c and link with WinMM.lib. + + * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly + added support for play-sound-internal under Windows would be + included in the build of Emacs. + +2002-11-16 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_load_system_font): Don't disable Cleartype. + + * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly. + +2002-11-15 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup. + (adjust_point_for_property): Move out of display and invisible even if + we were already inside before (in case a property was added while + we weren't looking). Be more careful when handling invisible props. + Skip invisible text as if it really wasn't there at all. + +2002-11-15 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_draw_image_foreground) + (w32_draw_image_foreground_1): Use standard copy and invert + operations to draw images. + + * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for + depth of 1. + (xbm_read_bitmap_data): Invert bits as xbm is read in. + (XPutPixel): Don't invert bits here. + +2002-11-15 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string) + (w32_draw_image_foreground_1): Handle image masks. + (x_draw_image_glyph_string): Don't BitBlt transparently. + + * w32fns.c (w32_defined_color): Adjust RGB values for Emacs. + (x_from_xcolors): Adjust RGB values for W32. + (image_background, image_background_transparent) + (postprocess_image, x_to_xcolors, x_disable_image) + (x_build_heuristic_mask): Adapt for W32 and enable. + (x_create_x_image_and_pixmap): Mark images with palettes as such. + (xbm_load): Remove unused variable. + +2002-11-14 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer): Doc fix. + +2002-11-14 Dave Love <fx@gnu.org> + + * alloc.c (SETJMP_WILL_NOT_WORK): Add note. + + * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor): + * xmenu.c (unuse_menu_items, digest_single_submenu): + * xfns.c (x_put_x_image): + * xdisp.c (message2_nolog, set_message): + * undo.c (record_point): + * terminfo.c (tparam): + * syntax.c (scan_sexps_forward): + * scroll.c (calculate_scrolling, calculate_direct_scrolling): + * composite.c (update_compositions): + * cm.c (calccost, cmgoto): + * charset.c (c_string_width): Declare all args (per C99). + + * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare. + + * lisp.h (get_specified_cursor_type, get_window_cursor_type): + Don't declare. + + * emacs.c (main) [!VMS]: Avoid third arg. + + * fns.c (Fcopy_sequence): Doc fix. + (Fmap_char_table): Cast `call2'. + +2002-11-14 Francesco Potort,Al(B <pot@gnu.org> + + * s/sol2-8.h: New file. + +2002-11-14 Kim F. Storm <storm@cua.dk> + + * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol + dependency on `risky-local-variable' and the :propertize form. + +2002-11-12 Stefan Monnier <monnier@cs.yale.edu> + + * fns.c (Fmap_char_table): Don't use map_char_table's function arg. + + * syntax.c (scan_sexps_forward): Undo last patch. + Use a more obvious fix: check eob before updating the syntax table. + +2002-11-09 Stefan Monnier <monnier@cs.yale.edu> + + * syntax.c (scan_sexps_forward): Update syntax table before reading + a char rather than after so we don't update the table past eob. + +2002-11-09 Dave Love <fx@gnu.org> + + * buffer.c (Fset_buffer_major_mode): Fix last change. + + * regex.c (regexec): Fix pmatch declaration. + + * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input. + + * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input + to self-inserting characters. + (syms_of_keyboard) <keyboard-translate-table>: Doc fix. + + * coding.c (Vtranslation_table_for_input): New. + (syms_of_coding): DEFVAR it. + +2002-11-08 Juanma Barranquero <lektu@terra.es> + + * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable + window. + +2002-11-08 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * process.c (Fformat_network_address): Remove unused locals p, + cp, and i. + +2002-11-06 Dave Love <fx@gnu.org> + + * buffer.c (Qset_buffer_major_mode_hook): New. + (Fset_buffer_major_mode): Use it. + +2002-11-06 Richard M. Stallman <rms@gnu.org> + + * xterm.c (x_term_init): Use turn_on_atimers, not start_polling + and stop_polling. + + * process.c (wait_reading_process_input): + Test POLLING_PROBLEM_IN_SELECT, not hpux. + Avoid initialization for auto Lisp_Object var. + + * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef. + + * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined. + +2002-11-05 Richard M. Stallman <rms@gnu.org> + + * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef. + + * callint.c (Fcall_interactively): New local filter_specs. + (Fcall_interactively): Check for progn as well as let. + Add a gcpro. + (Qprogn): New variable. + (syms_of_callint): Staticpro and init Qprogn. + +2002-11-04 John Paul Wallington <jpw@shootybangbang.com> + + * lread.c (Feval_buffer): Doc fix. + +2002-11-04 Dave Love <fx@gnu.org> + + * keyboard.c (read_char): Always translate iff + Vkeyboard_translate_table is a char table and c is valid. + + * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table + and fix C types. + +2002-11-03 Stefan Monnier <monnier@cs.yale.edu> + + * xdisp.c (single_display_prop_intangible_p): Strings are intangible. + + * editfns.c (get_pos_property): Don't hardcode Qfield. + + * keyboard.c (adjust_point_for_property): Handle `display' prop on + overlays. Also handle `invisible' prop. + +2002-11-02 Stefan Monnier <monnier@cs.yale.edu> + + * coding.c (decode_coding_emacs_mule, decode_coding_iso2022) + (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL. + +2002-11-01 Andreas Schwab <schwab@suse.de> + + * editfns.c (Fmessage): Revert last change to properly handle %%. + +2002-11-01 Stefan Monnier <monnier@cs.yale.edu> + + * xmenu.c (unuse_menu_items): New fun. + (menu_items_inuse): New var. + (syms_of_xmenu): Initialize it. + (init_menu_items): Use it to detect re-entrance. + (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done. + (Fx_popup_menu): Remove spurious XSETFRAME. + + * editfns.c (find_field): Make an exception for nil fields. + +2002-11-01 Dave Love <fx@gnu.org> + + * m/gec63.h: Deleted. + +2002-10-31 Dave Love <fx@gnu.org> + + * xterm.c (XTread_socket): Fix last change. + (xaw_scroll_callback): Cast call_data to long to avoid warning. + +2002-10-31 Stefan Monnier <monnier@cs.yale.edu> + + * process.c (Fformat_network_address): Fix int/Lisp_Object mixup. + +2002-10-30 Stefan Monnier <monnier@cs.yale.edu> + + * editfns.c (overlays_around, get_pos_property): New funs. + (find_field): Use them. + Also be careful not to modify POS before its last use. + (Fmessage): Don't Fformat if there's nothing to format. + +2002-10-30 Dave Love <fx@gnu.org> + + * process.c [HAVE_SYS_WAIT]: Include sys/wait.h. + [HAVE_PTY_H]; Include pty.h. + + * lread.c (Fload) <!load_dangerous_libraries>: Close fd. + + * xterm.c (Qeql): Declare. + (Vx_keysym_table): New. + (syms_of_xterm): Initialize it. + (XTread_socket): Use it. Deal with ASCII keysyms. + (XSetIMValues) [HAVE_X11R6]: Prototype. + + * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended. + (lispy_kana_keys): Comment out. + (make_lispy_event) [XK_kana_A]: Comment out. + (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>: + Fix sprintf call. + + * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by + regexp.h change). + (TERMINFO, LIBS_TERMCAP): Define. + + * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY. + (bcmp): Define conditional on HAVE_BCMP. + (NO_SIOCTL_H): Don't define. + (TIOCSIGSEND): Don't make conditional on IRIX6. + + * s/sol2-5.h: Don't include strings.h. + (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef. + + * s/irix6-0.h (IRIX6): Don't define. + (bcopy, bcmp, bzero): Don't undef. + + * s/irix6-5.h: Don't include strings.h. + (IRIX6): Don't define. + (bcopy, bcmp, bzero): Don't undef. + + * syntax.c (Fforward_comment): Doc fix. + +2002-10-29 Kim F. Storm <storm@cua.dk> + + * process.c (Fsignal_process): Allow PROCESS to be specified by + name in addition to pid (as integer or string). + +2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change) + + * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build + environments. + +2002-10-27 Kim F. Storm <storm@cua.dk> + + * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden. + + * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden. + + * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden. + + * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden. + +2002-10-26 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fformat): Detect invalid format letters for floats. + +2002-10-25 Kenichi Handa <handa@m17n.org> + + * xfns.c (x_set_name): Encode by Qcompound_text unconditionally. + (x_set_title): Likewise. + +2002-10-25 Juanma Barranquero <lektu@terra.es> + + * macgui.h: + * w32gui.h: Remove definition of XColor. + + * dispextern.h [!HAVE_X_WINDOWS]: Define XColor. + +2002-10-24 Kim F. Storm <storm@cua.dk> + + * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR. + Callers changed (supply dummy arg). + + * lisp.h (get_window_cursor_type): Update prototype. + + * w32term.c (x_display_and_set_cursor): Get active_cursor from + get_window_cursor_type to track system caret. + +2002-10-24 Kim F. Storm <storm@cua.dk> + + * process.c (Fformat_network_address): New function. + (syms_of_process): Defsubr it. + (list_processes_1): Use it to format :local/:remote address if + service/host is not set; before Emacs would crash in that case. + (Fmake_network_process): Don't use Ffind_operation_coding_system + to setup coding system if host or service is not set. + +2002-10-23 Juanma Barranquero <lektu@terra.es> + + Patch suggested by Jay Finger <jay_finger@hotmail.com>. + + * w32term.c (w32_term_init): Pass XColor to w32_define_color, not + COLORREF. + + * macgui.h: + * w32gui.h: Add definition of XColor. + + * macfns.c: + * w32fns.c: + * xfaces.c: Remove definition of XColor. + +2002-10-22 Stefan Monnier <monnier@cs.yale.edu> + + * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char. + + * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>, + Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the + window if it is dedicated. + (Fshrink_window): Add preserve_before as was done for enlarge_window. + (Vspecial_display_function): Update docstring. + + * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer) + (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR. + (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE. + +2002-10-21 Stefan Monnier <monnier@cs.yale.edu> + + * casefiddle.c (casify_region): Don't treat a prefix char as part + of a word when at the beginning. + +2002-10-17 Juanma Barranquero <lektu@terra.es> + + * lread.c (syms_of_lread): Fix typos. + +2002-10-17 Dave Love <fx@gnu.org> + + * Makefile.in (TEMACS_LDFLAGS): Add trailing comment. + +2002-10-16 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME. + +2002-10-14 Juanma Barranquero <lektu@terra.es> + + * w16select.c (syms_of_win16select): Fix docstring for + `selection-coding-system'. + + * w32select.c (syms_of_w32select): Likewise. + +2002-10-14 Stefan Monnier <monnier@cs.yale.edu> + + * syntax.c (scan_lists): Don't get fooled by a symbol ending with + a backslash-quoted char. + (scan_lists, scan_sexps_forward): Pacify the compiler. + +2002-10-13 Richard M. Stallman <rms@gnu.org> + + * window.c (window_scroll): Set immediate_quit. + + * print.c (print): When backquote form is the car of a list, + output in old style. Use old_backquote_output to output all + comma forms inside it in old style too. + + * buffer.h (struct buffer): Move `undo_list' down below `name'. + +2002-10-11 Markus Rost <rost@math.ohio-state.edu> + + * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in + batch mode). + + * lread.c (Fload): Doc fix (load-suffixes). + +2002-10-10 Steven Tamm <steventamm@mac.com> + + * macterm.c (syms_of_macterm, mac_get_mouse_btn): + Reverse functionality of mac-wheel-button-is-mouse-2 to be correct. + Also switch the default to Qnil from Qt. + +2002-10-08 Kenichi Handa <handa@m17n.org> + + * coding.c (code_convert_region): When we need more GAP for + conversion, pay attention to the case that coding->produced is not + greater than coding->consumed. + +2002-10-07 Richard M. Stallman <rms@gnu.org> + + * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5. + +2002-10-06 Andrew Choi <akochoi@shaw.ca> + + * macmenu.c (mac_menu_show): Add j to count menu items; match + menu_item_selection to it to find selected item. + +2002-10-06 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all + cases. The correct fix is to pass ReparentNotify to Xt. + The shell widget interprets ConfigureNotify differently depending + on if it has been reparented or not. + +2002-10-05 Markus Rost <rost@math.ohio-state.edu> + + * editfns.c (Fformat_time_string): Doc fix. + +2002-10-05 John Paul Wallington <jpw@shootybangbang.com> + + * fns.c (Flength): Doc fix. + +2002-10-04 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (keyremap): New struct. + (read_key_sequence): Use it: globally replace keytran_foo with + keytran.foo and fkey_foo with fkey.foo. Rename temp vars + keytran_next and fkey_next to just `next'. + +2002-10-04 Steven Tamm <steventamm@mac.com> + + * macterm.c (keycode_to_xkeysym_table): Change return to be + treated like an X keysym. + +2002-10-03 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0, + and USE_MOTIF, call XTranslateCoordinates to get the real x and y. + This is to also handle x/y changes that occur because of a resize. + +2002-10-02 John Paul Wallington <jpw@shootybangbang.com> + + * frame.c (Vdelete_frame_functions): New variable. + (syms_of_frame): Initialize and defvar it. + (Fdelete_frame): Use it instead of delete-frame-hook. Don't run + it when frame's `tooltip' parameter is non-nil. + + * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t. + + * w32fns.c (x_create_tip_frame): Likewise. + + * macfns.c (x_create_tip_frame): Likewise. + +2002-09-30 Kenichi Handa <handa@m17n.org> + + * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to + -1 before calling ccl_driver. + + * coding.c (decode_coding_emacs_mule): Check coding->cmp_data. + Only when it is non-nil, handle composition sequence. + (setup_coding_system) <0>: Don't force composition handling. + + * Makefile.in (lisp, shortlisp): Add utf-16.elc. + +2002-09-29 Richard M. Stallman <rms@gnu.org> + + * search.c (Freplace_match): Adjust match data for the substitution + just made in the buffer. + + * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros. + (redisplay_internal): Use them. Do RESUME_POLLING at end of function. + +2002-09-27 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros. + (read_char): Use them. Do all exits thru the end of the function. + +2002-09-27 Kenichi Handa <handa@etl.go.jp> + + * xfaces.c (try_font_list): Pay attention to the case that FAMILY + is nil. + +2002-09-26 Richard M. Stallman <rms@gnu.org> + + * regex.h (__restrict_arr): Don't define if already defined. + + * coding.c (run_pre_post_conversion_on_str): + Save and restore Vdeactivate_mark. + +2002-09-26 John Paul Wallington <jpw@shootybangbang.com> + + * minibuf.c (Fminibufferp): Add an optional `buffer' argument. + +2002-09-26 Kenichi Handa <handa@etl.go.jp> + + * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is + nonzero, try face's family at first. Otherwise try FAMILY at first. + (choose_face_font): If C is a single byte char or latin-1, call + try_font_list with PREFER_FACE_FAMILY 1. + +2002-09-21 Richard M. Stallman <rms@gnu.org> + + * window.c (select_window_1): Don't select frame. + Set frame's selected window only when frame itself is selected. + (Fselect_window): Doc fix. + +2002-09-18 Kim F. Storm <storm@cua.dk> + + * process.c (make-network-process): Doc fix (there is no + network-server-log-function hook). + +2002-09-18 Richard M. Stallman <rms@gnu.org> + + * print.c (print): Clear out the unused parts of Vprint_number_table. + (syms_of_print): Doc fix for `print-number-table'. + + * unexelf.c (unexec): Undo previous change. + +2002-09-17 Andreas Schwab <schwab@suse.de> + + * m/alpha.h [LINUX]: Don't define DATA_START. + +2002-09-16 Dave Love <fx@gnu.org> + + * unexelf.c (unexec): Deal with .got, reinstating change from + 25-08-1999. + +2002-09-13 Richard M. Stallman <rms@gnu.org> + + * s/sol2-6.h (UNEXEC): Comment out definition. + + * unexsol.c (unexec): Don't downcase first letter of error msg. + + * xfaces.c (Fcolor_supported_p): Just one arg is required. + +2002-09-12 Markus Rost <rost@math.ohio-state.edu> + + * unexsol.c: Include buffer.h, charset.h, coding.h. + +2002-09-11 Richard M. Stallman <rms@gnu.org> + + * unexsol.c: Don't use report_file_error; do it by hand + using dlerror. + + * process.c (wait_reading_process_input, both versions): + Before calling turn_on_atimers, call stop_polling. + + * emacs.c (syms_of_emacs) <command-line-args>: Doc fix. + + * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible + we go to too_near_end, call clear_glyph_matrix. + (redisplay_window): After make_cursor_line_fully_visible, + call clear_glyph_matrix and bypass `goto done'. + + * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0 + and we have non-toolkit scroll bars, return nil for scroll-bar-width. + +2002-09-10 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fdo_auto_save): Catch error making directory. + Only call push_message if we need to. + At the same time, make an unwind-protect to pop it. + Rename local message_p to old_message_p. + (do_auto_save_make_dir, do_auto_save_eh): New functions. + (do_auto_save_unwind): Don't call pop_message. + + * lisp.h (pop_message_unwind): Renamed from push_message_unwind. + + * keyboard.c (Fexecute_extended_command): Use pop_message_unwind. + + * alloc.c (Fgarbage_collect): Use pop_message_unwind. + + * xdisp.c (pop_message_unwind): Renamed from push_message_unwind. + +2002-09-10 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete. + (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1. + (re_match_2_internal): Be more careful with infinite loops. + +2002-09-10 Kim F. Storm <storm@cua.dk> + + * macros.c (end_kbd_macro): New function. + (Fend_kbd_macro): Use it. + + * macros.h (end_kbd_macro): Declare extern. + + * keyboard.c (Fdiscard_input): If defining keyboard macro, + end and save it instead of discarding it. + +2002-09-09 Markus Rost <rost@math.ohio-state.edu> + + * s/sol2-6.h: Fix typo. Add comment. + +2002-09-09 Richard M. Stallman <rms@gnu.org> + + * regex.c (regnum_t): Use signed int, not unsigned int. + + * s/sol2-6.h: New file. + + * s/sol2-5.h (UNEXEC): Definition deleted. + +2002-09-08 Kim F. Storm <storm@cua.dk> + + * macros.c (executing_macro_index): Change type to EMACS_INT. + (syms_of_macros): DEFVAR_INT it (needed by kmacro). + + * macros.h (executing_macro_index): Change type to EMACS_INT. + +2002-09-06 Richard M. Stallman <rms@gnu.org> + + * casetab.c (set_case_table): Make canon table point to eqv table. + +2002-09-06 Juanma Barranquero <lektu@terra.es> + + * coding.c (syms_of_coding): Fix spacing. + + * composite.c (Fcompose_region_internal) + (Fcompose_string_internal): Likewise. + + * data.c (Flsh): Likewise. + + * fontset.c (Fset_fontset_font): Likewise. + + * macfns.c (Fx_server_max_request_size): Likewise. + + * w16select.c (syms_of_win16select): Likewise. + + * w32select.c (syms_of_w32select): Likewise. + + * xselect.c (syms_of_xselect): Likewise. + +2002-09-05 Richard M. Stallman <rms@gnu.org> + + * regex.c (set_image_of_range_1): In no-TRANSLATE case, + call EXTEND_RANGE_TABLE and return a proper value. + (set_image_of_range): Don't call set_image_of_range_1 + if no TRANSLATE or if range includes all of Latin-1. + Only call it for the Latin-1 part of the range. + For other cases, make two separate ranges, + one for the original specified characters and one for + their case-conversions. + +2002-09-04 Richard M. Stallman <rms@gnu.org> + + * s/sol2-5.h (UNEXEC): Use unexsol.o. + + * window.c (displayed_window_lines): Correct for one-off bug + in HEIGHT on non-window displays. + + * regex.c (set_image_of_range_1): New function. + (set_image_of_range): Use set_image_of_range_1 for Latin-1. + Return a value to indicate running out of memory. + (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range. + (extend_range_table_work_area): New subroutine. + (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA. + Different calling conventions, and used from set_image_of_range{,_1}. + (IMMEDIATE_QUIT_CHECK): Definitions moved. + +2002-09-04 Juanma Barranquero <lektu@terra.es> + + * makefile.w32-in: All dependencies updated. + +2002-09-01 Richard M. Stallman <rms@gnu.org> + + * unexsol.c: New file. + + * xfns.c (Qbox): Declare external, don't define. + + * xdisp.c (redisplay_window) <force-start case>: + If point is on semi-visible last line, reposition + it at previous line. + + * alloc.c (display_malloc_warning): Use display-warning. + (malloc_warning_1): Function deleted. + + * alloc.c [ALLOC_DEBUG]: #undef INLINE. + + * lread.c (read1): Handle #! by skipping the line. + +2002-08-31 Richard M. Stallman <rms@gnu.org> + + * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS. + Don't include LDFLAGS. + (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS. + +2002-08-31 Eli Zaretskii <eliz@is.elta.co.il> + + * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame + member of x_display_info unless we compile for some window system. + +2002-08-31 Kim F. Storm <storm@cua.dk> + + * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed. + (get_window_cursor_type): Don't use them. + (syms_of_xdisp): Remove intern, staticpro, and defvar for them. + +2002-08-30 Kenichi Handa <handa@etl.go.jp> + + * xdisp.c (get_next_display_element): Fix previous change. + +2002-08-30 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (expose_overlaps): New function (merge code from xterm.c). + (expose_window): Use it to fix the display of overlapping + rows (merge code from xterm.c). + + * macfns.c (Qbox): Add extern declaration. + +2002-08-30 Juanma Barranquero <lektu@terra.es> + + * w32fns.c (Qbox): Make extern. + (syms_of_w32fns): Remove initialization of Qbox. + +2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change) + + * xfns.c (Fx_open_connection): Fix error message. + +2002-08-30 Kim F. Storm <storm@cua.dk> + + The following changes consolidates the handling of the cursor + type in xdisp.c, moving duplicate code and functionality from + xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c. + + * frame.h (enum text_cursor_kinds): Consolidated here. + Added DEFAULT_CURSOR value. + (struct frame) <desired_cursor, cursor_width> + <blink_off_cursor, blink_off_cursor_width>: New fields. + Consolidated from output_x, output_w32 and output_mac structs. + (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR) + (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here. + + * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist): + Variables consolidated here. + (Valternate_cursor_type, Qalternate_cursor_type): New variables. + (Vcursor_in_non_selected_windows): Renamed from + cursor_in_non_selected_windows and changed to Lisp_Object. + (syms_of_xdisp): Define and staticpro new and moved variables. + (get_specified_cursor_type): Renamed from x_specified_cursor_type; + consolidated here. Recognize Qhollow setting. + (set_frame_cursor_types): New function to set frame cursor types + based on the frame parameters. + (get_window_cursor_type): New function to calculate new cursor + type and width for the specified window. Based on duplicated + code consolidated here. + Enhancements: cursor-in-non-selected-windows may be a cursor type, + check buffer-local alternate-cursor-type and blink-cursor-alist + before using built-in blink off methods. + + * dispextern.h (cursor_in_non_selected_windows): Extern removed. + + * lisp.h (Qcursor_in_non_selected_windows): Extern removed. + (get_specified_cursor_type, get_window_cursor_type) + (set_frame_cursor_types): Added prototypes. + + * macfns.c (x_specified_cursor_type): Removed. + (x_set_cursor_type): Use set_frame_cursor_types. + (Qbar, Qbox): Removed. + (syms_of_macfns): Don't intern or staticpro them. + + * macterm.c (x_specified_cursor_type): Remove prototype. + (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH. + (x_display_and_set_cursor): Use get_window_cursor_type. + Remove unused local variables cursor_non_selected, active_cursor. + Redraw cursor if hbar cursor width changes. + (make_mac_frame): Set FRAME_DESIRED_CURSOR. + + * macterm.h (enum text_cursor_kinds): Removed. + (struct output_mac) <current_cursor, desired_cursor, cursor_width> + <blink_off_cursor, blink_off_cursor_width>: Members removed. + (FRAME_DESIRED_CURSOR): Macro removed. + + * w32fns.c (Vblink_cursor_alist): Removed. + (Qbar, Qhbar, Qbox, Qhollow): Removed. + (syms_of_w32fns): Don't intern, staticpro, or define them. + (x_specified_cursor_type): Removed. + (x_set_cursor_type): Use set_frame_cursor_types. + + * w32term.c (x_specified_cursor_type): Remove prototype. + (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH. + (x_display_and_set_cursor): Use get_window_cursor_type. + Remove unused local variables cursor_off_state. + Redraw cursor if hbar cursor width changes. + Changed all occurrences of w32_highlight_frame to x_highlight_frame. + + * w32term.h (enum text_cursor_kinds): Removed. + (struct output_w32) <current_cursor, desired_cursor, cursor_width> + <blink_off_cursor, blink_off_cursor_width>: Members removed. + (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR) + (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed. + (struct w32_display_info) <x_highlight_frame>: Renamed member from + w32_highlight_frame. + + * xfns.c (Vblink_cursor_alist): Removed. + (Qbar, Qhbar, Qbox, Qhollow): Removed. + (syms_of_xfns): Don't intern, staticpro, or define them. + (x_specified_cursor_type): Removed. + (x_set_cursor_type): Use set_frame_cursor_types. + + * xterm.c (x_specified_cursor_type): Remove prototype. + (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH. + (x_display_and_set_cursor): Use get_window_cursor_type. + Remove unused local variables cursor_off_state. + Redraw cursor if hbar cursor width changes. + + * xterm.h (enum text_cursor_kinds): Removed. + (struct output_x) <current_cursor, desired_cursor, cursor_width> + <blink_off_cursor, blink_off_cursor_width>: Members removed. + (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR) + (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed. + (x_specified_cursor_type): Remove prototype. + +2002-08-28 Richard M. Stallman <rms@gnu.org> + + * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and + FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist. + (Vblink_cursor_alist): New variable. + (syms_of_w32fns): Initialize and defvar it. + (x_specified_cursor_type): Recognize Qbox for filled box. + Exceptions are hollow boxes. + (Qbox, Qhollow): New variables. + (syms_of_w32fns): Initialize and staticpro them. + + * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH): + New macros. + (struct w32_output): New fields blink_off_cursor, + blink_off_cursor_width. + (FRAME_CURSOR_WIDTH): New macro. + + * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR + and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off. + + * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH + for bar cursor. + + * w32term.c (expose_overlaps): New function. + (expose_window): Use it to fix the display of overlapping rows. + +2002-08-28 Simon Josefsson <jas@extundo.com> + + * xfns.c (Fx_open_connection): Improve help when X connection + fails, xhost is insecure and xauth is better. + +2002-08-28 Juanma Barranquero <lektu@terra.es> + + * makefile.w32-in: Add missing dependencies on w32term.h and + composite.h. + + * emacs.c (USAGE1): Add missing newline. + +2002-08-27 Andrew Choi <akochoi@shaw.ca> + + * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO. + +2002-08-27 Richard M. Stallman <rms@gnu.org> + + * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and + FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist. + (Vblink_cursor_alist): New variable. + (syms_of_xfns): Initialize and defvar it. + (x_specified_cursor_type): Recognize Qbox for filled box. + Exceptions are hollow boxes. + (Qbox, Qhollow): New variables. + (syms_of_xfns): Initialize and staticpro them. + + * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH): + New macros. + (struct x_output): New fields blink_off_cursor, blink_off_cursor_width. + + * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR + and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off. + + * emacs.c (main): Handle --script. + (USAGE1): Mention --script. + (standard_args): Define sort order for --script. + +2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de> + + * xdisp.c (redisplay_updating_p): Variable removed. + (inhibit_free_realized_faces, Qinhibit_free_realized_faces): + New variables. + (init_iterator): Don't free realized faces if + inhibit_free_realized_faces is set. + (redisplay_internal): Bind Qinhibit_free_realized_faces to nil. + (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces, + initialize Qinhibit_free_realized_faces. + + * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces + when iterator is adding glyphs to a glyph matrix. + +2002-08-27 Kenichi Handa <handa@etl.go.jp> + + * xdisp.c (get_next_display_element): In unibyte case, don't use + octal form for such eight-bit characters that can be converted to + multibyte char. + +2002-08-26 Kim F. Storm <storm@cua.dk> + + * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize + foreground and background colors. From Joe Buehler. + +2002-08-26 Miles Bader <miles@gnu.org> + + * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it. + +2002-08-25 Andrew Choi <akochoi@shaw.ca> + + * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is + defined instead of MAC_OSX. + + * s/darwin.h (select): Define select to sys_select only if + HAVE_CARBON is defined. + (HAVE_WORKING_VFORK): #undef it. Define vfork to fork. + (DONT_REOPEN_PTY): #def it. + + * macterm.c (XTread_socket): Remove code to call + SendEventToEventTarget for keys with command modifiers when + mac_command_key_is_meta is nil. + +2002-08-24 Andreas Schwab <schwab@suse.de> + + * eval.c (Fdefvar): Fix last change. + +2002-08-23 Richard M. Stallman <rms@gnu.org> + + * eval.c (Fdefvar, Fdefconst, Fdefvaralias): + Record variables in load history as (defvar . VAR). + (Fdefvar): Don't record in load history if no initial value. + (Qdefvar): New variable. + (syms_of_eval): Init and staticpro it. + + * lread.c (syms_of_lread): Doc fix. + (build_load_history): Use Fmember to see if a definition + is already in the Vload_history element. + + * process.c (Fstart_process): Remove /: from program name. + + * emacs.c (decode_env_path): Don't add /: if file name handler + has a `safe-magic' property. + + * callproc.c (Fcall_process): Remove /: from program name. + +2002-08-23 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c (PATFETCH): Remove the translating fetch. + (PATFETCH_RAW): Rename to PATFETCH. + (set_image_of_range): New fun. + (SET_RANGE_TABLE_WORK_AREA): Use it. + (regex_compile): Don't translate the pattern chars so eagerly. + Only do it when inserting an `exactn' bytecode or when handling + a char-range. + (mutually_exclusive_p): Avoid empty statement. + +2002-08-22 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we + end up on a partially visible line; this reverts a specific part + of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty + display error which has been reported several times now. + However it introduces the problem that changes was supposed to fix. + See my comments in the source if you want to debug this further. + +2002-08-20 Kenichi Handa <handa@etl.go.jp> + + * abbrev.c (Fexpand_abbrev): Fix for the multibyte case. + +2002-08-19 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (croak): Add `void' to definition. + + * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]: + Don't define them, they are defined in msdos.c. + + * mem-limits.h [MSDOS]: Declare etext. + + * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg' + `const' since CORRECT_DIR_SEPS modifies its target. + +2002-08-19 Kim F. Storm <storm@cua.dk> + + * keyboard.c (Fclear_this_command_keys): Add optional arg + KEEP-RECORD to avoid clearing lossage when we just want to clear + the current key sequence (kmacro needs this). + +2002-08-19 Kenichi Handa <handa@localhost> + + * composite.c (run_composition_function): Call FUNC if it is fboundp. + + * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a + cons, return Qnil. + +2002-08-17 Richard M. Stallman <rms@gnu.org> + + * s/sol2-5.h (BROKEN_SIGIO): Add #undef. + + * sysdep.c [!VMS]: Include sys/files.h. + + * editfns.c (save_restriction_restore): Defend from unchained marker. + + * buffer.c (overlays_at): Handle extending vec uniformly. + (overlays_in): Handle extending vec from length 0 as in overlays_at. + +2002-08-15 Andrew Choi <akochoi@shaw.ca> + + * mac.c (init_mac_osx_environment): New function. + + * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment. + +2002-08-14 Kim F. Storm <storm@cua.dk> + + * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit + executing macro before appending to it (when used from Lisp). + (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function + which is called prior to each iteration of macro (for kmacro.el). + (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise. + + * lisp.h (Fexecute_kbd_macro): Update prototype. + + * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro. + +2002-08-14 Kenichi Handa <handa@etl.go.jp> + + * xselect.c (QUTF8_STRING): New variable. + (symbol_to_x_atom): Pay attention to QUTF8_STRING. + (x_atom_to_symbol): Likewise. + (x_get_local_selection): New argument local_request. If it is + nonzero, call handler_fn with the second arg nil. + (x_handle_selection_request): Call x_get_local_selection with + local_request 0. + (lisp_data_to_selection_data): Don't encode the string here. + (Fx_get_selection_internal): Call x_get_local_selection with + local_request 1. + (syms_of_xselect): Intern and staticpro QUTF8_STRING. + + * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING. + + * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING. + +2002-08-13 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (Fminibufferp): New function. + (syms_of_minibuf): Defsubr it. + (Fminibuffer_prompt_end): Handle non-minibuffers specially. + +2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de> + + * coding.c (Funencodable_char_position): Lisp_Object/int mixup. + +2002-08-12 Richard M. Stallman <rms@gnu.org> + + * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H. + [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED) + (WSTOPSIG, WTERMSIG): Define each one independently if not defined + already. + + * buffer.c (syms_of_buffer) <fill-column>: Doc fix. + +2002-08-11 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (XTmouse_position): Check wp with is_emacs_window. + (Vmac_pass_command_to_system): New variable. + (Vmac_pass_control_to_system): New variable. + (do_mouse_moved): Check wp with is_emacs_window. + (XTread_socket): Check window_ptr with is_emacs_window. + Call FrontNonFloatingWindow instead of FrontWindow. Send keydown + events back to Mac Toolbox for processing, depending on values of + Vmac_pass_command_to_system and Vmac_pass_control_to_system. + (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and + Vmac_pass_control_to_system. + +2002-08-10 Kenichi Handa <handa@etl.go.jp> + + * coding.c (unencodable_char_position): New function. + (Funencodable_char_position): New function. + (syms_of_coding): Defsubr Funencodable_char_position. + +2002-08-10 Andrew Choi <akochoi@shaw.ca> + + * mac.c (sys_select) [MAC_OSX]: New function. + + * macterm.c (MakeMeTheFrontProcess): New function. + (mac_initialize): Call MakeMeTheFrontProcess. + + * s/darwin.h: Define select to sys_select. + +2002-08-09 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT. + +2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de> + + * xdisp.c (forward_to_next_line_start): Return 0 when reaching the + end of the buffer. + +2002-08-08 Ken Raeburn <raeburn@gnu.org> + + * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup. + + * puresize.h (BASE_PURESIZE): Increase to 910000. + +2002-08-08 Kenichi Handa <handa@etl.go.jp> + + * coding.c (Ffind_operation_coding_system): For write-region, if + VISIT is a filename, make it the target. + +2002-08-07 Richard M. Stallman <rms@gnu.org> + + * alloc.c (mark_object): Detect long lists for debugging. + (mark_object_loop_halt): New variable. + + * s/hpux10.h (C_SWITCH_SYSTEM): #undef it. + + * data.c (Fmake_variable_frame_local): Doc fix. + +2002-08-01 David Ponce <david@dponce.com> + + * w32menu.c (local_heap, local_alloc, local_free): New macros. + (malloc_widget_value, free_widget_value) + (w32_free_submenu_strings): Use them. + + (push_submenu_start, push_submenu_end, push_left_right_boundary) + (push_menu_pane, push_menu_item, single_keymap_panes) + (single_menu_item, Fx_popup_menu, menubar_selection_callback) + (single_submenu, set_frame_menubar) + (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE. + + (Fx_popup_menu): Don't show pop up menu until preceding one is + actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block. + + * w32menu.c: Changes adapted from xmenu.c + (set_frame_menubar): First parse all submenus, + then make widget_value trees from them. + Don't allocate any widget_value objects + until we are done with the parsing. + (parse_single_submenu): New function. + (digest_single_submenu): New function. + (single_submenu): Function deleted, replaced by those two. + +2002-08-04 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (XTread_socket): Check that FrontNonFloatingWindow + returns a valid window pointer before proceeding for keyDown and + autoKey events. + +2002-08-03 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (USE_CARBON_EVENTS): New macro. + (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros. + (x_iconify_frame): Call CollapseWindow. + (Vmac_reverse_ctrl_meta): New variable. + (Vmac_wheel_button_is_mouse_2): New variable. + (init_mac_drag_n_drop): New function. + (mac_do_receive_drag): New function. + (mac_handle_service_event): New function. + (init_service_handler): New function. + (mac_to_emacs_modifiers): New function. + (mac_event_to_emacs_modifiers): New function. + (mac_get_mouse_btn): New function. + (mac_convert_event_ref): New function. + (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent, + SendEventToEventTarget, mac_event_to_emacs_modifiers, and + mac_get_mouse_btn. + (mac_initialize): Call init_mac_drag_n_drop and init_service_handler. + + * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and + lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT. + (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and + TOOL_BAR_EVENT for MAC_OS as well. + (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well + as for WINDOWS_NT. + (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX. + + * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX. + +2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de> + + * xdisp.c (forward_to_next_line_start): Fix a condition that + lead to a newline being skipped. + +2002-08-02 Andrew Choi <akochoi@shaw.ca> + + * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p. + +2002-08-01 Richard M. Stallman <rms@gnu.org> + + * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o. + +2002-07-31 Andrew Choi <akochoi@shaw.ca> + + * macfns.c: #undef init_process before #define-ing it. + + * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if + HAVE_CARBON is defined. + +2002-07-31 Richard M. Stallman <rms@gnu.org> + + * xmenu.c (set_frame_menubar): First parse all submenus, + then make widget_value trees from them. + Don't allocate any widget_value objects + until we are done with the parsing. + (parse_single_submenu): New function. + (digest_single_submenu): New function. + (single_submenu): Function deleted, replaced by those two. + +2002-07-30 Juanma Barranquero <lektu@terra.es> + + * w32proc.c (syms_of_ntproc): Fix docstring of + `w32-get-true-file-attributes'. + +2002-07-28 Richard M. Stallman <rms@gnu.org> + + * s/hpux8.h (HPUX8): Define this before including hpux.h. + (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide. + + * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8. + + * keyboard.c (make_lispy_event): + Use #ifdef to test USE_TOOLKIT_SCROLL_BARS. + Explicitly clear up_modifier in event->modifiers. + +2002-07-27 Richard M. Stallman <rms@gnu.org> + + * xterm.h (FRAME_CURSOR_WIDTH): New macro. + + * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH + for bar cursor. + +2002-07-26 Kenichi Handa <handa@etl.go.jp> + + * coding.c (detect_coding_iso2022): While checking a byte sequence + for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check + it in the normal loop. + +2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de> + + * xterm.c (expose_overlaps): New function. + (expose_window): Use it to fix the display of overlapping rows. + + * xdisp.c (unwind_redisplay): Clear redisplay_updating_p. + +2002-07-23 Ken Raeburn <raeburn@gnu.org> + + * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well, + since it only depends on XUINT. + + * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT, + EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS, + PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR): + Macros deleted. + + * mem-limits.h (start_of_data): If DATA_START is defined, prefer + its value over other approaches. + * sysdep.c (start_of_data): Don't define the function if a macro + form has been defined. + +2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de> + + * xdisp.c (redisplay_updating_p): New variable. + (init_iterator): Don't free realized faces when + redisplay_updating_p is set. + (redisplay_internal): Set redisplay_updating_p while updating + the display. + +2002-07-23 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fmessage): Treat "" like nil. + +2002-07-23 Kenichi Handa <handa@etl.go.jp> + + * xdisp.c (face_before_or_after_it_pos): + Call FETCH_MULTIBYTE_CHAR with byte postion, not char position. + +2002-07-22 Juanma Barranquero <lektu@terra.es> + + * callproc.c (init_callproc) [DOS_NT]: + Initialize Vshared_game_score_directory to nil. + (syms_of_callproc) [DOS_NT]: Likewise. + +2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de> + + * xdisp.c (display_line): Replace an abort with xassert. + +2002-07-21 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED + and END_UNCHANGED when setting buffer_unchanged_p. + Use current_matrix_up_to_date_p to decide whether to use + try_cursor_movement. + + * config.in (HAVE_SHARED_GAME_DIR): Undef deleted. + + * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in. + + * callproc.c (init_callproc): Set up Vshared_game_score_directory. + Set to nil if dir does not exist. + (syms_of_callproc): Init unconditionally and simply. + + * buffer.c (Fbuffer_list): Doc fix. + +2002-07-21 Ken Raeburn <raeburn@gnu.org> + + * sysdep.c (end_of_text, end_of_data): Unused functions deleted. + + * buffer.c (mmap_realloc): When shrinking, make sure number of + pages to unmap is rounded towards zero. + + * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted. + (XSETINT): Deleted. + + * m/att3b.h (XINT): Don't define. + (VALBITS, VALMASK, XTYPE): Deleted. + (DATA_SEG_BITS): Define. + * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET, + ARRAY_MARK_FLAG): Deleted. + (DATA_SEG_BITS): Define. + * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted. + (DATA_SEG_BITS): Define. + +2002-07-20 Richard M. Stallman <rms@gnu.org> + + * print.c (print_error_message): New args CONTEXT and CALLER. + Calls changed. + + * lisp.h (print_error_message): Declare new args. + + * keyboard.c (cmd_error_internal): Pass Vsignaling_function + and CONTEXT to print_error_message, don't print them here. + For a Quit, don't use Vsignaling_function. + Call message_log_maybe_newline. + + * Makefile.in (xsmfns.o): Don't depend on lisp.h. + +2002-07-20 Kim F. Storm <storm@cua.dk> + + * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p. + +2002-07-19 Ken Raeburn <raeburn@gnu.org> + + * bytecode.c (struct byte_stack): Pointers into byte string now + point to const. + * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to + const. + * charset.h (BCOPY_SHORT): Source pointer now points to const. + * coding.c (encode_eol, detect_coding, detect_eol): + (decode_coding, encode_coding, detect_coding_system): + Source strings now treated as const. + (decode_coding_string, encode_coding_string): Use STRING_COPYIN to + modify Lisp string contents. + * coding.h (decode_coding, encode_coding, detect_coding, + detect_eol): Declarations updated. + * composite.c (compose_chars_in_text): Treat Lisp string contents + as const. + * dispnew.c (safe_bcopy): Source pointer now points to const. + * lisp.h (STRING_COPYIN): New macro. + (detect_coding_system, safe_bcopy, temp_output_buffer_setup): + (internal_with_output_to_temp_buffer): Declarations updated. + * print.c (temp_output_buffer_setup): + (internal_with_output_to_temp_buffer): Buffer name argument is now + pointer to const. + * sound.c (struct sound_device): Function pointer field "write" + buffer argument now points to const. + (vox_write): Buffer argument points to const. + * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string + contents as const. + * sysdep.c (emacs_write): Buffer pointer now const. + * term.c (encode_terminal_code): Buffer pointer now const. + * xfaces.c (may_use_scalable_font_p): Argument now points to const. + (x_face_list_fonts, x_update_menu_appearance): + (hash_string_case_insensitive): Treat Lisp string contents as const. + +2002-07-19 Juanma Barranquero <lektu@terra.es> + + * xdisp.c (syms_of_xdisp): Remove redundant deprecation info. + + * fileio.c (syms_of_fileio): Likewise. + (Ffile_name_as_directory): Fix argument name in docstring. + (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP. + +2002-07-18 Richard M. Stallman <rms@gnu.org> + + * data.c (Fdefalias): Doc fix. + +2002-07-17 Dave Love <fx@gnu.org> + + * intervals.h (text_property_stickiness): Use P_. + + * ccl.c: Remove `emacs' conditionals. + (ccl_backtrace_table): Fix size spec. + (ccl_driver): Fix type errors. + +2002-07-16 Ken Raeburn <raeburn@gnu.org> + + * alloc.c (xstrdup, make_string, make_unibyte_string) + (make_multibyte_string, build_string): String pointer args now + point to const. + * charset.c (find_charset_in_text, c_string_width): + (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte): + * fileio.c (report_file_error): + * insdel.c (copy_text, count_size_as_multibyte, insert_1): + (count_combining_before, count_combining_after, insert_1_both): + (insert, insert_and_inherit, insert_string): + (insert_before_markers, insert_before_markers_and_inherit): + * lread.c (intern, oblookup, hash_string): + * minibuf.c (temp_echo_area_glyphs): + * search.c (fast_c_string_match_ignore_case): + * sysdep.c (emacs_open, set_file_times): + * xfaces.c (xstricmp): + * xdisp.c (store_frame_title, string_char_and_length): + (message_dolog, message2, message2_nolog, set_message): Likewise. + (set_message_1): Cast message string argument to const pointer. + * editfns.c (general_insert_function): Insertion function now + takes pointer to const for input data. + * charset.h (find_charset_in_text, c_string_width): + (parse_str_as_multibyte): Declarations updated. + * dispextern.h (xstricmp): Declaration updated. + * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text): + (count_size_as_multibyte, count_combining_before): + (count_combining_after, insert_1, insert_1_both, message_dolog): + (insert, insert_and_inherit, insert_before_markers) + (insert_before_markers_and_inherit, set_message, message2): + (message2_dolog, build_string, make_string, make_unibyte_string): + (make_multibyte_string, intern, oblookup, report_file_error): + (fast_c_string_match_ignore_case, temp_echo_area_glyphs): + (emacs_open, xstrdup): Declarations updated. + * systime.h (set_file_times): Declaration updated. + + * charset.c (find_charset_in_text, lisp_string_width): Use const + for pointer to lisp string data. + * charset.h (FETCH_STRING_CHAR_ADVANCE): + (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): + * coding.c (Ffind_coding_systems_region_interval): + * fileio.c (Ffile_name_directory, Ffile_name_nondirectory): + (Fmake_directory_internal, Fdelete_directory): + (Ffile_name_absolute_p, Fwrite_region, double_dollars): + * fontset.c (font_family_registry, fs_query_fontset): + (list_fontsets): + * frame.c (Fframe_parameter): + * keyboard.c (cmd_error_internal): + * keymap.c (Fdescribe_buffer_bindings): + * lread.c (complete_filename_p, openp): + * minibuf.c (Fminibuffer_complete_word): + * xdisp.c (string_pos_nchars_ahead, init_from_display_pos): + (face_before_or_after_it_pos, next_element_from_string): + (get_overlay_arrow_glyph_row, display_mode_element): + (decode_mode_spec_coding): + * xterm.c (same_x_server): Likewise. + + * buffer.c (reset_buffer_local_variables): Delete "#if 0" + settings of non-existent fields. + + * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to + copy a lisp value. + + * lread.c (Fintern_soft): Use string macros instead of + Lisp_String fields. + * keyboard.c (echo_char, parse_modifiers_uncached): + (parse_solitary_modifier, Fexecute_extended_command): Likewise. + * textprop.c (validate_interval_range, interval_of): Likewise. + + * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data. + + * charset.h (FETCH_STRING_CHAR_ADVANCE) + (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of + XSTRING()->size_byte. + + * lisp.h (SDATA, SREF): Produce rvalue. + (SSET): New macro. + * alloc.c (make_event_array): Use SSET for storing into a string. + * buffer.c (Fother_buffer): Use SREF when retrieving a byte from + a string. + * casefiddle.c (casify_object): Use SSET. + * charset.h (FETCH_STRING_CHAR_ADVANCE) + (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting + address of string contents. + * data.c (Faref): Use SDATA. + (Faset): Use SDATA, SSET. + * dired.c (directory_files_internal): Use SSET. + * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET. + (Fread_file_name): Use SREF, SSET. + * fns.c (concat): Use SSET. + (concat, Fdelete): Use SDATA. + * insdel.c (insert_from_string_1): Use SDATA. + * keyboard.c (Fevent_convert_list): Use SREF. + * lread.c (Fload): Use SDATA, SSET. + * macfns.c (validate_x_resource_name): Use SSET. + * process.c (status_message): Use SSET. + * search.c (wordify): Use SDATA. + (Freplace_match): Use SREF. + * w32fns.c (validate_x_resource_name): Use SSET. + * xfns.c (validate_x_resource_name): Use SSET. + * xterm.c (x_catch_errors, x_clear_errors): Use SSET. + +2002-07-16 Richard M. Stallman <rms@gnu.org> + + * s/hpux11.h (USG_SUBTTY_WORKS): Defined. + + * xdisp.c (reconsider_clip_changes): + Don't test prevent_redisplay_optimizations_p. + (redisplay_internal): Test prevent_redisplay_optimizations_p + along with clip_changed in some cases. + (try_window_id): Likewise. + (redisplay_window): New local var buffer_unchanged_p. + + * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass. + + * process.c (create_process): Test USG_SUBTTY_WORKS. + (process_send_signal): Clean up handling of GID. + Detect errors in ioctls meant to set GID. + + * window.c (temp_output_buffer_show): + Don't set prevent_redisplay_optimizations_p. + +2002-07-15 Juanma Barranquero <lektu@terra.es> + + * eval.c (Fdefvaralias): Add docstring argument. + +2002-07-15 Ken Raeburn <raeburn@gnu.org> + + * lisp.h (STRING_INTERVALS): Produce rvalue. + (STRING_SET_INTERVALS): New macro. + * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it. + * fns.c (Fstring_as_multibyte): Likewise. + * intervals.c (balance_possible_root_interval, delete_interval) + (create_root_interval, copy_intervals_to_string): Likewise. + * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL + instead of 0. + +2002-07-14 Ken Raeburn <raeburn@gnu.org> + + * lisp.h (STRING_SET_CHARS): New macro. + (SCHARS, SBYTES): Produce rvalues. + * dired.c (directory_files_internal): Use STRING_SET_CHARS. + * fns.c (concat): Likewise. + * lread.c (read_vector): Likewise. + + * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE. + (STRING_SET_UNIBYTE): New macro. + (SET_STRING_BYTES): Delete. Callers (all of which supplied a + length of -1) changed to use STRING_SET_UNIBYTE. + * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, + casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c, + composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c, + dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c, + fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c, + keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c, + minibuf.c, msdos.c, print.c, process.c, search.c, sound.c, + sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c, + w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c, + w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, + xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with + STRING_BYTES or indirection changed to SCHARS, SBYTES, + STRING_INTERVALS, SREF, SDATA; explicit size_byte references left + unchanged for now. + +2002-07-13 Kim F. Storm <storm@cua.dk> + + * keyboard.c (command_loop_1): Invert check on Vmemory_full. + +2002-07-12 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fwrite_region): Doc fix. + + * print.c (print_error_message): Don't handle Vsignaling_function here. + + * keyboard.c (cmd_error_internal): Handle Vsignaling_function here. + (command_loop_1): Avoid certain actions after memory-full error. + + * eval.c (Fsignal): Don't call cancel_hourglass. + For a memory-full error, don't call Vsignal_hook_function + and don't set Vsignaling_function. + + * process.c (process_send_signal): Add abort call. + +2002-07-11 Markus Rost <rost@math.ohio-state.edu> + + * keymap.c (Fkey_binding): Fix typo. + +2002-07-11 Richard M. Stallman <rms@gnu.org> + + * alloc.c (Vmemory_full): New variable. + (Vmemory_signal_data): Rename from memory_signal_data. + Uses changed. + (syms_of_alloc): Defvar them. + (memory_full, buffer_memory_full): Set Vmemory_full. + + * lisp.h (Vmemory_full): Add declaration. + (current_column, indented_beyond_p): Change declaration. + + * indent.c (last_known_column): Declare as double, not float. + (current_column, current_column_1, string_display_width) + (position_indentation): Return `double'. + (indented_beyond_p): Arg `column' is `double'. Callers changed. + + * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil. + (back_to_previous_visible_line_start) + (reseat_at_next_visible_line_start, next_element_from_buffer): + Use `double', not `float', when calling indented_beyond_p. + + * s/hpux11.h (BROKEN_SA_RESTART): Define. + + * sysdep.c (sys_signal): Test BROKEN_SA_RESTART. + +2002-07-11 Juanma Barranquero <lektu@terra.es> + + * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c, + * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c, + * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c, + * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c, + * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c, + * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense. + +2002-07-10 Juanma Barranquero <lektu@terra.es> + + * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. + All callers changed. + +2002-07-09 Stefan Monnier <monnier@cs.yale.edu> + + * data.c (Fdefalias): Add an optional `docstring' argument. + (set_internal, Fsetq_default): Use XCAR/XCDR. + + * composite.c (HASH_VALUE, HASH_KEY): + * ccl.c (HASH_VALUE): Remove (it's in lisp.h now). + +2002-07-09 Kenichi Handa <handa@etl.go.jp> + + * callproc.c (Fcall_process): Fix previous change. + +2002-07-07 Stefan Monnier <monnier@cs.yale.edu> + + * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion): + Add support for hash-tables. + (Ftry_completion): Return t even if the string appears multiple times. + + * fns.c (Fnconc): Use XCDR. + (Fprovide): Use CONSP and XCDR. + (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX) + (HASH_TABLE_SIZE): Delete: moved to lisp.h. + (Fmake_hash_table): Accept `:size nil'. + (Fmakehash): Delete: moved to subr.el. + (syms_of_fns): Don't defsubr makehash. + + * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX) + (HASH_TABLE_SIZE): Move from fns.c. + +2002-07-07 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls. + Instead just return 0 when there is something to be done. + (try_scrolling): If make_cursor_line_fully_visible returns 0, + retry scrolling as if cursor were off the bottom. + (try_cursor_movement): If make_cursor_line_fully_visible returns 0, + return CURSOR_MOVEMENT_MUST_SCROLL. + (redisplay_window): If make_cursor_line_fully_visible returns 0, + go to try_to_scroll. + + * buffer.c (Fbuffer_local_value): Store current value into its binding + so we get the up-to-date value for the binding that is loaded. + + * eval.c (Fdefmacro): Doc fix. + +2002-07-05 Dave Love <fx@gnu.org> + + * keyboard.c (read_key_sequence): Set initial_idleness_start_time + correctly. + + * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE) + (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New. + (ccl_driver): Add cases for CCL_LookupIntConstTbl, + CCL_LookupCharConstTbl. + (syms_of_ccl): Defvar translation-hash-table-vector. + +2002-07-05 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xdisp.c: Remove unused variable `face'. + +2002-07-04 Juanma Barranquero <lektu@terra.es> + + * keyboard.c (post_command_idle_hook): Remove redundant (and inexact) + obsolescence information. + +2002-07-03 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (x_list_fonts): Fix comment. Cache fonts matching + pattern. Search cache first. + (init_font_name_table): Also add entry for jisx0201.1976-0 coding + for Japanese font. + (XLoadQueryFont): Use it. + +2002-07-02 Richard M. Stallman <rms@gnu.org> + + * keymap.c (Fdefine_key): Doc fix. + + * xterm.c (x_term_init): Turn off polling around XtOpenDisplay. + +2002-07-02 Juanma Barranquero <lektu@terra.es> + + * keymap.c (syms_of_keymap): Fix typo. + +2002-07-01 Andrew Choi <akochoi@shaw.ca> + + * s/darwin.h: Define POSIX_SIGNALS. + + * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef + and FSRefMakePath to convert FSSpec returned with Apple Event to + Posix pathname. + (mac_initialize) [TARGET_API_MAC_CARBON]: + Call init_required_apple_events and disable the `Quit' menu item + provided automatically by the Carbon Toolbox. + +2002-07-01 Dave Love <fx@gnu.org> + + * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl + for K&R. + + * xterm.c: Fix prototype for K&R. + + * term.c (costs_set): Declare static, non-initialized for pcc. + +2002-07-01 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (timer_last_idleness_start_time): New variable. + (timer_start_idle): Set that. + (read_key_sequence): Use that to reset timer_idleness_start_time + to previous value. + + * window.c (Frecenter): With arg, set optional_new_start. + + * xdisp.c (redisplay_internal): Make optional_new_start really work. + + * minibuf.c (Fminibuffer_complete_and_exit): Move to end of + buffer for completion. + +2002-06-29 Ken Raeburn <raeburn@gnu.org> + + * xdisp.c (store_mode_line_string): Lisp_Object/int mixup. + +2002-06-28 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * keyboard.c (readable_filtered_events): New function that filters + FOCUS_IN_EVENT depending on parameter. + (readable_events): Calls readable_filtered_events, not filtering + FOCUS_IN_EVENT. + (get_filtered_input_pending): New function, filtering parameter passed + to readable_filtered_events. + (get_input_pending): Calls get_filtered_input_pending, not filtering + FOCUS_IN_EVENT. + (Finput_pending_p): Calls get_filtered_input_pending, DO filter + FOCUS_IN_EVENT. + + * xterm.h (struct x_output): Add focus_state. + + * xterm.c (x_focus_changed): New function. + (x_detect_focus_change): New function. + (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut + EnterNotify and LeaveNotify to track X focus changes. + +2002-06-28 Andreas Schwab <schwab@suse.de> + + * lisp.h: Remove duplicate declaration of code_convert_string_norecord. + +2002-06-27 Kim F. Storm <storm@cua.dk> + + * xdisp.c (mode_line_string_list, mode_line_string_face) + (mode_line_string_face_prop): New variables. + (store_mode_line_string): New function. + (display_mode_element): Use store_mode_line_string to + add mode-line string elements to mode_line_string_list + when mode_line_string_list is non-nil. + (Fformat_mode_line): Now returns propertized string by + default. New arg NO-PROPS to ignore properties. + (decode_mode_spec): Only add two dashes for %- in propertized + mode-line string. + (syms_of_xdisp): Init and staticpro mode_line_string_list. + +2002-06-27 Stefan Monnier <monnier@cs.yale.edu> + + * minibuf.c (minibuffer_completion_contents): Add return type. + +2002-06-27 Juanma Barranquero <lektu@terra.es> + + * charset.c (Fchar_bytes): Remove obsolescence info from docstring. + +2002-06-26 Juanma Barranquero <lektu@terra.es> + + * fileio.c (read_file_name_cleanup): Add missing return. + +2002-06-26 Richard M. Stallman <rms@gnu.org> + + * window.c (Frecenter): Don't set force_start flag. + + * minibuf.c (do_completion, Fminibuffer_complete_word) + (Fminibuffer_completion_help): Complete just the text before point. + (minibuffer_completion_contents): New function. + + * buffer.c (Fbury_buffer): Use frames_discard_buffer. + + * frame.c (frames_bury_buffer): Function deleted. + +2002-06-25 Miles Bader <miles@gnu.org> + + * callint.c (Fcall_interactively): When checking to see if doprnt hit + the end of callint_message, allow for a terminating '\0'. + +2002-06-24 Juanma Barranquero <lektu@terra.es> + + * w32select.c: Include composite.h. + + * w16select.c: Likewise. + +2002-06-24 Kenichi Handa <handa@etl.go.jp> + + * callproc.c (Fcall_process): If code detection is necessary, + call detect_coding directly here. + + * coding.c (detect_eol): Preserve coding->cmp_data. + + * w16select.c (Fw16_get_clipboard_data): + * w32fns.c (w32_to_x_font): + * w32select.c (Fw32_get_clipboard_data): + * xselect.c (selection_data_to_lisp_data): + * xterm.c (XTread_socket): Disable composition handling. + +2002-06-24 Stefan Monnier <monnier@cs.yale.edu> + + * print.c (temp_output_buffer_setup): Kill all local variables. + +2002-06-22 Stefan Monnier <monnier@cs.yale.edu> + + * lread.c (Fread): Remove redundant and imprecise declaration. + + * xfns.c (check_x_display_info): Use check_x_frame. + + * .gdbinit (xprintsym): Use the new `xname' field. + (xsymbol): Use it. + +2002-06-22 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (file_dialog_callback): New function. + (Fx_file_dialog): Allow selecting directories as well as files. + +2002-06-21 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * m/pmax.h (START_FILES): Define START_FILES for NetBSD and + OpenBSD. Add support for mipseb-*-netbsd* machines. + +2002-06-17 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (mac_scroll_area): Set foreground and backcolor to + black and white before scrolling. Restore frame background and + foreground color after scrolling. + (do_window_update): Call XClearWindow before calling expose_frame. + (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and + FRAME_FOREGROUND_PIXEL of frame. + + * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil, + test Mac command key as <ALT> key. + +2002-06-17 Stefan Monnier <monnier@cs.yale.edu> + + * window.c (Fset_window_configuration): Lisp_Object/int mixup. + + * keyboard.c (read_key_sequence): Be more careful with first_unbound. + Lookup keys in function-key-map immediately so that key-translation-map + can be applied earlier. + Remove function_key_possible and key_translation_possible, replaced + by checking `keytran_start < t'. + + * .gdbinit (xsymbol): Use the new `xname' field. + +2002-06-17 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil, + test Mac command key as <ALT> key. + + * mac.c (do_applescript): Call initialize_applescript if necessary + when first called. Dispose of result_desc only when there is no error. + (Fdo_applescript): Use %d format specifier instead of %ld. + +2002-06-16 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead + of FrontWindow for cases keyDown and autoKey. + + * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of + Vdefault_fontset to Monaco with mac-roman coding. + + * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine + init_process before and after inclusion of Carbon/Carbon.h, resp. + + * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and + cursor_gc. + (add_font_name_table_entry): New function. + (init_font_name_table): Use add_font_name_table_entry; add italic, + bold, and bold-italic entries for truetype fonts. + + * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces + for Mac too. + (try_font_list) [MAC_OS]: If no font matches given registry, try + fonts with any registry matching face_family. + (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here. + + * s/darwin.h: If autoconf detects the Ncurses library, define + LIBS_TERMCAP to -lncurses to use it. + +2002-06-16 Eli Zaretskii <eliz@is.elta.co.il> + + * strftime.c [__hpux]: Include sys/_mbstate_t.h. + +2002-06-15 Richard M. Stallman <rms@gnu.org> + + * window.c (Fset_window_configuration): Explicitly preserve + the point value that new_current_buffer had at the start. + +2002-06-14 Juanma Barranquero <lektu@terra.es> + + * composite.c (Fcompose_region_internal, Fcompose_string_internal): + Fix typos. + +2002-06-14 Kim F. Storm <storm@cua.dk> + + * insdel.c (insert_1_both, insert_from_string_1) + (insert_from_buffer_1): Recalculate END_UNCHANGED in case the + insert happened in the end_unchanged region. Otherwise, the + redisplay may be confused and duplicate the last line in the + buffer [seen after save-buffer when require-final-newline==t]. + +2002-06-13 Jason Rumney <jasonr@gnu.org> + + * w32.c (init_environment): Remove EMACSLOCKDIR. + (stat): Swap _S_IFDIR and _S_IFREG. + +2002-06-13 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c + * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c, + * w32menu.c, w32inevt.c: Rename enum event_kind as follows: + ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke + to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to + NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click + to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT, + language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click + to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to + W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to + SELECTION_REQUEST_EVENT, selection_clear_event to + SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT, + delete_window_event to DELETE_WINDOW_EVENT, iconify_event to + ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT, + menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to + DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and + no_event to NO_EVENT. + +2002-06-12 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind. + +2002-06-12 Stefan Monnier <monnier@cs.yale.edu> + + * intervals.c (textget): Don't forget to `return'. + (lookup_char_property): Use XCAR/XCDR. + +2002-06-12 Juanma Barranquero <lektu@terra.es> + + * xdisp.c (Fformat_mode_line): Fix typo. + +2002-06-12 Kim F. Storm <storm@cua.dk> + + * xdisp.c (Fformat_mode_line): New function. + (frame_title_buf, frame_title_buf_end, frame_title_ptr) + (store_frame_title_char, store_frame_title): Use unconditionally. + (init_xdisp): Defsubr Fformat_mode_line. + Initialize frame_title_buf etc. unconditionally. + +2002-06-11 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (read_key_sequence): + Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass + things through those maps after downcasing events. + Enforce that keytran_end <= fkey_start, i.e. that key-translation-map + applies after function-key-map. + Make sure that keytran can be done in the middle in the sequence. + Be careful not to throw away events past the one we downcase. + + * lread.c (read_integer): Remove unused var `tem'. + (read1): Fix int/Lisp_Object mixup. + + * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed. + +2002-06-11 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (readable_events): Ignore any number of + FOCUS_IN_EVENT events and return 0 if nothing else in buffer. + +2002-06-09 Miles Bader <miles@gnu.org> + + * xfaces.c (Ftty_supports_face_attributes_p): New function. + (parse_rgb_list, tty_lookup_color): New functions. + (tty_defined_color): Use `tty_lookup_color' to do all the work. + (color_distance, Fcolor_distance): New functions. + (TTY_SAME_COLOR_THRESHOLD): New macro. + (Qtty_color_standard_values): New variable. + (syms_of_xfaces): Initialize new vars & functions. + +2002-06-08 Colin Walters <walters@verbum.org> + + * textprop.c (Vchar_property_alias_alist): New variable. + (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP. + + * intervals.c (lookup_char_property): New function for looking up + overlay and text properties, created from textget. + (textget): Use it. + + * intervals.h (lookup_char_property): Declare. + (Vchar_property_alias_alist): Declare. + + * buffer.c (Foverlay_get): Use lookup_char_property. + +2002-06-07 Sam Steingold <sds@gnu.org> + + * xselect.c (lisp_data_to_selection_data): Fix last change: + *data_ret is not a Lisp string, while unibyte_string is. + +2002-06-07 Eli Zaretskii <eliz@is.elta.co.il> + + * xselect.c (lisp_data_to_selection_data): Fix last change: + set size_ret. + +2002-06-07 Andreas Schwab <schwab@suse.de> + + * m/amdx86-64.h: New file. + +2002-06-05 Eli Zaretskii <eliz@is.elta.co.il> + + * fns.c (Fstring_make_unibyte): Doc fix. + + * xselect.c (lisp_data_to_selection_data): If the requested type + is STRING, call string_make_unibyte to encode the selected text + as a string. + + * window.c (Fset_window_hscroll): Doc fix. + +2002-06-05 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * fileio.c (choose_write_coding_system): + Call select-safe-coding-system properly. + +2002-06-03 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (message_with_string): Error if STRING is not a string. + + * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function. + + * fileio.c (choose_write_coding_system): Pass FILE arg to + Vselect_safe_coding_system_function. + +2002-06-03 Ken Raeburn <raeburn@gnu.org> + + * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change. + +2002-06-02 Thien-Thi Nguyen <ttn@gnu.org> + + * bytecode.c (Fbyte_code): Cast `current_column' return value to int. + * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise. + * keymap.c (describe_command): Likewise. + * minibuf.c (read_minibuf): Likewise. + + * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec): + Cast `current_column' return value to int. + (back_to_previous_visible_line_start) + (reseat_at_next_visible_line_start, next_element_from_buffer): + Cast `indented_beyond_p' 3rd arg to float. + + * indent.c (last_known_column): Now a float. + (current_column_1, position_indentation, current_column) + (string_display_width): Return float. + (Fcurrent_column): Cast `current_column' return value to int. + (Fcurrent_indentation): Cast `position_indentation' retval to int. + (indented_beyond_p): Third arg now a float. + (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float. + + * lisp.h (current_column): Now returns float. + (indented_beyond_p): 3rd arg now a float. + +2002-05-31 Eli Zaretskii <eliz@is.elta.co.il> + + * xfns.c (x_encode_text): Return stringp non-NULL if coding_system + is Qcompound_text_with_extensions. + + * xselect.c (lisp_data_to_selection_data): Always set selection + type as string if x_encode_text returns streingp non-NULL. + + * s/netbsd.h: Include /usr/pkg in the run time shared library path. + +2002-05-30 Richard M. Stallman <rms@gnu.org> + + * window.c (Fset_window_configuration): Correct the handling + of point in current buffer, to work with multiple windows. + +2002-05-29 Colin Walters <walters@verbum.org> + + * lread.c (Fread_from_string): Don't depend on order of evaluation + for C function parameters. + +2002-05-28 Richard M. Stallman <rms@gnu.org> + + * xterm.c (x_display_and_set_cursor): Change the cursor in the same + way for blinked-off state and for a nonselected window. + + * window.c (window_scroll_pixel_based): Don't call Fbolp; + instead, see if the new start pos is at beginning of line. + + * fileio.c (Fwrite_region): If START is a string, don't + make any annotations. + + * eval.c (syms_of_eval): Doc fix. + +2002-05-28 Colin Walters <walters@debian.org> + + * emacs.c (USAGE1): Add --no-splash. + (standard_args): Ditto. + +2002-05-28 Colin Walters <walters@gnu.org> + + * lread.c (readchar_count): New variable. + (readchar): Increment it. + (unreadchar): Decrement it. + (read_multibyte): Decrement it. + (Vread_with_symbol_positions): New variable. + (Vread_symbol_positions_list): New variable. + (read_internal_start): New function, created from Fread and + Fread_from_string. Handle Vread_symbol_positions_list and + Vread_with_symbol_positions. + (readevalloop, Fread, Fread_from_string): Use it. + (read1): Use readchar_count to add symbol positions to + Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil. + (syms_of_lread): DEFVAR_LISP and initialize them. + + * lread.c (read0, read1, read_list, read_vector, read_multibyte) + (substitute_object_recurse, substitute_object_in_subtree) + (substitute_in_interval): Prototype. + (read_multibyte): Return c if it's less than zero. + +2002-05-28 Kim F. Storm <storm@cua.dk> + + * fileio.c (Fread_file_name_internal): Added brute-force + speed up for using predicate file-directory-p. + +2002-05-28 Kim F. Storm <storm@cua.dk> + + * fileio.c (Vread_file_name_function, Vread_file_name_predicate): + New variables. + (syms_of_fileio): DEFVAR_LISP them. + (read_file_name_cleanup): New unwind function. + (Fread_file_name_internal): Only return completions satifying + Vread_file_name_predicate. Temporarily unwind protect and rebind + default-directory while checking completions against the predicate. + (Fread_file_name): Added PREDICATE argument. Specbind it to + Vread_file_name_predicate during completion. + Call Vread_file_name_function to read the file name if non-nil. + + * lisp.h (Fread_file_name): Now has 6 args. + + * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p + predicate for Fread_file_name when reading directory name. + Supply Qnil for predicate in other calls to Fread_file_name. + +2002-05-26 Miles Bader <miles@gnu.org> + + * term.c (tty_capable_p): New function. + * dispextern.h (tty_capable_p): New function declaration. + (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM) + (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros. + +2002-05-23 Stefan Monnier <monnier@cs.yale.edu> + + * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE. + (Finsert_file_contents, build_annotations): Use XCAR, XCDR. + (Vwrite_region_annotate_functions): Docstring fix. + +2002-05-23 Kim F. Storm <storm@cua.dk> + + * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current + phys_cursor's hpos is overwritten. This is still not completely + correct, as it doesn't really make sense to use hpos at all to + get the cursor glyph (as that is relative to the width of the + characters on the line, which may have changed during the update). + +2002-05-22 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (enumfont_t): Remove tail, make pattern a normal + Lisp_Object. + (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts): + Use modified enumfont_t struct. + + * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR. + + * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed. + Handle the `hbar' cursor type. + (x_display_and_set_cursor): Handle the HBAR_CURSOR case. + + * w32fns.c (Qhbar): New variable. + (x_specified_cursor_type): Use it. + +2002-05-21 Ken Raeburn <raeburn@gnu.org> + + * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for + now, when the address is needed. + +2002-05-21 Colin Walters <walters@gnu.org> + + * Makefile.in (shortlisp): Add font-core.el. + +2002-05-20 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer) <cursor-type>: Doc fix. + + * keyboard.c (read_char_minibuf_menu_prompt): Don't list + equivalent key bindings here. + +2002-05-20 Ken Raeburn <raeburn@gnu.org> + + Change symbol structure to contain a lisp object for the symbol + name: + * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp + object field named "xname". + (SYMBOL_NAME): New macro. + * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and + name field. + * alloc.c (Fmake_symbol): Set symbol xname field instead of name. + (mark_object, gc_sweep): Use symbol xname field and XSTRING + instead of name field. + * buffer.c (buffer_slot_type_mismatch): Use XSTRING and + SYMBOL_NAME instead of XSYMBOL and name field. + * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME + instead of XSYMBOL and name field. + * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING + and SYMBOL_NAME instead of XSYMBOL and name field. + * coding.c (Fread_coding_system, code_convert_region1) + (code_convert_string1, code_convert_string_norecord) + (Ffind_operation_coding_system): Use SYMBOL_NAME instead of + XSYMBOL and name field. + * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding) + (Fmake_variable_buffer_local, Fmake_local_variable) + (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead + of XSYMBOL and name field. + * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of + XSYMBOL and name field. + * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING + instead of XSYMBOL and name field. + * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of + XSYMBOL and name field. + * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash): + Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field. + * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING + instead of XSYMBOL and name field. + * keyboard.c (echo_char, record_char, parse_modifiers_uncached) + (parse_modifiers, apply_modifiers, Fevent_convert_list) + (parse_solitary_modifier, Fexecute_extended_command): + Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field. + * keymap.c (silly_event_symbol_error, Fsingle_key_description) + (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead + of XSYMBOL and name field. + (describe_command, describe_translation): Use SYMBOL_NAME and + assignment instead of XSYMBOL and name field and XSETSTRING. + * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING + instead of XSYMBOL and name field. + (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and + name field and XSETSTRING. + * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead + of XSYMBOL and name field. + * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and + assignment instead of XSYMBOL and name field and XSETSTRING. + * print.c (print_error_message, print_object): Use SYMBOL_NAME and + XSTRING instead of XSYMBOL and name field. + * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME + and XSTRING instead of XSYMBOL and name field. + * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME + and XSTRING instead of XSYMBOL and name field. + * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and + XSTRING instead of XSYMBOL and name field. + * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead + of XSYMBOL and name field. + * xselect.c (symbol_to_x_atom, x_get_foreign_selection): + Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field. + +2002-05-19 Ken Raeburn <raeburn@gnu.org> + + * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR + and XCDR real rvalues in most configurations. + + * buffer.c (fix_overlays_in_range, fix_overlays_before): + Don't take the address of the cdr part of a cons cell; instead, track + the parent cell and call XSETCDR, or set the variable for the head + of the list if we haven't started down the list yet. + +2002-05-19 Richard M. Stallman <rms@gnu.org> + + * doc.c (reread_doc_file): Don't ask for confirmation. + +2002-05-18 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_create_pixmap_from_bitmap_data): New function. + (xbm_load_image): Use it. + (xbm_load): Ditto. + (xbm_read_bitmap_data): Reverted to xfns.c version. + From David Ponce <david@dponce.com>. + +2002-05-17 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP + 2.02 and later. + +2002-05-16 Juanma Barranquero <lektu@terra.es> + + * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo. + +2002-05-15 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more + meaningful test. + (read_char_minibuf_menu_prompt): Fix typo. + +2002-05-15 Eli Zaretskii <eliz@is.elta.co.il> + + * eval.c (Fcommandp): Doc fix. + +2002-05-13 Stefan Monnier <monnier@cs.yale.edu> + + * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent. + (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it. + (Fset_keymap_parent): Gcpro a bit more. + (access_keymap): Gcpro around meta_map call and around the main loop. + (get_keyelt): Gcpro when following indirect references. + (copy_keymap_item): New fun, extracted from Fcopy_keymap. + (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map. + (Fdefine_key, Flookup_key): Gcpro before calling get_keymap. + Remove useless ad-hoc remap code. + +2002-05-13 Richard M. Stallman <rms@gnu.org> + + * search.c (search_buffer): Give up boyer moore search if inverse + translation change charset_base. + +2002-05-12 Eli Zaretskii <eliz@is.elta.co.il> + + * coding.c (decode_coding) <coding_type_ccl>: If a lone CR + characters is carried over from the previous block of text, adjust + coding->produced to account for the extra character. + +2002-05-11 Andreas Schwab <schwab@suse.de> + + * coding.c (intersection): Keep the elements of the returned list + in the same order as in the first list. + +2002-05-11 Kim F. Storm <storm@cua.dk> + + * keymap.c (current_minor_maps): Fix resizing of cmm_maps; + only update cmm_size if realloc actually succeeds. + Testing with initial size of 2 elements revealed that using + realloc on GNU/Linux would cause a random trap in xmalloc + later on, so I rewrote the code to use malloc/bcopy/free instead + of realloc. + +2002-05-10 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts. + +2002-05-10 Eli Zaretskii <eliz@is.elta.co.il> + + * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in + parens, to ensure correct evaluation order. + +2002-05-10 Kim F. Storm <storm@cua.dk> + + * keymap.c (Vemulation_mode_map_alists): New variable. + (syms_of_keymap): DEFVAR_LISP it. + (current_minor_maps): Process keymap alists in that list before + minor-mode-overriding-map-alist and minor-mode-map-alist. + +2002-05-09 Richard M. Stallman <rms@gnu.org> + + * search.c (Freplace_match): Doc fix. + +2002-05-09 Kim F. Storm <storm@cua.dk> + + * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1): + Enlarge cursor rectangle drawn around image with non-zero relief. + + * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1): + Enlarge cursor rectangle drawn around image with non-zero relief. + + * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1): + Enlarge cursor rectangle drawn around image with non-zero relief. + +2002-05-07 Eli Zaretskii <eliz@is.elta.co.il> + + * xselect.c (lisp_data_to_selection_data): Don't set selection + type if comes from the Lisp object's car. If the selection + contains a pure ASCII text, always return QSTRING as its type. + +2002-05-06 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * mac.c (mac-cut-function): Doc fix. + +2002-05-05 Richard M. Stallman <rms@gnu.org> + + * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it. + +2002-05-04 Jason Rumney <jasonr@gnu.org> + + * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1 + for event-click-count. + + * process.c (init_process): Only add server subfeature if we can + use non-blocking I/O. + +2002-05-04 Andrew Choi <akochoi@shaw.ca> + + * macterm.c (XTread_socket): Call WaitNextEvent once instead of + repeatedly. + +2002-05-03 Jason Rumney <jasonr@gnu.org> + + * process.c (Fmake_network_process): Only support server sockets + when we can make them non-blocking. + + * s/ms-w32.h (HAVE_SELECT): Define. + + * w32.h (FILE_NDELAY): New flag. + + * w32.c (sys_getpeername, fcntl): New functions. + (_sys_read_ahead): Temporarily block on non-blocking sockets. + + * w32proc.c: Include sys/file.h. + +2002-05-03 Colin Walters <walters@verbum.org> + + * callproc.c (Vgame_score_directory): Renamed to + Vshared_game_score_directory. + +2002-04-30 Richard M. Stallman <rms@gnu.org> + + * s/gnu.h [emacs]: Include stdio.h. + (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional. + + * eval.c (do_autoload): Error if called while preparing to dump. + + * fns.c (Frequire): Error if need to load while preparing to dump. + +2002-04-28 Colin Walters <walters@verbum.org> + + * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]: + Default to "~/.emacs.d/games". + +2002-04-29 Stefan Monnier <monnier@cs.yale.edu> + + * lread.c (openp): Change arg exec_only to predicate. + (build_load_history): Use XCAR/XCDR. + (Flocate_file_internal): New fun. + (syms_of_lread): Defsubr it. + (Fload): Update call to openp. + + * lisp.h (openp): Update prototype. + + * xfns.c (x_create_bitmap_from_file, x_find_image_file): + * w32proc.c (sys_spawnve): + * w32fns.c (x_create_bitmap_from_file, x_find_image_file): + * w32.c (check_windows_init_file): + * sound.c (Fplay_sound_internal): + * process.c (Fstart_process): + * macfns.c (x_create_bitmap_from_file, x_find_image_file): + * mac.c (run_mac_command): + * emacs.c (init_cmdargs): + * callproc.c (Fcall_process): Update call to openp. + + * textprop.c (remove_properties): Don't use XCAR without CONSP. + + * xterm.c (XTread_socket): Disable the Xutf8LookupString code. + +2002-04-29 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN) + (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values. + +2002-04-28 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp. + + * eval.c (Fcommandp): New arg for_call_interactively. + * lisp.h (Fcommandp): Declare new arg. + +2002-04-28 Jason Rumney <jasonr@gnu.org> + + * w32proc.c (syms_of_w32proc): Get true file attributes by default. + + * w32.c (stat, fstat): Use file index information to generate + inodes for directories where available. + +2002-04-26 Andrew Choi <akochoi@shaw.ca> + + * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add. + [HAVE_CARBON]: Include Mac object files. + + * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c, + fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c, + termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8, + MAC_OSX, and MAC_OS instead of macintosh. + + * editfns.c [MAC_OS8]: Include stdio.h. + + * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init. + + * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of + Apple Monaco. + + * process.c (QCfamily, QCfilte): Declare extern. + (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before + calling select. + + * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent. + + * tparam.c [MAC_OSX]: Don't define BC and UP. + + * config.in [HAVE_CARBON]: Add. + + * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h: + Move here from mac/src and mac/inc. + + * s/darwin.h, m/powermac.h, unexmacosx.c: New files. + +2002-04-26 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_draw_phys_cursor_glyph): Undo last change. + Compute phys_cursor_width from the x position returned + by x_draw_glyhs, which is cheaper. + (x_display_and_set_cursor): Compute the buffer-local value + of `cursor-in-non-selected-windows' only when needed. + +2002-04-25 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box + cursor on a stretch glyph has a width that depends on + x_stretch_cursor_p. + +2002-04-25 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * abbrev.c (abbrev-start-location): Doc fix. + + * indent.c (Fvertical_motion): Fix last change. + +2002-04-25 Gerd Moellmann <gerd@gnu.org> + + * indent.c (Fvertical_motion): Move to the start of the line + containing PT before moving up or down. + +2002-04-24 Gerd Moellmann <gerd@gnu.org> + + * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the + case of writing a whole row, more or less analogous to the case of + writing only parts of a row. + + * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to + 0 for NO_CURSOR. + + * xterm.c (notice_overwritten_cursor): Fix an off by 1 error. + +2002-04-23 Colin Walters <walters@verbum.org> + + * buffer.c (syms_of_buffer): Doc fix. + +2002-04-23 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (notice_overwritten_cursor): Handle the special case + of the cursor being in the first blank non-text line at the + end of a window. + + * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor) + (x_draw_phys_cursor_glyph): Set phys_cursor_width here. + (x_display_and_set_cursor): Don't set phys_cursor_width here, for + bar cursors only, to make phys_cursor_width contain what its name + suggests. + (notice_overwritten_cursor): Consider the cursor image erased if + the output area intersects the cursor image in y-direction. + +2002-04-23 Simon Marshall <simon@gnu.org> + + * xfns.c (x_set_mouse_color): Change default for cross_cursor + to XC_hand2. + +2002-04-23 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'. + +2002-04-22 Kim F. Storm <storm@cua.dk> + + * textprop.c (remove_properties): Fixed trap for malformed plist. + +2002-04-22 Richard M. Stallman <rms@gnu.org> + + * cmds.c (Fend_of_line): Handle intangible text in mid line. + + * window.c (make_window): Initialize height_fixed_p, + last_cursor_off_p, and p->cursor_off_p slots. + +2002-04-20 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * fns.c (use-dialog-box): Doc fix. + +2002-04-19 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xterm.c (note_mode_line_or_margin_highlight): Remove unused + variables `row', `i' and `area'. + (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to + toolkit library. + +2002-04-19 Stefan Monnier <monnier@cs.yale.edu> + + * xfaces.c (clear_font_table): Don't free the default font of + a frame even if it's on another display. + (Finternal_set_lisp_face_attribute): Don't use XFRAME on something + that could be Qt. + +2002-04-19 Juanma Barranquero <lektu@terra.es> + + * indent.c (Fmove_to_column): Remove unused local variable + `next_boundary_byte'. + (current_column_1): Likewise. + +2002-04-19 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (Qhbar): New variable. + (syms_of_msdos): Intern and staticpro it. + (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar' + cursor type. + +2002-04-19 Dave Lambert <dlambert@acm.org> + + Theses change implement an underscore-like (`hbar') cursor. + + * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR. + + * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed. + Handle the `hbar' cursor type. + (x_display_and_set_cursor): Handle the HBAR_CURSOR case. + + * xfns.c (Qhbar): New variable. + (syms_of_xfns): Intern and staticpro it. + (x_specified_cursor_type): Handle `hbar' cursor. + + * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is + not defined. + +2002-04-18 Richard M. Stallman <rms@gnu.org> + + * textprop.c (remove_properties): New arg LIST allows scanning + either a list or a plist. + (interval_has_some_properties_list): New function, like + interval_has_some_properties using list instead of plist. + All callers changed. + (Fremove_list_of_text_properties): New function. + (syms_of_textprop): Defsubr it. + +2002-04-17 Eli Zaretskii <eliz@is.elta.co.il> + + * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined. + +2002-04-17 Juanma Barranquero <lektu@terra.es> + + * indent.c (Fmove_to_column): Remove unused local variable `end_byte'. + +2002-04-17 Eli Zaretskii <eliz@is.elta.co.il> + + * window.c (coordinates_in_window): Don't report on margin area + if its width is zero. + +2002-04-16 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Fx_file_dialog): Decode file name before using. + + * w32term.c (construct_drag_n_drop): Likewise. + +2002-04-16 Eli Zaretskii <eliz@is.elta.co.il> + + * puresize.h (BASE_PURESIZE): Increase to 830000, since we now + store load-history in pure space. + + * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000. + +2002-04-16 Stefan Monnier <monnier@cs.yale.edu> + + * xterm.c (Qlatin_1, Qutf_8): New vars. + (syms_of_xterm): Initialize them. + (XTread_socket): Eliminate incorrect optimization that tried to avoid + decoding the output of X*LookupString. + Always use latin-1 to decode the output of XLookupString. + Try Xutf8LookupString if XmbLookupString failed. + + * region-cache.c (new_region_cache): Use BEG. + +2002-04-16 Gerd Moellmann <gerd@gnu.org> + + * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system + configuration files. + (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P + returns 0. + +2002-04-15 Andreas Schwab <schwab@suse.de> + + * config.in: Regenerated using autoheader. + + * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h, + m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h, + m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h, + m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h, + m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h, + m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h, + m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h, + m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h, + m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h + m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h, + m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h, + m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h, + m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h, + m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h, + m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h, + s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and + STACK_DIRECTION, now set by autoconf. + +2002-04-14 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * dispnew.c (marginal_area_string): Sort arguments. + + * dispextern.h (marginal_area_string): Add prototype. + +2002-04-13 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Finsert_file_contents): + Don't call temp_output_buffer_setup--do just part, by hand. + + * coding.c (run_pre_post_conversion_on_str): + Don't call temp_output_buffer_setup--do just part, by hand. + + * keyboard.c (command_loop_1): Don't call start_hourglass + or cancel_hourglass when executing a macro. + + * marker.c (count_markers): New function. + + * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist + grow without limit. Move recently used elements to the front. + +2002-04-13 Eli Zaretskii <eliz@is.elta.co.il> + + * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20. + +2002-04-12 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame + rows marginal areas. + (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function. + (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it. + + * dispnew.c (marginal_area_string): Check that glyph row is enabled. + +2002-04-12 Dave Love <fx@gnu.org> + + * dispnew.c (marginal_area_string): New. + + * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN. + (Qleft_margin, Qright_margin): Declare. + (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins. + + * xterm.c (note_mode_line_or_margin_highlight): Renamed from + note_mode_line_highlight and extended. + + * keyboard.c (Qleft_margin, Qright_margin): Declare. + (make_lispy_event): Deal with mouse events in margins. + +2002-04-12 Stefan Monnier <monnier@cs.yale.edu> + + * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT. + + * keyboard.c (command_loop_1): Turn off transient-mark-mode rather + than deactivating the mark if tmm is set to `lambda'. + (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event): + Use a single event for HELP_EVENT. + (Fexecute_extended_command): Save last_point_position. + +2002-04-12 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * lisp.h (Fpropertize): Add prototype. + + * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt. + +2002-04-10 Colin Walters <walters@verbum.org> + + * config.in: Add HAVE_SHARED_GAME_DIR. + + * callproc.c (Vgame_score_directory): New variable. + (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP. + +2002-04-10 Richard M. Stallman <rms@gnu.org> + + * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess. + +2002-04-09 Stefan Monnier <monnier@cs.yale.edu> + + * minibuf.c (read_minibuf): Use empty_string. + (Ftry_completion): Allow lambda forms and lists of strings for `alist'. + Short-circuit the search as soon as it "failed". + (Fall_completions): Allow lambda forms and lists of strings for alist. + (Fcompleting_read): Set Qminibuffer_completion_confirm to nil + when require_match is nil. + (Ftest_completion): Rename from `test_completion' and export to elisp. + Call the predicate also when alist is a list. + Obey Vcompletion_regexp_list. + (do_completion, Fminibuffer_complete_and_exit): Use it. + (Fassoc_string): Rename from `assoc_for_completion'. + Allow list of strings as well and export to elisp. + +2002-04-08 Stefan Monnier <monnier@cs.yale.edu> + + * puresize.h (BASE_PURESIZE): Increase to 900KB. + +2002-04-08 Juanma Barranquero <lektu@terra.es> + + * w32.c (sys_accept): Don't hide variable `s'. + +2002-04-05 Gerd Moellmann <gerd@gnu.org> + + * callint.c (Fcall_interactively): Use INTEGERP instead of + NUMBERP for checking Vhistory_length. + +2002-04-05 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * sound.c (Fplay_sound_internal): Renamed from Fplay_sound. + Doc fix to reflect it. + +2002-04-04 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (display_mode_element): New arg RISKY. + Disregard text props found or specified within a variable + that isn't marked risky-local-variable. + (Qrisky_local_variable): New variable. + (syms_of_xdisp): Init and staticpro it. + +2002-04-04 Stefan Monnier <monnier@cs.yale.edu> + + * undo.c (record_point): New fun. + (record_delete, record_insert): Use it. + +2002-04-03 Juanma Barranquero <lektu@terra.es> + + * doc.c (Fdocumentation): Add missing parentheses. + (Fdocumentation_property): Likewise. + +2002-04-03 Stefan Monnier <monnier@cs.yale.edu> + + * doc.c (Fdocumentation, Fdocumentation_property): When the doc + data is 0, just return nil. + +2002-04-03 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (syms_of_msdos): Fix last change with + mouse_autoselect_window. + +2002-04-03 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to + mouse_autoselect_window. + +2002-04-02 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (make_lispy_event): Handle unknown keysyms together + with system-specific keysyms. Use it also for unknown function keys. + + * doc.c (reread_doc_file): Return whether reload was attempted. + (Fdocumentation, Fdocumentation_property): Don't try to reload + if the doc is 0 and only ask once. + + * Makefile.in (lisp, shortlisp): Add ucs-tables.elc. + +2002-04-02 Eli Zaretskii <eliz@is.elta.co.il> + + * keyboard.c (read_char): If the event was Qselect_window, + restore timer_idleness_start_time to its previous value. + + * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required. + +2002-04-01 Stefan Monnier <monnier@cs.yale.edu> + + * region-cache.c (new_region_cache): Use BEG. + + * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos): + Use BEG and BEG_BYTE. + + * doc.c (get_doc_string): Return nil if the location is wrong. + (reread_doc_file): New fun. + (Fdocumentation, Fdocumentation_property): + Call it if get_doc_string fails. + (Fsnarf_documentation): Make it work for a dumped Emacs. + + * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE. + Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case. + + * charset.c (Fstring): Allow 0 arguments. + + * xterm.c (XTread_socket): Fix int/Lisp_Object confusion. + + * process.c (DATAGRAM_CONN_P, list_processes_1) + (Fprocess_datagram_address, Fset_process_datagram_address) + (Fset_network_process_options, server_accept_connection): + Fix some int/Lisp_Object confusions (thank you union types). + +2002-04-01 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * msdos.c: Rename x_autoselect_window_p to autoselect_window_p. + + * w32term.c: Likewise. + (note_mouse_movement): Put code for x_autoselect_window_p in #if 0. + + * keyboard.c (Qselect_window): New symbol. + (head_table): Use it. + (keys_of_keyboard): Bound select-window event to handle-select-window. + (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT. + + * xterm.c: Rename x_autoselect_window_p to autoselect_window_p. + (last_window): New variable. + (XTread_socket): Generate SELECT_WINDOW_EVENTs. + (note_mouse_movement): Remove reimplemented code in #if 0. + (XTread_socket): Generate SELECT_WINDOW_EVENTs only for + Emacs windows. + + * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'. + +2002-03-31 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P. + Callers changed. + +2002-03-30 Richard M. Stallman <rms@gnu.org> + + * window.c (window_scroll_pixel_based): Exit the move_it_by_lines + loop whenever it stops making progress. + + * widget.c (set_frame_size): Don't call change_frame_size. + +2002-03-30 Gerd Moellmann <gerd@gnu.org> + + * dispnew.c (direct_output_for_insert): + Call mark_window_display_accurate. + +2002-03-29 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths. + +2002-03-29 Eli Zaretskii <eliz@is.elta.co.il> + + * Makefile.in (lread.o): Depend on coding.h. + + * lread.c (openp, Fload): Encode the file name before passing it + to `stat', `access', and `emacs_open'. + (openp): GCPRO the encoded file name. Don't recompute Lisp + strings unnecessarily. + +2002-03-29 Kim F. Storm <storm@cua.dk> + + * fns.c (Flax_plist_put): Doc fix. + +2002-03-28 Miles Bader <miles@gnu.org> + + * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process. + +2002-03-27 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * process.c (set-network-process-options): Add usage. + (make-network-process): Doc fix. + +2002-03-26 Eli Zaretskii <eliz@is.elta.co.il> + + * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed". + +2002-03-26 Richard M. Stallman <rms@gnu.org> + + * fns.c (Fsubstring_no_properties): New function. + (Flax_plist_get, Flax_plist_put): New functions. + (syms_of_fns): defsubr them. + + * xdisp.c (update_menu_bar): Test only update_mode_lines; + don't test or alter w->update_mode_line. + + * window.c (Fdisplay_buffer): Doc fix. + +2002-03-24 Richard M. Stallman <rms@gnu.org> + + * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces. + +2002-03-24 Gerd Moellmann <gerd@gnu.org> + + * eval.c (Qdeclare, Vmacro_declaration_function): New variables. + (Fdefmacro): Handle `(declare ...)'. + (syms_of_eval) <Qdeclare>: Initialize and staticpro. + (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP. + +2002-03-24 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data) + (xbm_file_p): Add prototypes. + (xbm_format, xbm_image_p): Sync with xfns.c. + (reflect_byte): New function. + (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows. + (xbm_load_image): Create bitmaps with a depth of 1. + (init_xfns): Enable XBM images. + +2002-03-23 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_handle_tool_bar_click): Detect up and down events + correctly. Do not pass up_modifier to keyboard buffer. + + * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals. + +2002-03-22 Stefan Monnier <monnier@cs.yale.edu> + + * Makefile.in (bootstrapclean): New target. + (bootstrap-temacs, bootstrap-doc): Remove. + (bootstrap-emacs): Use a bog-standard `temacs'. + Don't bother to build a DOC file. + + * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause. + + * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup + in temacs even if !CANNOT_DUMP. + (standard_args): Keep --no-loadup even if !CANNOT_DUMP. + + * alloc.c (check_pure_size): Only output a warning. + +2002-03-22 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Fx_create_frame): Enable tool-bar when images are + supported. + + * w32term.c (zv_bits): Declare as short, for word alignment. + (w32_read_socket) <WM_XBUTTONUP>: Fix last change. + (syms_of_w32term): Define x-use-underline-position-properties. + + * w32fns.c (x_set_cursor_color): Set cursor_gc as well. + (clear_image_cache): Block input, fix logic, clear matrices in + all frames that share this cache. + +2002-03-22 Eli Zaretskii <eliz@is.elta.co.il> + + * emacs.c (main): Update the Copyright year in the blurb printed + by "emacs --version". + + * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2. + + * xterm.c (XTread_socket): If XK_ISO_Lock and + XK_ISO_Last_Group_Lock are defined, handle keysyms between + XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch. + +2002-03-21 Kim F. Storm <storm@cua.dk> + + * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so + menu-bar bindings in keymap and local-map properties _are_ used. + But try keymap property first in accordance with 2002-01-03 patch. + Added comment describing why this is not always reliable. + (tool_bar_items): Ditto for tool-bar. + +2002-03-21 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (x_clear_image_1): Disable color table code. + +2002-03-21 Kim F. Storm <storm@cua.dk> + + * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch + removed the wrong version of the DEFUN macro; fixed it. + + * fns.c (Ffeaturep): Allow subfeature to be a list (test using + Fmember rather than Fmemq). + (Fprovide): Check that subfeatures is a list. + + * process.c (QCfeature, QCdatagram): Removed variables. + (QCtype, Qdatagram): New variables. + (network_process_featurep): Removed function. + (Fmake_network_process): Removed :feature check. + Use :type 'datagram instead of :datagram t to create a datagram + socket. This allows us to add other connection types (e.g. raw + sockets) later in a consistent manner. + (init_process) [subprocess, HAVE_SOCKETS]: Provide list of + supported subfeatures for feature make-network-process. + (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram. + Intern and staticpro QCtype and Qdatagram. + (syms_of_process) [!subprocess]: Intern and staticpro QCtype. + + * xfns.c (QCtype): Remove duplicate declaration and + initialization (is now declared in process.c). + + * w32fns.c (QCtype): Remove duplicate declaration and + initialization (is now declared in process.c). + +2002-03-21 Richard M. Stallman <rms@gnu.org> + + * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro. + (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT + when jumping to `fail' to avoid undoing reg changes in the + last iteration of the loop. + (GET_UNSIGNED_NUMBER): Skip spaces around the number. + + * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o): + Depend on process.h. + +2002-03-20 Jason Rumney <jasonr@gnu.org> + + Most of the following changes are still conditional on HAVE_IMAGES + which is not set by default on Windows. + + * emacs.c (main) [WINDOWSNT]: Call init_xfns. + + * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame. + (Fimage_size, Fimage_mask_p, XPutPixel): New functions. + (four_corners_best, x_clear_image_1, x_clear_image) + (x_alloc_image_color, postprocess_image) + (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image) + (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows. + (init_xfns, syms_of_w32fns): Initialize image functions and constants. + + * w32gui.h (struct XImage): Define. + + * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to + extract mouse co-ordinates. + +2002-03-20 Jason Rumney <jasonr@gnu.org> + + * w32.c (init_winsock): Dynamically load new server and UDP + socket functions. + (socket_to_fd): New function. + (sys_socket): Use it. + (sys_setsockopt, sys_listen, sys_getsockname, sys_accept) + (sys_recvfrom, sys_sendto): New wrapper functions. + + * process.c (QCfamily, QCfilter): Remove duplicate declaration + and initialization. + + * makefile.w32-in (LIBS): Remove $(WSOCK32). + +2002-03-20 Eli Zaretskii <eliz@is.elta.co.il> + + * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr): + Don't use "sun" as a variable, it's a predefined constant on Sun + machines. + +2002-03-20 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * bytecode.c (Fbyte_code): Revert last change. + +2002-03-19 Kim F. Storm <storm@cua.dk> + + * makefile.w32-in (LIBS): Add $(WSOCK32). + From David Ponce <dponce@voila.fr>. + +2002-03-18 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * process.c (wait_reading_process_input): Move variables `pname' + and `pnamelen' down where they are used. + + * bytecode.c (Fbyte_code): Discard unused computed value to + prevent gcc warning. + + * lisp.h (Fplist_member): Add prototype. + +2002-03-18 Kim F. Storm <storm@cua.dk> + + * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT, + HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H. + + * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H. + Remove explicit GNU_LINUX settings for datagram support. + +2002-03-18 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * process.c (Fmake_network_process): Remove unused variable `sa'. + Doc fix. Add usage:. + (set_socket_options): Remove unused variables `optnum' and `opttype'. + +2002-03-17 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (cursor_type_changed): New variable. + (redisplay_internal): Redisplay all windows if cursor_type_changed. + Clear it when clearing windows_or_buffers_changed. + (try_cursor_movement, redisplay_window, try_window_id) + (try_window_reusing_current_matrix): Test cursor_type_changed + along with windows_or_buffers_changed. + + * window.h (cursor_type_changed): New variable. + + * xfns.c (x_set_cursor_type): Set cursor_type_changed, + not update_mode_lines, and always set it to 1. + + * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed + if no frames needed redrawing. + +2002-03-17 Kim F. Storm <storm@cua.dk> + + The following changes add support for network server processes, + datagram connections, and local (unix) sockets. + + * process.h (struct Lisp_Process): New member log. + Doc fix: Member command used to indicate stopped network process. + Doc fix: Member childp contains plist for network process. + Doc fix: Member kill_without_query is inverse of query-on-exit flag. + + * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily) + (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop) + (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature): New + variables. + (NETCONN1_P): New macro. + (DATAGRAM_SOCKETS): New conditional symbol. + (datagram_address): New array. + (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros. + (status_message): Use concat3. + (Fprocess_status): Add `listen' status to doc string. Return + `stop' for a stopped network process. + (Fset_process_buffer): Update contact plist for network process. + (Fset_process_filter): Ditto. Don't enable input for stopped + network processes. Server must listen, even if filter is t. + (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag): + New functions. + (Fprocess_kill_without_query): Removed. Now defined in simple.el. + (Fprocess_contact): Added KEY argument. Handle datagrams. + (list_processes_1): Optionally show only processes with the query + on exit flag set. Dynamically adjust column widths. Omit tty + column if not needed. Report stopped network processes. Identify + server and datagram network processes. + (Flist_processes): New optional arg `query-only'. + (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size) + (conv_lisp_to_sockaddr, set_socket_options) + (network_process_featurep, unwind_request_sigio): New helper + functions. + (Fprocess_datagram_address, Fset_process_datagram_address): + (Fset_network_process_options): New lisp functions. + (Fopen_network_stream): Removed. Now defined in simple.el. + (Fmake_network_process): New lisp function. Code is based on + previous Fopen_network_stream, but heavily reworked with new + property list based argument list, support for datagrams, server + processes, and local sockets in addition to old client-only + functionality. + (server_accept_connection): New function. + (wait_reading_process_input): Use it to handle incoming connects. + Do not enable input on a new connection if process is stopped. + (read_process_output): Handle datagram sockets. Use 2k buffer for + them. + (send_process): Handle datagram sockets. + (Fstop_process, Fcontinue_process): Apply to network processes. A + stopped network process is indicated by setting command field to t. + (Fprocess_send_eof): No-op if datagram connection. + (Fstatus_notify): Don't read input for a stream server socket or a + stopped network process. + (init_process): Initialize datagram_address array. + (syms_of_process): Intern and staticpro new variables, defsubr new + functions. + +2002-03-16 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_to_all_x_charsets): Return correct type in + startup case. + +2002-03-16 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (redisplay_internal, redisplay_windows): + Use list_of_error to call internal_condition_case_1. + (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2} + so as to catch all errors with no possibility of debugger redisplay. + (list_of_error): New variable. + (syms_of_xdisp): Init and staticpro it. + + * print.c (print_object): Delete `\ ' from printed rep of frame. + +2002-03-15 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature, + until its implementation is fixed. + +2002-03-14 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xfns.c (png_load): Remove unused variable `gamma_str'. + +2002-03-14 Richard M. Stallman <rms@gnu.org> + + * xfns.c (x_real_positions): Handle failure in XQueryTree. + +2002-03-14 Miles Bader <miles@gnu.org> + + * intervals.c (adjust_for_invis_intang): New function. + (set_point_both): Use `adjust_for_invis_intang' to do most of the + work for dealing with invisible+intangible regions. Do so before + and after both forward and backward movements, to handle both + front-sticky and rear-sticky cases. + * textprop.c (text_property_stickiness): Function moved here from + `editfns.c'. + * intervals.h (text_property_stickiness): New declaration. + * editfns.c (char_property_eq): Function removed. + (text_property_stickiness): Function moved to `textprop.c'. + +2002-03-13 Jason Rumney <jasonr@gnu.org> + + * config.in: Add STRFTIME_NO_POSIX2. + + * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX + and %OX when underlying strftime does not. + +2002-03-13 Stefan Monnier <monnier@cs.yale.edu> + + * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>: + Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per + line) to avoid annoying flicker. + (xm_scroll_callback): Get rid of the now unnecessary kludge. + (XTread_socket): Mark it static. + + * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup. + +2002-03-13 Kim F. Storm <storm@cua.dk> + + * puresize.h (BASE_PURESIZE): Increase to 775000. + +2002-03-12 Juanma Barranquero <lektu@terra.es> + + * editfns.c (syms_of_editfns): Fix typo. + +2002-03-12 Gerd Moellmann <gerd@gnu.org> + + * xsmfns.c: Include stdio.h because termhooks.h needs it. + Include termopt.h for interrupt_input. + +2002-03-11 Andreas Schwab <schwab@suse.de> + + * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix. + +2002-03-11 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (note_mouse_movement): Put code for + x_autoselect_window_p in #if 0. + + * lread.c (Fload): Don't assume that message_with_string uses the + string it is given like a C string. + +2002-03-10 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h (x_session_check_input, x_session_initialize): Declare. + + * xterm.c (XTread_socket): Add call to x_session_check_input and + x_session_have_connection. + (x_initialize): Add call to x_session_initialize. + + * termhooks.h (enum event_kind): Add save_session_event. + + * keyboard.c: Add Emacs event save_session_event. + + * emacs.c (main): Add call to syms_of_xsmfns. + + * lisp.h (syms_of_xsmfns): Declare extern. + + * config.in: Add HAVE_X_SM. + + * Makefile.in (LIBXT): Add -lSM -lICE + if HAVE_X_SM and not USE_X_TOOLKIT. + (XOBJ): New file xsmfns.c added. + + * xsmfns.c: New file for X session management. + +2002-03-09 Jason Rumney <jasonr@gnu.org> + + * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not + read-only when setting modified time. + +2002-03-08 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c (move_it_vertically_backward): At the end of the function, + when moving forward by lines, treat terminal frames specially. + + * keyboard.c (echo_char): Make sure to add a separator between + keys even if echo_dash hasn't been called. + + * xdisp.c: Use new string macros. + (update_echo_area): Pass number of bytes to message3 instead of + number of chars. + (set_message_1): Don't access a string's size_byte directly. + (decode_mode_spec_coding): Use number of bytes of eoltype string + instead number of chars. + + * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros. + +2002-03-08 Juanma Barranquero <lektu@terra.es> + + * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to + 24-bit. + +2002-03-06 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor. + +2002-03-06 Gerd Moellmann <gerd@gnu.org> + + * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now) + (cancel_echoing, echo_length, echo_truncate): Changed to + work with new kboard definition. + (echo_now): Use message3_nolog instead of message2_nolog. + + * alloc.c (mark_kboards): Mark echo_string. + + * keyboard.h (ECHOBUFSIZE): Removed. + (struct kboard): Member echoptr removed, member echobuf renamed + to echo_string. + + * xdisp.c (message_with_string): Use Fformat instead of doprnt and + message3 instead of message2 to display the message using STRING's + text properties. + +2002-03-05 Andreas Schwab <schwab@suse.de> + + * xdisp.c (hscroll_margin): Change to EMACS_INT. + +2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk> + + * frame.c (default-frame-alist): Explain that setting it doesn't + affect existing frames. + +2002-03-05 Stefan Monnier <monnier@cs.yale.edu> + + * indent.c (skip_invisible): Fix my brain fart. + + * dispnew.c (sit_for): Don't wait if executing a kbd macro. + +2002-03-04 Stefan Monnier <monnier@cs.yale.edu> + + * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c, + * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h, + * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c, + * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition + and variables to use EMACS_INT instead of just int. + + * buffer.c (syms_of_buffer): Allow non-string `mode-name'. + +2002-03-04 Eli Zaretskii <eliz@is.elta.co.il> + + * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the + environment, pass it down with corrected value. + +2002-03-04 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * lread.c (read_filtered_event): Do not call start_hourglass + before returning. + +2002-03-04 Juanma Barranquero <lektu@terra.es> + + * w32term.c (x_display_and_set_cursor): Fix typo. + +2002-03-03 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fmake_temp_name): Doc fix. + +2002-03-03 Gary Wong <gtw@gnu.org> + + * termcap.c [!emacs]: Replace ospeed for building standalone + libtermcap, for binary compatibility. + + * tparam.c [!emacs]: Move #define of bcopy to after string.h. + +2002-03-03 Richard M. Stallman <rms@gnu.org> + + * xrdb.c (file_p): Rename arg `path' to `filename'. + + * abbrev.c (Fexpand_abbrev): Increment plist as use count + only if it is an integer. + + * xfns.c (png_load): Set screen_gamma based on f->gamma. + If png_get_sRGB gives an answer, call png_set_gamma + using the default image gamma value. + + * lread.c (read1): When reading from a file, default string to + multibyte only if it has some multibyte characters. + + * print.c (print_object): Output multibyte chars 128...255 + using \x even if ! print_escape_multibyte. + + * xdisp.c (display_mode_element): Move the places where + bytepos, charpos, this, and lisp_string are set. + Use lisp_string to set bytepos. + + * xdisp.c (redisplay_internal): + Call clear_image_cache only if HAVE_WINDOW_SYSTEM. + + * xdisp.c (display_mode_element): Merge properties specified with + :propertize onto those that come with the string. + +2002-03-03 Eli Zaretskii <eliz@is.elta.co.il> + + * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from + automatic-hscrolling. Users changed. + <hscroll-margin>: Renamed from automatic-hscroll-margin. + Users changed. + <hscroll-step>: Renamed from automatic-hscroll-step. Users changed. + +2002-03-02 Eli Zaretskii <eliz@is.elta.co.il> + + * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix. + +2002-03-02 Kim F. Storm <storm@cua.dk> + + * window.c (Fminibuffer_selected_window): New function. + (syms_of_window): Defsubr it. + +2002-03-01 Kim F. Storm <storm@cua.dk> + + * window.h (struct window): New member phys_cursor_width. + + * window.c (make_window, replace_window): Init phys_cursor_width. + + * xterm.c (x_display_and_set_cursor): Blink box cursor using + hollow box cursor. Blink bar cursor using 1 pixel wide bar. + + * w32term.c (x_display_and_set_cursor): Blink box cursor using + hollow box cursor. Blink bar cursor using 1 pixel wide bar. + + * lisp.h (GCPRO6): New macro. + + * process.c (Fopen_network_stream): Use GCPRO6. + +2002-03-01 Kim F. Storm <storm@cua.dk> + + * process.c (Qconnect, Qfailed): New variables. + (syms_of_process): Intern and staticpro them. + (Fprocess_status): Document connect and failed return values. + [NON_BLOCKING_CONNECT]: New conditional. + (connect_wait_mask, num_pending_connects): New variables. + (status_message): Convert Qfailed status. + (Fopen_network_stream): Added support for non-blocking connect. + New optional args: filter, sentinel, non_blocking. Doc updated. + [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code. + (deactivate_process): Handle pending non-blocking connect. + (wait_reading_process_input): Poll for status of non-blocking + connects. Exec sentinel directly when connect succeeds. + (status_notify): Don't read process output if not yet connected. + +2002-02-28 Kim F. Storm <storm@cua.dk> + + * window.c (minibuf_selected_window): Renamed from + Vminibuf_selected_window. Users changed. + (syms_of_window): Staticpro it. + +2002-02-26 Kim F. Storm <storm@cua.dk> + + The following changes add a new Vminibuf_selected_window variable + which is similar to Vminibuf_scroll_window, but which is only set + on entry to the minibuffer (from a non-minibuffer window): + + * window.c (Vminibuf_selected_window): New variable. + (struct save_window_data): New member minibuf_selected_window. + (Fset_window_configuration): Restore Vminibuf_selected_window. + (Fcurrent_window_configuration): Save Vminibuf_selected_window. + Set minibuf_scroll_window member to nil if minibuf_level is 0. + (compare_window_configurations): Compare minibuf_selected_window. + + * window.h (Vminibuf_selected_window): Declare extern. + + * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first + entry to minibuffer or on entry from a non-minibuffer window. + + * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with + Vminibuf_selected_window instead of Vminibuf_scroll_window. + + * xdisp.c (init_iterator): Compare with Vminibuf_selected_window + instead of Vminibuf_scroll_window when deciding in which window + the region should be highlighted. Consequently, the region remains + highlighteded even when a completion buffer is also displayed. + +2002-02-26 Eli Zaretskii <eliz@is.elta.co.il> + + * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08. + + * xselect.c (Qcompound_text_with_extensions): Renamed from + Qcompound_text_no_extensions. + (lisp_data_to_selection_data, syms_of_xselect): Use the new name. + +2002-02-26 Juanma Barranquero <lektu@terra.es> + + * w32proc.c (syms_of_ntproc): Doc fix. + +2002-02-24 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * intervals.h: Include "dispextern.h" unconditionally. + +2002-02-24 Jason Rumney <jasonr@gnu.org> + + * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc + and disp-table.elc. + (lisp): Add emacs-lisp/backquote.elc. + +2002-02-24 Kim F. Storm <storm@cua.dk> + + * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch: + The validation of the event type was too strict as it didn't + allow string events; buffer names are used in bindings for + menu-bar-select-buffer (see `menu-bar-update-buffers'). + +2002-02-23 Kim F. Storm <storm@cua.dk> + + The following changes rework my patch of 2002-02-06 which + added command remapping by entering the commands directly into + the keymaps. Now, command remapping uses an explicit `remap' + prefix in the keymaps, i.e. [remap COMMAND]. + + * keymap.c (Qremap, remap_command_vector): New variables. + (is_command_symbol): Remove function. + (Fdefine_key): No longer accept a symbol for KEY. + Added validation of [remap COMMAND] argument for KEY. + The DEF is no longer required to be a symbol when remapping a command. + (Fremap_command): New function to remap command through keymaps. + (Flookup_key): Perform command remapping initiated by + Fremap_command directly for speed. + (Fkey_binding): Use Fremap_command for command remapping. + (where_is_internal): Handle new command remapping representation. + (syms_of_keymap): Intern Qremap, initialize remap_command_vector, + staticpro them. Defsubr Fremap_command. + + * keymap.h (Fremap_command): Declare extern. + (is_command_symbol): Remove extern. + + * keyboard.c (command_loop_1): Use Fremap_command for command + remapping; now try command remapping for all symbols. + +2002-02-23 Eli Zaretskii <eliz@is.elta.co.il> + + * coding.h (run_pre_post_conversion_on_str): Add prototype. + +2002-02-23 Jason Rumney <jasonr@gnu.org> + + * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion + on the string before encoding it. + (Fw32_get_clipboard_data): Run post-read-conversion on the string + after decoding it. + + * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change. + +2002-02-23 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * w32term.c (enter_timestamp): Remove unused static variable to + prevent warning. + + * xterm.c (enter_timestamp): Put in #if 0 to prevent warning. + +2002-02-23 Eli Zaretskii <eliz@is.elta.co.il> + + * w16select.c (Fw16_get_clipboard_data): Fix last change. + + * xselect.c (selection_data_to_lisp_data): Fix last change. + +2002-02-22 Jason Rumney <jasonr@gnu.org> + + * w32term.h (struct w32_output): New member menu_command_in_progress. + + * w32menu.c (menubar_selection_callback): Free the menu and + clear the menu_command_in_progress flag. + + * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize. + (menu_free_timer): New variable. + (MENU_FREE_ID, MENU_FREE_DELAY): New constants. + (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer. + <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a + menu command is in progress. + <WM_COMMAND>: Set the menu_command_in_progress flag. + Kill any menu_free_timer that is running. + + * w32term.c (w32_text_out): Renamed from W32_TEXTOUT. + Call ExtTextOutA rather than ExtTextOut. + +2002-02-22 Eli Zaretskii <eliz@gnu.org> + + * puresize.h (BASE_PURESIZE): Increase to 755000. + +2002-02-22 Eli Zaretskii <eliz@is.elta.co.il> + + * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion + on the string before encoding it. + (Fw16_get_clipboard_data): Run post-read-conversion on the string + after decoding it. + +2002-02-22 Eli Zaretskii <eliz@is.elta.co.il> + + Support for ICCCM Extended Segments in X selections: + + * xselect.c <Qcompound_text_no_extensions>: New variable. + (syms_of_xselect): Intern and staticpro it. + (selection_data_to_lisp_data): Run post-read-conversion on decoded + selection text. + (lisp_data_to_selection_data): If next-selection-coding-system is + compound-text-no-extensions, set the type of selection to be + compound-text. + + * xterm.h (x_encode_text): Update prototype. + + * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all + callers changed. If SELECTIONP is non-zero, run the + pre-write-conversion function before encoding the selection text. + +2002-02-21 Kim F. Storm <storm@cua.dk> + + * frame.c (syms_of_frame): Change mouse-highlight default to t. + + * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]: + Correct composing of language-change event. + +2002-02-20 Kim F. Storm <storm@cua.dk> + + * keyboard.c (menu_bar_items): Don't include keymap or local-map + bindings at PT when building menu (the menu is not updated often + enough for this to work reliable). + (tool_bar_items): Likewise. + (current_active_maps): Removed unused (and buggy) function. + +2002-02-20 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xfns.c (gif_load): Use correct width and height for GIF images. + +2002-02-19 Eli Zaretskii <eliz@is.elta.co.il> + + * floatfns.c (Fatan): Accept an optional second arg and call + atan2 if passed 2 args. + +2002-02-18 Jason Rumney <jasonr@gnu.org> + + * w32term.c (glyph_rect): Determine the row and glyph more precisely. + +2002-02-17 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_autoselect_window_p): New variable. + (syms_of_w32term): DEFVAR_BOOL and initialize it. + (note_mouse_movement): Use it. + + * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero. + + * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p. + + * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth): + New variables. + (syms_of_w32fns): Intern and staticpro them. + (x_frame_parms) <"fullscreen">: New parameter. + (x_fullscreen_move, x_set_fullscreen): New functions. + (x_set_frame_parameters): Support Qfullscreen. + (x_real_positions): Save x/y_pixels_diff frame params. + (x_figure_window_size): Support full-screen frames. + (Fx_create_frame): Default the fullscreen parameter. + + * w32term.c (x_check_fullscreen, x_check_fullscreen_move) + (x_fullscreen_adjust): New functions. + (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to + fullscreen. Call x_check_fullscreen_move, and set the + want_fullscreen member of output_data.w32 + <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen. + + * w32term.h: New enum for FULLSCREEN_* constants. + (struct w32_output): New members want_fullscreen, x_pixels_diff, + y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff. + (x-fullscreen-adjust): New prototype. + +2002-02-17 Kim F. Storm <storm@cua.dk> + + * frame.c (Vmouse_highlight): New variable. + (syms_of_frame): DEFVAR_LISP it. + + * frame.h (Vmouse_highlight): Declare extern. + + * xterm.h (struct x_display_info): Add mouse_face_hidden. + + * xterm.c (disable_mouse_highlight): Removed variable. + (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil. + (show_mouse_face): Don't show highlight if mouse_face_hidden is set. + (XTread_socket): Turn mouse_face_hidden off after mouse movement, + and on after keyboard input. + (x_term_init): Initialize mouse_face_hidden. + + * msdos.h (struct display_info): Add mouse_face_hidden. + + * msdos.c (disable_mouse_highlight): Removed variable. + (show_mouse_face): Don't show highlight if mouse_face_hidden is set. + (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil. + (internal_terminal_init): Initialize mouse_face_hidden. + (dos_rawgetc): Turn mouse_face_hidden off after mouse movement, + and on after keyboard input. + + * w32term.h (struct w32_display_info): Add mouse_face_hidden. + + * w32term.c (disable_mouse_highlight): Removed variable. + (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil. + (show_mouse_face): Don't show highlight if mouse_face_hidden is set. + (w32_read_socket): Turn mouse_face_hidden off after mouse movement, + and on after keyboard input. + (w32_initialize_display_info): Initialize mouse_face_hidden. + +2002-02-16 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (last_mouse_window): New variable. + (dos_rawgetc): Fix last change--if the mouse is in the same window + as recorded in last_mouse_window, don't select this window. + + * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el. + + * msdos.c (x_autoselect_window_p): New variable. + (syms_of_msdos): Defvar it. + (dos_rawgetc): If x_autoselect_window_p is set, select the window in + which the last mouse movement occured, unless it is already selected. + + * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step): + New variables. + (syms_of_xdisp): DEVFAR them. + (hscroll_window_tree): Use automatic_hscroll_margin and + Vautomatic_hscroll_step to compute the amount of window scrolling. + +2002-02-16 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xterm.c (x-autoselect-window): New variable. + (note_mouse_movement): Use it. + + * keyboard.c: Do not include "systime.h" twice. + +2002-02-15 Andreas Schwab <schwab@suse.de> + + * puresize.h (PURESIZE_RATIO): Increase to 9/5. + + * alloc.c (NSTATICS): Increase to 1280. + +2002-02-15 Kai Gro,A_(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> + + * alloc.c (NSTATICS): Bump to 1026. + + * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym) + (Vx_super_keysym): New variables. + (syms_of_xterm): DEFVAR_LISP them. + (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the + variables to determine which keys to use for the various modifiers. + +2002-02-13 Kim F. Storm <storm@cua.dk> + + * window.c (Vmode_line_in_non_selected_windows): Removed. + (mode_line_in_non_selected_windows): New variable. + (syms_of_window): DEFVAR_BOOL it. + + * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): + Use mode_line_in_non_selected_windows. + (mode_line_in_non_selected_windows): Declare extern. + (Vmode_line_in_non_selected_windows): Removed extern. + +2002-02-13 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector) + (Fthis_single_command_keys, Fthis_single_command_raw_keys) + (Fclear_this_command_keys): Doc fixes. + + * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face) + (update_face_from_frame_parameter): Increment face_change_count + and windows_or_buffers_changed to force redisplay using changed faces. + + * xdisp.c (QCpropertize): New variable. + (mode_line_proptrans_alist): New variable. + (display_mode_element): New arg PROPS; all calls changed. + Implement this, for strings. + Handle literal output of strings by sharing the + main-line code for strings, using local var `literal'. + Handle :propertize feature. + (syms_of_xdisp): Initialze and staticpro QCpropertize and + mode_line_proptrans_alist. + +2002-02-11 Kim F. Storm <storm@cua.dk> + + * window.c (Vmode_line_in_non_selected_windows): New variable. + (syms_of_window): DEFVAR_LISP it. + + * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro. + (CURRENT_MODE_LINE_FACE_ID): Use it. + (Vmode_line_in_non_selected_windows): Declare extern. + + * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3 + to get mode line face. + +2002-02-11 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these + variables; cus-start.el doesn't need them anymore. + +2002-02-09 Kim F. Storm <storm@cua.dk> + + * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap + reduction. This fixes a display problem where stray newlines were + inserted in the window (corrected by C-l). Clarified code (IMHO). + +2002-02-09 Eli Zaretskii <eliz@is.elta.co.il> + + * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change. + + * xdisp.c (display_mode_lines): Fix last change. + +2002-02-09 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows + match each other. + (w32_load_system_font): Prevent Cleartype fonts from loading. + (Fx_show_tip): Ensure tip frames are above other topmost windows. + +2002-02-09 Kim F. Storm <storm@cua.dk> + + * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro. + (CURRENT_MODE_LINE_HEIGHT): Use it. + (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID. + + * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID. + (pos_visible_p, handle_face_prop): Likewise. + (display_mode_lines): Likewise, but for the real selected window. + (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID. + + * xfaces.c (Qmode_line_inactive): New face variable for mode-line + in non-selected windows. + (realize_basic_faces): Realize it. + (syms_of_term): Intern and staticpro it. + +2002-02-08 Kim F. Storm <storm@cua.dk> + + * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK): + Changed mail addresses to emacs-devel@gnu.org. + +2002-02-08 Eli Zaretskii <eliz@is.elta.co.il> + + * fileio.c (Fsubstitute_in_file_name): If the file name includes + ~user, and there's no such user, don't discard everything before ~user. + + * floatfns.c (Fround): Doc fix. + +2002-02-08 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * sysdep.c (init_system_name): Put unused variable `p' in #if 0. + +2002-02-07 Stefan Monnier <monnier@cs.yale.edu> + + * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c). + +2002-02-07 Kim F. Storm <storm@cua.dk> + + * keymap.c (where_is_internal): Only check whether definition is + remapped if it fulfills is_command_symbol. + +2002-02-07 Andreas Schwab <schwab@suse.de> + + * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k. + + * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4. + +2002-02-06 Kim F. Storm <storm@cua.dk> + + * keymap.c (Fdefine_key): Allow symbol as KEY argument for + defining command remapping. Doc updated. + (Flookup_key): Remap command through keymap if KEY is a symbol. + (is_command_symbol): New function. + (Fkey_binding): Use it. New optional argument NO-REMAP. + Doc updated. Callers changed. Perform command remapping via + recursive call unless that arg is non-nil. + (where_is_internal): New argument no_remap. Callers changed. + Call recursively to find original key bindings for a remapped + comand unless that arg is non-nil. + (Fwhere_is_internal): New optional argument NO-REMAP. + Doc updated. Callers changed. Pass arg to where_is_internal. + + * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype. + (is_command_symbol): Add prototype. + + * keyboard.c (Vthis_original_command): New variable. + (syms_of_keyboard): DEFVAR_LISP it. + (command_loop_1): Set it, and perform command remapping. + +2002-02-06 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally. + +2002-02-06 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change. + +2002-02-06 Eli Zaretskii <eliz@is.elta.co.il> + + * charset.c (get_charset_id): Use if-else instead of ?:. + +2002-02-06 Richard M. Stallman <rms@gnu.org> + + * filelock.c (S_ISLNK): Define if not defined. + +2002-02-03 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg. + + * lread.c (read1): Redesign strategy for force_multibyte and + force_singlebyte. Now is_multibyte records whether read_buffer + is multibyte. Encountering any multibyte character makes it so. + +2002-02-02 Stefan Monnier <monnier@cs.yale.edu> + + * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and + with the same sequence, map that sequence to f10 rather than f0. + +2002-02-03 Andreas Schwab <schwab@suse.de> + + * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the + latter never being defined on GNU/Linux. + +2002-02-02 Eli Zaretskii <eliz@is.elta.co.il> + + * xfaces.c (realize_default_face): Don't set the weight and slant of + the default face to Qnormal, unless these attributes are unspecified. + +2002-02-02 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]: + Call cancel_hourglass unconditionally. + + * eval.c (Fsignal): Remove duplicated declaration of + the variable `display_hourglass_p'. + +2002-01-31 Richard M. Stallman <rms@gnu.org> + + * editfns.c (region_limit): Nicer error message. + + * coding.c (decode_composition_emacs_mule): + Give up if NCOMPONENT gets too large to index `component'. + + * callint.c (check_mark): New arg to specify clearer error message. + Callers changed. + +2002-01-27 Richard M. Stallman <rms@gnu.org> + + * minibuf.c (Fcompleting_read): Doc fix. + +2002-01-27 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function) + (Fread_variable, Fread_buffer, minibuffer-completion-confirm): + Fix doc-strings. + +2002-01-26 Richard M. Stallman <rms@gnu.org> + + * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively. + + * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively + and scroll_up_aggressively. + +2002-01-26 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes. + +2002-01-25 Stefan Monnier <monnier@cs.yale.edu> + + * textprop.c (Fnext_property_change, Fnext_single_property_change) + (Fprevious_property_change, Fprevious_single_property_change): + Stay within the narrowed-buffer boundaries. + +2002-01-25 Eli Zaretskii <eliz@is.elta.co.il> + + * term.c (Ftty_display_color_cells): New function. + (syms_of_term): Defsubr it. + (Ftty_display_color_cells, Ftty_display_color_p): Change the + argument name to DISPLAY. Doc fix. + + * dispextern.h: Add prototype for set_tty_color_mode and + tty_setup_colors. + +2002-01-24 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt. + If region left to draw is not what was expected, mark the frame as + garbaged. + + * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect. + Combine the regions returned by BeginPaint and GetUpdateRect. + +2002-01-23 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_update_window_begin): Only hide caret if + w32_use_visible_system_caret is set. + (x_update_window_end): Only show caret if + w32_use_visible_system_caret is set. + (syms_of_w32term): Handle SystemParametersInfo call failing. + + * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd. + +2002-01-22 Richard M. Stallman <rms@gnu.org> + + * unexelf.c (unexec): Define n so as to cause compilation error + for the code where people have often written n instead of nn. + + * .gdbinit (hookpost-run): Defined. + +2002-01-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_set_frame_parameters): Typo in previous fix corrected. + +2002-01-21 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust + if fullscreen is being set. + +2002-01-21 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * minibuf.c (Fminibuffer_contents) + (Fminibuffer_contents_no_properties, Fread_from_minibuffer) + (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes. + +2002-01-21 Richard M. Stallman <rms@gnu.org> + + * window.c (check_frame_size): Fix minimum height calculation. + +2002-01-20 Ken Raeburn <raeburn@gnu.org> + + * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window + height before comparison. + (WINDOW_WANTS_HEADER_LINE_P): Likewise. + +2002-01-20 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_system_caret_width): Remove. + (w32_use_visible_system_caret): New user flag. + (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether + Windows reports a screen reader running. + (x_update_window_begin): Hide the system caret. + (x_update_window_end): Show the system caret. + (x_display_and_set_cursor): Don't draw a cursor when + w32_use_visible_system_caret is set. Do not adjust width. + + * w32fns.c (w32_visible_system_caret_hwnd): New static variable. + (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it. + <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if + the user requests it. Use system default width when creating. + <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages. + + * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET): + New window messages. + +2002-01-20 Richard M. Stallman <rms@gnu.org> + + * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1. + +2002-01-20 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * doprnt.c (doprnt1): Fix typos in error call. + +2002-01-20 Eli Zaretskii <eliz@is.elta.co.il> + + * unexelf.c (unexec) [__sgi]: Support the .got sections. + +2002-01-20 Jason Rumney <jasonr@gnu.org> + + * w32term.c (w32_native_per_char_metric): Don't trust the metrics + that Windows returns. If a double check fails, try to guess how + ExtTextOut is going to act. + + * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp + in place of stricmp. + (w32_list_synthesized_fonts): Removed. + (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions. + (struct enumfont_t): New element; list. + (enum_font_cb2): List all style and charset variations of a font. + (Fw32_select_font): New optional argument; include_proportional. + Exclude vertical fonts. Exclude proportional fonts unless + include_proportional is non-nil. + (w32_enable_synthesized_fonts): Change to a boolean. + (Fw32_send_sys_command): Doc fix. + +2002-01-19 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * dispnew.c (update_frame): Move the variable `tem' to the block + where it is used. + +2002-01-19 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around + call to face-set-after-frame-default. + +2002-01-18 Richard M. Stallman <rms@gnu.org> + + * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1. + (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room. + +2002-01-17 Richard M. Stallman <rms@gnu.org> + + * window.c (enlarge_window): When exceeding size of parent, + directly delete all the siblings instead of trying to resize it. + +2002-01-17 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * term.c (set_tty_color_mode): Remove unused variable `tem'. + +2002-01-16 Henrik Enberg <henrik@enberg.org> + + * lread.c (init_lread): Move the installed-lisp dirs later in the path. + +2002-01-16 Kim F. Storm <storm@cua.dk> + + * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row + is invisible. This can happen if cursor is on top line of a + window, and we switch to a buffer with a header line. + + * w32term.c (x_erase_phys_cursor): Ditto. + +2002-01-16 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of + `dont_resize' only when used. + + * xdisp.c: Remove forgotten extern declaration of `Qimage'. + +2002-01-15 Eli Zaretskii <eliz@is.elta.co.il> + + * xdisp.c (display_mode_element): When computing charpos, depend + on multibyteness of elt, not the text in field. + +2002-01-15 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * buffer.c (Fkill_all_local_variables): + Increment `update_mode_lines' only once. + +2002-01-14 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * lisp.h (adjust_after_replace_noundo) + (Fupdate_coding_systems_internal): Add prototypes. + + * sound.c (Fplay_sound): Initialize header_size also for :data case. + +2002-01-14 Eli Zaretskii <eliz@is.elta.co.il> + + Support for the --color command-line argument and tty-color-mode + frame parameter: + + * term.c (tty_default_color_capabilities, tty_setup_colors) + (set_tty_color_mode): New functions. + (term_init): Call tty_default_color_capabilities. + (Qtty_color_mode_alist): New variable. + (syms_of_term): Intern and staticpro it. + + * frame.c (store_frame_param): Call set_tty_color_mode for termcap + frames. + (do_switch_frame): For termcap frames, switch the tty + color mode as specified by the frame's parameters. + (Qtty_color_mode): New variable. + (syms_of_frame): Intern and staticpro it. + + * emacs.c (USAGE2): Add the --color option. + (standard_args): Ditto. + +2002-01-13 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xterm.h (struct x_output): New members want_fullscreen, + x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and + y_pixels_outer_diff. + New enum for FULLSCREEN_* constants. + (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget + is NULL. + (x_fullscreen_adjust): Add prototype. + + * emacs.c (USAGE2): Add the new full-screen arguments. + (standard_args): Ditto. + + * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth): + New variables. + (syms_of_xfns): Intern and staticpro them. + (x_frame_parms) <"fullscreen">: New parameter. + (x_fullscreen_move, x_set_fullscreen): New functions. + (x_set_frame_parameters): Support for Qfullscreen. + (x_real_positions): More accurate computation of the frame position. + (x_figure_window_size): Support full-screen frames. + (Fx_create_frame): Default the fullscreen parameter. + + * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions. + (XTread_socket) <Expose>: Call x_check_fullscreen. + <ConfigureNotify>: Don't resize to fullscreen. + Call x_check_fullscreen_move, and set the want_fullscreen member of + output_data.x. + +2002-01-13 Jason Rumney <jasonr@gnu.org> + + * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages + for mice with more than 3 buttons. + + * w32term.c (parse_button): New parameter xbutton. Callers changed. + (w32_read_socket): Handle new "XBUTTON" messages. + + * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option. + (syms_of_w32fns): DEFVAR_BOOL it. + (w32_wnd_proc): Handle new "XBUTTON" messages. + +2002-01-13 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'. + +2002-01-13 Andreas Schwab <schwab@suse.de> + + * xterm.c (x_load_font): Never set fonts_changed_p to zero. + +2002-01-12 Andreas Schwab <schwab@suse.de> + + * .gdbinit (xbuffer): Remove address operator since data is now a + pointer. + +2002-01-11 Richard M. Stallman <rms@gnu.org> + + * insdel.c (adjust_after_replace_noundo): New function. + + * coding.c (code_convert_region): Don't copy old text if undo disabled. + +2002-01-09 Jason Rumney <jasonr@gnu.org> + + * xdisp.c (x_consider_frame_title): Don't count the tooltip frame + when checking for multiple frames. + +2002-01-08 Richard M. Stallman <rms@gnu.org> + + * window.c (delete_window): Rewrite the code for changing the + selected window to handle the case where WINDOW is not a leaf. + +2002-01-07 Eli Zaretskii <eliz@is.elta.co.il> + + * process.c (send_process): Set src_multibyte to 1 after the call + top setup_coding_system, not before the call. + +2002-01-07 Jason Rumney <jasonr@gnu.org> + + * xmenu.c (set_frame_menubar, xmenu_show): + (xdialog_show): Initialize wv->help to Qnil. + + * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show): + (w32_dialog_show): Initialize wv->help to Qnil. + +2002-01-06 Jason Rumney <jasonr@gnu.org> + + * xmenu.c (single_submenu): Initialize wv->help to Qnil. + + * w32menu.c (w32_menu_display_help): Revert last change. + + * xmenu.c (menu_highlight_callback): Revert last change. + +2002-01-06 Andreas Schwab <schwab@suse.de> + + * insdel.c (make_gap_larger): Make sure buffer size does not + overflow range of int. + +2002-01-05 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if + OVERLAPS_P. + + * w32menu.c (w32_menu_display_help): Hide any tooltip window. + + * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen + to the left or to the right of the pointer, put it against + the left screen edge. + (x_frame_parms): Add missing braces around initializer. + + * w32term.c (x_setup_relief_colors): Don't compute an image's + background color if it doesn't have a Pixmap. + (notice_overwritten_cursor): Don't depend on + output_cursor and updated_area. Compare pixel coordinates with + window's cursor pixel coordinates. + (x_draw_glyphs, x_clear_end_of_line, show_mouse_face): + Call notice_overwritten_cursor with new arg list. + (show_mouse_face): Fix bug setting a row's mouse_face_p flag + unconditionally. + (x_draw_image_relief): Use predefined macro instead of + constant when the value of `tool_bar_button_relief' is negative. + + * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types. + +2002-01-04 Richard M. Stallman <rms@gnu.org> + + * xmenu.c (menu_highlight_callback): Hide any tooltip window. + +2002-01-03 Richard M. Stallman <rms@gnu.org> + + * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first. + (Fkey_binding): Try the `keymap' property map first. + (Fdescribe_buffer_bindings): Show `keymap' property bindings before + minor mode bindings. + +2002-01-03 Kim F. Storm <storm@cua.dk> + + * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy. + +2002-01-02 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (read_key_sequence): Handle the keymap property + before minor mode maps. + + * editfns.c (Fformat): Update thissize from field_width + based on the actual width, in the string case. + +2002-01-01 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment + when used as truth value to prevent gcc warnings. + + * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c, + * w32proc.c: Include <config.h>. + +2002-01-01 Andreas Schwab <schwab@suse.de> + + * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int, + not EMACS_INT, to make them compatible with DEFVAR_INT. + * lisp.h (max_specpdl_size): Adjust declaration. + +2002-01-01 Richard M. Stallman <rms@gnu.org> + + * print.c (print_object): Test print_escape_nonascii only for + unibyte strings. + (PRINTPREPARE): Once again bind Qprint_escape_nonascii + when outputting to a multibyte buffer. + +2001-12-29 Richard M. Stallman <rms@gnu.org> + + * print.c (print_object): In multibyte string, use hex escapes. + Use octal only for unibyte strings. + (PRINTPREPARE): Don't ever set Qprint_escape_nonascii. + + * lread.c (read_escape): New arg BYTEREP for reporting whether + escape forces unibyte or multibyte. + (read1): When reading a string, take note of that info. + +2001-12-29 Ken Raeburn <raeburn@gnu.org> + + * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero + comparison to test lisp value returned by Fget. + +2001-12-29 Richard M. Stallman <rms@gnu.org> + + * lisp.h (max_specpdl_size): Add declaration. + + * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message. + + * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key. + Handle modifier bits. Correct typo in error message. + +2001-12-28 Richard M. Stallman <rms@gnu.org> + + * abbrev.c: Use the plist of an abbrev for multiple params if nec. + (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev. + (Fdefine_global_abbrev, Fdefine_mode_abbrev): + Update calls to Fdefine_abbrev. + (write_abbrev): Update for changed data format. + Don't list "system" abbrevs. + (Fexpand_abbrev): Update use count with new data format. + (describe_abbrev): Update for changed data format. + (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG. + + * config.in (HAVE_MBSINIT): Add #undef. + + * strftime.c (mbsinit): Define as no-op if not available. + + * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen. + (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE. + + * keymap.c (Flookup_key): Error message if key has wrong data type. + (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc. + (exclude_key): New variable. + +2001-12-28 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_setup_relief_colors): Don't compute an image's + background color if it doesn't have a Pixmap. + + * xterm.c (notice_overwritten_cursor): Don't depend on + output_cursor and updated_area. Compare pixel coordinates with + window's cursor pixel coordinates. + (x_draw_glyphs, x_clear_end_of_line, show_mouse_face): + Call notice_overwritten_cursor with new arg list. + (show_mouse_face): Fix bug setting a row's mouse_face_p flag + unconditionally. + + * xdisp.c (try_scrolling) <PT below scroll margin>: Add the + height of the cursor line to the amount to scroll. + +2001-12-27 Richard M. Stallman <rms@gnu.org> + + * intervals.c (set_point_both): The position after an invisible, + intangible character is not an acceptable stopping point. + +2001-12-27 Ken Raeburn <raeburn@gnu.org> + + * window.c (enlarge_window): In new preserve_before code, convert + CURBEG from lisp object to integer before doing arithmetic. + +2001-12-27 Richard M. Stallman <rms@gnu.org> + + * bytecode.c (Fbyte_code): Undo previous change. + +2001-12-26 Kim F. Storm <storm@cua.dk> + + * keyboard.c (record_char): Ignore duplicate help-echo events only + separated by mouse-movement. When tracking mouse, only record + first and last mouse-movement event in same window. + Don't record mouse-movement events in keyboard macros. + +2001-12-25 Richard M. Stallman <rms@gnu.org> + + * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed. + (Fenlarge_window): New arg PRESERVE_BEFORE. + + * bytecode.c (Fbyte_code): Use Fstring_make_unibyte + instead of Fstring_as_unibyte. + +2001-12-22 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + The following changes remove mocklisp support: + + * mocklisp.h, mocklisp.c: Files removed. + + * lisp.h: Remove declarations of variables `Vmocklisp_arguments', + `Qmocklisp' and `Qmocklisp_arguments'. + Remove prototype of syms_of_mocklisp. + + * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files. + + * callint.c: Do not include mocklisp.h. + (Fcall_interactively): Do not test for mocklisp case. + + * eval.c: Remove variables `Qmocklisp_arguments', + `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply. + (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda): + Do not test for mocklisp case. + (Fwhile): Remove unused variable `tem'. + (syms_of_eval): Remove variable `moclisp-arguments'. + + * data.c (wrong_type_argument): Remove mocklisp case. + + * doc.c (Fdocumentation): Remove mocklisp case. + + * emacs.c (main): Do not call syms_of_mocklisp. + +2001-12-21 Richard M. Stallman <rms@gnu.org> + + * xfns.c (compute_tip_xy): If tooltip won't fit on the screen + to the left or to the right of the pointer, put it against + the left screen edge. + +2001-12-21 Eli Zaretskii <eliz@is.elta.co.il> + + * Makefile.in (distclean): Remove .gdbinit if we are building + outside the source tree. + +2001-12-19 Eli Zaretskii <eliz@is.elta.co.il> + + * w32.c (emacs_root_dir): New function. + + * msdos.c (emacs_root_dir): New function. + + * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory + of the current drive as the fallback for default_directory. + + * dired.c (file_name_completion): Run the elements of + completion-ignored-extensions through ENCODE_FILE. + + * lisp.h (scmp): Remove prototype, since it's now a static + function private to dired.c. + +2001-12-18 Richard M. Stallman <rms@gnu.org> + + * dired.c (scmp): Function moved from minibuf.c. + Delete multibyte handling--used only on encoded strings. + + * minibuf.c (scmp): Function moved to dired.c. + + * fns.c (merge): Add QUIT call. + +2001-12-18 Dave Love <fx@gnu.org> + + * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el, + language/georgian.el. + +2001-12-18 Eli Zaretskii <eliz@is.elta.co.il> + + * Makefile.in (lisp, shortlisp): Synchronize with changes to + lisp/Makefile.in:DONTCOMPILE. + +2001-12-18 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xdisp.c (window_box_height): Do not return negative values. + From Gerd Moellmann <gerd@gnu.org>. + + * keyboard.c (head_table): Add missing braces around initializer. + + * term.c (keys): Likewise. + + * xfns.c (x_frame_parms, visual_classes): Likewise. + +2001-12-17 Sam Steingold <sds@gnu.org> + + * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last + patch (COMPOSING_P, not COMPOSING). + +2001-12-17 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop. + + * coding.c (code_convert_region): Update coding->cmp_data->char_offset + before calling decode_coding. + + * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal. + + * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding) + instead of only for COMPOSITION_DISABLED. + +2001-12-16 Richard M. Stallman <rms@gnu.org> + + * alloc.c (pure_alloc): After overflow, allocate just a small block. + + * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h. + + * buffer.h (struct buffer): New field `display_error_modiff'. + * buffer.c (reset_buffer): Initialize `display_error_modiff'. + + * window.c (Frecenter): Clear display_error_modiff field. + + * xdisp.c (redisplay_window_0, redisplay_window_1): New functions. + Call redisplay_window, but not if display_error_modiff field says no. + (redisplay_window_error): New function. + (displayed_buffer): New variable. + (redisplay_internal, redisplay_windows): Call the new functions + instead of redisplay_window directly. + +2001-12-15 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix. + +2001-12-14 Andrew Innes <andrewi@gnu.org> + + * makefile.w32-in (EMACSLOADPATH): Define. + ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs. + (bootstrap-temacs): Remove dependency on bootstrap-clean. + +2001-12-13 Eli Zaretskii <eliz@is.elta.co.il> + + * xfns.c (x_report_frame_params): Make the scroll-bar-width frame + parameter have a numeric value all the time. + + * w32fns.c (x_report_frame_params): Likewise. + +2001-12-12 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fwrite_region): Doc fix. + + * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500. + (redisplay_internal): Call clear_image_cache only for window terminals. + +2001-12-12 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c (move_it_vertically_backward): Change heuristic + for the case that we didn't move far enough initially. + + * window.c (Frecenter): Simplify computation in the case of window + system frames and ARG < 0; use window_box_height. + +2001-12-11 Richard M. Stallman <rms@gnu.org> + + * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c: + * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX. + +2001-12-11 Andrew Innes <andrewi@gnu.org> + + * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if + arg is negative. + +2001-12-11 Richard M. Stallman <rms@gnu.org> + + * m/hp800.h: Split the __hpux conditional into the parts + that are right for GNU/Linux too and the parts that are not. + Use the former if GNU_LINUX. + (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux. + + * s/gnu-linux.h (GNU_LINUX): Defined. + +2001-12-11 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * macros.c, msdos.c, w16select.c: Change doc-string comments to + `new style' [w/`doc:' keyword]. + +2001-12-10 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (w32_free_submenu_strings): Clear menu item struct + before using. + +2001-12-09 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * dosfns.c: Change doc-string comments to `new style' [w/`doc:' + keyword]. + +2001-12-09 Eli Zaretskii <eliz@is.elta.co.il> + + * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix. + + * s/hpux10.h (srand48): Don't undefine. + +2001-12-09 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (_widget_value): Make `help' field a Lisp_Object. + Add comment to explain where the struct came from. + (single_submenu, w32_menu_show): Set `help' field as Lisp_Object. + (add_menu_item): Process pop-up menus first to avoid memory leak. + (add_menu_item, w32_menu_display_help): Use `help' field as + Lisp_Object. + (w32_free_submenu_strings): Only free owner-drawn strings. + +2001-12-09 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * COPYING: Moved back. + + * charset.c (char_to_string_1, translate_char, Fdefine_charset): + Add parentheses around && within ||. + + * indent.c (compute_motion): Likewise. + + * intervals.c (merge_properties_sticky): Likewise. + + * coding.c (setup_coding_system, shrink_encoding_region) + (Fdecode_sjis_char): Likewise. + +2001-12-07 Andreas Schwab <schwab@suse.de> + + * xdisp.c (display_mode_element): Don't read past end of string if + it ends with '%'. + + * alloc.c (inhibit_garbage_collection): Don't exceed value an int + can hold. + + * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum): + Rename from most_positive_fixnum and most_negative_fixnum, resp., and + type changed to Lisp_Object. + (syms_of_data): DEFVAR_LISP them. + +2001-12-07 Richard M. Stallman <rms@gnu.org> + + * callproc.c (init_callproc): Set Vdata_directory based on the source + location whenever Emacs was run uninstalled. + +2001-12-06 Paul Eggert <eggert@twinsun.com> + + * config.in (HAVE_WORKING_VFORK): New #undefs. + * process.c (create_process): + Use HAVE_WORKING_VFORK, not HAVE_VFORK. + * m/cnvrgnt.h (HAVE_VFORK): Remove #define. + * m/ibm370aix.h (HAVE_VFORK): Remove #undef. + * m/ibmps2-aix.h (HAVE_VFORK): Remove #define. + * m/intel386.h (HAVE_VFORK): Likewise. + * m/mips-siemens.h (HAVE_VFORK): Likewise. + * m/mips.h (HAVE_VFORK): Likewise. + * s/freebsd.h (vfork): Remove #define. + * s/lynxos.h (HAVE_VFORK): Remove #undef. + * s/usg5-4-2.h: Fix comment about vfork. + +2001-12-06 Richard M. Stallman <rms@gnu.org> + + * s/hpux10.h (random): Add undef. + (HAVE_RANDOM): Define it just once. + +2001-12-06 Stefan Monnier <monnier@cs.yale.edu> + + * eval.c: Undo last change: the standard syntax is not wanted. + +2001-12-06 Eli Zaretskii <eliz@is.elta.co.il> + + * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the + scroll bars of the frame before deleting the frame itself. If the + frame has a widget, delete the frame with XtDestroyWidget, and do + not call XDestroyWindow before that. + +2001-12-06 Kim F. Storm <storm@cua.dk> + + * xfns.c (x_report_frame_params): Return actual fringe widths. + + * w32fns.c (x_report_frame_params): Return actual fringe widths. + +2001-12-05 Andrew Innes <andrewi@gnu.org> + + * alloc.c (Fgarbage_collect): Shrink buffer gaps that are + excessively large. + + * insdel.c (make_gap_larger): New function. + (make_gap_smaller): New function. + (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]: + Call make_gap_smaller if arg is negative. + +2001-12-04 Stefan Monnier <monnier@cs.yale.edu> + + * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype. + Pass a dummy argument when calling interrupt_signal. + (parse_menu_item): Mark disabled items before checking for empty def. + (read_char_minibuf_menu_prompt): Make safety more visible. + (read_key_sequence): Add a `first_unbound' variable. + Use it to detect C-c ESC ESC ESC ESC ... cases and drop the + unbound prefix as soon as we can detect it. + + * doc.c (Fsnarf_documentation): Add prototype. + (get_doc_string): Handle negative arguments. + (Fdocumentation): Use AREF and ASIZE. + Move the calls to get_doc_string to a single place. + Don't confuse an interactive-spec for a docstring reference. + (Fdocumentation_property): Take advantage of the fact that + get_doc_string now ignores the sign of the docstring position. + + * eval.c: Use standard syntax for usage in docstrings. + +2001-12-03 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option. + +2001-12-02 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xterm.c (x_draw_image_relief): Use predefined macro instead of + constant when the value of `tool_bar_button_relief' is negative. + +2001-12-02 Richard M. Stallman <rms@gnu.org> + + * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object. + (single_submenu, xmenu_show): Set `help' field as Lisp_Object. + + * fileio.c (read_non_regular): Delete Fsignal call. + +2001-12-01 Stefan Monnier <monnier@cs.yale.edu> + + * lisp.h (run_hook_list_with_args): Undo last change. + +2001-12-01 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_draw_fringe_bitmap): Always undo clipping. + +2001-12-01 Jason Rumney <jasonr@gnu.org> + + * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c. + + * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT) + [!WM_MOUSELEAVE]: Define. + + * w32menu.c (current_popup_menu, get_menu_item_info): + (set_menu_item_info): New vars. + (set_frame_menubar): Doc fix clarifying GC interaction with menus. + (w32_menu_show): Set current_popup_menu. + (add_menu_item): Allocate new strings for owner-drawn menu items + and help strings. + Use owner-draw for disabled menu items again. + (w32_menu_display_help): Ignore owner-drawn items and popup menus. + (w32_free_submenu_strings, w32_free_menu_strings): New functions. + + * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars. + (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame. + <WM_EXITMENULOOP>: Free menu strings. + <WM_MOUSELEAVE>: Stop tracking mouse. + (x_create_tip_frame): Specify no minibuffer, modeline or fringes. + + * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo + and mouse face. + +2001-12-01 Kim F. Storm <storm@cua.dk> + + The following changes add left-fringe and right-fringe + frame parameters to adjust fringe widths, or remove one or + both fringes. + + * frame.h (struct frame): Remove trunc_area_pixel_width and + trunc_area_cols fields. + (Qleft_fringe, Qright_fringe): Declare. + (FRAME_RIGHT_FRINGE_WIDTH): New macro. + + * frame.c (Qleft_fringe, Qright_fringe): New vars. + (syms_of_frame): Initialize them. + + * window.c (coordinates_in_window): Handle separate left and right + fringe widths. + + * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width, + and fringe_cols fields. + (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros. + (FRAME_X_FRINGE_COLS): Use fringe_cols field. + (FRAME_X_FRINGE_WIDTH): Use fringes_extra field. + (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field. + (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field. + (x_compute_fringe_widths): Add prototype. + + * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to + fill fringe evenly with small dashes. + (x_draw_fringe_bitmap): Clear background if necessary. Align and + clip the new ZV bitmap to avoid jitter between rows. + (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear + background. Don't draw fringe bitmaps if fringe width is zero. + (x_compute_fringe_widths): New function. + (x_new_font, x_set_window_size_1): Use it. + + * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms. + (x_set_frame_parameters): Process `font' parameter before other + parameters as fringe widths depend on it. + (x_set_fringe_width): New function. + (x_figure_window_size): Use x_compute_fringe_widths. + (Fx_create_frame): Process `left-fringe' and `right-fringe' frame + parameters. + + * widget.c (set_frame_size): Use x_compute_fringe_widths. + (EmacsFrameSetCharSize): Ditto. + + * w32term.h: Merged changes from xterm.h. + * w32term.c: Merged changes from xterm.c. + * w32fns.c: Merged changes from xfns.c. + +2001-11-29 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * COPYING: Removed. + +2001-11-29 Dave Love <fx@gnu.org> + + * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an + extra extra slot. + (detect_coding_mask): Fix call of detect_coding_iso2022. + +2001-11-29 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * fileio.c (file-name-coding-system) + (default-file-name-coding-system): Doc fix (links to referenced + variables added). + +2001-11-28 Stefan Monnier <monnier@cs.yale.edu> + + * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5): + Add dummy uses of gcproN variables. + + * category.c (describe_category, describe_category_1) + (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.) + (syms_of_category): Don't defsubr Sdescribe_categories. + +2001-11-28 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'. + + * Makefile.in (lispdir): New variable, referring to build dir. + (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource). + +2001-11-28 Andrew Innes <andrewi@gnu.org> + + * w32menu.c (w32_menu_display_help): Actually add the new argument + OWNER. + +2001-11-28 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (add_menu_item): Do not use owner-draw for disabled + menu items. From David Ponce <dponce@wanadoo.fr>. + (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function + conditionally. + (w32_menu_display_help): New argument OWNER. Rewritten to store a + help event in the owner frame's keyboard buffer. + + * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly. + (Fx_show_tip): Don't subtract last width from row width. + + * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove. + (w32_read_socket): Use EQ to compare frames. + +2001-11-28 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if + OVERLAPS_P. + +2001-11-28 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xdisp.c (message_dolog): Remove unused variables `gcpro2', + `gcpro3' and `gcpro4'. + + * coding.c (decode_coding_string): Remove unused variable `gcpro1'. + +2001-11-28 Stefan Monnier <monnier@cs.yale.edu> + + * ccl.c: Use AREF and ASIZE. + +2001-11-27 Stefan Monnier <monnier@cs.yale.edu> + + * lisp.h (run_hook_list_with_args): Remove. + (LIST_END_P): Fix call to wrong_type_argument. + (make_fixnum_or_float): Use EMACS_INT rather than int. + +2001-11-26 Stefan Monnier <monnier@cs.yale.edu> + + * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax. + (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove. + + * eval.c: Use AREF and ASIZE. + (Ffetch_bytecode): Add the file name to the error message. + + * fileio.c (Ffind_file_name_handler): Give precedence to handlers + which match the end of the file-name. + (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR + is not a valid env var, but leave it as is instead. + + * keymap.c (access_keymap): Handle t bindings like nil bindings. + Make nil bindings in char-tables transparent. + (store_in_keymap): Turn a nil binding into a t binding for char-tables. + +2001-11-26 Richard M. Stallman <rms@gnu.org> + + * textprop.c (set_text_properties_1): Allow START, END in either order. + Do nothing if range is empty. + + * Makefile.in (mallocobj): Simplify logic using auxiliary vars. + + * Makefile.in (mostlyclean): Delete bootstrap-emacs here. + (clean): Not here. + +2001-11-25 Stefan Monnier <monnier@cs.yale.edu> + + * textprop.c (set_text_properties_1): Clearly mark that the + interval should not be empty. + + * intervals.c (graft_intervals_into_buffer): + Don't call set_text_properties_1 on an empty interval. + +2001-11-25 Richard M. Stallman <rms@gnu.org> + + * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss". + + * callproc.c (Fcall_process): When we make a bigger buffer for bufptr, + don't lose the data in it. + +2001-11-25 Juanma Barranquero <lektu@terra.es> + + * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks. + + * buffer.c (Fkill_buffer): Likewise. + + * print.c (temp_output_buffer_setup): Likewise. + +2001-11-25 Stefan Monnier <monnier@cs.yale.edu> + + * xfaces.c (merge_face_heights): Coerce back to int explicitly. + +2001-11-25 Eli Zaretskii <eliz@is.elta.co.il> + + * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi + Niemitalo <kon@iki.fi>. + +2001-11-25 Jason Rumney <jasonr@gnu.org> + + * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames. + + * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0. + (Fx_show_tip): Block input during frame creation. + (Fx_show_tip, Fx_hide_tip): Enable. + +2001-11-24 Richard M. Stallman <rms@gnu.org> + + * lread.c (Fload): Detect recursive load error for more than 3 + nestings of the same file. + (Vrecursive_load_depth_limit): Variable deleted. + (syms_of_lread) <recursive-load-depth-limit>: Variable deleted. + +2001-11-24 Jason Rumney <jasonr@gnu.org> + + * xfns.c (compute_tip_xy): Initialize root_x and root_y from + mouse position if either left or top is not specified. + + * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change. + <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction. + (my_create_tip_window, Fx_show_tip): Adjust size for external border. + (my_create_tip_window): Assign tip_window. + (x_create_tip_frame): Use same defaults as X. + (compute_tip_xy): Remove unused variable. Use full screen width. + (Fx_show_tip): Do not double height. Call ShowWindow directly. + + * w32term.c (x_after_update_window_line): Doc fix. + (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip + frames. + <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame. + + * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame + for all Windowed systems. + +2001-11-23 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.c (IT_clear_screen): If the frame's faces are not yet + realized, use the initial screen colors to clear the screen. + +2001-11-23 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * textprop.c (Fset_text_properties): Remove unused variables + `unchanged', `prev_changed', `s' and `len'. + + * search.c (Freplace_match): Remove unused variable `inslen'. + + * keymap.c (access_keymap): Remove unused variables `c1' and `c2'. + +2001-11-22 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment. + (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly. + (my_create_tip_window): New function. + (x_create_tip_frame, compute_tip_xy): Adapt for Windows. + (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows. + +2001-11-20 Jason Rumney <jasonr@gnu.org> + + * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove. + (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system. + + * w32fns.c (Vw32_system_coding_system): Remove. + (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system. + +2001-11-19 Stefan Monnier <monnier@cs.yale.edu> + + * fileio.c (Fwrite_region): Move choose_write_coding_system to + after build_annotations. + + * syntax.c (describe_syntax): Add dummy arg. + (describe_syntax_1): Update call to describe_vector. + + * category.c (describe_category): Add dummy arg. + (describe_category_1): Update call to describe_vector. + + * keymap.c (Fdescribe_vector): Add `describer' parameter. + (describe_command, describe_translation): Add dummy second param. + (describe_map): Call elt_describer with two arguments. + (describe_vector_princ): Add `fun' parameter. + Call it instead of the hardcoded `princ'. + (describe_vector): Add arg `args'. + Pass it as a new second argument to elt_describer. + + * keymap.h (describe_vector): Update prototype. + + * frame.c: Don't include keymap.h any more. + (keys_of_frame): Remove. + + * lisp.h (keys_of_frame): Remove declaration. + + * emacs.c (main): Don't call `keys_of_frame' any more. + +2001-11-14 Andreas Schwab <schwab@suse.de> + + * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS + if defined, 0 otherwise. + (MAP_FAILED): Define if not defined and use it to test mmap failure. + (unexec) [!MAP_ANON]: Use /dev/zero as file to map. + +2001-11-19 Richard M. Stallman <rms@gnu.org> + + * indent.c (current_column_1): Fix handling of scan_bytes for mb chars. + +2001-11-18 Jason Rumney <jasonr@gnu.org> + + * w32term.c (note_mouse_highlight): Fix type of variable `ignore'. + (x_draw_bar_cursor): If the background color of the glyph under + the cursor equals the frame's cursor color, use the glyph's + foreground color for drawing the bar cursor. + (x_after_update_window_line): Clear internal border in different + circumstances. + (w32_set_vertical_scroll_bar): Check for width and height > 0. + (w32_draw_relief_rect): Correct relief by 1 pixel. + (x_set_glyph_string_background_width): + Set extends_to_end_of_line_p if the row's fill_line_p is set and + drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}. + (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR + if cursor_in_non_selected_windows is false. + (show_mouse_face): Clean up. Recognize overwritten cursor differently. + (x_draw_glyphs): Remove parameters REAL_START and REAL_END. + Notice if cursor gets overwritten. + (notice_overwritten_cursor): Renamed from + note_overwritten_text_cursor. Rewritten to take glyph widths + into account, and to take X positions as parameters. + (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p + around call to x_draw_glyphs. + (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and + `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background + color to use for image glyph reliefs. + (x_draw_image_relief): Accept zero tool_bar_button_relief. + (glyph_rect): Remove unused variable `area'. + + * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for + some items. + (x_set_internal_border_width): Set frame garbaged when window + doesn't exist yet. + (Fx_create_frame): Accept zero tool_bar_button_relief. + (x_clear_image_1, four_corners_best, image_background) + (image_background_transparent): New functions. + (xpm_format, png_format, jpeg_format, tiff_format, gif_format) + (gs_format): Add `:background' entry. + (lookup_image): Set IMG's background color if specified. + (pbm_load, xbm_load_image, png_load): Set IMG's background field + when appropriate. + (x_clear_image_1): Reset `background_valid' and + `background_transparent_valid' fields. + (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of + calculating it here. Set IMG's background_transparent field. + (enum xpm_keyword_index): Add XPM_BACKGROUND. + (enum png_keyword_index): Add PNG_BACKGROUND. + (enum jpeg_keyword_index): Add JPEG_BACKGROUND. + (enum tiff_keyword_index): Add TIFF_BACKGROUND. + (enum gif_keyword_index): Add GIF_BACKGROUND. + (enum gs_keyword_index): Add GS_BACKGROUND. + (pbm_load, png_load, jpeg_load, tiff_load, gif_load): + Pre-calculate image background color where necessary. + (x_create_x_image_and_pixmap, xbm_load, gs_load): + Use display info's n_cbits entry for screen depth. + (Fx_show_tip): Remove unused variables `buffer', `top', + `left', `max_width' and `max_height'. + + * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes. + +2001-11-18 Gerd Moellmann <gerd@gnu.org> + + * puresize.h (BASE_PURESIZE): Increase to 750000. + +2001-11-18 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * frame.c (Fframe_live_p): Doc fix. + +2001-11-18 Richard M. Stallman <rms@gnu.org> + + * xdisp.c (message_dolog_marker1, message_dolog_marker2) + (message_dolog_marker3): New static variables hold three markers. + (syms_of_xdisp): Initialize and staticpro them. + (message_dolog): Use message_dolog_marker1..3 instead of + allocating markers each time. Unchain them when done. + +2001-11-17 Richard M. Stallman <rms@gnu.org> + + * doc.c (Fsnarf_documentation): Doc fix. + +2001-11-17 Andreas Schwab <schwab@suse.de> + + * xterm.c (note_mouse_highlight): Fix type of variable `ignore'. + +2001-11-17 Richard M. Stallman <rms@gnu.org> + + * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object. + +2001-11-17 Jason Rumney <jasonr@gnu.org> + + * xterm.c (notice_overwritten_cursor): Take care of end < 0 case. + +2001-11-17 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property + with invalid position. + +2001-11-16 Richard M. Stallman <rms@gnu.org> + + * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex. + + * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef. + * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef. + * s/hpux8.h (HAVE_SYS_WAIT_H): Define it. + + * m/convex.h (HAVE_SYS_WAIT_H): Add #undef. + +2001-11-16 Stefan Monnier <monnier@cs.yale.edu> + + * fileio.c (build_annotations): Split off the tail. + (build_annotations_2): New fun. Extracted from build_annotations. + (Fwrite_region): Split the call to build_annotations into two + calls to build_annotations and build_annotations_2. + +2001-11-16 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * sysdep.c (wait_for_kbd_input) [VMS]: Do not call + clear_waiting_for_input with argument. + + * xterm.h (x_update_cursor): Remove duplicated prototype. + + * keyboard.h (clear_waiting_for_input): Remove duplicated prototype. + + * xterm.c (waiting_for_input): Remove unnecessary declaration. + + * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix. + +2001-11-16 Stefan Monnier <monnier@cs.yale.edu> + + * fileio.c (choose_write_coding_system): New fun, extracted + from Fwrite_region. + (Fwrite_region): Use it. + + * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT. + (funcall_lambda, run_hook_with_args): Make static and add prototype. + (ml_apply, find_handler_clause): Add prototype. + +2001-11-16 Eli Zaretskii <eliz@gnu.org> + + * config.in: Add #undef HAVE_COFF_H. + + * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined. + Required for ISC 4.1. + +2001-11-16 Eli Zaretskii <eliz@is.elta.co.il> + + * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by + Andrew Wiseman <a.wiseman@btclick.com>. + +2001-11-16 Kim F. Storm <storm@cua.dk> + + The following changes are made to clean up the various internal + references to the fringes to actually use the term `fringe' for + them. Previously, they were called `flags areas', `bitmap areas', + `left/right side of windows', or implicitly as `flags' or + `bitmaps': + + * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID. + Comments fixed. Use renamed symbols. + + * dispnew.c: Comment fix. Use renamed symbols. + + * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS. + (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH. + (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH. + + * msdos.c: Comment fix. + + * w32fns.c: Use renamed symbols. + + * w32term.c: Comment fixes. Use renamed symbols. + (fringe_bitmap_type): Renamed from bitmap_type. + (NO_FRINGE_BITMAP): Renamed from NO_BITMAP. + (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap. + (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps. + + * w32term.h: Comment fixes. Use renamed symbols. + (fringes_extra): Renamed from flags_areas_extra. + (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH. + (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT. + (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS. + (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH. + (FRAME_X_LEFT_FRINGE_WIDTH): + Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH. + (FRAME_X_RIGHT_FRINGE_WIDTH): + Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH. + + * widget.c: Use renamed symbols. + + * window.c: Comment fixes. Use renamed symbols. + (coordinates-in-window-p): Doc fix. + + * xdisp.c: Comment fixes. Use renamed symbols. + + * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID. + + * xfns.c: Use renamed symbols. + + * xterm.c: Comment fixes. Use renamed symbols. + (fringe_bitmap_type): Renamed from bitmap_type. + (NO_FRINGE_BITMAP): Renamed from NO_BITMAP. + (x_draw_fringe_bitmap): Renamed from x_draw_bitmap. + (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps. + + * xterm.h: Comment fixes. Use renamed symbols. + (fringes_extra): Renamed from flags_areas_extra. + (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH. + (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT. + (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS. + (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH. + (FRAME_X_LEFT_FRINGE_WIDTH): + Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH. + (FRAME_X_RIGHT_FRINGE_WIDTH): + Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH. + +2001-11-15 Jason Rumney <jasonr@gnu.org> + + * w32menu.c (add-menu-item): Make help_echo and radio buttons + work for most menu items. From David Ponce + <david.ponce@wanadoo.fr>. + +2001-11-15 Gerd Moellmann <gerd@gnu.org> + + * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07. + Some x_set_* function expect to be called even if old and new + value are equal. + + * xdisp.c (build_desired_tool_bar_string): Accept zero + tool_bar_button_relief. + + * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief. + + * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief. + + * xterm.c (x_draw_bar_cursor): If the background color of the + glyph under the cursor equals the frame's cursor color, use + the glyph's foreground color for drawing the bar cursor. + + * dispnew.c (direct_output_forward_char): Fix character/byte + position comparison. + +2001-11-15 Miles Bader <miles@gnu.org> + + * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters. + (Fdelete_field, Ffield_string, Ffield_string_no_properties): + Update arguments to find_field. + (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field. + (Fconstrain_to_field): Use LIMIT arg to shorten search time. + * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl. + * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end. + +2001-11-14 Richard M. Stallman <rms@gnu.org> + + * editfns.c (Fpropertize): Allow call with 1 arg. + + * dispextern.h (image_background, image_background_transparent): + Conditionalize on HAVE_X_WINDOWS. + +2001-11-13 Richard M. Stallman <rms@gnu.org> + + * print.c (Fprin1_to_string): Doc fix. + + * sunfns.c (Fsun_change_cursor_icon): Doc fix. + + * floatfns.c (Fceiling, Ffloor): Doc fixes. + + * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes. + + * fileio.c (Ffile_accessible_directory_p): Doc fix. + + * eval.c (syms_of_eval): Doc fix. + + * coding.c (syms_of_coding): Doc fix. + + * doc.c (Fsnarf_documentation): Doc fix. + + * dispnew.c (syms_of_display): Doc fix. + + * category.c (Fget_unused_category): Doc fix. + + * buffer.c (syms_of_buffer): Doc fixes. + +2001-11-14 Eli Zaretskii <eliz@is.elta.co.il> + + * print.c (prin1, print): Doc fix. + +2001-11-14 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * fontset.h: Remove declarations of variables + `Vhighlight_wrong_size_font' and `Vclip_large_size_font'. + + * fontset.c: Remove variables `Vhighlight_wrong_size_font' and + `Vclip_large_size_font'. + +2001-11-13 Jason Rumney <jasonr@gnu.org> + + * w32fns.c: Doc fix. + +2001-11-13 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xfaces.c (Fface_attributes_as_vector): Doc fix. + + * fns.c: Doc fix. + + * emacs.c: Doc fix. + + * coding.c: Doc fix. + + * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c, + * fontset.c, insdel.c, keymap.c: Change doc-string comments to + `new style' [w/`doc:' keyword]. + +2001-11-12 Richard M. Stallman <rms@gnu.org> + + * xterm.c (XTread_socket): Don't update focus for EnterNotify or + LeaveNotify events. Only FocusIn and FocusOut do that now. + (x_display_and_set_cursor): Do display hollow cursors in active + minibuffer windows when they are not selected. + +2001-11-12 Jason Rumney <jasonr@gnu.org> + + * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c, + * w32term.c: Change doc-string comments to `new style' + [w/`doc:' keyword]. Doc fixes. + + * w32fns.c: Don't define max. + (Fx_open_connection): Only execute once. + +2001-11-12 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * ccl.c: Change macros to use do-while block instead of if-else. + Use braces to follow GNU Coding Standards. + +2001-11-11 Richard M. Stallman <rms@gnu.org> + + * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR. + + * lread.c (read_escape): Use end_of_file_error for reporting eof. + + * insdel.c (replace_range): Use adjust_markers_for_replace + instead of adjust_markers_for_delete and adjust_markers_for_insert. + + * intervals.h (set_text_properties, set_text_properties_1): Declare. + + * textprop.c (set_text_properties_1): New subroutine + broken out of set_text_properties. + (set_text_properties): Use set_text_properties_1. + + * intervals.c (graft_intervals_into_buffer): + Use set_text_properties_1 to clear out properties. + + * search.c (Freplace_match): Use replace_range to insert + and delete. Don't request property inheritance from + surrounding text. + +2001-11-10 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (enum_font_cb2): Use leading @ on face name to detect + vertical fonts. Allow them if face name is explicitly specified. + Do not give up if we find a font that cannot be converted to an xlfd. + +2001-11-10 Gerd Moellmann <gerd@gnu.org> + + * unexelf.c (unexec): Use mmap/munmap to allocate buffers + instead of malloc/free. + +2001-11-09 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xfaces.c (merge_face_vectors): Use braces to follow GNU + Coding Standards. + (Finternal_set_lisp_face_attribute): Likewise. + + * buffer.c (Fbury_buffer): Likewise. + + * indent.c (current_column_1): Remove unused variable `prev_col'. + + * coding.c (encode_coding): Use precomputed value of `src'. + (encode_coding): Remove unused variable `src_end'. + (code_convert_region): Remove unused variables `count'. + +2001-11-07 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_display_and_set_cursor): Do not move system caret + if cursor_glyph is NULL. + +2001-11-07 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keymap.c (access_keymap): Fix compilation error. + +2001-11-07 Miles Bader <miles@gnu.org> + + * xfns.c (x_set_frame_parameters): Avoid infinite recursion. + +2001-11-07 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * intervals.c (graft_intervals_into_buffer): + Remove #ifdef'd-out code. + (graft_intervals_into_buffer): Remove unused variable `middle'. + + * lread.c (Feval_region): Remove obsolete #ifdef'd-out + code (eval-current-buffer). + Change doc-string comments to `new style' [w/`doc:' keyword]. + +2001-11-06 Richard M. Stallman <rms@gnu.org> + + * keymap.c (access_keymap): Don't use initializers on Lisp_Object. + +2001-11-06 Stefan Monnier <monnier@cs.yale.edu> + + * lread.c (read1): Fix behavior with nested backquoting. + + * keyboard.c (make_lispy_event): Check integerness and fix + Lisp_Object/int mixup. + +2001-11-06 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * fns.c (copy_hash_table): Remove unused variable `v'. + + * fontset.c (fontset_font_pattern): Remove unused variable + `family_registry'. + + * indent.c (current_column_1): Remove unused variable `prev_col'. + +2001-11-05 Richard M. Stallman <rms@gnu.org> + + * m/news-risc.h (BROKEN_PROTOTYPES): Defined. + + * buffer.c (Fkill_buffer): Don't delete auto save file + if buffer is modified. + +2001-11-05 Andrew Innes <andrewi@gnu.org> + + * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and + CHECK_NUMBER_CDR. + +2001-11-05 Richard M. Stallman <rms@gnu.org> + + * unexelf.c (unexec): Minor changes; clean up comments. + +2001-11-05 Sam Steingold <sds@gnu.org> + + * w32term.c (x_display_and_set_cursor): Fix w32 compilation error. + +2001-11-05 Andreas Schwab <schwab@suse.de> + + * sound.c (sound_perror): Save errno from being clobbered. + +2001-11-05 Dale Hagglund <rdh@yottayotta.com> + + * unexelf.c (unexec): Don't use `mmap'. Instead, read and write + the program image directly. + +2001-11-05 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * buffer.h (Fbuffer_local_value): Add prototype. + +2001-11-04 Richard M. Stallman <rms@gnu.org> + + * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL + and CHECK_BUFFER. + + * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth. + (record_char): Likewise. + + * keyboard.c (make_lispy_event): Don't insist a drag event must + move to a different buffer position. Instead, check for moving at + least double_click_fuzz. + + * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength. + + * keyboard.c (echo-area-clear-hook): Undo Oct 29 change. + + * indent.c (current_column_1, Fmove_to_column): Separate the code + for display-table glyphs from the code for buffer text, to fix + bugs in the former. + +2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu> + + * buffer.c (Fbuffer_local_value): New function. + (syms_of_buffer): Defsubr it. + + * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local + value of `cursor-in-non-selected-windows'. + + * lisp.h (Qcursor_in_non_selected_windows): New declaration. + * xdisp.c (Qcursor_in_non_selected_windows): New variable. + (syms_of_xdisp): Initialize it. + +2001-11-04 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xfns.c (Fx_create_frame): Doc fix. + + * coding.c: Change doc-string comments to `new style' [w/`doc:' + keyword]. + + * eval.c (top_level_value, top_level_set): Remove commented and + #ifdef'd-out code. + (Fdefvar): Fix usage in doc-string. + +2001-11-03 Richard M. Stallman <rms@gnu.org> + + * xfns.c: Include unistd.h, if it exists. + + * editfns.c: Move the include of ctype.h after unistd.h. + + * gmalloc.c: Test BROKEN_PROTOTYPES. + +2001-11-03 Ken Raeburn <raeburn@gnu.org> + + * lisp.h (CHECK_STRING_CAR): New macro. + * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of + treating XCAR and XCDR as lvalues. + (openp): Use CHECK_STRING_CAR. + (read_list): Use XSETCDR instead of treating XCDR as lvalue. + +2001-11-03 Eli Zaretskii <eliz@is.elta.co.il> + + * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE. + (SIGMASKTYPE): Define. + + * syssignal.h (sigunblock): Don't define if already defined. + +2001-11-02 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * eval.c (debugger_may_continue, Vdebug_ignored_errors) + (call_debugger, Fcondition_case, skip_debugger, unbind_to): + Fix typos in comments. + + * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented + and #ifdef'd-out code. + Fix and reindent comments. + + * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c. + + * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused + argument `i' in macros. + + * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument + `i' in macros. + + * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST) + (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE) + (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER) + (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER) + (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER) + (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT) + (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY) + (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i' + in macros. + + * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, + * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c, + * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c, + * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h, + * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c, + * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c, + * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c, + * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c, + * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros + (remove unused second argument). + +2001-11-02 Stefan Monnier <monnier@cs.yale.edu> + + * syntax.c (describe_syntax): New wrapper. + (Finternal_describe_syntax_value): Rename from describe_syntax. + Don't insert space at front and \n at the end. + (syms_of_syntax): Defsubr Sinternal_describe_syntax_value. + + * regex.c (re_wctype): Try to fix some warnings. + (regcomp, regexec): Don't forget the __restrict. + +2001-11-02 Richard M. Stallman <rms@gnu.org> + + * textprop.c (Fget_char_property): Doc fix. + +2001-11-02 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * process.c (Fstart_process): Add usage to doc-string. + + * data.c (Fsetq_default): Ditto. + + * callint.c (Finteractive): Ditto. + +2001-11-01 Stefan Monnier <monnier@cs.yale.edu> + + * macros.c: Don't include keymap.h any more. + +2001-11-01 Richard M. Stallman <rms@gnu.org> + + * data.c (Fmake_local_variable): Doc fix. + + * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix. + (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix. + + * keymap.c (Fdescribe_buffer_bindings): Print character property + bindings along with or instead of the buffer local map. + Make the overriding maps override what they should. + +2001-11-01 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * window.c (grow_mini_window): Fix typo in comment. + +2001-11-01 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_scroll_bar_create): Check for width and height > 0. + (XTset_vertical_scroll_bar): Likewise. + + * xfns.c (x_build_heuristic_mask): Use four_corners_best + instead of IMAGE_BACKGROUND. + + * xfns.c (four_corners_best): Reindent. + + * xfaces.c (Finternal_set_lisp_face_attribute_from_resource): + Handle :box so that it is possible to specify sexprs. + +2001-10-31 Eli Zaretskii <eliz@is.elta.co.il> + + * s/hpux11.h: New file. + +2001-10-31 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * emacs.c (USAGE1): Show command line option --no-window-system + instead of --no-windows in usage. + (standard_args): Rename --no-windows to --no-window-system. + (bug_reporting_address): Follow Emacs coding conventions. + + * eval.c (Fcommandp): Doc fix. + Change doc-string comments to `new style' [w/`doc:' keyword]. + + * frame.c (Fframe_live_p): Doc fix. + + * buffer.c (selective-display-ellipses): Doc fix. + +2001-10-31 Gerd Moellmann <gerd@gnu.org> + + * lread.c (to_multibyte): Fix computation of new read_buffer_size. + + * xfaces.c (realize_x_face): If C is not a single-byte character, + set the face's colors_copied_bitwise_p instead of the defaulted_p + members which have a different meaning. + (free_face_colors): Do nothing for a face whose colors have been + copied bitwise. + + * dispextern.h (struct face) <colors_copied_bitwise_p>: New member. + +2001-10-31 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * marker.c, mocklisp.c: Change doc-string comments to `new style' + [w/`doc:' keyword]. + +2001-10-31 Gerd Moellmann <gerd@gnu.org> + + * fns.c (require_unwind): Return Lisp_Object. + +2001-10-31 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix. + (last-input-char): Revert doc-string to be the same as the + doc-string of `last-input-event'. + + * xdisp.c: Fix typos in comments. + +2001-10-31 Gerd Moellmann <gerd@gnu.org> + + * window.c (grow_mini_window): Handle case that the root + window is already smaller than the nominal mininum height. + +2001-10-30 Stefan Monnier <monnier@cs.yale.edu> + + * emacs.c (main): Don't call keys_of_macros any more. + + * lisp.h (keys_of_macros): Remove. + + * macros.c (keys_of_macros): Remove. + + * xfaces.c (Fface_attribute_relative_p): Declare args. + +2001-10-30 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer. + (enum_font_cb2): Ignore fonts with vertical orientation. + +2001-10-30 Richard M. Stallman <rms@gnu.org> + + * keyboard.c (Finput_pending_p): Doc fix. + +2001-10-30 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_after_update_window_line): Don't run the code + clearing in borders for rows whose visible height is 0. + + * xdisp.c (clear_garbaged_frames): Redraw the frame only if its + resized_p flag is set. If not set, use the much less flickering + method previously used. + + * dispnew.c (change_frame_size_1): Set frame's resized_p. + + * frame.h (struct frame) <resized_p>: New member. + + * lread.c (to_multibyte): Ensure read_buffer is at least twice + as large as the number of bytes to convert. + + * lread.c (to_multibyte): New function. + (read1): Use it. + +2001-10-30 Eli Zaretskii <eliz@is.elta.co.il> + + * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c). + +2001-10-30 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel. + (x_set_glyph_string_background_width): Set extends_to_end_of_line_p + if the row's fill_line_p is set and drawing the last glyph with + DRAW_IMAGE_{RAISED,SUNKEN}. + + * xdisp.c (clear_garbaged_frames): Call Fredraw_frame. + +2001-10-29 Stefan Monnier <monnier@cs.yale.edu> + + * xmenu.c: Include coding.h and charset.h. + (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT. + (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part. + (single_submenu, xmenu_show): Use ENCODE_SYSTEM. + Explicitly set wv->help. Use `TRUE' rather than `True'. + (menu_help_callback): Use empty_string. + + * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos. + (Fx_popup_dialog): Explicitly init f. + (w32_menu_display_help): Use empty_string. + +2001-10-29 Richard M. Stallman <rms@gnu.org> + + * fns.c (Frequire): Detect recursive try to require the same + feature 3 or more levels deep, and get error. + (require_unwind): New subroutine. + (require_nesting_list): New variable. + (syms_of_fns): Init and staticpro it. + + * print.c (print_object): Clarify indication of insertion type. + +2001-10-29 Eli Zaretskii <eliz@is.elta.co.il> + + * coding.c (syms_of_coding): Document that locale-coding-system is + used for decoding input on X. + + * window.c (Fscroll_left, Fscroll_right): Doc fix. + +2001-10-29 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * keyboard.c (Finput_pending_p): Fix typo in doc-string. + (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it. + +2001-10-29 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area, + use NO_CURSOR if cursor_in_non_selected_windows is false. + + * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for + the slant attribute if FRAME is t. + + * xfns.c (x_set_internal_border_width): Set frame garbaged + when X window doesn't exist yet. + + * xterm.c (x_after_update_window_line): Clear internal border + in different circumstances. + + * xterm.c (XTread_socket) <KeyPress>: Don't use + STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa + <handa@etl.go.jp>. + +2001-10-28 Eli Zaretskii <eliz@is.elta.co.il> + + * m/ibms390.h: New file. From Adam Thornton + <athornton@sinenomine.net>. + +2001-10-28 Gerd Moellmann <gerd@gnu.org> + + * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color. + + * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing + a loop counter. + +2001-10-28 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * emacs.c: Use argv[0] instead of "emacs" when -t was specified. + + * keyboard.c: Change doc-string comments to `new style' [w/`doc:' + keyword]. + Fix typos in comments. + + * emacs.c (bug_reporting_address): New function. + Use it when displaying usage message. + + * minibuf.c (read_minibuf): Remove unused external declaration of + variable `Qread_only'. + + * keymap.c (access_keymap): Remove unused variable `charset'. + +2001-10-28 Miles Bader <miles@gnu.org> + + * xfaces.c (merge_face_heights): Handle TO being relative as well. + Remove #ifdef'd-out code. + (Fface_attribute_relative_p, Fmerge_face_attribute): New functions. + (syms_of_xfaces): Initialize them. + +2001-10-27 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret. + <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor + position using the system caret. + + * w32term.c (w32_system_caret_hwnd, w32_system_caret_width) + (w32_system_caret_height, w32_system_caret_x) + (w32_system_caret_y): New variables for tracking system caret. + (w32_initialize): Initialize them. + (x_display_and_set_cursor): Make system caret follow the active cursor. + + * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET): + New messages types. + + * w32term.c (note_mouse_highlight): Clear old help_echo. + +2001-10-27 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xterm.c: Fix typo in a comment. + + * emacs.c: Fix typos in comments. + Remove unnecessary spaces. + Change doc-string comments to `new style' [w/`doc:' keyword]. + (USAGE2): Fix typos in usage string. + + * xterm.c: Fix typo in a comment. + + * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in + emacs.c. + +2001-10-27 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c (move_it_vertically_backward): Use 2/3 line_height + instead of 1/2 line_height in the heuristic for skipping + farther backward when target_y was not reached. + + * sound.c (sound_perror): Unblock SIGIO, turn on atimers. + Display errno only if non-zero. + (sound_warning): New function. + (vox_configure): Don't treat failing to set sample rate as error. + (various places): Improve error messages. + +2001-10-26 Eli Zaretskii <eliz@is.elta.co.il> + + * fileio.c (Faccess_file): Run the argument filename through + Fexpand_file_name, before using it. + + * dispnew.c (syms_of_display) <visible-bell>: Add a reference to + ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no> + +2001-10-26 Gerd Moellmann <gerd@gnu.org> + + * insdel.c (insert_1_both): Do nothing if NCHARS == 0. + + * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]: + Fix clearing in the case of scroll bars on the right. + +2001-10-26 Juanma Barranquero <lektu@terra.es> + + * w32gui.h (XImage): Add a dummy typedef. + +2001-10-26 Gerd Moellmann <gerd@gnu.org> + + * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison. + +2001-10-25 Eli Zaretskii <eliz@is.elta.co.il> + + * frame.c (Fframe_parameter): Fix last change. + + * fileio.c: Revert last change (which removed old commented-out + version of expand-file-name). Add a comment that explains why + this old version should not be removed. + +2001-10-25 Gerd Moellmann <gerd@gnu.org> + + * frame.c (Fframe_parameter): Fix a bug whereby some + ``artificial'' frame parameters, like `minibuffer' were not + obtained by calling Fframe_parameters. + + * xterm.c (show_mouse_face): Clean up. Recognize overwritten + cursor differently. + + * xdisp.c (move_it_vertically_backward): Compute line height + differently. Add heuristic to try to be more compatible to 20.x. + +2001-10-25 Stefan Monnier <monnier@cs.yale.edu> + + * lisp.h (make_fixnum_or_float): Coerce double to int explicitly. + + * editfns.c (text_property_stickiness): Fix Lisp_Object used as + boolean. + +2001-10-25 Miles Bader <miles@gnu.org> + + * xfns.c (png_load): Make sure SPECIFIED_BG is a string. + BG is a pointer to a structure, not a structure. + (gif_format, png_format): Add missing commas. + +2001-10-24 Richard M. Stallman <rms@gnu.org> + + * xfaces.c (Fface_attributes_as_vector): New function. + (syms_of_xfaces): Defsubr it. + +2001-10-24 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused + variable `area'. + +2001-10-25 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * search.c (scan_newline): Remove unused variable `selective_display'. + +2001-10-25 Miles Bader <miles@gnu.org> + + * dispextern.h (struct image): Add `background', + `background_valid', and `background_transparent' fields. + (image_background, image_background_transparent): New declarations. + (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros. + * xfns.c (image_background, image_background_transparent) + (four_corners_best): New functions. + (xpm_format, png_format, jpeg_format, tiff_format, gif_format) + (gs_format): Add `:background' entry. + (lookup_image): Set IMG's background color if specified. + (pbm_load, xbm_load_image, png_load): Set IMG's background field + when appropriate. + (x_clear_image_1): Reset `background_valid' and + `background_transparent_valid' fields. + (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of + calculating it here. Set IMG's background_transparent field. + (enum xpm_keyword_index): Add XPM_BACKGROUND. + (enum png_keyword_index): Add PNG_BACKGROUND. + (enum jpeg_keyword_index): Add JPEG_BACKGROUND. + (enum tiff_keyword_index): Add TIFF_BACKGROUND. + (enum gif_keyword_index): Add GIF_BACKGROUND. + (enum gs_keyword_index): Add GS_BACKGROUND. + (pbm_load, png_load, jpeg_load, tiff_load, gif_load): + Pre-calculate image background color where necessary. + * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and + `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background + color to use for image glyph reliefs. + +2001-10-24 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_draw_glyphs): Don't check for cursor overwriting + in full-width rows. + + * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]: + Fix clearing of area not covered by scroll bar. + +2001-10-24 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xterm.c (x_insert_glyphs): Remove unused variables `real_end' + and `real_start'. + (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'. + (glyph_rect): Remove unused variable `area'. + +2001-10-24 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c: Change #ifdef GLYPH_DEBUG to #if. + + * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos. + (row_containing_pos): Take additional argument DY. + Treat rows ending in middle of char differently. + (display_line): Handle tabs on window systems differently. + + * xterm.c, w32term.c (fast_find_position): Call row_containing_pos + with additional argument. + + * dispextern.h (row_containing_pos): Adjust prototype. + + * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing) + (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables. + (try_window_id, try_window_reusing_current_matrix) + (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited. + (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables. + +2001-10-24 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of + gnuemacs). + (HAVE_BOXES): Fix typo in comment. + (push_menu_pane): Fix typo in comment. + + * xdisp.c (display_prop_string_p): Remove unused local declaration + of `Qwhen'. + (single_display_prop_string_p): Remove unused local declarations + of `Qwhen' and `Qmargin'. + (string_buffer_position): Remove unused variable `around'. + (store_frame_title): Remove unused variable `width'. + + * window.c: Don't define max. + (coordinates_in_window): Remove unused variable `uy'. + + * widget.c: Don't define max. + + * process.c: Don't define max. + (create_process): Remove unused variable `buffer'. + +2001-10-23 Gerd Moellmann <gerd@gnu.org> + + * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error. + +2001-10-23 Eli Zaretskii <eliz@is.elta.co.il> + + * xfaces.c (Finternal_set_lisp_face_attribute) + [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the + frame is on a windowed display. + +2001-10-23 Gerd Moellmann <gerd@gnu.org> + + * dispnew.c (sync_window_with_frame_matrix_rows): + Fix handling of windows which aren't full-width, fix handling + of marginal areas. + + * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50. + +2001-10-23 Andreas Schwab <schwab@suse.de> + + * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override + LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc". + +2001-10-23 Gerd Moellmann <gerd@gnu.org> + + * xterm.c (x_draw_glyphs): Remove parameters READ_START and + REAL_END. Notice if cursor gets overwritten. + (notice_overwritten_cursor): Take X positions as parameters. + (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p + around call to x_draw_glyphs. + +2001-10-23 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * syntax.c (modify-syntax-entry): Fix argument names (use CHAR + instead of C) and usage. + + * editfns.c (char-to-string): Fix argument names (use CHAR instead + of C) and usage. + + * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top', + `left', `max_width' and `max_height'. + +2001-10-23 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c (display_line): For a tab continued to the next line, + set row's ends_in_middle_of_char_p. + +2001-10-22 Gerd Moellmann <gerd@gnu.org> + + * xdisp.c (display_line): Fix computation of continuation lines + width for TABs. + +2001-10-22 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * xdisp.c (build_desired_tool_bar_string): Remove unused variable + `Qlaplace'. + + * fileio.c: Remove unused code. + +2001-10-22 Miles Bader <miles@gnu.org> + + * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL) + (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD): + Remove `DOC_STRINGS_IN_COMMENTS' cases. + +2001-10-21 Jason Rumney <jasonr@gnu.org> + + * w32term.c (x_erase_phys_cursor): Remove inverse_p again. + +2001-10-21 Eli Zaretskii <eliz@is.elta.co.il> + + * mocklisp.c (Fml_if, Fml_provide_prefix_argument) + (Finsert_string): Avoid the multi-line string literals warning. + +2001-10-22 Miles Bader <miles@gnu.org> + + * doc.c (Vhelp_manyarg_func_alist): Variable removed. + (Fdocumentation): Don't use it. + (syms_of_doc): Don't initialize it. + + * keyboard.c (Ftrack_mouse): Add usage: string to doc string. + * print.c (Fwith_output_to_temp_buffer): Likewise. + * window.c (Fsave_window_excursion): Likewise. + * editfns.c (Fsave_excursion, Fsave_current_buffer) + (Fsave_restriction): Likewise. + * eval.c (Frun_hooks, Frun_hook_with_args) + (Frun_hook_with_args_until_failure) + (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif) + (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun) + (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch) + (Funwind_protect, Fcondition_case): Likewise. + * coding.c (Ffind_operation_coding_system): Likewise. + * keyboard.c (Ftrack_mouse): Likewise. + +2001-10-21 Miles Bader <miles@gnu.org> + + * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply) + (Fmake_hash_table): Add usage: string to doc string. + * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers) + (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat) + (Fencode_time, Finsert_and_inherit_before_markers): Likewise. + * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument) + (Fml_prefix_argument_loop): Likewise. + +2001-10-21 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'. + + * sysdep.c (init_sys_modes): Change doc-string comments to `new + style' [w/`doc:' keyword]. + + * data.c, fileio.c, indent.c, print.c, search.c, sound.c, + * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string + comments to `new style' [w/`doc:' keyword]. + +2001-10-21 Jason Rumney <jasonr@gnu.org> + + * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName. + + * w32term.c (remember_mouse_glyph): New function. + (w32_mouse_position): Use it. + (note_mouse_movement): If the mouse moved off the glyph, remember + its new position. + + * w32term.h (struct w32_output): Correct spelling of x_compatible. + (w32_display_info): Add mouse_face_overlay. + + * w32term.c (notice_overwritten_cursor): Renamed from + note_overwritten_text_cursor. Rewritten to take glyph widths into + account. + (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P. + (fast_find_string_pos): New function. + (fast_find_position): Return the correct vpos. Add parameter + STOP. In the final row, stop before glyphs having STOP as object. + Don't consider glyphs that are not from a buffer. + (fast_find_position) [0]: Add a presumably more correct version + for after 21.1. + (expose_window_tree, expose_frame): Don't compute intersections here. + (expose_window): Do it here instead. + (expose_window_tree, expose_window, expose_line): Return 1 when + overwriting mouse-face. + (expose_window): If W is the window currently being updated, mark + the frame garbaged. + (expose_frame): If mouse-face was overwritten, redo it. + (x_use_underline_position_properties): New variable. + (syms_of_xterm): DEFVAR_BOOL it. + (x_draw_glyph_string): Add comment to use it in future. + (x_draw_glyph_string): Restore clipping after drawing box. + Fix a computation of the underline position. + (w32_get_glyph_string_clip_rect): Minor cleanup. + (x_fill_stretch_glyph_string): Remove an assertion. + (x_produce_glyphs): Don't convert multibyte characters + to unibyte characters in unibyte buffers. + (cursor_in_mouse_face_p): New function. + (x_draw_stretch_glyph_string): Use it to choose a different GC + when drawing a cursor within highlighted text. Don't draw + background again if it has already been drawn. + (x_draw_glyph_string_box): Don't draw a full-width + box just because the glyph row's full_width_p flag is set. + (x_draw_glyphs): Fix computation of rightmost x for + full-width rows. + (x_dump_glyph_string): Put in #if GLYPH_DEBUG. + (w32_draw_relief_rect): Extend left shadow to the bottom and left; + change bottom shadow accordingly. Some cleanup. + (x_update_window_end): Handle overwritten mouse face + also for tool bar windows. + (show_mouse_face): Set the glyph row's mouse_face_p flag also when + DRAW is DRAW_IMAGE_RAISED. + (clear_mouse_face): Return 1 if text with mouse face was + actually redrawn. Make the function static. + Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might + optimize away highlighting if we pass over that same overlay again. + (note_mouse_highlight): Call mouse_face_overlay_overlaps + to detect a case where we have to highlight a different region + despite not having left the currently highlighted region. + Set mouse_face_overlay in the x_display_info. Avoid changing the + mouse pointer shape when show_mouse_face has already done it, or + there is no need. Handle mouse-face and help-echo in strings. + (glyph_rect): New function. + (w32_mouse_position): Use it to raise the threshold for mouse + movement event generation. + (w32_initialize_display_info): Initialize the x_display_info's + mouse_face_overlay. + (w32_set_vertical_scroll_bar): Don't clear a zero height + or width area. + (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure + a widget to zero height. + + * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]: + Protect unibyte strings created by replacing their multibyte + equivalents in menu_items. + (w32_menu_show): Don't overwrite an item's name with its key + description in case the description is a multibyte string. + (single_submenu): Some cleanup. + + * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed. + (postprocess_image): New function. + (lookup_image): Call it for all image types except PostScript. + (x_kill_gs_process): Call postprocess_image. + (tiff_error_handler, tiff_warning_handler): New functions. + (tiff_load): Install them as handlers. + (x_kill_gs_process): Recognize if someone has cleared the image + cache under us. + (valid_image_p): Protect better against invalid image + specifications. Previous code could signal an error. + (Fx_hide_tip, Fshow_tip): Doc fix. + (Fv_max_tooltip_size): New variable. + (syns_of_xfns): DEFVAR_LISP it. + (Fx_show_tip): Add parameter TEXT. Set the tip frame's root + window buffer to *tip* right after creating the frame. Set frame's + window_width. Use a maximum tooltip size specified by + Vx_max_tooltip_size, if that has valid contents. + (compute_tip_xy): Add parameters WIDTH and HEIGHT. + Make sure the tooltip is completely visible. + (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil. + (Fx_create_frame): Adjust the frame's height for presence + of the tool bar before calling x_figure_window_size. + (x_set_tool_bar_lines): Clear the tool bar window's current matrix + when the window gets smaller. + (x_set_foreground_color): Set frame's cursor_pixel. + (x_set_foreground_color, x_set_background_color): Cleaned up. + (x_set_font): Handle case of x_new_fontset returning the same name + as before, although there was a change in fontsets. + +2001-10-21 Miles Bader <miles@gnu.org> + + * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior) + (Flogxor): Add usage: string to doc string. + * charset.c (Fstring): Likewise. + * callproc.c (Fcall_process_region, Fcall_process): Likewise. + * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise. + +2001-10-21 Pavel Jan,Am(Bk <Pavel@Janik.cz> + + * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords. + + * alloc.c: Reindent DEFUNs with doc: keywords. + + * abbrev.c (Finsert_abbrev_table_description): Reindent. + + * frame.c: Change doc-string comments to `new style' [w/`doc:' + keyword]. + +See ChangeLog.9 for earlier changes. + +;; Local Variables: +;; coding: iso-2022-7bit +;; add-log-time-zone-rule: t +;; End: + + Copyright (C) 2001, 2002, 2003, 2004, 2005, + 2006, 2007 Free Software Foundation, Inc. + + This file is part of GNU Emacs. + + GNU Emacs is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. + + GNU Emacs is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNU Emacs; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4 |