]> code.delx.au - gnu-emacs/blob - src/ChangeLog
(get_scrap_target_type_list, defer_apple_events)
[gnu-emacs] / src / ChangeLog
1 2006-04-17 Kim F. Storm <storm@cua.dk>
2
3 * window.c (coordinates_in_window): On the vertical border,
4 calculate the row number measured from the top of the window, not
5 the top of the frame.
6 (window_loop): Test w->dedicated with !NILP instead of EQ Qt.
7 (window_scroll_pixel_based): Fix off-by-one bug in 2002-12-23 change.
8
9 2006-04-16 Eli Zaretskii <eliz@gnu.org>
10
11 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Reduce to 24000.
12
13 2006-04-16 Romain Francoise <romain@orebokech.com>
14
15 * puresize.h (BASE_PURESIZE): Decrement back to 1200000.
16
17 2006-04-16 Andreas Schwab <schwab@suse.de>
18
19 * puresize.h (PURESIZE_RATIO): Reduce to 10/6.
20
21 2006-04-15 Romain Francoise <romain@orebokech.com>
22
23 * puresize.h (BASE_PURESIZE): Increment to 1210000.
24
25 2006-04-13 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org> (tiny change)
26
27 * print.c (Fprin1_to_string): Mention in the `doc' that the
28 behavior is modified by `print-level' and `print-length'.
29
30 2006-04-13 Kenichi Handa <handa@m17n.org>
31
32 * coding.c (setup_coding_system): If eol-type is not yet decided
33 and system_eol_type is not LF, set CODING_REQUIRE_ENCODING_MASK.
34 If coding_system is nil, return 0.
35 (code_convert_region1): Even if coding_system is nil, don't skip
36 conversion if system_eol_type is not LF.
37 (code_convert_string1): Likewise.
38 (code_convert_string_norecord): Likewise.
39
40 2006-04-13 Kenichi Handa <handa@m17n.org>
41
42 * coding.c (setup_coding_system): Fix previous change.
43 (encode_coding): If eol_type is not yet decided, use
44 system_eol_type.
45 (shrink_encoding_region): If eol_type is not yet decided and
46 system_eol_type is not LF, don't shrink.
47
48 2006-04-13 Nick Roberts <nickrob@snap.net.nz>
49
50 * xdisp.c (note_mouse_highlight): Add help echo for dragging vertical
51 line.
52
53 2006-04-12 Richard Stallman <rms@gnu.org>
54
55 * keyboard.c (read_key_sequence): Explicitly avoid keybuf[-1].
56
57 * process.c (conv_lisp_to_sockaddr): If FAMILY unknown, just return.
58 (Fprocess_send_eof): Abort if fail to open null device.
59
60 2006-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
61
62 * fns.c [HAVE_MENUS && MAC_OS]: Include macterm.h.
63
64 * image.c [MAC_OS] (xpm_load_image): Add parentheses around
65 assignment used as truth value. Add explicit braces to avoid
66 ambiguous `else'.
67 [MAC_OS] (gif_load): Remove unused variable `gcpro1'.
68
69 * lisp.h (syms_of_fontset, Fset_fontset_font): Put extern and
70 EXFUN in #ifdef HAVE_WINDOW_SYSTEM.
71 (syms_of_xfns, syms_of_xsmfns, syms_of_xselect, syms_of_xterm):
72 Put externs in #ifdef HAVE_X_WINDOWS.
73 (syms_of_macfns, syms_of_macselect, syms_of_macterm)
74 (syms_of_macmenu, syms_of_mac) [MAC_OS]: Add externs.
75 (init_mac_osx_environment) [MAC_OSX]: Add extern.
76
77 * mac.c (init_process): Remove undef.
78 (select) [MAC_OSX]: Undefine before including sysselect.h.
79 (posix_pathname_to_fsspec, fsspec_to_posix_pathname) [MAC_OSX]:
80 Remove functions and prototypes.
81 (parse_value): Add parentheses around + inside shift.
82 (path_from_vol_dir_name): Make static.
83 (get_temp_dir_name): Remove unused variables `cpb' and `dir_name'.
84 [!MAC_OSX] (get_path_to_system_folder): Likewise.
85 (Fmac_get_file_creator, Fmac_get_file_type): Remove unused
86 variable `cCode'.
87 (Fmac_coerce_ae_data): Remove unused variables `fref' and `fs'.
88 (Fmac_get_preference): Add explicit braces to avoid ambiguous `else'.
89
90 * macfns.c (x_to_mac_color): Remove unused variable `tail'.
91 (x_set_mouse_color): Remove unused variable `dpy'.
92 (Fx_create_frame): Remove unused variable `x_frame_count'.
93 (Fx_server_version): Add explicit braces to avoid ambiguous `else'.
94 (x_sync): Move from macterm.c.
95 (Fx_file_dialog): Remove unused variable `default_filter_index'.
96
97 * macmenu.c (min_menu_id): Make element type explicit.
98
99 * macselect.c (get_flavor_type_from_symbol): Remove unused
100 variable `val'.
101 (get_scrap_private_timestamp, x_get_foreign_selection)
102 (copy_scrap_flavor_data): Add explicit braces to avoid ambiguous `else'.
103 (Fmac_process_deferred_apple_events): Remove unused variables
104 `keyword', `reply', `apple_event', `count', and `err'.
105
106 * macterm.c: Don't include gnu.h.
107 (x_io_error_quitter, x_draw_image_foreground_1): Remove prototypes.
108 (x_sync): Move to macfns.c.
109 [USE_CG_DRAWING] (mac_define_fringe_bitmap): Remove unused
110 variable `mask_bits'.
111 (mac_compute_glyph_string_overhangs): Avoid ambiguous `else'.
112 (x_draw_image_glyph_string): Remove unused variable `pixmap'.
113 (x_mac_to_emacs_modifiers): Remove function.
114 (XTset_vertical_scroll_bar, mac_handle_visibility_change)
115 (x_make_frame_visible, xlfdpat_create, mac_handle_command_event):
116 Add explicit braces to avoid ambiguous `else'.
117 (x_make_frame_visible): Remove unused variables `type',
118 `original_top', and `original_left'.
119 (mac_do_list_fonts, XTread_socket): Add parentheses around && within ||.
120 (x_load_font): Remove unused variables `full_name', and `value'.
121 (do_get_menus, do_init_managers, do_check_ram_size) [!MAC_OS8]:
122 Remove functions.
123 (do_zoom_window): Reorganize variables with respect to conditionals.
124 (init_command_handler): Remove unused variable `err'.
125 [MAC_OSX] (mac_check_bundle): Remove unused variable `child'.
126
127 * macterm.h (x_set_mouse_position, x_set_mouse_pixel_position)
128 (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
129 (x_destroy_window, x_wm_set_size_hint, x_delete_display, XFreeGC)
130 (do_menu_choice, have_menus_p, x_real_positions)
131 (x_set_menu_bar_lines, x_pixel_width, x_pixel_height, x_char_width)
132 (x_char_height, x_sync, x_set_tool_bar_lines, x_activate_menubar)
133 (free_frame_menubar): Add externs.
134
135 * unexmacosx.c: Include config.h before using HAVE_MALLOC_MALLOC_H.
136 (malloc, realloc, free): Add undefs.
137 (read_load_commands): Remove unused variable `n' and `j'.
138 (copy_data_segment): Remove unused variable `r'.
139
140 * xdisp.c (get_glyph_string_clip_rects): Add parentheses around &&
141 within ||. Add explicit braces to avoid ambiguous `else'.
142 (dump_glyph_row): Remove label for `inverse_p' from legend.
143
144 * xfaces.c (Finternal_merge_in_global_face, try_font_list): Add
145 explicit braces to avoid ambiguous `else'.
146
147 2006-04-11 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org> (tiny change)
148
149 * dispnew.c (init_display): Don't init X display if the user asked
150 for a non-X display.
151
152 2006-04-12 Kenichi Handa <handa@m17n.org>
153
154 * coding.c (setup_coding_system): Use system_eol_type for default
155 coding->eol_type.
156
157 2006-04-11 Dan Nicolaescu <dann@ics.uci.edu>
158
159 * lisp.h (wrong_type_argument): Mark as NO_RETURN.
160
161 * data.c (wrong_type_argument): Try to avoid compiler warnings due
162 to the fact the function is now marked as NO_RETURN.
163
164 2006-04-10 Eli Zaretskii <eliz@gnu.org>
165
166 * s/ms-w32.h (pid_t) [_MSC_VER]: New typedef.
167
168 2006-04-10 Romain Francoise <romain@orebokech.com>
169
170 * xrdb.c (gethomedir): Use xstrdup.
171
172 2006-04-10 Andreas Schwab <schwab@suse.de>
173
174 * xrdb.c (gethomedir): Make sure to always return a pointer that
175 can be passed to free.
176
177 2006-04-09 Richard Stallman <rms@gnu.org>
178
179 * lisp.h (Fkill_emacs): Undo previous change.
180
181 2006-04-08 Richard Stallman <rms@gnu.org>
182
183 * search.c (boyer_moore): Test ch >= 0400, not >.
184
185 2006-04-09 Dan Nicolaescu <dann@ics.uci.edu>
186
187 * puresize.h (pure_write_error): Mark as NO_RETURN.
188
189 * lisp.h (args_out_of_range, args_out_of_range_3)
190
191 2006-04-08 Eli Zaretskii <eliz@gnu.org>
192
193 * w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Ignore mouse movements
194 if a menu is active on this frame.
195
196 2006-04-08 Dan Nicolaescu <dann@ics.uci.edu>
197
198 * lisp.h (report_file_error): Mark as NO_RETURN.
199
200 2006-04-08 Eli Zaretskii <eliz@gnu.org>
201
202 * alloc.c [STDC_HEADERS]: Include stddef.h.
203
204 * lisp.h (PSEUDOVECSIZE): Fix last change.
205
206 2006-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
207
208 * process.h (struct Lisp_Process): Replace Lisp_Objects `pid',
209 `raw_status_high', and `raw_status_low' with plain integers, and move
210 them to the end of the structure.
211
212 * alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the
213 pseudovector's size field so only the Lisp_Object fields get GC'd.
214
215 * process.c (update_status, make_process, Fdelete_process)
216 (Fprocess_status, list_processes_1, start_process_unwind)
217 (create_process, Fmake_network_process, server_accept_connection)
218 (wait_reading_process_output, send_process, Fprocess_running_child_p)
219 (process_send_signal, proc_encode_coding_system, Fprocess_send_eof)
220 (sigchld_handler, status_notify): Adjust to new non-Lisp fields for
221 `pid' and `raw_status'.
222 (Fprocess_id, Fsignal_process): Same, and additionally use floats when
223 representing PIDs that are larger than most-positive-fixnum.
224
225 * keymap.c (describe_map): Only use XINT if we checked INTEGERP.
226
227 * lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros.
228
229 2006-04-08 Eli Zaretskii <eliz@gnu.org>
230
231 * w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos.
232
233 2006-04-03 Paul Eggert <eggert@cs.ucla.edu>
234
235 * editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to
236 ../lib-src/b2m.c and ../lib-src/editfns.c.
237 (Fcurrent_time_string): Use it.
238 Document that the year might not consume 4 columns if it's outside
239 the range 1000-9999.
240 Check for asctime failure.
241 Don't assume that the output string length is always exactly 24.
242
243 2006-04-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
244
245 * macterm.c (XTread_socket): Initialize variable `f' before its use.
246
247 2006-04-03 Kenichi Handa <handa@m17n.org>
248
249 * image.c: Include "charset.h" and "coding.h".
250 (x_find_image_file): Return an encoded file name.
251
252 2006-04-01 Eli Zaretskii <eliz@gnu.org>
253
254 * configure: Regenerated.
255
256 2006-03-31 Kenichi Handa <handa@m17n.org>
257
258 * xfns.c (xg_set_icon): Delete superfluous UNGCPRO.
259
260 2006-03-30 Dan Nicolaescu <dann@ics.uci.edu>
261
262 * xdisp.c (syms_of_xdisp): Fix variable name.
263
264 2006-03-30 Kenichi Handa <handa@m17n.org>
265
266 * xterm.c (x_term_init): Delete superfluous UNGCPRO.
267
268 2006-03-29 Juanma Barranquero <lekktu@gmail.com>
269
270 * keyboard.c (process_tool_bar_item): Reorder dummy args.
271
272 2006-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
273
274 * keyboard.c (tool_bar_items): Use map_keymap.
275 (process_tool_bar_item): Add dummy args to fit the required interface.
276
277 2006-03-25 Eli Zaretskii <eliz@gnu.org>
278
279 * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag
280 to zero before calling debug_print or safe_debug_print.
281
282 * print.c (print_output_debug_flag): New global variable.
283 (Fexternal_debugging_output) [WINDOWSNT]: Don't call
284 OutputDebugString if print_output_debug_flag is zero.
285
286 2006-03-24 Paul Eggert <eggert@cs.ucla.edu>
287
288 * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it.
289 (Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900.
290 (Fdecode_time): Cast tm_year to EMACS_INT.
291 (Fcurrent_time_string): Report an invalid time specification if
292 the argument is invalid. Also, check for out-of-range time stamps.
293
294 2006-03-24 Kim F. Storm <storm@cua.dk>
295
296 * xterm.c (handle_one_xevent):
297 * w32term.c (w32_read_socket):
298 * macterm.c (XTread_socket): Don't let key-press clear mouse face
299 on in toolbar window if mouse-highlight is an integer.
300
301 * fns.c (sxhash_list): Include last non-nil CDR in hash.
302
303 2006-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
304
305 * macmenu.c (enum mac_menu_kind): New enum.
306 (min_menu_id): New variable.
307 (POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID)
308 (MIN_SUBMENU_ID): Remove defines. All uses are replaced with
309 min_menu_id and enumerators in enum mac_menu_kind.
310 (fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND.
311 All uses changed. Add range check for menu ID.
312 (fill_menubar): Add range check for menu ID.
313 [HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of
314 GetEventParameter.
315 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler
316 for each menu kind.
317
318 2006-03-22 Kim F. Storm <storm@cua.dk>
319
320 * xdisp.c: Undo 2006-03-21 change.
321
322 * term.c: Define aliases for append_glyph and produce_stretch_glyph
323 when `static' is defined to avoid name clash with those in xdisp.c.
324
325 * process.c (Faccept_process_output): Fix to comply with lisp reference.
326 Change arg "timeout" to "seconds" and allow both integer and float value.
327 Change arg "timeout-msec" to "millisec" and interpret" as milliseconds
328 rather than microseconds. Fix doc string accordingly.
329
330 2006-03-21 Ken Raeburn <raeburn@raeburn.org>
331
332 * xdisp.c (store_next_glyph): Rename from append_glyph.
333 (generate_stretch_glyph): Rename from produce_stretch_glyph.
334 All callers changed accordingly.
335
336 2006-03-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
337
338 * xterm.c: x_session_initialized new variable.
339 (x_term_init): Use x_session_initialized to check if
340 x_session_initialize should be called.
341 (x_initialize): Initialize x_session_initialized.
342
343 2006-03-21 Kim F. Storm <storm@cua.dk>
344
345 * fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow
346 bitmap here, but ...
347 (update_window_fringes): ... here, so we can test if it has changed.
348
349 2006-03-20 Andreas Schwab <schwab@suse.de>
350
351 * dispnew.c (init_display): Check DISPLAY here.
352
353 * emacs.c (main): Don't check here.
354
355 * xterm.c (x_display_ok): Don't use DISPLAY env var.
356
357 2006-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
358
359 * window.c (window_scroll_pixel_based): Yet another int/Lisp_Object
360 mixup (YAILOM).
361
362 2006-03-20 Eli Zaretskii <eliz@gnu.org>
363
364 * emacs.c (main): Fix last change.
365
366 2006-03-20 Kenichi Handa <handa@m17n.org>
367
368 * fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it.
369
370 * keymap.c (map_keymap): Set tail to Qnil before GCPRO it.
371
372 * xfns.c (xg_set_icon): Remove unnecessary GCPRO.
373
374 * xterm.c (x_term_init): Remove unnecessary GCPRO.
375
376 2006-03-19 Kim F. Storm <storm@cua.dk>
377
378 * xdisp.c (set_cursor_from_row): Fix cursor property on overlay string,
379 so it doesn't associate overlay string with following glyph by default.
380 Allow integer property value to specify explicit number of buffer
381 positions associate with overlay string.
382
383 2006-03-18 Chong Yidong <cyd@stupidchicken.com>
384
385 * xterm.c (x_display_ok): Fix minor bug and compilation warnings.
386
387 2006-03-18 Nozomu Ando <nand@mac.com>
388
389 * m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define.
390 (LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define.
391 (START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]:
392 Don't redefine.
393
394 * m/mips.h: Don't use unexmips on NetBSD.
395 (LIBS_MACHINE): Move definition lower, so it doesn't use
396 LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP,
397 C_SWITCH_MACHINE, and C_DEBUG_SWITCH.
398
399 * unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h.
400 (unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc
401 option is broken (e.g., MIPS/NetBSD).
402
403 2006-03-18 Craig McDaniel <craigmcd@gmail.com> (tiny change)
404
405 * sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB.
406 Remove the HAVE_X_WINDOWS conditional.
407
408 2006-03-18 Vivek Dasmohapatra <vivek@etla.org> (tiny change)
409
410 * emacs.c (main): If user asks for a display that is unavailable,
411 simulate -nw.
412
413 * xterm.c (x_display_ok): New function.
414
415 * xterm.h: Add prototype for x_display_ok.
416
417 2006-03-18 Eli Zaretskii <eliz@gnu.org>
418
419 * w32fns.c (Fw32_select_font): Doc fix.
420
421 2006-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
422
423 * image.c [MAC_OS] (XPutPixel, XGetPixel)
424 [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized
425 version when depth is 32.
426 (mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]:
427 New function.
428 (prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it.
429 (x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage.
430
431 * macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]:
432 Create GWorld in ARGB pixel format.
433 (mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]:
434 Remove functions.
435 (x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image
436 instead of mac_copy_area/mac_copy_area_with_mask.
437
438 2006-03-15 Kim F. Storm <storm@cua.dk>
439
440 * xdisp.c (extend_face_to_end_of_line): Always add space glyph to
441 empty row. Fixes memory corruption revealed by 2006-03-02 change.
442 (display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0.
443 (tool_bar_lines_needed): Fix tool-bar display in case the tool-bar
444 width is exactly the same as the window width. Don't count a final
445 empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line).
446
447 2006-03-15 Juanma Barranquero <lekktu@gmail.com>
448
449 * fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being
450 conditional on HAVE_NTGUI, not WINDOWS_NT.
451
452 2006-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
453
454 * dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype.
455
456 * fringe.c (mac_init_fringe) [MAC_OS]: New function.
457
458 * macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe.
459 (max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables.
460 (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap)
461 (mac_draw_cg_image) [USE_CG_DRAWING]: New functions.
462 (mac_draw_bitmap) [USE_CG_DRAWING]: Remove function.
463 (x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image
464 instead of mac_draw_bitmap.
465 (x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for
466 define_fringe_bitmap and destroy_fringe_bitmap.
467
468 2006-03-14 Chong Yidong <cyd@stupidchicken.com>
469
470 * xterm.c (x_uncatch_errors): Block input for entire function.
471
472 2006-03-12 Jason Rumney <jasonr@gnu.org>
473
474 * w32fns.c (Fx_create_frame): Remove call to
475 Qface_set_after_frame_default (from xfns.c 2003-05-26).
476
477 * w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when
478 finished with the menu.
479
480 * w32term.c: Sync 2005-10-24 xterm.c changes.
481 (last_mouse_glyph_frame): New var.
482 (note_mouse_movement): Say mouse moved if current frame differs
483 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
484 (w32_mouse_position): Set last_mouse_glyph_frame.
485 Remove OLD_REDISPLAY_CODE block.
486
487 2006-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
488
489 * macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1.
490
491 * macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context.
492 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype.
493
494 * mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
495
496 * macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c.
497
498 * macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground)
499 (x_draw_composite_glyph_string_foreground)
500 (x_draw_image_foreground): Undo previous changes.
501 (x_draw_hollow_cursor): Likewise. Subtract 1 from the last
502 argument of mac_draw_rectangle.
503 (CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros.
504 (mac_draw_string_common, mac_draw_image_string_cg): Use them.
505 (FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro.
506 (mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw)
507 [USE_CG_DRAWING]: New functions.
508 (mac_draw_line, mac_erase_rectangle, mac_clear_window)
509 (mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common)
510 (mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part.
511 (mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common)
512 (mac_copy_area, mac_scroll_area, x_scroll_bar_create)
513 (x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size)
514 (XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
515
516 2006-03-12 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
517
518 * xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'.
519
520 2006-03-11 Jason Rumney <jasonr@gnu.org>
521
522 * w32fns.c (signal_user_input): New function.
523 (post_character_message): Use it for keyboard input.
524 (w32_msg_pump): Use it for mouse input.
525
526 2006-03-11 Luc Teirlinck <teirllm@auburn.edu>
527
528 * window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y.
529 (window_scroll_pixel_based, syms_of_window): Adapt to above change.
530
531 2006-03-11 Eli Zaretskii <eliz@gnu.org>
532
533 * w32fns.c (w32_wnd_proc): Ignore middle and extra button events
534 if a menu is already active (the menubar_active flag is on).
535
536 2006-03-11 David Ponce <david@dponce.com>
537
538 * xfns.c (x_create_tip_frame): Preserve received parms by copying them.
539
540 2006-03-11 Eli Zaretskii <eliz@gnu.org>
541
542 * w32term.c: Add x_fully_uncatch_errors and x_catching_errors to
543 the list of unused display error handling functions.
544
545 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if
546 HAVE_X_WINDOWS.
547 (internal_condition_case, internal_condition_case_1)
548 (internal_condition_case_2): Call x_catching_errors only if
549 HAVE_X_WINDOWS.
550
551 * vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally.
552 Don't include sys/resource.h unless defined.
553
554 2006-03-11 Richard Stallman <rms@gnu.org>
555
556 * keymap.c (describe_map): Shorten string to indicate shadowed binding.
557
558 * vm-limit.c (get_lim_data, lim_data, data_space_start):
559 Move from mem-limits.h.
560 (enum warnlevel): New data type.
561 (check_memory_limits): Rewrite the logic about warnings.
562 Use standard `struct rlimit'. Check return values for nonsense.
563 (memory_warnings): Always clear lim_data.
564
565 * mem-limits.h (get_lim_data, lim_data, data_space_start):
566 Move to vm-limit.c.
567
568 * xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions.
569
570 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors.
571 (internal_condition_case_1, internal_condition_case_2):
572 Abort if within unclosed x_catch_errors.
573
574 2006-03-11 Romain Francoise <romain@orebokech.com>
575
576 * process.c (Vprocess_adaptive_read_buffering): Doc fix.
577
578 2006-03-11 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
579
580 * lisp.h: Remove duplicate prototypes. Make the prototype of
581 getloadavg be conditioned on HAVE_GETLOADAVG being undefined.
582
583 2006-03-11 Eli Zaretskii <eliz@gnu.org>
584
585 * xterm.c (x_draw_hollow_cursor): Subtract 1 from the last
586 argument of XDrawRectangle.
587
588 * xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1.
589
590 * macterm.c (mac_draw_rectangle): Don't add 1 to width and height.
591 (x_draw_glyph_string_foreground)
592 (x_draw_composite_glyph_string_foreground)
593 (x_draw_image_foreground): Don't subtract 1 from width and height
594 arguments to mac_draw_rectangle.
595 (x_draw_hollow_cursor): Add 1 to w->phys_cursor_width.
596
597 2006-03-10 Kim F. Storm <storm@cua.dk>
598
599 * alloc.c (USE_POSIX_MEMALIGN): Fix last change.
600
601 2006-03-09 Stefan Monnier <monnier@iro.umontreal.ca>
602
603 * alloc.c (USE_POSIX_MEMALIGN): New macro.
604 (ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it.
605
606 2006-03-09 Kenichi Handa <handa@m17n.org>
607
608 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding
609 ASCII component of a composition.
610
611 2006-03-08 Luc Teirlinck <teirllm@auburn.edu>
612
613 * window.c: Declare preserve_y as a static global variable.
614 (window_scroll_pixel_based): No longer declare preserve_y;
615 it is global now.
616 (syms_of_window): Set preserve_y to -1.
617
618 2006-03-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
619
620 * image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap
621 depth is 32.
622 [MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap
623 depth is 32.
624
625 2006-03-06 Chong Yidong <cyd@stupidchicken.com>
626
627 * xdisp.c (handle_invisible_prop): Don't update it->position with
628 a buffer position if we're in a display string.
629
630 2006-03-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
631
632 * macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH)
633 (MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines.
634
635 * macfns.c (x_default_scroll_bar_color_parameter)
636 (x_set_scroll_bar_foreground, x_set_scroll_bar_background):
637 Remove unnecessary prototypes.
638 (x_set_scroll_bar_default_width):
639 Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH.
640 (mac_set_scroll_bar_width): New function.
641 (mac_frame_parm_handlers): Set it as handler for scroll-bar-width.
642
643 * macterm.c (get_control_part_bounds): Fix type of return value.
644 (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create)
645 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show
646 scroll bar if it is not tall enough to display scroll bar thumb.
647 [USE_CARBON_EVENTS] (mac_convert_event_ref)
648 (mac_handle_command_event, mac_handle_window_event)
649 (mac_handle_mouse_event): Check error code of GetEventParameter.
650 (convert_fn_keycode) [MAC_OSX]: Likewise.
651
652 2006-03-05 Andreas Schwab <schwab@suse.de>
653
654 * xselect.c (x_catch_errors_unwind): Fix missing return value.
655
656 2006-03-02 Kim F. Storm <storm@cua.dk>
657
658 * frame.h (struct frame): New member n_tool_bar_rows.
659
660 * xdisp.c: Minimize the unpleasent visual impact of the requirement
661 that non-toolkit tool-bars must occupy an integral number of screen
662 lines, by distributing the rows evenly over the tool-bar screen area.
663 (Vtool_bar_border): New variable.
664 (syms_of_xdisp): DEFVAR_LISP it.
665 (display_tool_bar_line): Add HEIGHT arg for desired row height.
666 Make tool-bar row the desired height. Use default face for border
667 below tool-bar.
668 (tool_bar_lines_needed): Add N_ROWS arg. Use it to return number of
669 actual tool-bar rows.
670 (redisplay_tool_bar): Calculate f->n_tool_bar_rows initially.
671 Adjust the height of the tool-bar rows to fill tool-bar screen area.
672 (redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area
673 is resized.
674
675 2006-03-01 Luc Teirlinck <teirllm@auburn.edu>
676
677 * search.c (Fregexp_quote): Do not precede a literal `]' with two
678 backslashes to try to make clear that it has a literal meaning; it
679 does not do that. (It could close a character alternative
680 containing a backslash.)
681
682 2006-02-28 Chong Yidong <cyd@stupidchicken.com>
683
684 * xselect.c (x_catch_errors_unwind): New function.
685 (x_reply_selection_request): Put x_uncatch_errors in an unwind.
686 (Fx_get_atom_name): Call x_uncatch_errors earlier.
687
688 * window.c (Qscroll_up, Qscroll_down): New syms.
689 (window_scroll_pixel_based): Make preserve_y static to avoid
690 getting point stuck when scrolling 1 line.
691
692 2006-02-26 Chong Yidong <cyd@stupidchicken.com>
693
694 * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument.
695
696 * xterm.c (x_load_font, x_term_init, XTmouse_position)
697 (handle_one_xevent, x_connection_closed, x_list_fonts):
698 No arg for x_uncatch_errors.
699
700 * xselect.c (x_own_selection, x_decline_selection_request)
701 (x_reply_selection_request, x_get_foreign_selection)
702 (Fx_get_atom_name, Fx_send_client_event): Likewise.
703
704 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
705 Likewise.
706
707 2006-02-26 Luc Teirlinck <teirllm@auburn.edu>
708
709 * lread.c: Declare Vload_file_rep_suffixes instead of
710 deleted variable default_suffixes.
711 (Fget_load_suffixes): New function.
712 (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes.
713 No longer use deleted variable default_suffixes. Update docstring.
714 (syms_of_lread): defsubr Sget_load_suffixes.
715 Expand `load-suffixes' docstring.
716 Delete default_suffixes and DEFVAR_LISP the new variable
717 `load-file-rep-suffixes'.
718
719 * w32.c (check_windows_init_file): Use Fget_load_suffixes instead
720 of Vload_suffixes.
721
722 * lisp.h: EXFUN Fget_load_suffixes.
723 Extern Vload_file_rep_suffixes.
724
725 * eval.c (specpdl_ptr): Remove volatile qualifier for consistency
726 with lisp.h.
727
728 2006-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
729
730 * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile
731 qualifier which was trying to avoid the bug that was fixed by
732 yesterday's changes to xterm.c.
733
734 2006-02-25 Chong Yidong <cyd@stupidchicken.com>
735
736 * xterm.h (x_catch_errors) Return value changed to void.
737 (x_uncatch_errors): Delete unused count argument.
738
739 * xterm.c (x_catch_errors): Don't use record_unwind_protect, since
740 it can be called in a signal handler.
741 (x_catch_errors_unwind): Function deleted.
742 (x_uncatch_errors): Deallocate last x_error_message_stack struct.
743 (x_check_errors): Call x_uncatch_errors before signalling error.
744
745 (x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
746 (x_connection_closed, x_list_fonts): Use new versions of
747 x_catch_errors and x_uncatch_errors.
748
749 * xselect.c (x_own_selection, x_decline_selection_request)
750 (x_reply_selection_request, x_get_foreign_selection)
751 (Fx_get_atom_name, Fx_send_client_event): Likewise.
752
753 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
754 Likewise.
755
756 * eval.c (record_unwind_protect): Add an assertion.
757
758 2006-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
759
760 * process.c (Fmake_network_process): Init the process's mark.
761
762 2006-02-25 Kim F. Storm <storm@cua.dk>
763
764 * buffer.c (modify_overlay): Force redisplay if we modify an
765 overlay at the end of the buffer.
766
767 2006-02-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
768
769 * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns
770 nil the image file has been removed, in that case use the (cached)
771 pixmap.
772
773 2006-02-24 Kenichi Handa <handa@m17n.org>
774
775 * fileio.c (Finsert_file_contents): When a text is replaced
776 partially, be sure to set point before the inserted characters.
777
778 2006-02-23 Zhang Wei <id.brep@gmail.com> (tiny change)
779
780 * xfns.c (Fx_file_dialog): Return a decoded file name.
781
782 2006-02-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
783
784 * dispnew.c (update_text_area): Avoid needless redraw of rightmost
785 glyph whose face is extended to the text area end.
786
787 * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control
788 values if control is not visible or values are not changed.
789
790 2006-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
791
792 * window.c (Fwindow_list): Check `window' before doing XWINDOW.
793 The default `window' should not be "on a different frame".
794
795 2006-02-22 Kim F. Storm <storm@cua.dk>
796
797 * indent.c (Fvertical_motion): Only try to move back if we can.
798
799 2006-02-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
800
801 * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member
802 n_clip_rects.
803
804 * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for
805 xmenu.c.
806
807 * macterm.c (GC_CLIP_REGION): Remove macro.
808 (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION.
809 All uses changed. Don't do clipping if n_clip_rects is zero.
810 (mac_set_clip_rectangles): Use xassert instead of abort.
811 Set n_clip_rects. Don't make clip_region empty when number of
812 clipping rectangles is zero.
813 (mac_reset_clip_rectangles): Set n_clip_rects directly instead of
814 calling mac_set_clip_rectangles.
815 (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to
816 avoid multiple redraws.
817
818 2006-02-22 Kim F. Storm <storm@cua.dk>
819
820 * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display.
821
822 2006-02-21 Kim F. Storm <storm@cua.dk>
823
824 * fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix.
825
826 2006-02-21 Zhang Wei <brep@newsmth.org>
827
828 * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before
829 returning it.
830
831 2006-02-21 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
832
833 * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'.
834 (standard_bitmaps): Use it.
835
836 2006-02-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
837
838 * macterm.c (mac_draw_string_common): Remove arg MODE. New arg
839 BG_WIDTH. All uses changed. Draw background if BG_WIDTH is not zero.
840 (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH.
841 [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from
842 mac_draw_string_cg. New arg BG_WIDTH. All uses changed.
843 Draw background if BG_WIDTH is not zero. Use float constants as
844 divisors instead of double. Use alloca instead of xmalloc/xfree.
845 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
846 [!MAC_OS8 || USE_ATSUI]: Background may be drawn using
847 mac_draw_image_string* functions.
848 (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of
849 some fonts when srcCopy text transfer mode might be used.
850 (mac_begin_clip, mac_end_clip): Check if region is empty.
851 (mac_set_clip_rectangles): When resetting clip region, make it
852 empty instead of disposing of it.
853
854 2006-02-20 Stefan Monnier <monnier@iro.umontreal.ca>
855
856 * keymap.c (store_in_keymap): Change `def' arg to not be `register'.
857 Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8).
858
859 2006-02-20 Kim F. Storm <storm@cua.dk>
860
861 * Makefile.in: Add fringe.elc to WINDOW_SUPPORT.
862
863 * buffer.h (struct buffer): New members fringe_indicator_alist and
864 fringe_cursor_alist.
865
866 * buffer.c (init_buffer_once): Set dummy default values for
867 fringe-indicator-alist and fringe-cursor-alist. The proper
868 default values are set by pre-loading fringe.el.
869 (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and
870 fringe-cursor-alist buffer-local variables and defvar_lisp_nopro
871 corresponding default- variables.
872
873 * fringe.c (enum fringe_bitmap_type): Remove. Change all uses
874 to use `int'.
875 (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS):
876 Define explicitly.
877 (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom)
878 (Qhollow_small): New variables.
879 (syms_of_fringe): Intern and staticpro them.
880 (question_mark_bits): Rename from unknown_bits.
881 (left_curly_arrow_bits): Rename from continuation_bits.
882 (right_curly_arrow_bits): Rename from continued_bits.
883 (left_triangle_bits): Rename from ov_bits.
884 (right_triangle_bits): Add.
885 (filled_rectangle_bits): Rename from filled_box_cursor_bits.
886 (hollow_rectangle_bits): Rename from hollow_box_cursor_bits.
887 (filled_square_bits): Add.
888 (vertical_bar_bits): Rename from bar_cursor_bits.
889 (horizontal_bar_bits): Rename from hbar_cursor_bits.
890 (empty_line_bits): Rename from zv_bits.
891 (standard_bitmaps): Update to use new names.
892 (draw_fringe_bitmap_1): Make static.
893 (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions
894 to map from logical cursors and indicators to physical bitmaps.
895 (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow
896 bitmaps using symbol names instead of bitmap numbers.
897 (update_window_fringes): Use logical indicator symbol names
898 instead of bitmap numbers for logical. Add bitmap cache.
899 (LEFT_FRINGE, RIGHT_FRINGE): New helper macros.
900
901 2006-02-20 Chong Yidong <cyd@stupidchicken.com>
902
903 * regex.c: Revert 2006-02-19 change.
904 (xmalloc, xrealloc): Define these when not linked to Emacs.
905 Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case.
906
907 2006-02-19 Luc Teirlinck <teirllm@auburn.edu>
908
909 * regex.c (extend_range_table_work_area): Fix typo.
910
911 2006-02-19 Richard M. Stallman <rms@gnu.org>
912
913 * xterm.c (x_catch_errors): Use xmalloc.
914
915 * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc.
916 (regex_compile): Likewise.
917 (regcomp): Use xmalloc.
918
919 * gtkutil.c (malloc_widget_value): Use xmalloc.
920
921 * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h.
922 (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.
923
924 * xmenu.c (digest_single_submenu): When pane_string is empty,
925 do initialize save_wv.
926
927 2006-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
928
929 * xdisp.c (update_menu_bar) [MAC_OS]: Don't set
930 w->update_mode_line if arg F is not the selected frame.
931
932 * macmenu.c (popup_activated_flag, submenu_id)
933 (next_menubar_widget_id): Remove variables.
934 (initialize_frame_menubar): Remove function.
935 (pop_down_menu, mac_menu_show): Simplify save value.
936 (dispose_menus): New function.
937 (pop_down_menu, fill_menubar): Use it.
938 (fill_submenu): Remove function. All uses changed to fill_menu.
939 (add_menu_item): Remove args SUBMENU and FORCE_DISABLE. New arg
940 POS. Don't call SetMenuItemHierarchicalID here.
941 (fill_menu): Add arg SUBMENU_ID. Return submenu_id that is to be
942 used next. Call SetMenuItemHierarchicalID here.
943 (fill_menubar): Add arg DEEP_P. All uses changed. Clean up menu
944 objects if needed. Reuse existing menu bar titles if possible.
945 (set_frame_menubar): Don't clean up menu objects here.
946
947 2006-02-18 Chong Yidong <cyd@stupidchicken.com>
948
949 * window.c (window_min_size_1): Ensure room for the scroll bar and
950 fringes.
951
952 2006-02-17 Romain Francoise <romain@orebokech.com>
953
954 * puresize.h (BASE_PURESIZE): Increment to 1200000.
955
956 2006-02-17 Stefan Monnier <monnier@iro.umontreal.ca>
957
958 * alloc.c (Fmake_symbol): Comment-out left-over assert from before the
959 addition of the BLOCK_INPUTs.
960
961 2006-02-17 Juanma Barranquero <lekktu@gmail.com>
962
963 * window.c (Fset_window_scroll_bars): Doc fix.
964
965 2006-02-17 Kenichi Handa <handa@m17n.org>
966
967 * xdisp.c (display_mode_element): Call display_string with correct
968 PREC arg (which must be a number of characters, not column width).
969
970 2006-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
971
972 * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac.
973
974 * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac.
975
976 * macmenu.c (set_frame_menubar): Don't call DrawMenuBar.
977
978 2006-02-14 Richard M. Stallman <rms@gnu.org>
979
980 * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST.
981
982 * m/ibms390x.h: New file.
983
984 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
985
986 * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the
987 value of x-gtk-whole-detached-tool-bar.
988 (xg_tool_bar_attach_callback): Set show-arrow to TRUE.
989
990 * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar.
991
992 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
993
994 * xterm.c (x_x_to_emacs_modifiers): Make non-static.
995
996 * xterm.h: Declare x_x_to_emacs_modifiers.
997
998 * gtkutil.c (xg_tool_bar_button_cb): New function.
999 (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to
1000 store modifiers in event.
1001 (update_frame_tool_bar): Connect button-release-event to
1002 xg_tool_bar_button_cb.
1003
1004 2006-02-13 Richard M. Stallman <rms@gnu.org>
1005
1006 * .gdbinit (xwindow): Update the code to show the window box.
1007
1008 2006-02-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1009
1010 * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
1011
1012 2006-02-12 Richard M. Stallman <rms@gnu.org>
1013
1014 * cmds.c (internal_self_insert): Handle weird auto-fill-function.
1015
1016 2006-02-11 Eli Zaretskii <eliz@gnu.org>
1017
1018 * keyboard.c (Venable_disabled_menus_and_buttons): New variable.
1019 (syms_of_keyboard): DEVFAR_LISP and initialize it.
1020 (parse_tool_bar_item, parse_menu_item): If that variable is
1021 non-nil, don't disable menu items and tool-bar buttons.
1022
1023 2006-02-11 Juanma Barranquero <lekktu@gmail.com>
1024
1025 * doc.c (Fsubstitute_command_keys): Doc fix.
1026
1027 2006-02-10 Thien-Thi Nguyen <ttn@gnu.org>
1028
1029 * data.c (Findirect_function): Rewrite docstring.
1030 Fix omission bug: Declare new arg NOERROR.
1031
1032 2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1033
1034 * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
1035 if window_desc is not set yet.
1036 (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07
1037 and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame
1038 parameter `visibility' is `icon'.
1039 (Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
1040 instead of "fontset-mac".
1041 (Fx_focus_frame): New defun.
1042 (syms_of_macfns): Defsubr it.
1043
1044 * macterm.c (mac_define_frame_cursor): Don't change pointer shape
1045 for unfocused frame.
1046 (x_raise_frame): Call BringToFront instead of SelectWindow.
1047 (x_lower_frame): Use NULL instead of nil.
1048 (x_make_frame_visible): Don't call SelectWindow.
1049 (XTread_socket): Increment handling_signal at the start, decrement
1050 it at the end.
1051 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
1052 CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
1053
1054 2006-02-10 Kim F. Storm <storm@cua.dk>
1055
1056 * data.c (Findirect_function): Add NOERROR arg. All callers changed
1057 to pass Qnil for NOERROR.
1058
1059 * keymap.c (current_minor_maps_error): Remove.
1060 (current_minor_maps): Pass Qt for NOERROR to Findirect_function
1061 instead of using internal_condition_case_1+current_minor_maps_error.
1062
1063 2006-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1064
1065 * xterm.c (handle_one_xevent): Must note mouse movement even for nil
1066 frames for GTK, in that case it is the tool bar. This is so that
1067 highlighted text get reset properly.
1068
1069 2006-02-09 Juanma Barranquero <lekktu@gmail.com>
1070
1071 * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
1072
1073 2006-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1074
1075 * window.c (adjust_window_trailing_edge): Check that shrinking
1076 does not set a window to size zero or less.
1077
1078 2006-02-08 Miles Bader <miles@gnu.org>
1079
1080 * editfns.c (Fconstrain_to_field): Use Fget_char_property instead
1081 of Fget_text_property (other field functions work with overlays as
1082 well as text-properties).
1083
1084 2006-02-07 Kenichi Handa <handa@m17n.org>
1085
1086 * dispextern.h (unibyte_display_via_language_environment): Extern it.
1087
1088 * xterm.h (unibyte_display_via_language_environment):
1089 * w32term.h (unibyte_display_via_language_environment):
1090 * macterm.h (unibyte_display_via_language_environment): Delete extern.
1091
1092 2006-02-07 Kenichi Handa <handa@m17n.org>
1093
1094 * term.c (append_glyph): Refer to it->char_to_display instead of it->c.
1095 (produce_glyphs): Set the character to print in
1096 it->char_to_display. Handle unibyte-display-via-language-environment.
1097 (produce_stretch_glyph): Set character to print in it->char_to_display.
1098
1099 2006-02-06 Kenichi Handa <handa@m17n.org>
1100
1101 * lread.c (openp): Initialize encoded_fn before GCPRO it.
1102
1103 2006-02-05 Ken Raeburn <raeburn@raeburn.org>
1104
1105 * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
1106
1107 * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
1108 Cast bitfield value to EMACS_INT, to suppress gcc warning.
1109
1110 * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
1111 defining.
1112
1113 2006-02-03 Kim F. Storm <storm@cua.dk>
1114
1115 * xdisp.c: Cache last merged escape glyph face.
1116 (last_escape_glyph_frame, last_escape_glyph_face_id)
1117 (last_escape_glyph_merged_face_id): New variables.
1118 (get_next_display_element): Use/update them.
1119 (redisplay_internal): Reset them before redisplay.
1120
1121 * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
1122 Only recheck faces after displaying ellipsis.
1123
1124 2006-02-02 Kenichi Handa <handa@m17n.org>
1125
1126 * coding.c (decode_composition_emacs_mule): Fix handling of
1127 incorrect format data.
1128
1129 2006-01-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1130
1131 * gtkutil.c (update_frame_tool_bar): Use new tool bar functions
1132 (gtk_toolbar_insert) so we can have tool bars of different sizes.
1133
1134 2006-01-30 Luc Teirlinck <teirllm@auburn.edu>
1135
1136 * data.c (Flistp): Doc fix.
1137
1138 2006-01-30 Juanma Barranquero <lekktu@gmail.com>
1139
1140 * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
1141 Fix typos in docstrings.
1142
1143 2006-01-28 Luc Teirlinck <teirllm@auburn.edu>
1144
1145 * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
1146
1147 2006-01-27 Chong Yidong <cyd@stupidchicken.com>
1148
1149 * alloc.c (make_interval, allocate_string)
1150 (allocate_string_data, make_float, Fcons, allocate_vectorlike)
1151 (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
1152 global variables.
1153
1154 2006-01-27 Eli Zaretskii <eliz@gnu.org>
1155
1156 * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
1157 the MSDOS definition.
1158
1159 2006-01-26 Richard M. Stallman <rms@gnu.org>
1160
1161 * alloc.c (check_pure_size): Make overflow message an "error message".
1162
1163 * keymap.c (Fmap_keymap): Doc fix.
1164
1165 * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
1166 unless they were cleared out.
1167
1168 * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
1169
1170 2006-01-26 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1171
1172 * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
1173 (find_field): Set before_field to after_field when pos is at BEGV.
1174 (Fline_beginning_position, Fline_end_position):
1175 Clarify confusing doc string.
1176
1177 * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
1178 string.
1179
1180 2006-01-26 Kenichi Handa <handa@m17n.org>
1181
1182 * callproc.c (Fcall_process): GCPRO error_file. Encode infile,
1183 current_dir, and error_file. On reporting an error, decode them
1184 back.
1185
1186 2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1187
1188 * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
1189 (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
1190 Don't check for quit, since any loop will go through fail or jump.
1191
1192 2006-01-24 Chong Yidong <cyd@stupidchicken.com>
1193
1194 * alloc.c (allocate_string_data): Update next_free immediately, to
1195 reduce risk of memory clobberage.
1196
1197 2006-01-24 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1198
1199 * xdisp.c (handle_invisible_prop): Set it->position to fix cursor
1200 display when point moves across an ellipsis. If there are
1201 adjacent invisible texts, don't lose the second one's ellipsis.
1202 (x_produce_glyphs): Doc fix.
1203
1204 2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
1205
1206 * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
1207
1208 2006-01-23 Kim F. Storm <storm@cua.dk>
1209
1210 * xdisp.c (handle_single_display_spec): Fix handling of space
1211 property on char from string: set *position rather than
1212 it->current.pos.
1213 (produce_stretch_glyph): Reduce width of stretch glyphs so they
1214 don't get wider than the window (unless truncate-lines is on).
1215
1216 2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
1217
1218 * xterm.c: Avoid allocating Lisp data from a signal handler.
1219 (x_error_message): New var to replace x_error_message_string.
1220 (x_error_catcher, x_catch_errors, x_catch_errors_unwind)
1221 (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
1222 (syms_of_xterm): Use it instead of x_error_message_string.
1223
1224 * alloc.c (lisp_align_free): Add an assertion.
1225 (make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
1226 (allocate_misc): If ENABLE_CHECKING is on, check we're not called from
1227 a signal handler.
1228
1229 2006-01-21 Luc Teirlinck <teirllm@auburn.edu>
1230
1231 * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
1232
1233 2006-01-21 Romain Francoise <romain@orebokech.com>
1234
1235 * xdisp.c (get_window_cursor_type): Fix last change.
1236 Update copyright year.
1237
1238 2006-01-20 Eli Zaretskii <eliz@gnu.org>
1239
1240 * lread.c (Fload): Don't leak the file descriptor returned by
1241 openp if we are going to signal an error.
1242
1243 * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
1244 directly to _close.
1245 (sys_dup): Protect against new_fd larger than fd_info[] can handle.
1246 (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
1247 to _read.
1248 (sys_write): If FD is outside [0..MAXDESC) limits, pass it
1249 directly to _write.
1250
1251 * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
1252 if it is NULL.
1253
1254 2006-01-20 Kenichi Handa <handa@m17n.org>
1255
1256 * puresize.h (BASE_PURESIZE): Increment to 1190000.
1257
1258 2006-01-19 Chong Yidong <cyd@stupidchicken.com>
1259
1260 * xdisp.c (get_window_cursor_type): Use cursor type specified by
1261 the selected buffer for the echo area too.
1262
1263 2006-01-19 Richard M. Stallman <rms@gnu.org>
1264
1265 * keymap.c (Fmap_keymap): Doc fix.
1266
1267 * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
1268
1269 * keyboard.c (echo_char): Don't omit the space between first two
1270 echoed chars.
1271
1272 * minibuf.c (read_minibuf): Fix previous change.
1273
1274 2006-01-19 Kenichi Handa <handa@m17n.org>
1275
1276 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
1277
1278 2006-01-17 Richard M. Stallman <rms@gnu.org>
1279
1280 * frame.c (x_frame_get_and_record_arg): Don't record Qunbound
1281 value in f->param_alist.
1282
1283 2006-01-15 Andreas Schwab <schwab@suse.de>
1284
1285 * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
1286
1287 2006-01-13 Richard M. Stallman <rms@gnu.org>
1288
1289 * Makefile.in: Define new macro WINDOW_SUPPORT.
1290 (lisp): Use it.
1291 (SOME_MACHINE_LISP): Add conditionally loaded files.
1292
1293 2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1294
1295 * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1296 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
1297 (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
1298 decomposed form.
1299
1300 * process.c [HAVE_INTTYPES_H]: Include inttypes.h.
1301 (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
1302 (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
1303 macro. Also try member ifr_addr when getting netmask.
1304
1305 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
1306
1307 * fileio.c (Fexpand_file_name): Remove redundant tests.
1308 Fix elimination of // so that it doesn't prevent elimination of an
1309 immediately following /. or /..
1310
1311 2006-01-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1312
1313 * gtkutil.c (xg_toggle_notify_cb): New function.
1314 (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
1315 xg_toggle_notify_cb.
1316 (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
1317 parameter value changes so the toggle button gets updated.
1318
1319 2006-01-06 Nick Roberts <nickrob@snap.net.nz>
1320
1321 * .gdbinit: Fix typo.
1322
1323 2006-01-05 Eli Zaretskii <eliz@gnu.org>
1324
1325 * .gdbinit: Fix last change.
1326
1327 2006-01-05 Kim F. Storm <storm@cua.dk>
1328
1329 * process.c (Fmake_network_process): Use AF_INET instead of
1330 AF_UNSPEC when AF_INET6 is not defined.
1331
1332 2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1333
1334 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
1335 Don't check that the other type is known file-related one.
1336
1337 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
1338 gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
1339 OS X 10.4 and later.
1340
1341 2006-01-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1342
1343 * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
1344 let GTK do all image processing. Importing Emacs own pixmaps to GTK
1345 looks bad for inactive tool bar items with some Gnome themes.
1346
1347 2006-01-04 Eli Zaretskii <eliz@gnu.org>
1348
1349 * .gdbinit: Avoid a warning message when x_error_quitter is not
1350 compiled in.
1351
1352 * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
1353 for w32.
1354
1355 2006-01-04 Kim F. Storm <storm@cua.dk>
1356
1357 * process.c: Add IPv6 support.
1358 (Qipv4, Qipv6): New vars.
1359 (syms_of_process): Intern and staticpro them.
1360 (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
1361 with or without port number. Handle 4 element vector as IPv4 address
1362 without port number.
1363 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
1364 (conv_lisp_to_sockaddr): Handle IPv6 addresses.
1365 (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
1366 request that address family only. :family nil or omitted means to
1367 determine address family from the specified :host and :service.
1368 (ifflag_table): Add missing OpenBSD IFF_ flags.
1369 (server_accept_connection): Handle IPv6 addresses.
1370 (init_process): Add (:family ipv4) and (:family ipv6) sub-features.
1371
1372 * .gdbinit: Undo last change. Instead, look at Vsystem_type to
1373 determine which breakpoints to set.
1374
1375 2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
1376
1377 * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
1378
1379 * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
1380
1381 2006-01-03 Romain Francoise <romain@orebokech.com>
1382
1383 * emacs.c (main): Update copyright year.
1384
1385 2006-01-03 Ken Raeburn <raeburn@gnu.org>
1386
1387 * callproc.c (delete_temp_file): Bind file-name-handler-alist to
1388 nil for the call to internal_delete_file.
1389
1390 2006-01-01 Ken Raeburn <raeburn@gnu.org>
1391
1392 * callproc.c (Fcall_process_region): Bind file-name-handler-alist
1393 to nil for the call to Fwrite_region.
1394
1395 2005-12-31 Richard M. Stallman <rms@gnu.org>
1396
1397 * minibuf.c (read_minibuf): Clear out all other minibuffer windows.
1398
1399 2005-12-31 Eli Zaretskii <eliz@gnu.org>
1400
1401 * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
1402
1403 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
1404
1405 * textprop.c (set_text_properties): Reword description of return value.
1406 Return Qnil if caller wants to remove all text properties from a
1407 string and the string already has no intervals.
1408
1409 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
1410
1411 * term.c (visible_cursor): New boolean var.
1412 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
1413 visible_cursor.
1414 (syms_of_term): Export the new var as "visible-cursor".
1415
1416 2005-12-30 Eli Zaretskii <eliz@gnu.org>
1417
1418 * .gdbinit: Tell users not to worry about GDB warnings that some
1419 functions do not exist in the binary.
1420
1421 2005-12-30 Andreas Schwab <schwab@suse.de>
1422
1423 * process.c (Fnetwork_interface_info): Correctly terminate the
1424 loop over ifflag_table.
1425
1426 2005-12-29 Richard M. Stallman <rms@gnu.org>
1427
1428 * lread.c (readevalloop): Test for reading a whole buffer
1429 before actually reading anything. Handle all cases, including
1430 START = END = nil and an already-narrowed buffer.
1431 Convert END to a marker if it is a number.
1432
1433 * keymap.c (describe_map): Put sparse map elements into an array,
1434 sort them, then output a sequence of identical bindings on one line.
1435 (struct describe_map_elt): New data type.
1436 (describe_map_compare): New function.
1437
1438 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1439
1440 * gtkutil.c (xg_get_file_with_chooser): Change message shown
1441 in file chooser.
1442
1443 2005-12-27 Richard M. Stallman <rms@gnu.org>
1444
1445 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
1446 not the current one.
1447
1448 * minibuf.c (Fminibuffer_message): Doc fix.
1449 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
1450
1451 * eval.c (do_autoload): Ignore elements of Vautoload_queue
1452 where car is not symbol.
1453
1454 2005-12-27 Kenichi Handa <handa@m17n.org>
1455
1456 * charset.c (lisp_string_width): Check multibyteness of STRING.
1457
1458 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1459
1460 * xfns.c: x_show_hidden_files, new variable.
1461 (syms_of_xfns): Defvar it.
1462
1463 * gtkutil.c (xg_toggle_visibility_cb): New function.
1464 (xg_get_file_with_chooser): Add toggle hidden files and a message
1465 to the new file chooser dialog. Show hidden files if
1466 x_show_hidden_files is non-zero.
1467
1468 2005-12-26 Richard M. Stallman <rms@gnu.org>
1469
1470 * keyboard.h: Undo previous change.
1471
1472 * Makefile.in (undo.o): Undo previous change.
1473
1474 * undo.c: Undo previous change.
1475
1476 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
1477
1478 * keyboard.h: extern last_point_position_window.
1479
1480 * undo.c: include keyboard.h.
1481
1482 * Makefile.in (undo.o): Depend on keyboard.h.
1483
1484 2005-12-26 Richard M. Stallman <rms@gnu.org>
1485
1486 * commands.h (last_point_position_window): Declare.
1487
1488 * undo.c: Depend on window.h.
1489 (record_point): Save old point from the correct window.
1490
1491 * keyboard.c (last_point_position_window): New variable.
1492 (command_loop_1): Set last_point_position_window.
1493 (syms_of_keyboard): Init it.
1494
1495 * Makefile.in (undo.o): Depend on window.h.
1496
1497 2005-12-25 Richard M. Stallman <rms@gnu.org>
1498
1499 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
1500 to undo a `provide'.
1501
1502 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
1503
1504 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
1505
1506 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
1507 define for FreeBSD on this platform.
1508
1509 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1510
1511 * macterm.h (TYPE_FILE_NAME): New define.
1512 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
1513
1514 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
1515 Add prototypes. Make static.
1516 (mac_aedesc_to_lisp): Initialize err to noErr.
1517 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
1518 (init_coercion_handler): New functions.
1519 (Fmac_coerce_ae_data): Use coercion of Apple event data for
1520 translation from/to file names.
1521
1522 * macterm.c: Don't include sys/param.h.
1523 (init_coercion_handler): Add extern.
1524 [MAC_OS8] (main): Call init_coercion_handler.
1525 (mac_initialize) [MAC_OSX]: Likewise.
1526 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
1527 Apple event data for translation from/to file names.
1528
1529 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
1530
1531 * image.c [MAC_OS] (find_image_fsspec): Likewise.
1532
1533 2005-12-23 Martin Rudalics <rudalics@gmx.at> (tiny change)
1534
1535 * insdel.c (insert, insert_and_inherit, insert_before_markers)
1536 (insert_before_markers_and_inherit): Make sure FROM is correct
1537 when `after-change-functions' are called.
1538
1539 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1540
1541 * xfns.c (Fx_uses_old_gtk_dialog): New function.
1542
1543 * gtkutil.c (xg_uses_old_file_dialog): New function.
1544 (xg_get_file_name): Use xg_uses_old_file_dialog.
1545
1546 * gtkutil.h: Declare xg_uses_old_file_dialog.
1547
1548 2005-12-22 Richard M. Stallman <rms@gnu.org>
1549
1550 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
1551
1552 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1553
1554 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
1555
1556 * macgui.h (XCharStruct): Remove member `valid_p'.
1557 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
1558 (XCharStructRow): New typedef.
1559 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
1560 New macros.
1561 (struct MacFontStruct): Add member `bounds'. Remove member
1562 `per_char'. All uses for QuichDraw Text fonts are changed to
1563 `bounds.per_char'. ATSUI font bounds are represented as an array
1564 `bounds.rows' of XCharStructRow's, each of which consists of a
1565 bitmap of valid entries and an array of char bounds.
1566
1567 * macterm.c (mac_per_char_metric): Add prototype.
1568 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
1569 (mac_query_char_extents): New function.
1570 (x_per_char_metric): Use it.
1571 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
1572 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
1573 Use mac_per_char_metric instead of x_per_char_metric.
1574 (mac_text_extents_16): New function.
1575 (mac_compute_glyph_string_overhangs): Use it.
1576 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
1577
1578 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
1579
1580 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
1581 (Fminibuffer_completion_help): Remove duplicates before display.
1582
1583 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1584
1585 * print.c (print_preprocess): Don't lose print_depth levels while
1586 iterating.
1587
1588 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1589
1590 * macmenu.c (Qmac_apple_event): Add extern.
1591 (set_frame_menubar, mac_menu_show keymp_panes)
1592 (single_keymap_panes, list_of_panes, list_of_item)
1593 (single_menu_item): Add argument types to prototypes.
1594 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
1595 (struct skp): New struct (from xmenu.c).
1596 (single_keymap_panes, single_menu_item, list_of_panes)
1597 (list_of_item): Sync with xmenu.c.
1598 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
1599 POSITION if it is mac-apple-event event.
1600 (menubar_selection_callback): Don't use menu_command_in_progress.
1601 (set_frame_menubar): First parse all submenus, then make
1602 widget_value trees from them. Don't allocate any widget_value
1603 objects until we are done with the parsing.
1604 (parse_single_submenu, digest_single_submenu): New functions.
1605 (single_submenu): Function deleted, replaced by those two.
1606 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
1607 create or dispose of EventHandlerUPP. Install hander to all submenus.
1608 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
1609 instead of ENCODE_SYSTEM.
1610 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
1611 integer values.
1612 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
1613 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
1614 format menu item string. Don't use NULL for integer value.
1615
1616 * macterm.h (struct mac_output): Remove unused member
1617 menu_command_in_progress.
1618
1619 2005-12-20 Juri Linkov <juri@jurta.org>
1620
1621 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
1622 position is non-nil, else set it to nil.
1623
1624 * macmenu.c (Fx_popup_menu): Add `else' to set
1625 Vmenu_updating_frame to nil only if position is nil.
1626
1627 * w32menu.c (Fx_popup_menu): Add `else' to set
1628 Vmenu_updating_frame to nil only if position is nil.
1629
1630 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1631
1632 * keyboard.c (make_lispy_event): Drag-and-drop items are now
1633 stored in member `args' of struct input_event.
1634
1635 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
1636
1637 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
1638 stored in member `args' of struct input_event.
1639
1640 * w32term.c (construct_drag_n_drop): Likewise.
1641
1642 * macterm.c (mac_do_receive_drag): Likewise.
1643 (x_use_underline_position_properties): Undo 2005-07-13 change.
1644 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
1645 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
1646 (mac_pass_command_to_system, mac_pass_control_to_system):
1647 New boolean variables renamed from Lisp_Object ones
1648 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
1649 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
1650 All uses changed.
1651 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
1652 Make them user options.
1653 (mac_handle_command_event, mac_store_services_event):
1654 Call create_apple_event_from_event_ref without 5th argument.
1655 (backtranslate_modified_keycode): Mask off modifier keys that are
1656 mapped to some Emacs modifiers before passing it to KeyTranslate.
1657 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
1658 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
1659 Fix docstrings of `mac-*-modifier'.
1660
1661 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
1662 (do_applescript): Change argument types to Lisp_Object.
1663 All uses changed.
1664
1665 * macterm.h (create_apple_event_from_event_ref): Remove 5th
1666 argument from extern.
1667
1668 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
1669
1670 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
1671 the answer, return `lambda', not nil.
1672
1673 2005-12-17 Eli Zaretskii <eliz@gnu.org>
1674
1675 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
1676 enclosed in $(ARGQUOTE)s should not be split between two lines, as
1677 that will break with GNU Make >3.80, when sh.exe is used and
1678 arg quoting is with '..'.
1679
1680 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
1681
1682 * print.c (print_preprocess): Just signal an error if print_depth
1683 is exceeded.
1684
1685 2005-12-17 Eli Zaretskii <eliz@gnu.org>
1686
1687 * .gdbinit: Set a breakpoint on w32_abort.
1688
1689 2005-12-16 Juri Linkov <juri@jurta.org>
1690
1691 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
1692 created from minibuffer_completion_contents.
1693 (minibuffer_completion_contents): Remove.
1694 (do_completion, Fminibuffer_complete_word)
1695 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
1696 with Fminibuffer_completion_contents.
1697 (syms_of_minibuf): Add Sminibuffer_completion_contents.
1698 (Fdisplay_completion_list): Doc fix.
1699 (display_completion_list_1): Use `nil' for second arg of
1700 `Fdisplay_completion_list'.
1701
1702 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1703
1704 * xfns.c (compute_tip_xy): Handle negative dx and dy.
1705
1706 * w32fns.c (compute_tip_xy): Ditto.
1707
1708 * macfns.c (compute_tip_xy): Ditto.
1709
1710 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
1711
1712 * print.c (print_preprocess): Go to a deeper print_depth to avoid
1713 print_object loop.
1714
1715 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
1716
1717 * coding.c (code_convert_region_unwind): GCPRO arg.
1718
1719 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1720
1721 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
1722 i.e. dy is offset from top of frame instead of bottom.
1723
1724 * macfns.c (compute_tip_xy): Ditto.
1725
1726 * w32fns.c (compute_tip_xy): Ditto.
1727
1728 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
1729 (xg_get_image_for_pixmap, xg_create_frame_widgets)
1730 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
1731
1732 * xmenu.c (menubar_selection_callback): Do nothing if the callback
1733 is for an unselected radio menu item.
1734
1735 2005-12-11 Richard M. Stallman <rms@gnu.org>
1736
1737 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
1738
1739 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
1740
1741 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
1742 (Flookup_key): Doc fix.
1743 (syms_of_keymap) <function-key-map>: Doc fix.
1744
1745 * fns.c (Frequire): Treat evaluating from a source file
1746 like loading the file.
1747
1748 * floatfns.c (Flog): Doc fix.
1749
1750 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
1751 when we change the buffer.
1752
1753 2005-12-11 Juri Linkov <juri@jurta.org>
1754
1755 * minibuf.c (display_completion_list_1):
1756 Call `minibuffer_completion_contents' instead of using `nil' as
1757 second arg of `Fdisplay_completion_list'.
1758 (keys_of_minibuf): Unbind SPC in
1759 Vminibuffer_local_filename_completion_map (see also related
1760 change on 2005-12-06).
1761
1762 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1763
1764 * emacs.c (main) [MAC_OS8]: Undo previous change.
1765
1766 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
1767 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
1768
1769 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1770
1771 * Makefile.in (macselect.o): Depend on keymap.h.
1772
1773 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
1774 syms_of_macselect.
1775
1776 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
1777 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
1778
1779 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
1780 (syms_of_keyboard) [MAC_OS]: Initialize it.
1781 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
1782
1783 * mac.c (Qundecoded_file_name): New variable.
1784 (syms_of_mac): Initialize it.
1785 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
1786 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
1787 (Fmac_coerce_ae_data): New defun.
1788 (syms_of_mac): Defsubr it.
1789
1790 * macselect.c: Include keymap.h.
1791 (mac_ready_for_apple_events): New variable.
1792 (Vmac_apple_event_map, Qmac_apple_event_class)
1793 (Qmac_apple_event_id): New variables.
1794 (syms_of_macselect): Initialize them.
1795 (Qundefined, mac_store_apple_event): Add externs.
1796 (struct apple_event_binding): New struct.
1797 (find_event_binding_fun, find_event_binding)
1798 (mac_find_apple_event_spec, defer_apple_events)
1799 (mac_handle_apple_event, init_apple_event_handler)
1800 (copy_scrap_flavor_data): New functions.
1801 (Fmac_process_deferred_apple_events): New defun.
1802 (syms_of_macselect): Defsubr it.
1803 (mac_store_services_event): Fix extern.
1804 (mac_handle_service_event): Don't allocate Lisp objects during
1805 asynchronous input processing. Use mac_store_services_event
1806 instead of mac_store_application_menu_event.
1807
1808 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
1809 (Qpreferences): Remove variables.
1810 (syms_of_macterm) : Don't initialize them.
1811 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
1812 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
1813 (init_required_apple_events, do_ae_open_application)
1814 (do_ae_print_documents, do_ae_open_documents)
1815 (do_ae_quit_application): Remove functions and prototypes.
1816 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
1817 (mac_find_apple_event_spec): Add externs.
1818 (mac_store_application_menu_event): Remove function.
1819 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
1820 (mac_handle_command_event): Create Apple event from Carbon event.
1821 Use mac_store_apple_event instead of mac_store_application_menu_event.
1822 [MAC_OSX] (mac_store_services_event): Likewise.
1823 (struct SelectionRange, SelectionRange): Remove struct and typedef.
1824 [MAC_OS8] (main): Call init_apple_event_handler instead of
1825 init_required_apple_events.
1826 (mac_initialize) [MAC_OSX]: Likewise.
1827 [!USE_CARBON_EVENTS] (mac_wait_next_event):
1828 Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
1829
1830 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
1831 Add externs.
1832 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
1833 (Fmac_get_preference): Add EXFUN.
1834
1835 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
1836 event.
1837
1838 2005-12-09 Richard M. Stallman <rms@gnu.org>
1839
1840 * xfns.c (Fx_create_frame): Reinstate previous change.
1841
1842 2005-12-09 Eli Zaretskii <eliz@gnu.org>
1843
1844 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
1845 GDB to the abort dialog.
1846
1847 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
1848
1849 * indent.c (Fvertical_motion): Force move if starting on
1850 stretch glyph.
1851
1852 2005-12-08 Richard M. Stallman <rms@gnu.org>
1853
1854 * lread.c (read_escape) <\s>: Don't treat strings specially.
1855
1856 * xfns.c (Fx_create_frame): Comment out previous change.
1857
1858 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1859
1860 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
1861 when needed.
1862
1863 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
1864
1865 * minibuf.c (keys_of_minibuf): Just unbind SPC in
1866 Vminibuffer_local_filename_completion_map rather than forcing it
1867 explicitly to the same binding as the global map.
1868
1869 2005-12-06 Ken Raeburn <raeburn@gnu.org>
1870
1871 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
1872 * bytecode.c (Fbyte_code): Likewise.
1873 * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
1874 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
1875 * undo.c (truncate_undo_list): Likewise.
1876
1877 2005-12-05 Richard M. Stallman <rms@gnu.org>
1878
1879 * window.c (enlarge_window): Eliminate arg preserve_before.
1880 Assume it is 0. All callers changed.
1881 (Fenlarge_window, Fshrink_window): Likewise.
1882
1883 2005-12-02 Eli Zaretskii <eliz@gnu.org>
1884
1885 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
1886 fit below.
1887
1888 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1889
1890 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
1891
1892 * xfns.c (x_real_positions): int ign => unsigned int.
1893 (xg_set_icon_from_xpm_data): Remove unused variable err.
1894 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
1895 to remove compiler warning.
1896 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
1897
1898 2005-12-02 David Reitter <david.reitter@gmail.com>
1899
1900 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
1901 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
1902 and Vminibuffer_local_must_match_filename_map keymaps.
1903 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
1904
1905 * keymap.c (Vminibuffer_local_filename_completion_map)
1906 (Vminibuffer_local_must_match_filename_map): New variables.
1907 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
1908 parent to be Vminibuffer_local_completion_map and
1909 Vminibuffer_local_must_match_map, respectively.
1910
1911 * commands.h (Vminibuffer_local_filename_completion_map)
1912 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
1913
1914 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
1915
1916 * window.c (Fset_window_configuration): Don't accidentally copy the
1917 window-point of one window to another.
1918
1919 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1920
1921 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
1922
1923 2005-11-30 Kim F. Storm <storm@cua.dk>
1924
1925 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
1926 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
1927 passing it to `emacs_write'.
1928
1929 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
1930
1931 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
1932
1933 2005-11-27 Richard M. Stallman <rms@gnu.org>
1934
1935 * window.c (adjust_window_trailing_edge): New function.
1936 (Fadjust_window_trailing_edge): New function.
1937 (syms_of_window): Defsubr it.
1938 (window_deletion_count): New variable.
1939 (delete_window): Update window_deletion_count.
1940
1941 2005-11-26 Eli Zaretskii <eliz@gnu.org>
1942
1943 * minibuf.c (syms_of_minibuf): Mention the extension of
1944 `completion-auto-help's meaning by complete.el.
1945
1946 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
1947
1948 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
1949 Handle :inherit property as a lisp expression.
1950
1951 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1952
1953 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
1954 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
1955 Qsuper, and Qmodifier_value.
1956 (Vmac_control_modifier, Vmac_option_modifier)
1957 (Vmac_command_modifier, Vmac_function_modifier)
1958 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
1959 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
1960 (Vmac_charset_info_alist): Doc fixes.
1961
1962 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1963
1964 * emacs.c (main) [MAC_OSX]: Change working directory to home
1965 directory if `-psn_*' option is specified.
1966
1967 * mac.c (DECODE_UTF_8): Remove macro.
1968 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
1969 created from cfstring_to_lisp.
1970 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
1971 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
1972
1973 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
1974 Add prototype.
1975
1976 2005-11-21 Ken Raeburn <raeburn@gnu.org>
1977
1978 * keymap.c (shadow_lookup): Use make_number to pass a number to
1979 Fsubstring.
1980
1981 2005-11-21 Juri Linkov <juri@jurta.org>
1982
1983 * puresize.h (BASE_PURESIZE): Increment to 1180000.
1984
1985 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
1986
1987 * xfaces.c (Finternal_set_lisp_face_attribute):
1988 Use :ignore-defface for new frame defaults when `unspecified' is
1989 supplied.
1990 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
1991 (merge_face_vectors): Don't do :ignore-defface overwriting here.
1992 (Finternal_merge_in_global_face): Do it here.
1993
1994 2005-11-20 Juri Linkov <juri@jurta.org>
1995
1996 * charset.c (invalid_character): Use Lisp-readable syntax
1997 for octal and hex. Reorder decimal, octal and hex values.
1998
1999 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
2000
2001 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
2002 this type is recognised when debugging.
2003
2004 2005-11-19 Andreas Schwab <schwab@suse.de>
2005
2006 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
2007 Lisp_Cons and Lisp_Float.
2008
2009 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2010
2011 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
2012 New variable.
2013 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
2014 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
2015 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
2016 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
2017
2018 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
2019
2020 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
2021
2022 * xfaces.c (Qignore_defface): New variable.
2023 (syms_of_xfaces): Provide `:ignore-defface'.
2024 (IGNORE_DEFFACE_P): New macro.
2025 (check_lface_attrs, lface_fully_specified_p)
2026 (Finternal_set_lisp_face_attribute)
2027 (Fface_attribute_relative_p, Fmerge_face_attribute):
2028 Handle Qignore_defface as a possible value.
2029 (merge_face_vectors): The merged face is `unspecified' if the
2030 mergee specifies `:ignore-defface'.
2031
2032 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
2033
2034 * lread.c (readevalloop): Add missing GCPROs.
2035
2036 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
2037
2038 * xfns.c (xg_set_icon_from_xpm_data): New function.
2039
2040 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
2041 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
2042
2043 * xterm.c (x_bitmap_icon): Use the xpm if available.
2044
2045 * image.c (x_create_bitmap_from_xpm_data): New function.
2046 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
2047
2048 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
2049
2050 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
2051
2052 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
2053
2054 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
2055
2056 2005-11-15 Andreas Schwab <schwab@suse.de>
2057
2058 * lisp.h (struct Lisp_Cons): Make cdr a union.
2059 (XCDR_AS_LVALUE): Adjust.
2060 (struct Lisp_Float): Make data a union.
2061 (XFLOAT_DATA): Adjust.
2062
2063 * alloc.c (free_float): Make free list chaining aliasing-safe.
2064 (make_float): Likewise.
2065 (free_cons): Likewise.
2066 (Fcons): Likewise.
2067 (check_cons_list): Likewise.
2068 (Fmake_symbol): Likewise.
2069 (allocate_misc): Likewise.
2070 (free_misc): Likewise.
2071 (gc_sweep): Likewise.
2072
2073 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2074
2075 * mac.c (HASHKEY_QUERY_CACHE): New define.
2076 (xrm_create_database, xrm_q_put_resource): Empty query cache.
2077 (xrm_get_resource): Use query cache.
2078
2079 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
2080 inhibit_window_system is set.
2081
2082 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2083
2084 * macgui.h (USE_CG_TEXT_DRAWING): New define.
2085 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
2086 and cg_glyphs.
2087
2088 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
2089 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
2090 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
2091 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
2092 not used and font substitution never occurs for ASCII and Latin-1
2093 characters.
2094 (XLoadQueryFont): Maximum and minimum metrics are now those among
2095 ASCII characters.
2096 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
2097 height adjustments for Courier, Helvetica, and Times.
2098
2099 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
2100
2101 2005-11-11 David Reitter <david.reitter@gmail.com>
2102
2103 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
2104 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
2105 Vmac_control_modifier / mac-control-modifier,
2106 Vmac_option_modifier / mac-option-modifier,
2107 Vmac_command_modifier / mac-command-modifier.
2108 (mac_to_emacs_modifiers): Use the new style modifier
2109 variables. Return UInt32 (modifiers are longs now.)
2110 (backtranslate_modified_keycode): New function (refactoring).
2111 (XTread_socket): Use new modifier variables and refactored function.
2112 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
2113 no dedicated meta key. Not in use anyway.)
2114 (convert_fn_keycode): Map Fn-keys to their original keycode
2115 using a table (english keyboard only).
2116
2117 2005-11-11 Kim F. Storm <storm@cua.dk>
2118
2119 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
2120 Add post hook to "backtrace" to always dump lisp call stack to
2121 increase chance of people sending it to us when reporting bugs.
2122
2123 * doc.c (Fsubstitute_command_keys): Doc fix.
2124
2125 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
2126
2127 * xdisp.c (handle_stop): Skip overlay string handling if
2128 ignore_overlay_strings_at_pos_p is set.
2129 (set_iterator_to_next): At end of display vector, set
2130 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
2131 string, so we skip those overlay strings at current pos.
2132
2133 2005-11-10 Lars Hansen <larsh@soem.dk>
2134
2135 * fileio.c (file-regular-p): Doc fix.
2136
2137 2005-11-10 Kim F. Storm <storm@cua.dk>
2138
2139 * alloc.c (valid_lisp_object_p): New function to validate that
2140 an object is really a valid Lisp_Object.
2141
2142 * lisp.h (valid_lisp_object_p): Add prototype.
2143
2144 * print.c (safe_debug_print): New function to be called from gdb
2145 to print Lisp objects; use valid_lisp_object_p to avoid crashing
2146 if user tries to print something which is not a Lisp object.
2147
2148 * .gdbinit (pp, pp1): Use safe_debug_print.
2149 (pv, pv1): New commands to print value of a lisp variable.
2150
2151 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
2152
2153 * .gdbinit (pp1): New user-defined function.
2154
2155 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2156
2157 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
2158
2159 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
2160 related variables for dumped executable.
2161
2162 * unexmacosx.c (unexec_write_zero): New function.
2163 (copy_data_segment): Clear uninitialized local variables in
2164 statically linked libraries.
2165
2166 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
2167
2168 2005-11-09 Juri Linkov <juri@jurta.org>
2169
2170 * keymap.c (shadow_lookup): If Flookup_key returns a number,
2171 call it again with a sub-key-sequence, and if its return value
2172 is non-nil (sub-key is bound), return nil.
2173
2174 2005-11-08 Kim F. Storm <storm@cua.dk>
2175
2176 * process.c (Fsignal_process): Recognize signal names with and
2177 without SIG prefix, e.g. SIGHUP and HUP.
2178
2179 * search.c (search_buffer): No need to initialize base_pat.
2180
2181 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
2182
2183 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
2184 Don't abuse the `mini' arg. Use the `obj' arg instead.
2185
2186 2005-11-04 Kim F. Storm <storm@cua.dk>
2187
2188 * xdisp.c (show_mouse_face): Clear mouse face to eol.
2189
2190 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
2191
2192 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
2193 font-lock.elc and jit-lock.elc.
2194
2195 2005-11-03 Richard M. Stallman <rms@gnu.org>
2196
2197 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
2198 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
2199 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
2200
2201 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
2202
2203 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
2204
2205 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2206
2207 * window.c (Fdisplay_buffer): Fix last change to not use
2208 a dedicated window.
2209
2210 2005-11-01 Kim F. Storm <storm@cua.dk>
2211
2212 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
2213 Instead, rotate the bottom angle bitmap 180 degrees to indicate
2214 that the bottom row does not end in a newline.
2215
2216 2005-11-01 Andreas Schwab <schwab@suse.de>
2217
2218 * unexelf.c (unexec): Handle .plt section in BSS segment.
2219
2220 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
2221
2222 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
2223
2224 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
2225 determine whether to consider dedicated windows as well.
2226 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
2227 (Fdisplay_buffer): Do consider dedicated windows in those cases where
2228 we will split the window rather than reuse it.
2229 Don't try to use windows on other displays.
2230
2231 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
2232
2233 * puresize.h (BASE_PURESIZE): Increment to 1170000.
2234
2235 2005-10-31 Romain Francoise <romain@orebokech.com>
2236
2237 * macfns.c: Update copyright year.
2238 * m/gould.h: Likewise.
2239
2240 2005-10-30 Kim F. Storm <storm@cua.dk>
2241
2242 * xdisp.c (display_line): Restore it->current_x and call
2243 extend_face_to_end_of_line when last glyph doesn't fit on line.
2244 (set_glyph_string_background_width): Remove specific tests here
2245 to see if face background should extend to end of line. Simplify.
2246
2247 2005-10-30 Richard M. Stallman <rms@gnu.org>
2248
2249 * alloc.c (BYTES_USED): Use uordblks, not arena.
2250 (bytes_used_when_reconsidered): New variable.
2251 (emacs_blocked_free): Set that.
2252
2253 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
2254
2255 * alloc.c (emacs_blocked_free): Fix typo.
2256
2257 2005-10-29 Richard M. Stallman <rms@gnu.org>
2258
2259 * data.c (Fmake_variable_frame_local): Doc fix.
2260
2261 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
2262 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
2263 controls whether to save and restore mode_line_proptrans_alist.
2264 Callers changed.
2265 (unwind_format_mode_line): Work with that feature.
2266 (redisplay_internal): Don't call prepare_menu_bars if memory full.
2267 (move_elt_to_front): New function.
2268 (display_mode_element): Use move_elt_to_front.
2269 Don't bother munging text props on a null string.
2270 Delete obsolete elts from mode_line_proptrans_alist.
2271 (decode_mode_spec): Test Vmemory_full, not spare_memory.
2272 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
2273
2274 * lisp.h (memory_full_cons_threshold): Declare.
2275 (internal_lisp_condition_case): Declare.
2276
2277 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
2278 (Fmemory_full_p): Function deleted.
2279 (syms_of_alloc): Don't defsubr it.
2280 (memory_full_cons_threshold): New variable.
2281 (spare_memory): Now a vector of 7 elts.
2282 (buffer_memory_full): Don't set Vmemory_full here.
2283 (xfree): Don't try to refill here.
2284 (emacs_blocked_free): Record BYTES_USED in local var.
2285 (memory_full): Now free all the slots in spare_memory.
2286 (refill_memory_reserve): Allocate each slot in spare_memory.
2287 (init_alloc_once): Call refill_memory_reserve.
2288
2289 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
2290
2291 * eval.c (internal_lisp_condition_case): New function.
2292 (Fcondition_case): Use internal_lisp_condition_case.
2293 (Feval): Test Vmemory_full and memory_full_cons_threshold.
2294 (Ffuncall): Likewise.
2295
2296 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
2297
2298 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
2299
2300 * syntax.c (Fparse_partial_sexp): Fix docstring.
2301
2302 2005-10-28 Romain Francoise <romain@orebokech.com>
2303
2304 * puresize.h (BASE_PURESIZE): Increment to 1130000.
2305
2306 2005-10-28 Richard M. Stallman <rms@gnu.org>
2307
2308 * xfns.c (syms_of_xfns): Provide `x' as feature.
2309
2310 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
2311
2312 * editfns.c (Fformat): Don't include string padding
2313 between info[n].start and info[n].end.
2314
2315 * alloc.c (spare_memory): No longer static.
2316 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
2317
2318 * puresize.h (BASE_PURESIZE): Increment to 1120000.
2319
2320 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
2321
2322 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
2323
2324 * fringe.c (update_window_fringes): Handle case where buffer ends
2325 with a newline.
2326
2327 2005-10-27 Kenichi Handa <handa@m17n.org>
2328
2329 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
2330
2331 2005-10-24 Kenichi Handa <handa@m17n.org>
2332
2333 * charset.h (charset_mule_unicode_0100_24ff)
2334 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2335 Extern them.
2336
2337 * charset.c (charset_mule_unicode_0100_24ff)
2338 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2339 New variables.
2340 (Fsetup_special_charsets): Initialize them.
2341
2342 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
2343 supported Unicode characters.
2344
2345 2005-10-25 Jason Rumney <jasonr@gnu.org>
2346
2347 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
2348
2349 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2350
2351 * image.c [MAC_OS] (image_load_qt_1): Check image size.
2352 Use GraphicsImportGetImageDescription instead of
2353 GraphicsImportGetNaturalBounds.
2354 [MAC_OSX] (image_load_quartz2d): Check image size.
2355 [MAC_OS] (xpm_load_image): Likewise.
2356
2357 * macterm.c (last_mouse_glyph_frame): New var.
2358 (note_mouse_movement): Say mouse moved if current frame differs
2359 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2360 (XTmouse_position): Set last_mouse_glyph_frame.
2361 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
2362 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
2363 Use EndianU16_BtoN.
2364 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
2365 (x_per_char_metric, XLoadQueryFont)
2366 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
2367 glyph bounds.
2368 (mac_to_x_fontname, mac_do_list_fonts)
2369 (mac_initialize_display_info): Change screen resolutions to 72dpi.
2370
2371 2005-10-25 Masatake YAMATO <jet@gyve.org>
2372
2373 * minibuf.c (Fdisplay_completion_list): Small doc fix.
2374
2375 2005-10-24 Kim F. Storm <storm@cua.dk>
2376
2377 * xterm.c: Undo 2005-10-23 change.
2378 (last_mouse_glyph_frame): New var.
2379 (note_mouse_movement): Say mouse moved if current frame differs
2380 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2381 (XTmouse_position): Set last_mouse_glyph_frame.
2382 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
2383 last_mouse_glyph] on mouse up/down event.
2384
2385 * editfns.c (Fcompare_buffer_substrings): Fix last change.
2386
2387 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2388
2389 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
2390
2391 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2392
2393 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
2394 so tool tips don't interfere with press on tool bar button.
2395
2396 2005-10-23 Richard M. Stallman <rms@gnu.org>
2397
2398 * casetab.c (Fset_case_table): Doc fix.
2399
2400 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
2401 (readevalloop): Compute ENTIRE properly.
2402 (syms_of_lread) <load-history>: Doc fix.
2403
2404 2005-10-21 Richard M. Stallman <rms@gnu.org>
2405
2406 * lread.c (Fload): Simplify gcpro structure.
2407 Gcpro FOUND as well as FILE, but not EFOUND.
2408 Unless preloading, record FOUND instead of FILE in Vload_history.
2409 Rename repeat local FILE to MSG_FILE.
2410 (syms_of_lread) <load-history>: Doc fix.
2411
2412 2005-10-21 Kenichi Handa <handa@m17n.org>
2413
2414 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
2415
2416 2005-10-20 Kim F. Storm <storm@cua.dk>
2417
2418 * buffer.c (clone_per_buffer_values): Remove unused var tem.
2419 (init_buffer): Remove unused vars dotstat, pwdstat.
2420
2421 * ccl.c (check_ccl_update): Remove unused var vp.
2422
2423 * fileio.c (auto_save_error): Call SAFE_FREE.
2424
2425 * fns.c (Fchar_table_range): Remove unused var i.
2426
2427 * minibuf.c (display_completion_list_1): New wrapper function
2428 for Fdisplay_completion_list.
2429 (Fminibuffer_completion_help): Use it.
2430
2431 * term.c (encode_terminal_code): Remove unused var src_start.
2432
2433 * window.c (Fwindow_tree): Remove unused var alist.
2434
2435 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
2436
2437 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
2438
2439 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
2440
2441 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
2442
2443 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
2444
2445 2005-10-20 Andreas Schwab <schwab@suse.de>
2446
2447 * minibuf.c (Fdisplay_completion_list): Doc fix.
2448
2449 2005-10-19 Kim F. Storm <storm@cua.dk>
2450
2451 * image.c (check_image_size): Handle integer Vmax_image_size value
2452 directly as max pixel value. Use default frame size for null frame.
2453 (syms_of_image) <max-image-size>: Describe integer value.
2454
2455 2005-10-19 Romain Francoise <romain@orebokech.com>
2456
2457 * emacs.c (main): Update copyright year.
2458
2459 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
2460
2461 * image.c (Vmax_image_size): New variable.
2462 (check_image_size): New function.
2463 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
2464 (gif_load, gs_load): Use it.
2465 (lookup_image): Try loading again if previous load failed.
2466 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
2467 to display in, NULL if none.
2468 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
2469 argument.
2470
2471 2005-10-18 Richard M. Stallman <rms@gnu.org>
2472
2473 * search.c (Fstring_match): Doc fix.
2474
2475 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2476
2477 * macterm.c (note_mouse_movement): Use PtInRect.
2478 (XTread_socket): Also ignore mouse motion just before a button
2479 release event. Don't process button release event when mouse is
2480 not grabbed.
2481
2482 2005-10-16 Masatake YAMATO <jet@gyve.org>
2483
2484 * minibuf.c (Fdisplay_completion_list): Add new optional
2485 argument COMMON_SUBSTRING. Bind `completion-common-substring'
2486 to the optional argument during running `completion-setup-hook'.
2487
2488 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2489
2490 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
2491 Allow nil as argument.
2492 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
2493 for encoding arguments as UTF-16 in native byte order, no BOM.
2494
2495 * macfns.c (Fx_create_frame): Add debugging code.
2496 (Fx_show_tip): Set frame pixel width and height.
2497
2498 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
2499 (FRAME_NORMAL_GC): New macro.
2500 (mac_draw_line, mac_clear_area, mac_clear_window)
2501 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
2502 (mac_draw_image_string, mac_draw_image_string_16): Rename from
2503 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
2504 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
2505 All uses changed.
2506 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
2507 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
2508 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
2509 (mac_draw_string_16, mac_draw_image_string)
2510 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
2511 (mac_scroll_area): Drawing functions now take frame as destination.
2512 All uses changed.
2513 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
2514 (x_draw_fringe_bitmap): Set clipping area in face->gc.
2515
2516 * macterm.h (mac_clear_area): Add extern.
2517
2518 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2519
2520 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
2521 changes for xterm.c.
2522
2523 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
2524
2525 2005-10-14 Kenichi Handa <handa@m17n.org>
2526
2527 * search.c (search_buffer): Give up BM search on case-fold-search
2528 if one of a target character has a case-equivalence of different
2529 charset even if that target charcter is an ASCII.
2530
2531 * casefiddle.c (casify_object): Fix for the case that case
2532 conversion change the byte length.
2533
2534 2005-10-14 Kim F. Storm <storm@cua.dk>
2535
2536 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
2537 (handle_one_xevent): Only clear help_echo_string; restore it if
2538 note_mouse_movement didn't record any mouse movement.
2539
2540 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
2541 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
2542
2543 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
2544 (Fposn_at_x_y): Fix calculation of x coordinate.
2545 (Fposn_at_point): Return nil if point is hscrolled out of view.
2546
2547 2005-10-13 Andreas Schwab <schwab@suse.de>
2548
2549 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
2550 non-interactive mode.
2551
2552 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2553
2554 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
2555
2556 2005-10-12 Kim F. Storm <storm@cua.dk>
2557
2558 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
2559
2560 2005-10-12 Romain Francoise <romain@orebokech.com>
2561
2562 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
2563
2564 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2565
2566 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
2567 get end of text rows. Obtain header-line/mode-line rows directly.
2568
2569 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
2570 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
2571
2572 2005-10-12 Kim F. Storm <storm@cua.dk>
2573
2574 * xdisp.c (remember_mouse_glyph): New generic version based on
2575 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
2576 properly handle all different window areas.
2577
2578 * dispextern.h (remember_mouse_glyph): Add prototype.
2579
2580 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
2581 (note_mouse_movement, XTmouse_position): Use generic
2582 remember_mouse_glyph, add last_mouse_glyph arg.
2583
2584 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
2585 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
2586 (note_mouse_movement, w32_mouse_position): Use generic
2587 remember_mouse_glyph, add last_mouse_glyph arg.
2588
2589 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
2590 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
2591 (XTmouse_position): Adapt to use generic remember_mouse_glyph
2592 instead of pixel_to_glyph_coords.
2593
2594 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
2595 Fix x position for ON_TEXT when left margin width > 0.
2596
2597 2005-10-11 Kim F. Storm <storm@cua.dk>
2598
2599 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
2600
2601 * keyboard.c (make_lispy_position): Fix buffer calculations for
2602 mouse click or movement in right fringe and the margins.
2603
2604 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
2605
2606 * image.c (fn_jpeg_stdio_src): Don't define it.
2607 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
2608 (our_common_init_source): Rename from `our_init_source'.
2609 (our_common_term_source): Rename from `our_term_source'.
2610 (our_memory_fill_input_buffer): Rename from
2611 `our_fill_input_buffer'.
2612 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
2613 (jpeg_memory_src): Use the new names.
2614 (struct jpeg_stdio_mgr): New struct.
2615 (JPEG_STDIO_BUFFER_SIZE): New constant.
2616 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
2617 (jpeg_file_src): New functions.
2618 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
2619
2620 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2621
2622 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
2623 (fm_font_family_alist): New variable.
2624 (syms_of_macterm): Initialize and staticpro it.
2625 (decode_mac_font_name): Replace '-' in family name with '_' if it
2626 occurs just once. Lower family name.
2627 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
2628 All uses changed. Remove argument MF and code conversion for it.
2629 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
2630 to CHARSET. Parse font size. Lower family name. Return integer
2631 value for status of parsing.
2632 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
2633 Don't use Fdowncase because family name is already lowered by
2634 decode_mac_font_name.
2635 (init_font_name_table): Always call decode_mac_font_name.
2636 Add pair of family name and its reference to fm_font_family_alist.
2637 (mac_clear_font_name_table): Clear fm_font_family_alist.
2638 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
2639 Lookup fm_font_family_alist to get font family reference.
2640 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
2641 name is already lowered by parse_x_font_name.
2642
2643 2005-10-11 Kim F. Storm <storm@cua.dk>
2644
2645 * xterm.c (glyph_rect): Return 0 if position is outside text area.
2646
2647 * keyboard.c (make_lispy_position): Fix buffer position calculation for
2648 mouse click or movement in fringe.
2649
2650 2005-10-10 Jason Rumney <jasonr@gnu.org>
2651
2652 * xterm.c (remember_mouse_glyph): New function.
2653 (note_mouse_movement): Use it to remember the current glyph if changed.
2654 (XTmouse_position): Fix calculation of fake glyph under mouse.
2655 Move code to calculate glyph under mouse into remember_mouse_glyph.
2656
2657 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2658
2659 * emacs.c (USAGE3, standard_args): -nb => -nbi.
2660
2661 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
2662
2663 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
2664 (next_frame, prev_frame, set_term_frame_name): Make static.
2665
2666 * window.c (Fwindow_tree): Fix spelling.
2667
2668 2005-10-09 Romain Francoise <romain@orebokech.com>
2669
2670 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
2671
2672 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2673
2674 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
2675 Add options -nb, --no-bitmap-icon.
2676
2677 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
2678
2679 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2680
2681 * macgui.h (MAX_CLIP_RECTS): New define.
2682 (struct _XGC): New member clip_region.
2683 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
2684 clip_rects.
2685
2686 * macterm.c (GC_CLIP_REGION): New macro.
2687 (saved_port_clip_region): New variable.
2688 (mac_begin_clip, mac_end_clip): New functions.
2689 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
2690 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
2691 (mac_copy_area_with_mask, mac_scroll_area): Use them.
2692 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
2693 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
2694 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
2695 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
2696 rectangles stored in gc.
2697 (XFreeGC): Dispose of clipping region.
2698 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
2699 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
2700 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
2701 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
2702 (x_draw_bar_cursor): Use them.
2703 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
2704 get multiple clipping rectangles.
2705
2706 * macterm.h (mac_term_init): Add types to extern.
2707 (struct mac_output): Remove members mWP and pending_menu_activation.
2708 Put members scroll_bar_foreground_pixel and
2709 scroll_bar_background_pixel in #if 0.
2710 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
2711
2712 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
2713 Add debugging code.
2714
2715 2005-10-08 Kim F. Storm <storm@cua.dk>
2716
2717 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
2718
2719 2005-10-07 Kim F. Storm <storm@cua.dk>
2720
2721 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
2722 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
2723 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
2724
2725 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2726
2727 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
2728 to for_overlaps. Now occupy 3 bits.
2729 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
2730 (OVERLAPS_ERASED_CURSOR): New defines.
2731 (struct redisplay_interface): Add new OVERLAPS arg to member
2732 fix_overlapping_area.
2733 (x_fix_overlapping_area): Add new OVERLAPS arg.
2734 (get_glyph_string_clip_rects): Add extern.
2735
2736 * dispnew.c (redraw_overlapping_rows):
2737 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
2738
2739 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
2740 for_overlaps.
2741 (get_glyph_string_clip_rects): New function created from
2742 get_glyph_string_clip_rect. Set clipping rectangles according to the
2743 value of for_overlaps. Enable to store multiple clipping rectangles.
2744 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
2745 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
2746 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
2747 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
2748 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
2749 calculating clipping rectangles later. Call x_fix_overlapping_area
2750 with new OVERLAPS arg to draw only erased cursor area.
2751 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
2752 to draw overlaps in both preceding and succeeding rows.
2753
2754 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
2755 struct glyph_string to for_overlaps.
2756
2757 2005-10-04 Richard M. Stallman <rms@gnu.org>
2758
2759 * alloc.c (refill_memory_reserve): Conditionalize the body,
2760 not the function's existence.
2761
2762 2005-10-04 Kim F. Storm <storm@cua.dk>
2763
2764 * window.c (window_split_tree): New function.
2765 (Fwindow_split_tree): New defun.
2766 (syms_of_window): Defsubr it.
2767
2768 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2769
2770 * macterm.c (mac_invert_rectangle): New function.
2771 (XTflash): Use it.
2772
2773 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
2774
2775 * regex.h (re_char): Don't expose it in the interface.
2776 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
2777
2778 * regex.c (re_char): Move it back here.
2779 (re_set_whitespace_regexp): Change the arg's type to not use it.
2780
2781 * keyboard.c (make_lispy_event): If point has moved between down and up
2782 event, make it a drag, not a click, to mirror what
2783 mouse-drag-region expects.
2784
2785 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
2786
2787 * lisp.h (fatal): Undo previous change.
2788 * term.c (fatal): Undo previous change.
2789
2790 2005-10-01 Richard M. Stallman <rms@gnu.org>
2791
2792 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
2793
2794 2005-10-01 Kim F. Storm <storm@cua.dk>
2795
2796 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
2797
2798 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2799
2800 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
2801
2802 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
2803 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
2804 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
2805 Try ATSUI-compatible 12pt Monaco font first.
2806
2807 * macgui.h (struct _XCharStruct): New member valid_p.
2808 (STORE_XCHARSTRUCT): Set valid_p.
2809 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
2810
2811 * macterm.c (mac_draw_string_common, x_per_char_metric)
2812 (mac_compute_glyph_string_overhangs, init_font_name_table)
2813 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
2814 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
2815 (x_draw_glyph_string_background)
2816 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
2817 XDrawImageString. Always draw background and foreground separately.
2818 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
2819 functions for one-byte chars when using ATSUI-compatible fonts.
2820 (atsu_font_id_hash) [USE_ATSUI]: New variable.
2821 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
2822 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
2823 max_char_or_byte2 more in detail.
2824 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
2825
2826 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
2827
2828 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
2829 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
2830
2831 * unexelf.c (fatal): Fix prototype.
2832
2833 * term.c (fatal): Implement using varargs.
2834
2835 * regex.c (re_char): Move typedef ...
2836 * regex.h (re_char): ... here.
2837 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
2838
2839 * emacs.c (malloc_set_state): Fix return type.
2840 (endif): Fix type.
2841
2842 * lisp.h (fatal): Add argument types.
2843
2844 * dispextern.h (fatal): Delete prototype.
2845
2846 * systime.h (make_time): Prototype moved from ...
2847 * editfns.c (make_time): ... here.
2848
2849 * editfns.c: Move systime.h include after lisp.h.
2850 * dired.c:
2851 * xsmfns.c:
2852 * process.c: Likewise.
2853
2854 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
2855 Add parameter types.
2856 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
2857 (emacs_blocked_free): Change definition to match __free_hook.
2858 (emacs_blocked_malloc): Change definition to match __malloc_hook.
2859 (emacs_blocked_realloc): Change definition to match __realloc_hook.
2860
2861 2005-09-30 Romain Francoise <romain@orebokech.com>
2862
2863 * minibuf.c (Fread_buffer): Follow convention for reading from the
2864 minibuffer with a default value. Doc fix.
2865
2866 2005-09-29 Juri Linkov <juri@jurta.org>
2867
2868 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
2869 Rename argument name `string' to `format-string'.
2870 (Fformat): Doc fix.
2871
2872 2005-09-28 Kim F. Storm <storm@cua.dk>
2873
2874 * image.c (gif_load): Fix size of allocated image buffer
2875 for images where a sub-image may be larger than the image's
2876 total height/width specifications.
2877
2878 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2879
2880 * macgui.h (struct _XCharStruct): Each member now takes short value.
2881
2882 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
2883
2884 * xfaces.c (lookup_derived_face): Add parameter type.
2885
2886 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
2887
2888 * marker.c (verify_bytepos): Add parameter type.
2889
2890 * process.c (get_operating_system_release): Move prototype ...
2891
2892 * systime.h (get_operating_system_release): ... here.
2893
2894 * xterm.c (handle_one_xevent): Refer to union field to match the
2895 type required by the function definition.
2896 (set_vertical_scroll_bar): Move prototype ...
2897
2898 * xterm.h: ... here.
2899
2900 * fns.c (internal_equal, seed_random): Fix prototypes.
2901 (internal_equal): Add missing parameter.
2902
2903 2005-09-25 Richard M. Stallman <rms@gnu.org>
2904
2905 * keyboard.c (update_menu_bindings): Variable deleted.
2906 (syms_of_keyboard): Don't defvar it.
2907 (parse_menu_item): Don't test it.
2908
2909 2005-09-23 Richard M. Stallman <rms@gnu.org>
2910
2911 * editfns.c (Fformat): Explicitly test for end of format string
2912 and don't use `index'.
2913
2914 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
2915
2916 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
2917 Define BROKEN_GET_CURRENT_DIR_NAME.
2918
2919 * sysdep.c (get_current_dir_name): Also define if
2920 BROKEN_GET_CURRENT_DIR_NAME.
2921
2922 * m/ibmrs6000.h: Test for USG5, not USG5_4.
2923
2924 2005-09-22 Kim F. Storm <storm@cua.dk>
2925
2926 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
2927 (message2): Fix commentary. Ok to use alloca'ed memory.
2928 Still not ok to use Lisp string data (because of GC).
2929 (set_message): Add comment why GC cannot happen.
2930
2931 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2932
2933 * macterm.c (xlfdpat_block_match_1): Fix assertion.
2934 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
2935 variants for a scalable font multiple times.
2936
2937 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2938
2939 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
2940 Setup slave tty options before forking.
2941
2942 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2943
2944 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
2945 positions have been set for the frame (as is done for frames in
2946 special-display-buffer-names).
2947
2948 2005-09-19 Kim F. Storm <storm@cua.dk>
2949
2950 * editfns.c (Fformat): Don't scan past end of format string that
2951 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
2952
2953 2005-09-18 Andreas Schwab <schwab@suse.de>
2954
2955 * window.h (struct window): Remove height_fixed_p, no longer set.
2956
2957 * window.c (make_window): Don't initialize height_fixed_p.
2958 (window_fixed_size_p): Don't use it.
2959
2960 2005-09-18 John Paul Wallington <jpw@pobox.com>
2961
2962 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
2963
2964 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2965
2966 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
2967
2968 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
2969 New variables.
2970 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
2971 file selection.
2972
2973 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
2974
2975 2005-09-17 Eli Zaretskii <eliz@gnu.org>
2976
2977 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
2978 (obj): Use XMENU_OBJ, not a literal xmenu.o.
2979
2980 2005-09-16 Romain Francoise <romain@orebokech.com>
2981
2982 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
2983
2984 2005-09-15 Richard M. Stallman <rms@gnu.org>
2985
2986 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
2987 (display_mode_element): Instead of `lisp_string' and `this',
2988 record `offset' and increment that.
2989 `last_offset' replaces `last'.
2990
2991 * Makefile.in (XMENU_OBJ): Variable deleted.
2992 (obj): Use xmenu.o unconditionally.
2993 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
2994
2995 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
2996
2997 2005-09-15 Kim F. Storm <storm@cua.dk>
2998
2999 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
3000 (reseat_at_next_visible_line_start): Likewise (in xassert).
3001
3002 2005-09-14 Romain Francoise <romain@orebokech.com>
3003
3004 * fileio.c (write_region_inhibit_fsync): New variable.
3005 (Fwrite_region): Use it to skip call to fsync.
3006 (syms_of_fileio): Initialize it.
3007
3008 2005-09-14 Kenichi Handa <handa@m17n.org>
3009
3010 * coding.c (code_convert_region_unwind): Argument format changed.
3011 (run_pre_post_conversion_on_str): If pre-write-conversion function
3012 changed the current buffer, delete the new buffer.
3013 (run_pre_write_conversin_on_c_str): Likewise.
3014
3015 * fileio.c (Fexpand_file_name): Check multibyteness of
3016 default_directory.
3017
3018 2005-09-13 Kenichi Handa <handa@m17n.org>
3019
3020 * composite.c (compose_chars_in_text): Delete it.
3021
3022 * composite.h (compose_chars_in_text): Delete extern.
3023
3024 2005-09-13 Kim F. Storm <storm@cua.dk>
3025
3026 * print.c (print_error_message): Fix last change.
3027
3028 2005-09-12 Kim F. Storm <storm@cua.dk>
3029
3030 * composite.c (compose_chars_in_text): Fix setup of `pend'.
3031 Unconditionally reload `ptr' and `pend' after eval.
3032
3033 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
3034
3035 * print.c (print_error_message): Pass copy of caller name to
3036 message_dolog.
3037
3038 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
3039
3040 2005-09-12 Kenichi Handa <handa@m17n.org>
3041
3042 * xdisp.c (display_mode_element): Be sure to make variables THIS
3043 and LISP_STRING point into a string data of ELT.
3044
3045 2005-09-12 Kim F. Storm <storm@cua.dk>
3046
3047 * editfns.c (Ftranslate_region_internal): Reload `tt' after
3048 signal_after_change that may have GC'ed.
3049 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
3050
3051 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
3052 after insert while runs signal_after_change.
3053
3054 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
3055 declaration to where it is used.
3056
3057 * w32.c (check_windows_init_file): Fix allocation of error buffer.
3058
3059 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
3060 (x_set_name_internal): Call x_encode_text with new FREEP arg to
3061 know if xfree is needed instead of guessing.
3062
3063 * xterm.h (x_encode_text): Remove prototype.
3064
3065 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
3066
3067 * w32term.c (x_bitmap_icon): Load small icons too.
3068
3069 2005-09-10 Romain Francoise <romain@orebokech.com>
3070
3071 * buffer.c (init_buffer): Grow buffer to add directory separator
3072 and terminal zero. Fix typos.
3073
3074 2005-09-10 Eli Zaretskii <eliz@gnu.org>
3075
3076 * buffer.c (init_buffer): Fix error message for failed call to
3077 get_current_dir_name.
3078 (get_current_dir_name): Remove prototype.
3079
3080 * xsmfns.c (get_current_dir_name): Remove prototype.
3081
3082 * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
3083 Add prototype.
3084
3085 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
3086 Don't #undef NULL after including blockinput.h.
3087
3088 * config.in: Regenerated.
3089
3090 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
3091
3092 Remove the MAXPATHLEN limitations:
3093
3094 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
3095 New function.
3096
3097 * buffer.c (init_buffer): Use it.
3098
3099 * xsmfns.c (smc_save_yourself_CB): Ditto.
3100
3101 2005-09-09 Kim F. Storm <storm@cua.dk>
3102
3103 * doc.c (Fsubstitute_command_keys): Lookup key binding for
3104 commands that are remapped from some other command.
3105
3106 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
3107 flag in disabled rows below the window.
3108
3109 * frame.h (struct frame): New member updated_p.
3110
3111 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
3112 member. Remove local `updated' array and associated variables.
3113
3114 2005-09-07 Kim F. Storm <storm@cua.dk>
3115
3116 * xdisp.c (handle_display_prop): Respect overlay window property.
3117
3118 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
3119 Fixes crash reported by YAMAMOTO Mitsuharu.
3120
3121 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3122
3123 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
3124 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
3125 (xlfdpat_block_match_1, xlfdpat_match): New functions.
3126 (xlfdpat_block_match): New macro.
3127 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
3128 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
3129 (add_font_name_table_entry): Increase font_name_table_size more
3130 rapidly.
3131 (mac_c_string_match): Remove function.
3132 (mac_do_list_fonts): Use XLFD pattern match instead of regular
3133 expression match.
3134
3135 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
3136
3137 2005-09-03 Richard M. Stallman <rms@gnu.org>
3138
3139 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
3140 (move_it_in_display_line_to): Stop after last char on line even
3141 on a windowing terminal, if that's the specified stop position.
3142
3143 * fns.c (Fsort): Doc fix.
3144
3145 * editfns.c (Fpropertize): Don't insist that properties be symbols.
3146
3147 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
3148
3149 * dired.c (directory_files_internal_unwind, directory_files_internal)
3150 (file_name_completion): Use a Save_Value object rather than a cons of
3151 two 16bit ints to store the DIR*.
3152 (directory_files_internal, file_name_completion): Handle both EINTR and
3153 EAGAIN consistently after `readdir'.
3154
3155 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
3156
3157 * intervals.c (update_interval): Add position info in error.
3158
3159 * dispnew.c (window_to_frame_hpos, update_window):
3160 Avoid gcc warning about unused variable `f'.
3161
3162 2005-08-31 Jason Rumney <jasonr@gnu.org>
3163
3164 * w32menu.c (add_menu_item): If unicode_append_menu returns an
3165 error, revert to using AppendMenu.
3166
3167 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3168
3169 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
3170 All uses changed.
3171 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
3172 cases.
3173 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
3174 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
3175 Use posix_pathname_to_fsspec.
3176 [MAC_OS] (xpm_load_image): Fill in background_transparent field
3177 while we have mask.
3178
3179 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
3180
3181 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
3182
3183 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3184
3185 * syntax.c (update_syntax_table): Properly reproduce the special +1
3186 setting of e_property at the end of the buffer when bumping into the
3187 INTERVALS_AT_ONCE limit.
3188
3189 2005-08-27 Eli Zaretskii <eliz@gnu.org>
3190
3191 * emacs.c (USAGE1): Fix the description of the -Q option.
3192
3193 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
3194
3195 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
3196
3197 2005-08-26 Kim F. Storm <storm@cua.dk>
3198
3199 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
3200 Don't move PT to new window start.
3201
3202 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3203
3204 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
3205 ICONIFY/DEICONIFY_EVENT.
3206
3207 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
3208 Restore background color.
3209 (mac_handle_visibility_change): New function.
3210 (x_make_frame_invisible, x_iconify_frame)
3211 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
3212 [USE_CARBON_EVENTS] (mac_handle_window_event)
3213 (install_window_handler): Handle visibility change events.
3214 (x_make_frame_visible): Don't reposition window if it is iconified
3215 or asked for visible before. Select and uncollapse window when it
3216 is made visible.
3217 (x_make_frame_invisible): Don't reset x_highlight_frame.
3218 (x_iconify_frame): Likewise. Make invisible frame visible before
3219 it is iconified.
3220 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
3221 (do_window_update): Don't change visibility of invisible frame.
3222
3223 2005-08-22 Juri Linkov <juri@jurta.org>
3224
3225 * term.c (turn_on_face): Check for TS_set_foreground and
3226 TS_set_background depending on standout_mode. Simplify.
3227
3228 2005-08-21 Kim F. Storm <storm@cua.dk>
3229
3230 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
3231 bitmaps on fully visible rows.
3232
3233 * fringe.c (update_window_fringes): Replace FORCE_P arg with
3234 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
3235 and return 0.
3236
3237 * xdisp.c (redisplay_window): Call update_window_fringes with
3238 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
3239
3240 2005-08-20 Richard M. Stallman <rms@gnu.org>
3241
3242 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
3243 (resize_mini_window): Set w->start, and PT, so as to display the tail
3244 end of the buffer, if it doesn't all fit.
3245
3246 2005-08-18 Kim F. Storm <storm@cua.dk>
3247
3248 * xdisp.c (calc_pixel_width_or_height): Use actual display
3249 resolution when available instead of Vdisplay_pixels_per_inch.
3250
3251 2005-08-17 Kim F. Storm <storm@cua.dk>
3252
3253 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
3254
3255 * dispnew.c (buffer_posn_from_coords): Check that target row is
3256 within matrix.
3257
3258 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3259
3260 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
3261 xg_set_frame_icon and call it.
3262
3263 * gtkutil.c (xg_set_frame_icon): New function.
3264
3265 * gtkutil.h (xg_set_frame_icon): Declare it.
3266
3267 2005-08-16 Kim F. Storm <storm@cua.dk>
3268
3269 * dispnew.c (increment_row_positions): Skip non-enabled rows.
3270
3271 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
3272 (Fcurrent_window_configuration): Use VECSIZE macro instead.
3273
3274 2005-08-15 Richard M. Stallman <rms@gnu.org>
3275
3276 * xdisp.c (message3_nolog): Clear echo_message_buffer.
3277
3278 2005-08-15 Kim F. Storm <storm@cua.dk>
3279
3280 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
3281
3282 * process.c (deactivate_process, status_notify, read_process_output)
3283 (update_status, status_convert, decode_status, allocate_pty)
3284 (make_process, remove_process, list_processes_1)
3285 (create_process_1, unwind_request_sigio, read_process_output)
3286 (send_process, keyboard_bit_set): Declare static.
3287 (Fdelete_process): Simplify. Pass process to status_notify, so we
3288 don't try to read output from it.
3289 (status_notify): New arg deleting_process--don't try to read
3290 output from that process.
3291
3292 * lisp.h (deactivate_process, status_notify, read_process_output):
3293 Remove prototypes.
3294
3295 2005-08-14 Richard M. Stallman <rms@gnu.org>
3296
3297 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
3298 define_image_type.
3299
3300 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3301
3302 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
3303 (xg_get_image_for_pixmap): Move some code to
3304 xg_get_pixbuf_from_pix_and_mask, and call it.
3305
3306 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
3307
3308 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
3309 to get an GTK icon and set it with GTK functions to avoid having GTK
3310 override an icon set with just X functions.
3311
3312 2005-08-11 Richard M. Stallman <rms@gnu.org>
3313
3314 * image.c (syms_of_image): Init image_types here, and call
3315 define_image_type.
3316 (init_image): Not here.
3317
3318 2005-08-09 Richard M. Stallman <rms@gnu.org>
3319
3320 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
3321
3322 * lisp.h (QUIT): Throw t to Vthrow_on_input.
3323
3324 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
3325
3326 * floatfns.c (Fexpt): Use floats for negative exponent.
3327
3328 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3329
3330 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
3331 should not be there, causing menu display errors with GTK 2.6.9.
3332
3333 2005-08-07 Richard M. Stallman <rms@gnu.org>
3334
3335 * floatfns.c (Fexpt): Undo previous change.
3336
3337 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
3338 so it can be used with various state vectors.
3339
3340 * emacs.c (endif): Convert -script into -scriptload.
3341 (standard_args): Add -scriptload. Allow -basic-display with one dash.
3342
3343 * fns.c (syms_of_fns): Add `emacs' to features.
3344
3345 * term.c (set_terminal_modes): If no TS_termcap_modes string,
3346 output newlines to scroll the old screen contents off the screen.
3347
3348 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
3349
3350 * floatfns.c (Fexpt): Use floats for negative exponent.
3351 Reported by D Goel.
3352
3353 2005-08-02 Richard M. Stallman <rms@gnu.org>
3354
3355 * frame.c (Fframe_char_width): Doc fix.
3356
3357 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
3358
3359 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
3360 Defvar it.
3361
3362 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
3363
3364 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
3365 (my_create_window, my_create_tip_window): Make static.
3366
3367 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
3368 (my_set_foreground_window, my_destroy_window): Make static.
3369
3370 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
3371
3372 Merge gnulib getopt implementation into Emacs.
3373
3374 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
3375 now part of lib-src.
3376
3377 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
3378
3379 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
3380
3381 2005-07-25 Jason Rumney <jasonr@gnu.org>
3382
3383 * w32menu.c (w32_menu_display_help): Suppress tooltip when
3384 navigating menus with the keyboard.
3385
3386 2005-07-23 Richard M. Stallman <rms@gnu.org>
3387
3388 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
3389
3390 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
3391 gc_relative_threshold, one by one.
3392
3393 * keyboard.c (read_char): Test gc_cons_threshold.
3394 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
3395
3396 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
3397 gc_relative_threshold, one by one.
3398
3399 * alloc.c (gc_cons_threshold): Not static.
3400 (gc_cons_combined_threshold): Var deleted.
3401 (gc_relative_threshold): New variable.
3402 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
3403 instead of gc_cons_combined_threshold.
3404
3405 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
3406 (gc_cons_combined_threshold): Declaration deleted.
3407
3408 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3409
3410 * mac.c: Don't include stdlib.h or string.h.
3411 (Fdo_applescript, Fmac_file_name_to_posix)
3412 (Fmac_file_name_to_posix): Doc fixes.
3413 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
3414 (Fmac_code_convert_string): Likewise.
3415 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
3416 if the executable is not contained in a bundle.
3417
3418 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
3419 (gray_width, gray_height): Remove defines.
3420 (gray_bits, gray_bitmap_width, gray_bitmap_height)
3421 (gray_bitmap_bits): Remove variables.
3422 (lispy_function_keys): Remove extern.
3423 (free_frame_menubar): Add extern.
3424 (x_window_to_frame): Remove function.
3425 (unwind_create_tip_frame): Add declaration.
3426 (x_set_name_internal): New function.
3427 (x_set_name, x_set_title): Use it.
3428 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
3429 (Fx_display_pixel_height, Fx_display_planes)
3430 (Fx_display_color_cells, Fx_server_max_request_size)
3431 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3432 (Fx_display_mm_height, Fx_display_mm_width)
3433 (Fx_display_backing_store, Fx_display_visual_class)
3434 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
3435
3436 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3437
3438 * macselect.c (Fx_own_selection_internal): Follow error conventions.
3439 (Fx_get_selection_internal, Fx_selection_owner_p)
3440 (Fx_selection_exists_p): Doc fixes.
3441 (syms_of_macselect) <selection-converter-alist>: Likewise.
3442
3443 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
3444
3445 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
3446
3447 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
3448 (Fccl_execute_on_string): Likewise; add usage info.
3449
3450 * composite.c (Fcompose_region_internal)
3451 (Fcompose_string_internal):
3452 Improve argument/docstring consistency.
3453
3454 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
3455 Fix typos in docstrings.
3456
3457 * textprop.c (Fnext_char_property_change)
3458 (Fprevious_char_property_change): Doc fixes.
3459
3460 * window.c (Fset_window_margins, Fset_window_fringes):
3461 Improve argument/docstring consistency.
3462
3463 * xfaces.c (Finternal_lisp_face_p): Doc fix.
3464
3465 2005-07-21 Andreas Schwab <schwab@suse.de>
3466
3467 * eval.c (restore_stack_limits): Return a value.
3468
3469 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
3470
3471 * eval.c (Fdefvar): Doc fix.
3472
3473 2005-07-20 Kim F. Storm <storm@cua.dk>
3474
3475 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
3476 Use make_save_value to unwind protect stream.
3477
3478 * lread.c (Fload, load_unwind):
3479 Use make_save_value to unwind protect stream.
3480
3481 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
3482
3483 * eval.c (Fprog2, Fcalled_interactively_p),
3484 (syms_of_eval) <debug-on-quit>: Doc fixes.
3485 (syms_of_eval) <max-specpdl-size>:
3486 (Finteractive_p): Fix typos in docstrings.
3487
3488 2005-07-19 Kim F. Storm <storm@cua.dk>
3489
3490 * w32fns.c (Vx_hand_shape): Variable removed.
3491 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
3492
3493 2005-07-19 Kenichi Handa <handa@m17n.org>
3494
3495 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
3496
3497 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
3498
3499 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
3500
3501 2005-07-18 Kim F. Storm <storm@cua.dk>
3502
3503 * frame.h (struct frame): New member already_hscrolled_p.
3504
3505 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
3506 to avoid redisplay looping hscrolling back and forth ad infinitum.
3507
3508 2005-07-18 Juri Linkov <juri@jurta.org>
3509
3510 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
3511 * keymap.c (Fminor_mode_key_binding):
3512 * macterm.c (mac-emulate-three-button-mouse):
3513 Delete duplicate duplicate words.
3514
3515 2005-07-18 Ken Raeburn <raeburn@gnu.org>
3516
3517 * minibuf.c (Ftest_completion): Fix odd syntax in test.
3518
3519 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3520
3521 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
3522
3523 * macgui.h (struct _XGC): New struct.
3524 (GC): Use it.
3525 (GCForeground, GCBackground, GCFont): Use X11 mask values.
3526 (XCreateGC, XParseGeometry): Move externs to macterm.h.
3527
3528 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
3529 (XSetFont): Add declaration.
3530 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
3531 Remove functions.
3532 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
3533 New defines.
3534 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
3535 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
3536 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
3537 Use them.
3538 (mac_erase_rectangle): New function.
3539 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
3540 (x_draw_stretch_glyph_string): Use it.
3541 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
3542 (XSetBackground, XSetFont): Adjust for new GC implementation.
3543 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
3544 (XTset_vertical_scroll_bar): Clear area under scroll bar.
3545
3546 * macterm.h (struct mac_display_info): Change types of
3547 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
3548 (XCreateGC, XParseGeometry): Move externs from macgui.h.
3549
3550 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
3551
3552 2005-07-16 Richard M. Stallman <rms@gnu.org>
3553
3554 * buffer.c (Fmake_overlay): Doc fix.
3555
3556 2005-07-16 Eli Zaretskii <eliz@gnu.org>
3557
3558 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
3559 Vw32_valid_locale_ids, and Vw32_valid_codepages.
3560
3561 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3562
3563 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
3564 Use Fstring_as_unibyte instead of string_make_unibyte.
3565
3566 2005-07-15 Richard M. Stallman <rms@gnu.org>
3567
3568 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
3569
3570 2005-07-15 Kim F. Storm <storm@cua.dk>
3571
3572 * xdisp.c: Fix redisplay loop in last change.
3573 (IT_POS_VALID_AFTER_MOVE_P): New macro.
3574 (move_it_vertically_backward, move_it_by_lines): Use it.
3575
3576 2005-07-14 Jason Rumney <jasonr@gnu.org>
3577
3578 * w32.c (init_environment): Default HOME directory to user's
3579 appdata directory if possible.
3580
3581 2005-07-14 Kim F. Storm <storm@cua.dk>
3582
3583 * .gdbinit (pitx): Fix output format. Print string charpos.
3584
3585 * lread.c (syms_of_lread): Initialize seen_list.
3586
3587 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
3588
3589 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
3590 Staticpro re_match_object.
3591
3592 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3593
3594 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
3595 dereference.
3596
3597 * macterm.c (mac_window_to_frame): Remove duplicate define.
3598
3599 2005-07-14 Kenichi Handa <handa@m17n.org>
3600
3601 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
3602 (code_convert_region): Adjust for the above change.
3603 (set_conversion_work_buffer): If the work buffer is already in
3604 use, generate a new buffer and return it. Otherwise return Qnil.
3605 (run_pre_post_conversion_on_str): Adjust for the above change.
3606 (run_pre_write_conversin_on_c_str): Likewise.
3607
3608 2005-07-13 Kim F. Storm <storm@cua.dk>
3609
3610 * xdisp.c (start_display): Don't reseat to next visible line start
3611 if current start position is in a string or image.
3612 (move_it_vertically_backward): Be sure to move out of strings and
3613 images when moving it2 forward.
3614 (move_it_by_lines): When moving forward, move to next buffer
3615 position if we end up in a string or image. When moving backward,
3616 count rows moved over when moving to start of current row in case
3617 row starts in middle of a string or image. Also move further
3618 backward if we end up in a string or image.
3619 (try_cursor_movement): If overlay string spans multiple lines,
3620 move backward to set cursor on start of an overlay string.
3621 (cursor_row_p): Row is ok if cursor is at newline from string, but
3622 string starts on this line (so we always position cursor at start
3623 of string).
3624
3625 * indent.c (Fvertical_motion): If start position is on an image,
3626 don't move back if we move too far (that's almost certain to happen).
3627
3628 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
3629 row in minibuffer windows.
3630 (try_window): Don't check margins in minibuffer windows.
3631
3632 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3633
3634 * macterm.c: Don't include stdlib.h or composite.h.
3635 (x_use_underline_position_properties, last_mouse_press_frame)
3636 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
3637 (syms_of_macterm, mac_initialize): Don't initialize them.
3638 (waiting_for_input, initial_argv, initial_argc)
3639 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
3640 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
3641 (extra_keyboard_modifiers): Fix type in extern.
3642 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
3643 (x_scroll_bar_report_motion): Add argument types to declaration.
3644 (mac_compute_glyph_string_overhangs): Add declaration.
3645 (disable_mouse_highlight): Remove unused variable.
3646 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
3647 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
3648 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
3649 All callers changed.
3650 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
3651 timestamp.
3652 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
3653 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
3654 only when its width is less than the height.
3655 (XTredeem_scroll_bar): Sync with xterm.c.
3656 (font_name_table, font_name_table_size, font_name_count):
3657 Make static.
3658 (drag_and_drop_file_list): Remove variable. Previous use is now
3659 local to function.
3660 (do_ae_open_documents): Move DRAG_N_DROP event construction part
3661 from XTread_socket.
3662 (XTread_socket): Consolidate setting of event timestamp.
3663 Move DRAG_N_DROP event construction part to do_ae_open_documents.
3664 Support extra_keyboard_modifiers.
3665
3666 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
3667 beginning with that for ASCII.
3668
3669 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
3670
3671 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
3672 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
3673 (syms_of_alloc): Declare gc-cons-percentage.
3674
3675 * eval.c (Feval, Ffuncall):
3676 * keyboard.c (read_char):
3677 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
3678
3679 * lisp.h (gc_cons_combined_threshold): Declare.
3680
3681 2005-07-12 Kim F. Storm <storm@cua.dk>
3682
3683 * coding.c (Qprocess_argument):
3684 * coding.h (Qprocess_argument): Remove unused var.
3685
3686 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
3687
3688 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3689
3690 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
3691 Endian.h.
3692 [!MAC_OSX] (fchmod, fchown): New functions.
3693 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
3694 Use SBYTES and EndianU32_BtoN.
3695 (mac_get_object_from_code): Return 4 byte string even if argument
3696 is 0. Use make_unibyte_string and EndianU32_NtoB.
3697 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
3698 (Fmac_set_file_type): Fix documents and argument declarations.
3699 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
3700
3701 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
3702
3703 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
3704
3705 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3706
3707 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
3708 Lucid if X_I18N, font otherwise.
3709
3710 2005-07-10 Steven Tamm <steventamm@mac.com>
3711
3712 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
3713 (Fmac_set_file_type, Fmac_set_file_creator): Add.
3714 (mac_get_object_from_code, mac_get_code_from_arg): Add.
3715
3716 2005-07-10 Richard M. Stallman <rms@gnu.org>
3717
3718 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
3719 (syms_of_lread): Set up eval-buffer-list.
3720 (Feval_buffer, Feval_region): Bind eval-buffer-list.
3721
3722 2005-07-08 Richard M. Stallman <rms@gnu.org>
3723
3724 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
3725
3726 2005-07-08 Kim F. Storm <storm@cua.dk>
3727
3728 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
3729 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
3730
3731 2005-07-07 Kim F. Storm <storm@cua.dk>
3732
3733 * window.c (Frecenter): Fix last change (set iarg before use).
3734
3735 2005-07-06 Richard M. Stallman <rms@gnu.org>
3736
3737 * window.c (Frecenter): When arg is inside the scroll margin,
3738 move it out of the margin.
3739
3740 2005-07-06 Jason Rumney <jasonr@gnu.org>
3741
3742 * w32console.c (initialize_w32_display): Detect when the console
3743 dimensions are insane, and default to 80x25 instead.
3744 (w32_use_full_screen_buffer): Default to NIL.
3745
3746 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3747
3748 * macterm.c (mac_draw_vertical_window_border): Use foreground of
3749 VERTICAL_BORDER_FACE_ID for vertical border line.
3750 (mac_encode_char): Call check_ccl_update in advance.
3751 (mac_to_x_fontname, x_font_name_to_mac_font_name)
3752 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
3753 Don't assume that font family length is less than 32.
3754 (x_compute_min_glyph_bounds): Make static.
3755 (x_load_font): Never set fonts_changed_p to zero.
3756
3757 2005-07-04 Lute Kamstra <lute@gnu.org>
3758
3759 * Update FSF's address in GPL notices.
3760
3761 2005-07-03 Richard M. Stallman <rms@gnu.org>
3762
3763 * xdisp.c (try_window): Fix previous change in how it handles
3764 a partially-visible line or one only partly past the margin.
3765
3766 * window.c (window_scroll_pixel_based): Take account
3767 of this_scroll_margin when finding point when scrolling up.
3768
3769 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
3770
3771 * window.c (window_scroll_pixel_based, window_scroll_line_based):
3772 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
3773 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
3774
3775 2005-07-02 Juri Linkov <juri@jurta.org>
3776
3777 * w32term.c (w32_draw_vertical_window_border): Use foreground of
3778 VERTICAL_BORDER_FACE_ID for vertical border line.
3779
3780 2005-07-02 Eli Zaretskii <eliz@gnu.org>
3781
3782 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
3783 fchmod so that chmod doesn't get called on MSDOS before the file
3784 is closed.
3785
3786 2005-07-01 Jason Rumney <jasonr@gnu.org>
3787
3788 * w32term.c (cleartype_active): New flag for enabling sub-pixel
3789 workaround.
3790 (w32_initialize): Initialize it.
3791 (w32_native_per_char_metric): Allow a couple of extra pixels when
3792 Cleartype is active.
3793
3794 * w32term.c (w32_initialize): Move check for screen reader here
3795 from syms_of_w32term.
3796
3797 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3798
3799 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
3800 is not zero.
3801
3802 2005-07-01 Masatake YAMATO <jet@gyve.org>
3803
3804 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
3805
3806 2005-06-30 Juri Linkov <juri@jurta.org>
3807
3808 * xdisp.c (x_draw_vertical_border): If left fringe is not present
3809 decrease x coord of vertical border by 1 pixel to not occupy text
3810 area of the right window.
3811
3812 * xterm.c (x_draw_vertical_window_border): Use foreground of
3813 VERTICAL_BORDER_FACE_ID for vertical border line.
3814
3815 * term.c (turn_on_face): In standout mode apply specified
3816 fg to bg, and specified bg to fg (this makes the logic of
3817 inversion on terminal consistent with X).
3818
3819 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
3820
3821 * eval.c (user_variable_p_eh): New function.
3822 (Fuser_variable_p): Use it. Clarify docstring.
3823 Return t for aliases of user options, nil for alias loops.
3824
3825 2005-06-27 Richard M. Stallman <rms@gnu.org>
3826
3827 * eval.c (Fdefvar): Improve error message.
3828
3829 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3830
3831 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
3832 change.
3833
3834 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
3835
3836 * eval.c (Fdefvar): Don't try to set constant symbols.
3837
3838 2005-06-25 Richard M. Stallman <rms@gnu.org>
3839
3840 * macfns.c (Fx_show_tip): Pass new arg to try_window.
3841
3842 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
3843
3844 * xfns.c (Fx_show_tip): Pass new arg to try_window.
3845
3846 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
3847 (redisplay_window): Handle try_window reporting point in scroll margin.
3848
3849 * dispextern.h (try_window): Declare new arg.
3850
3851 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
3852 Use fchmod to copy the file modes.
3853 (Frename_file): Don't copy UID and GID here;
3854 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
3855
3856 * eval.c (call_debugger): Take full care of extending stack limits
3857 to make space for the debugger, and restore the change afterward.
3858 Bind debug-on-error to nil.
3859 (restore_stack_limits): New subroutine.
3860 (Fsignal): Extend specpdl bound along with eval depth bound,
3861 for calling edebug. Don't do either one, for calling debugger.
3862 (find_handler_clause): Don't bind debug-on-error here.
3863 Don't unbind anything either.
3864 Temporarily advance max_specpdl_size for calling
3865 internal_with_output_to_temp_buffer.
3866 (grow_specpdl): Don't alter max_specpdl_size before signaling
3867 an error.
3868 (syms_of_eval) <max-specpdl-size>: Doc fix.
3869
3870 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
3871
3872 2005-06-24 Eli Zaretskii <eliz@gnu.org>
3873
3874 * fileio.c (Frename_file): Undo last change: no need to ifdef away
3875 chown on DOS_NT platforms.
3876
3877 * w32.c (sys_chown): New function.
3878
3879 * s/ms-w32.h (chown): New; define to sys_chown.
3880
3881 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
3882
3883 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
3884 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
3885
3886 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
3887
3888 2005-06-23 Richard M. Stallman <rms@gnu.org>
3889
3890 * xdisp.c (get_next_display_element): Finish reversing the tests of
3891 Vnobreak_char_display.
3892
3893 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
3894 All uses changed.
3895 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
3896 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
3897
3898 * fileio.c (Frename_file): Preserve owner and group, if possible,
3899 when copying.
3900
3901 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
3902
3903 * abbrev.c (Funexpand_abbrev):
3904 * category.c (Fmake_category_set):
3905 * dispnew.c (Fsleep_for, Fsit_for):
3906 * editfns.c (Fsubst_char_in_region):
3907 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
3908 * frame.c (make_frame_without_minibuffer):
3909 * lread.c (read_vector):
3910 * macfns.c (check_x_frame):
3911 * process.c (Fstop_process, Fcontinue_process):
3912 * search.c (Freplace_match):
3913 * syntax.c (Fstring_to_syntax):
3914 * w32fns.c (check_x_frame, check_x_display_info):
3915 * xfaces.c (x_supports_face_attributes_p):
3916 * xselect.c (Fx_own_selection_internal): Follow error conventions.
3917
3918 * image.c (fn_png_init_io): Don't define it.
3919 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
3920 (png_read_from_file): New function, based on png_read_from_memory.
3921 (png_load): Use it, instead of fn_png_init_io.
3922
3923 2005-06-23 Kim F. Storm <storm@cua.dk>
3924
3925 * search.c (Fmatch_data): Remove evaporate option.
3926 (Fset_match_data): Do not mention evaporate option in doc string.
3927 Add commentary explaining evaporate arg (for internal use only).
3928 (unwind_set_match_data): Add comment on evaporate use.
3929
3930 2005-06-22 Miles Bader <miles@gnu.org>
3931
3932 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
3933 (realize_basic_faces, syms_of_xfaces): Update references to it.
3934 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
3935 to `VERTICAL_BORDER_FACE_ID'.
3936 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
3937
3938 2005-06-21 Juri Linkov <juri@jurta.org>
3939
3940 * dispextern.h: Add extern Qframe_set_background_mode.
3941
3942 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
3943 Qframe_set_background_mode.
3944
3945 * frame.c (Fmodify_frame_parameters):
3946 Call frame-set-background-mode after changing the background color
3947 on non-window non-dos branch.
3948
3949 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
3950
3951 * fns.c (Fchar_table_range):
3952 * process.c (Fmake_network_process): Fix spellings.
3953
3954 2005-06-20 Kim F. Storm <storm@cua.dk>
3955
3956 * fns.c (Fsort): Doc fix.
3957
3958 2005-06-20 Miles Bader <miles@gnu.org>
3959
3960 * xfaces.c (Qvertical_divider): New variable.
3961 (realize_basic_faces): Realize its face.
3962 (syms_of_xfaces): Initialize it.
3963
3964 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
3965
3966 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
3967 window-separator on ttys using `vertical-divider' face by default.
3968
3969 2005-06-17 Richard M. Stallman <rms@gnu.org>
3970
3971 * xdisp.c (get_next_display_element):
3972 Reverse test of Vshow_nonbreak_escape.
3973
3974 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
3975 (Ftty_no_underline): New function.
3976 (syms_of_term): defsubr it.
3977
3978 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
3979
3980 * dispnew.c (spec_glyph_lookup_face): New function.
3981 (build_frame_matrix_from_leaf_window): Use it.
3982
3983 * dispextern.h (spec_glyph_lookup_face): Add declaration.
3984
3985 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
3986
3987 2005-06-12 Richard M. Stallman <rms@gnu.org>
3988
3989 * keyboard.c (read_char): After catching a longjmp,
3990 call restore_getcjmp.
3991
3992 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
3993
3994 * xselect.c (lisp_data_to_selection_data): Fix spelling.
3995
3996 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3997
3998 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
3999 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
4000 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
4001 events.
4002 (XTread_socket): Don't pass keyboard events with the option
4003 modifier to the system when Vmac_command_key_is_meta is nil or
4004 Vmac_option_modifier is non-nil.
4005 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
4006 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
4007 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
4008 handler function.
4009 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
4010 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
4011 handler part to mac_handle_mouse_event.
4012
4013 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
4014
4015 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
4016 NEW-ALIAS and BASE-VARIABLE, respectively.
4017
4018 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
4019
4020 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
4021 (get_phys_cursor_geometry, format_mode_line_unwind_data)
4022 (get_line_height_property, x_produce_glyphs): Remove unused vars.
4023
4024 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
4025
4026 2005-06-13 Eli Zaretskii <eliz@gnu.org>
4027
4028 * w32term.c (x_use_underline_position_properties): New variable.
4029 (x_draw_glyph_string): Remind in a comment to change doc string of
4030 x-use-underline-position-properties if/when underline positioning
4031 is implemented.
4032 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
4033 and initialize it to nil.
4034
4035 2005-06-12 Jason Rumney <jasonr@gnu.org>
4036
4037 * w32fns.c (NEWOPENFILENAME): New struct.
4038 (Fx_file_dialog): Use it to trick the system into giving us up to
4039 date dialogs on systems that are documented to support it.
4040 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
4041
4042 2005-06-12 Eli Zaretskii <eliz@gnu.org>
4043
4044 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
4045 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
4046
4047 2005-06-11 Eli Zaretskii <eliz@gnu.org>
4048
4049 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
4050 to CreateDIBSection to avoid a compiler warning.
4051 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
4052 warning.
4053 (png_load): Cast return values of fn_png_create_read_struct and
4054 fn_png_create_info_struct, to avoid compiler warnings on W32.
4055 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
4056 to avoid compiler warnings.
4057 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
4058 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
4059 avoid a compiler warning.
4060 (tiff_load): Cast return values of fn_TIFFOpen and
4061 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
4062 to IMAGE_BACKGROUND to avoid a compiler warning.
4063 (gif_load): Cast return values of fn_DGifOpenFileName and
4064 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
4065 IMAGE_BACKGROUND to avoid a compiler warning.
4066 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
4067 before redefining.
4068
4069 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
4070 the call to CreateDIBSection, to avoid a compiler warning.
4071
4072 2005-06-11 Jason Rumney <jasonr@gnu.org>
4073
4074 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
4075 minibuffer.
4076 * macfns.c (Fx_file_dialog): Likewise.
4077
4078 2005-06-10 Eli Zaretskii <eliz@gnu.org>
4079
4080 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
4081
4082 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
4083
4084 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
4085 * w32fns.c (syms_of_w32fns): Fix spellings.
4086
4087 2005-06-10 Eli Zaretskii <eliz@gnu.org>
4088
4089 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
4090 `verbose'; print diagnostic messages only if it is non-zero.
4091 All callers changed to pass a zero value unless DEBUG_DUMP is defined
4092 in the environment.
4093 (copy_executable_and_dump_data): Print section names with %.8s.
4094
4095 2005-06-10 Masatake YAMATO <jet@gyve.org>
4096
4097 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
4098 when mouse_face is not given.
4099
4100 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
4101
4102 * window.c (Fselect_window): Adapt call to Fselect_frame.
4103
4104 * lisp.h: Update EXFUN of Fselect_frame.
4105
4106 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
4107
4108 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
4109 no_enter.
4110 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
4111 Adapt to above change.
4112
4113 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
4114
4115 * fns.c (Fmemq, Fmaphash): Doc fixes.
4116
4117 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
4118
4119 * xfaces.c (Fdisplay_supports_face_attributes_p):
4120 Fix typo in docstring.
4121
4122 2005-06-08 Steven Tamm <steventamm@mac.com>
4123
4124 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
4125 used by gcc4 on intel mac.
4126
4127 2005-06-09 Kim F. Storm <storm@cua.dk>
4128
4129 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
4130 in REUSE list if non-nil; free them if equal to evaporate.
4131 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
4132 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
4133 (restore_search_regs): Rename from restore_match_data. Uses changed.
4134 (unwind_set_match_data): New function.
4135 (record_unwind_save_match_data): New function like save-match-data.
4136
4137 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
4138 (record_unwind_save_match_data): Add prototype.
4139 (restore_search_regs): Rename from restore_match_data.
4140
4141 * composite.c (compose_chars_in_text):
4142 * eval.c (do_autoload):
4143 * macmenu.c (set_frame_menubar):
4144 * process.c (read_process_output, exec_sentinel):
4145 * xmenu.c (set_frame_menubar):
4146 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
4147 * w32menu.c (set_frame_menubar):
4148 Use record_unwind_save_match_data.
4149
4150 2005-06-08 Richard M. Stallman <rms@gnu.org>
4151
4152 * xdisp.c (get_next_display_element): Alter previous change:
4153 Distinguish Vshow_nonbreak_escape = t or not t.
4154 For t, use escape_glyph once again, as before previous change.
4155 Use space or hyphen for display, instead of the non-ASCII char.
4156 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
4157
4158 * process.c (Fstart_process): Don't touch command_channel_p slot.
4159
4160 * process.h (struct process): Delete command_channel_p.
4161
4162 2005-06-07 Masatake YAMATO <jet@gyve.org>
4163
4164 * xdisp.c (note_mode_line_or_margin_highlight):
4165 Check the overlapping of re-rendering area to avoid flickering.
4166 (note_mouse_highlight): Call clear_mouse_face if PART
4167 is not ON_MODE_LINE nor ON_HEADER_LINE.
4168
4169 2005-06-07 Kim F. Storm <storm@cua.dk>
4170
4171 * process.c: Improve commentary for adaptive read buffering.
4172
4173 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
4174
4175 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
4176 if available.
4177
4178 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4179
4180 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
4181 New functions for popping down menus on C-g.
4182 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
4183
4184 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
4185 non-static.
4186
4187 * config.in: Add HAVE_CANCELMENUTRACKING.
4188
4189 2005-06-06 Eli Zaretskii <eliz@gnu.org>
4190
4191 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
4192
4193 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
4194
4195 * w32proc.c (RVA_TO_PTR): New macro.
4196
4197 * w32heap.c (RVA_TO_PTR): No need to #undef now.
4198
4199 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
4200 Depend on w32heap.h.
4201
4202 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
4203
4204 * keyboard.c (command_loop_1): Update Vthis_original_command.
4205
4206 2005-06-06 Richard M. Stallman <rms@gnu.org>
4207
4208 * xmenu.c (popup_get_selection): Undo previous change.
4209
4210 2005-06-06 Juri Linkov <juri@jurta.org>
4211
4212 * xdisp.c (Qno_break_space): New variable.
4213 (syms_of_xdisp): Initialize it.
4214 (get_next_display_element): Add no-break space and soft hypen
4215 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
4216 Use `no-break-space' face for no-break spaces.
4217
4218 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4219
4220 * window.c (delete_window): Handle the case where a h/vchild has
4221 a h/vchild.
4222
4223 2005-06-05 Eli Zaretskii <eliz@gnu.org>
4224
4225 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
4226 call to pfn_setsockopt, cast optval to `const char *'.
4227
4228 2005-06-04 Eli Zaretskii <eliz@gnu.org>
4229
4230 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
4231 (open_unc_volume): Cast return value of map_w32_filename, to avoid
4232 compiler warnings.
4233
4234 * s/ms-w32.h (fileno): Don't define if already defined.
4235
4236 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
4237
4238 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
4239
4240 2005-06-04 Richard M. Stallman <rms@gnu.org>
4241
4242 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
4243
4244 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4245
4246 * macmenu.c (cleanup_popup_menu): New function.
4247 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
4248 mac_menu_show Quit:s.
4249 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
4250 a dialog).
4251
4252 2005-06-04 Kim F. Storm <storm@cua.dk>
4253
4254 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
4255
4256 * callproc.c (Fcall_process): Don't use alloca to gradually
4257 increase size of buf, as it effectively uses twice the necessary
4258 space on the stack. Instead, pre-allocate buf of full size, and
4259 gradually increase the read size.
4260
4261 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
4262
4263 * eval.c (unbind_to): Preserve value of Vquit_flag.
4264
4265 * xterm.c (handle_one_xevent): Also ignore mouse motion just
4266 before a button release event.
4267
4268 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
4269
4270 * xfaces.c (Finternal_lisp_face_equal_p): Really report
4271 on faces in a frame, if the argument FRAME is non-nil.
4272 Improve argument/docstring consistency.
4273
4274 2005-06-02 Kim F. Storm <storm@cua.dk>
4275
4276 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
4277 (x_consider_frame_title, Fformat_mode_line): Save offset into
4278 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
4279
4280 2005-06-01 Kim F. Storm <storm@cua.dk>
4281
4282 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
4283
4284 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4285
4286 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
4287 resolution fields for scalable fonts to 0.
4288
4289 * xfaces.c (build_scalable_font_name): Round pixel size to the
4290 nearest integer.
4291
4292 2005-06-01 Kim F. Storm <storm@cua.dk>
4293
4294 * xdisp.c (display_mode_line): Support nested calls to redisplay
4295 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
4296
4297 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
4298
4299 * fileio.c (Finsert_file_contents):
4300 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
4301
4302 2005-05-31 Kim F. Storm <storm@cua.dk>
4303
4304 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
4305 (mode_line_noprop_ptr): Rename from frame_title_*.
4306 (store_mode_line_noprop_char): Rename from store_frame_title_char.
4307 (store_mode_line_noprop): Rename from store_frame_title.
4308 (mode_line_target): New enum to specify current output target
4309 for mode line formatting.
4310 (display_mode_element): Test it rather than frame_title_ptr and
4311 mode_line_string_list to determine where output should go.
4312 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
4313 (Vmode_line_unwind_vector): New variable.
4314 (format_mode_line_unwind_data, unwind_format_mode_line):
4315 New functions for unwind protection in mode line formatting.
4316 (x_consider_frame_title): Use them and new local var 'title_start'
4317 to support nested calls to format-mode-line and redisplay.
4318 Set mode_line_target to MODE_LINE_TITLE.
4319 (Fformat_mode_line): Use them and new local var 'string_start' to
4320 support nested calls to format-mode-line and redisplay.
4321 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
4322 Don't trim trailing dashes.
4323 (decode_mode_spec): Don't make infinite number of trailing dashes
4324 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
4325 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
4326 mode_line_string_face_prop, and Vmode_line_unwind_vector.
4327 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
4328 Initialize mode_line_target to MODE_LINE_DISPLAY.
4329
4330 2005-05-29 Richard M. Stallman <rms@gnu.org>
4331
4332 * buffer.c (Fbuffer_local_value): Call indirect_variable.
4333
4334 2005-05-28 Masatake YAMATO <jet@gyve.org>
4335
4336 * xdisp.c (note_mode_line_or_margin_highlight): Change the
4337 pointer to a hand cursor when hoovering over a mouse-face.
4338
4339 2005-05-27 Kenichi Handa <handa@m17n.org>
4340
4341 * xterm.c (x_encode_char): Call check_ccl_update in advance.
4342
4343 * ccl.c: Now an element of Vccl_program_table is a vector of
4344 length 4, not 3.
4345 (ccl_get_compiled_code): New arg idx. Caller changed.
4346 Adjust for the change of Vccl_program_table.
4347 (setup_ccl_program): Adjust for the change of Vccl_program_table.
4348 (check_ccl_update): New function.
4349 (Fregister_ccl_program): Use ASET to set an element of a vector.
4350 Adjusted for the change of Vccl_program_table.
4351
4352 * ccl.h (struct ccl_program): New member idx.
4353 (check_ccl_update): Extern it.
4354
4355 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
4356
4357 * image.c (Vimage_library_alist): Move from image.el.
4358 (syms_of_image): Defvar it.
4359 (lookup_image_type): Use it.
4360
4361 * buffer.c (Fbuffer_local_value): Make argument name match its use
4362 in docstring.
4363
4364 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
4365
4366 * keyboard.c (Frecursive_edit): Fix typo in docstring.
4367 (Fposn_at_x_y): Make argument name match its use in docstring.
4368
4369 2005-05-26 Lute Kamstra <lute@gnu.org>
4370
4371 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
4372
4373 2005-05-24 Masatake YAMATO <jet@gyve.org>
4374
4375 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
4376 as loop sentinels.
4377
4378 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
4379
4380 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
4381 select frame title ("Question"/"Information").
4382 (xdialog_show): Use it.
4383
4384 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
4385
4386 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
4387
4388 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
4389 a third argument (Qnil).
4390
4391 * lisp.h: x-popup-dialog can have three arguments.
4392
4393 * editfns.c (Fmessage_box): Use "Information" for frame title.
4394
4395 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
4396
4397 * termcap.c [VMS]: Include <starlet.h>.
4398
4399 2005-05-23 Masatake YAMATO <jet@gyve.org>
4400
4401 * xdisp.c (note_mode_line_or_margin_highlight): Add code
4402 for mouse-face. Change the type of the first argument from `window'
4403 to `Lisp_Object'.
4404 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
4405 window instead of w.
4406
4407 2005-05-22 Andreas Schwab <schwab@suse.de>
4408
4409 * process.c (send_process): Move misplaced volatile.
4410
4411 2005-05-21 Richard M. Stallman <rms@gnu.org>
4412
4413 * xdisp.c (display_mode_element): If we're processing a list and
4414 padding is specified, put it after the last element.
4415
4416 2005-05-21 Eli Zaretskii <eliz@gnu.org>
4417
4418 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
4419 "superroot" on DOS_NT systems.
4420
4421 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
4422
4423 * process.c (send_process): Restore the SIGPIPE handler if we
4424 catch a SIGPIPE.
4425
4426 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
4427
4428 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
4429 misleading comments).
4430 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
4431
4432 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4433
4434 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
4435 Correct the right value.
4436
4437 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
4438
4439 * keyboard.c (syms_of_keyboard): Remove Lisp variables
4440 post-command-idle-hook and post-command-idle-delay.
4441 (command_loop_1): Don't try to execute post-command-idle-hook.
4442
4443 2005-05-16 Kim F. Storm <storm@cua.dk>
4444
4445 * xdisp.c (handle_display_prop): Handle empty replacement.
4446 (handle_single_display_spec): Return -1 for empty replacement.
4447
4448 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
4449
4450 * .gdbinit (pitx): Print more info about iterator.
4451
4452 2005-05-16 Andreas Schwab <schwab@suse.de>
4453
4454 * unexmacosx.c (unexec_realloc): Move declarations before statements.
4455
4456 2005-05-14 Richard M. Stallman <rms@gnu.org>
4457
4458 * xdisp.c (message3): Call cancel_echoing.
4459
4460 * alloc.c (Fmemory_full_p): New function.
4461 (syms_of_alloc): defsubr it.
4462
4463 * process.c (send_process_trap): Unblock SIGPIPE.
4464 (send_process): Reset SIGPIPE handler before reporting error.
4465
4466 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
4467
4468 * emacs.c (syms_of_emacs): Fix doc string for system-type.
4469
4470 2005-05-13 Richard M. Stallman <rms@gnu.org>
4471
4472 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
4473 (Finsert_file_contents): If we read 0 bytes from a special file,
4474 unlock the visited file if we locked it.
4475 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
4476 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
4477
4478 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4479
4480 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
4481
4482 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
4483 Regard toolkit scroll bar thumb drag events as squeezable and prevent
4484 redisplay from being paused by them.
4485
4486 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
4487 [!MAC_OSX] (target_ticks): Remove variable.
4488 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
4489 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
4490 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
4491 event occurs before timeout, behave as if the function were interrupted.
4492 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
4493 handling using Time Manager routines.
4494 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
4495 New variables.
4496 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
4497 (setitimer): New functions.
4498
4499 * macfns.c, macmenu.c: Don't include signal.h.
4500
4501 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
4502 Rename from get_control_part_bound. All callers changed.
4503 (x_scroll_bar_clear): New function.
4504 (x_clear_frame): Use it.
4505 (XTset_vertical_scroll_bar): Don't call Draw1Control.
4506 (x_scroll_bar_handle_click): Change type of second argument from
4507 int to ControlPartCode.
4508 (check_alarm): Remove declaration.
4509 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
4510 (XTread_socket): Use ControlPartCode instead of SInt16.
4511
4512 2005-05-13 Nozomu Ando <nand@mac.com>
4513
4514 * unexmacosx.c: Include assert.h.
4515 (MACOSX_MALLOC_MULT16): New define.
4516 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
4517 ptr is in unexec regions by checking it is multiple of 16.
4518 (unexec_malloc_header_t): New typedef.
4519 (unexec_malloc, unexec_realloc, unexec_free): Store and use
4520 allocated size information in unexec_malloc_header.
4521
4522 2005-05-10 Richard M. Stallman <rms@gnu.org>
4523
4524 * xterm.c (noinclude): Add #undef.
4525
4526 * image.c, xfns.c, xmenu.c: Don't include signal.h.
4527
4528 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
4529
4530 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
4531 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
4532 Doc fixes.
4533
4534 * dired.c (Ffile_name_completion): Make argument name
4535 match its use in docstring.
4536
4537 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
4538
4539 * eval.c (Fdefvaralias): Remove any pre-existing
4540 variable-documentation property of the alias.
4541
4542 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
4543
4544 * xfns.c (start_hourglass): Do nothing when running on a tty.
4545
4546 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
4547
4548 * fns.c (Fchar_table_range): Fix typos in docstring.
4549
4550 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4551
4552 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
4553
4554 2005-05-06 Eli Zaretskii <eliz@gnu.org>
4555
4556 * lread.c (Flocate_file_internal): Doc fix.
4557
4558 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
4559
4560 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4561
4562 * macselect.c (x_own_selection): Accept Lisp string as result of
4563 selection converter function.
4564 (x_clear_frame_selections): Don't call x-lost-selection-functions
4565 if Emacs is not owner of the selection.
4566 (Vmac_services_selection): Put variable and initialization in
4567 #ifdef MAC_OSX.
4568 (syms_of_macselect) [MAC_OSX]: Set default value of
4569 Vmac_services_selection to PRIMARY.
4570
4571 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
4572 (mac_handle_tool_bar_click): Remove unused function and declaration.
4573 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
4574 (install_scroll_bar_timer, set_scroll_bar_timer)
4575 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
4576 (get_control_part_bound, x_scroll_bar_handle_press)
4577 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
4578 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
4579 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
4580 (scroll_bar_timer_event_posted_p): New variables.
4581 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
4582 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
4583 (x_scroll_bar_create): Set control reference with NewControl.
4584 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
4585 Initialize track_top and track_height to nil.
4586 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
4587 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
4588 (XTset_vertical_scroll_bar): Don't make space between scroll bar
4589 and associated window.
4590 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
4591 from window config.
4592 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
4593 Set track_top and track_height to nil when scroll bar size is changed.
4594 Recalculate them if they are nil.
4595 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
4596 clicked control is a scroll bar.
4597 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
4598 event handler functions. Don't add modifiers to scroll bar click
4599 events. Call scroll bar release handler when window is deactivated.
4600 (mac_initialize): Remove unused code for X toolkit.
4601 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
4602 Initialize Vx_toolkit_scroll_bars to nil.
4603
4604 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
4605 New members track_top and track_height.
4606
4607 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
4608 init_process when including sys/select.h.
4609
4610 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
4611
4612 * eval.c (Fdefvaralias): Doc fix.
4613
4614 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
4615
4616 2005-05-05 Kim F. Storm <storm@cua.dk>
4617
4618 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
4619 default value.
4620 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
4621 Fix type of cursor-in-non-selected-windows.
4622
4623 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4624
4625 * mac.c: #undef init_process so not to conflict with system headers.
4626
4627 2005-05-02 Richard M. Stallman <rms@gnu.org>
4628
4629 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
4630
4631 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
4632
4633 * xdisp.c (Vcursor_in_non_selected_windows)
4634 (Qcursor_in_non_selected_windows): Vars deleted.
4635 (syms_of_xdisp): Don't initialize them.
4636 (get_window_cursor_type): Use cursor_in_non_selected_windows
4637 buffer slot.
4638
4639 2005-05-02 Kim F. Storm <storm@cua.dk>
4640
4641 * macros.c (executing_kbd_macro_index): Rename from
4642 executing_macro_index. All uses changed.
4643 (executing_kbd_macro_iterations): Rename from
4644 executing_macro_iterations. All uses changed.
4645 (executing_kbd_macro): Rename from executing_macro.
4646 All uses changed.
4647 (syms_of_macros): Rename Lisp var executing-macro-index to
4648 executing-kbd-macro-index.
4649
4650 * xdisp.c (move_it_in_display_line_to): Fix last change.
4651
4652 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
4653
4654 * xmenu.c (Fx_popup_menu): Doc fix.
4655
4656 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
4657
4658 2005-05-02 Jason Rumney <jasonr@gnu.org>
4659
4660 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
4661
4662 2005-05-02 Nozomu Ando <nand@mac.com>
4663
4664 * sysselect.h: Fix typo.
4665
4666 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
4667
4668 * charset.c (Fchars_in_region): Remove as obsolete.
4669
4670 2005-05-01 Kim F. Storm <storm@cua.dk>
4671
4672 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
4673 TO_CHARPOS. This may happen if last glyphs was an image or stretch
4674 glyph.
4675
4676 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
4677
4678 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
4679
4680 2005-05-01 Richard M. Stallman <rms@gnu.org>
4681
4682 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
4683 If user cancels the menu, quit unless FOR_CLICK.
4684
4685 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
4686 All uses changed.
4687 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
4688 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
4689 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
4690 * commands.h (Vexecuting_kbd_macro): Likewise.
4691
4692 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
4693
4694 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
4695
4696 2005-04-30 Richard M. Stallman <rms@gnu.org>
4697
4698 * fileio.c (Ffind_file_name_handler): Handle the `operations'
4699 property of the file name handler.
4700 (Qoperations): New variable.
4701 (syms_of_fileio): Initialize and staticpro it.
4702
4703 * xdisp.c (set_message_1): Delete xassert.
4704
4705 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4706
4707 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
4708
4709 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
4710
4711 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
4712 before/after including Carbon.h if there is a working mktime.
4713
4714 2005-04-28 Kim F. Storm <storm@cua.dk>
4715
4716 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
4717 Fix cyclic alias check. If alias loop is detected, signal
4718 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
4719
4720 2005-04-28 Lute Kamstra <lute@gnu.org>
4721
4722 * eval.c (do_autoload): Record only autoloads in the autoload
4723 property of symbols.
4724
4725 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
4726
4727 * emacs.c (USAGE1): Add --basic-display and --quick options.
4728
4729 2005-04-27 Kim F. Storm <storm@cua.dk>
4730
4731 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
4732
4733 2005-04-26 Richard M. Stallman <rms@gnu.org>
4734
4735 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
4736 (syms_of_window): Doc fixes.
4737
4738 * indent.c (Fvertical_motion): Undo previous change.
4739
4740 2005-04-26 Kenichi Handa <handa@m17n.org>
4741
4742 * fns.c (char_table_range): New function.
4743 (Fchar_table_range): Signal an error if characters in the range
4744 have inconsistent values. Don't check the parent.
4745
4746 2005-04-25 Kenichi Handa <handa@m17n.org>
4747
4748 * fontset.c (fontset_set): Fix previous change.
4749
4750 2005-04-24 Richard M. Stallman <rms@gnu.org>
4751
4752 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
4753
4754 2005-04-24 Eli Zaretskii <eliz@gnu.org>
4755
4756 * regex.c (re_search_2, re_match_2_internal): Convert second arg
4757 of RE_TRANSLATE to int, to shut up GCC warnings.
4758
4759 * fileio.c (Fcopy_file): Doc fix.
4760 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
4761 not needed.
4762
4763 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4764
4765 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
4766 (SOME_MACHINE_OBJECTS): Likewise.
4767 (mac.o): Depend on ccl.h.
4768 (macselect.o): New target.
4769
4770 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
4771 Call syms_of_macselect.
4772
4773 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
4774
4775 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
4776 (QCLIPBOARD): Remove variable.
4777 (syms_of_mac): Don't initialize it.
4778 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
4779 Remove functions.
4780 (syms_of_mac): Don't defsubr them.
4781 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
4782 (QHFS_plus_D, QHFS_plus_C): New variables.
4783 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
4784 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
4785 (cfstring_create_normalized): New functions.
4786 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
4787 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
4788
4789 * macterm.c (handling_window_update, terminate_flag):
4790 Remove variables.
4791 (do_window_update, do_ae_quit_application, XTread_socket):
4792 Don't use them.
4793 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
4794 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
4795 (init_service_handler): Move to macselect.c. Remove declarations.
4796 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
4797 (Qapplication, Qabout): New variables.
4798 (syms_of_mac): Initialize them.
4799 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
4800 (Qperform): New variables.
4801 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
4802 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
4803 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
4804 (mac_store_application_menu_event, init_menu_bar): New functions.
4805 [USE_CARBON_EVENTS] (mac_handle_command_event)
4806 (init_command_handler): New functions.
4807 (mac_handle_window_event): Return noErr on window update event.
4808 (do_ae_quit_application): Call mac_store_application_menu_event.
4809 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
4810 and init_menu_bar.
4811
4812 * macterm.h (x_clear_frame_selections): Add extern.
4813
4814 * macselect.c: New file for selection processing on Mac OS.
4815
4816 2005-04-23 Richard M. Stallman <rms@gnu.org>
4817
4818 * fileio.c (Fcopy_file): New arg MUSTBENEW.
4819 (Frename_file): Pass new arg to Fcopy_file.
4820
4821 * window.c (window_size_fixed): Variable deleted.
4822 (syms_of_window): Initialize window-size-fixed to nil.
4823 But don't DEFVAR window_size_fixed.
4824
4825 2005-04-23 Andreas Schwab <schwab@suse.de>
4826
4827 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
4828 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
4829 use lib64 instead of lib.
4830 (_LP64) [_ARCH_PPC64]: Define if not defined.
4831
4832 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
4833
4834 * s/ms-w32.h (HAVE_PWD_H): Define.
4835
4836 2005-04-22 Kenichi Handa <handa@m17n.org>
4837
4838 * fns.c (copy_sub_char_table): Explicitly copy the default value
4839 of the sub-chartable.
4840
4841 * fontset.c (fontset_set): When a sub-chartable is created,
4842 explicitly sets the defalt value.
4843
4844 2005-04-22 Kim F. Storm <storm@cua.dk>
4845
4846 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
4847 (Fsafe_plist_get): Rename to Fplist_get.
4848 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
4849 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
4850
4851 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
4852
4853 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
4854 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4855 Use Fplist_get instead of Fsafe_plist_get.
4856
4857 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
4858
4859 2005-04-21 Miles Bader <miles@gnu.org>
4860
4861 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
4862
4863 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
4864
4865 * sysdep.c: Remove reference to defunct vms-pwd.h.
4866 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
4867 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
4868
4869 * config.in: Regenerate.
4870
4871 2005-04-20 Kenichi Handa <handa@m17n.org>
4872
4873 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
4874 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
4875 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
4876
4877 * alloc.c (make_sub_char_table): Argument changed to initial
4878 value of the slots.
4879
4880 * data.c (Faref): Handle special slots used as default values of
4881 ascii, eight-bit-control, eight-bit-control. Don't ignore a
4882 default value set for a group of characters.
4883 (Faset): Signal an error if IDXVAL is not a valid character code.
4884 Make a sub-chartable with correct initial value.
4885
4886 * fns.c (Fset_char_table_range): Don't set slots used as default
4887 values for ascii, eight-bit-control, eight-bit-graphic.
4888 Don't call Faref with charset-id.
4889 (Fset_char_table_default): Document how to treat normal character
4890 argument. Handle special slots used as default values of ascii,
4891 eight-bit-control, eight-bit-control. Make a sub chartable if
4892 necessary.
4893
4894 2005-04-20 Kenichi Handa <handa@m17n.org>
4895
4896 * search.c (boyer_moore): Fix previous change.
4897
4898 2005-04-19 Kim F. Storm <storm@cua.dk>
4899
4900 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
4901 face unless last visible char and first invisible char have the
4902 same face. Also use default face if saved_face_id is undefined.
4903
4904 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4905
4906 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
4907 `full_name'.
4908 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
4909 mac_scriptcode member.
4910
4911 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
4912 (syms_of_mac): Don't initialize them.
4913 (Vmac_charset_info_alist): New variable.
4914 (syms_of_mac): Defvar it.
4915 (create_text_encoding_info_alist): New function.
4916 (decode_mac_font_name, mac_to_x_fontname)
4917 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
4918 code the correspondence among XLFD charsets, Mac script codes, and
4919 Emacs coding systems. Use Vmac_charset_info_alist and result of
4920 create_text_encoding_info_alist instead.
4921 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
4922 routines also on Mac OS Classic.
4923 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
4924 Use add_font_name_table_entry.
4925 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
4926 specified. Derive unspecified scalable fields from specified one.
4927 (x_list_fonts): Consider Valternate_fontname_alist.
4928 (kDefaultFontSize): Change value from 9 to 12.
4929 (XLoadQueryFont): Get decoded font family, font face, and charset
4930 from x_font_name_to_mac_font_name. Set full name of loaded font.
4931 (mac_unload_font): Free `full_name' member.
4932 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
4933 NULL. Copy full_name member of struct MacFontStruct to that of
4934 struct font_info.
4935
4936 2005-04-19 Kim F. Storm <storm@cua.dk>
4937
4938 * xdisp.c (handle_stop): Set saved_face_id to current face if
4939 selective_display_ellipsis_p so ellipsis will be shown in same
4940 face as preceding text.
4941 (setup_for_ellipsis): Don't set saved_face_id here.
4942 (next_element_from_display_vector): Default to saved_face_id.
4943
4944 * fns.c (Fsafe_get): New function.
4945 (syms_of_fns): Defsubr it.
4946
4947 * lisp.h (Fsafe_get): EXFUN it.
4948
4949 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
4950 loops in case of bad face property lists. Limit number of face
4951 alias lookups to 10 (in case of face alias loops).
4952
4953 2005-04-18 Kim F. Storm <storm@cua.dk>
4954
4955 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
4956 It replaces the corresponding member from struct window, as a
4957 window may now show multiple overlay arrows.
4958 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
4959
4960 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
4961 Compare overlay_arrow_bitmap than overlay_arrow_p members.
4962
4963 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
4964 rather than from window.
4965 (update_window_fringes): Compare overlay_arrow_bitmap rather than
4966 overlay_arrow_p members.
4967 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
4968 if not default.
4969
4970 * window.h (struct window): Remove member overlay_arrow_bitmap.
4971
4972 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
4973
4974 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
4975 Calls changed. Don't check for overlay-arrow-bitmap property here.
4976 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
4977 fringe is present, return Lisp integer for bitmap (or -1 for default).
4978 Fix value of overlay-arrow-bitmap property to be a symbol, use
4979 lookup_fringe_bitmap to parse it.
4980 (display_line): Change call to overlay_arrow_at_row. Store integer
4981 return value as overlay bitmap in row rather than window.
4982 Only show overlay arrow if row displays text, or if no other overlay
4983 arrow is seen in window (if overlay marker is at point-max).
4984
4985 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
4986
4987 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
4988
4989 2005-04-18 Lute Kamstra <lute@gnu.org>
4990
4991 * lread.c (Vloads_in_progress): Static.
4992 * fns.c (Vloads_in_progress): Remove extern.
4993 (load_in_progress): Add extern.
4994 (Frequire): Use load_in_progress instead of Vloads_in_progress.
4995
4996 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
4997
4998 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
4999
5000 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5001
5002 * macterm.c (XTread_socket): Don't beep on keyboard input even if
5003 no frame is visible.
5004
5005 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
5006
5007 * term.c (struct keys): Add support for shifted keys.
5008
5009 2005-04-16 Richard M. Stallman <rms@gnu.org>
5010
5011 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
5012 (set_message): Call with_echo_area_buffer with WHICH = 0.
5013 (set_message_1): Erase the echo area buffer first thing.
5014 (echo_area_display): Don't clear echo_message_buffer.
5015
5016 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5017
5018 * Makefile.in (mac.o): Depend on charset.h and coding.h.
5019
5020 * mac.c: Include charset.h and coding.h.
5021 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
5022 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
5023 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
5024
5025 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
5026
5027 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
5028
5029 * macterm.c (x_autoselect_window_p): Remove variable.
5030 (last_window): New variable.
5031 (XTreassert_line_highlight, x_change_line_highlight):
5032 Remove declarations.
5033 (mac_focus_changed, x_detect_focus_change): New functions and
5034 declarations.
5035 (XTextExtents16, front_emacs_window): Remove function.
5036 (mac_focus_frame): New function.
5037 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
5038 (mac_check_for_quit_char): Use it instead of front_emacs_window.
5039 (x_scroll_bar_report_motion): Obtain window from control owner.
5040 (x_make_frame_invisible): Set window manager size hint.
5041 (do_mouse_moved): Remove function.
5042 (XTread_socket): Move its contents here. Generate select-window
5043 event on mouse movement if needed. Use x_detect_focus_change on
5044 activate/deactivate events. Don't deiconify frame or invalidate
5045 window rectangle when dnd items are dropped.
5046 Don't activate/deactivate root control.
5047 (frame_highlight, frame_unhighlight): Activate/deactivate root
5048 control here.
5049 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
5050
5051 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
5052 New extern.
5053
5054 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
5055
5056 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
5057 (lisp): Use it.
5058 (SOME_MACHINE_LISP): Add tooltip.
5059
5060 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5061
5062 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
5063 Don't include TextEncodingConverter.h.
5064 (mac_system_script_code, Vmac_system_locale): New variables.
5065 (syms_of_mac): Defvar them.
5066 (mac_get_system_locale): New function.
5067
5068 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
5069 Use ENCODE_SYSTEM to encode title bar string.
5070 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
5071 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
5072 Use CFStringGetSystemEncoding to get system default string encoding.
5073
5074 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
5075 TextEncodingConverter.h.
5076
5077 2005-04-13 Steven Tamm <steventamm@mac.com>
5078
5079 * macterm.c (syms_of_macterm): Remove redundant definition of
5080 mac-pass-control-to-system.
5081
5082 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
5083
5084 * window.c (Fset_window_configuration): Be careful when you choose
5085 among several possible points for the new_current_buffer.
5086
5087 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5088
5089 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
5090 poll_for_input_1. Set interrupt_input_pending to 1 instead.
5091 (Qlanguage_change) [MAC_OS]: New variable.
5092 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
5093 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
5094
5095 * macterm.c (mac_keyboard_text_encoding)
5096 (current_mac_keyboard_text_encoding): Remove variables.
5097 (XTread_socket): Store language-change event if keyboard script change
5098 is detected. Don't convert input to `mac_keyboard_text_encoding'.
5099 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
5100
5101 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
5102
5103 2005-04-10 Richard M. Stallman <rms@gnu.org>
5104
5105 * emacs.c (standard_args): Rename --bare-bones to --quick.
5106 Add -D aka --basic-display.
5107
5108 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
5109
5110 2005-04-09 Richard M. Stallman <rms@gnu.org>
5111
5112 * keymap.c (where_is_internal): Convert a string used as event type
5113 into "(any string)".
5114
5115 * lread.c (Vloads_in_progress): Not static.
5116 * fns.c (Vloads_in_progress): Add extern.
5117 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
5118
5119 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
5120
5121 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
5122
5123 2005-04-09 Lute Kamstra <lute@gnu.org>
5124
5125 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
5126 within the accessible part of the buffer.
5127
5128 2005-04-09 Kim F. Storm <storm@cua.dk>
5129
5130 * lread.c (readevalloop): Add args START and END as region in
5131 current buffer to read. Callers changed.
5132 When specified, narrow to this region only when reading,
5133 not during eval. Track next point to read from during eval.
5134 Also restore point to "real" buffer position before eval.
5135 (Feval_region): Don't save excursion and restriction here, and
5136 don't narrow to region. Just pass region to readevalloop.
5137 Note: Point is now preserved even when PRINTFLAG is nil.
5138
5139 2005-04-08 Kim F. Storm <storm@cua.dk>
5140
5141 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
5142
5143 2005-04-06 Kim F. Storm <storm@cua.dk>
5144
5145 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
5146
5147 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5148
5149 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
5150 (Fmac_get_preference): Doc fix.
5151
5152 * macfns.c (Fx_create_frame, x_create_tip_frame):
5153 Add "fontset-mac" to fallback font/fontsets.
5154
5155 2005-04-04 Kim F. Storm <storm@cua.dk>
5156
5157 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
5158
5159 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
5160 Call it again after autoload.
5161
5162 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5163
5164 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
5165 mallopt.
5166
5167 * ralloc.c (r_alloc_init): Ditto.
5168
5169 2005-04-01 Kenichi Handa <handa@m17n.org>
5170
5171 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
5172 (Vascii_eqv_table): Extern them.
5173
5174 * casetab.c (set_case_table): If standard is nonzero, setup
5175 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
5176
5177 * search.c (looking_at_1): Use current_buffer->case_canon_table,
5178 not DOWNCASE_TABLE.
5179 (string_match_1): Likewise.
5180 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
5181 Vascii_downcase_table.
5182 (fast_string_match_ignore_case): Likewise.
5183 (search_buffer): Fix checking of boyer-moore usability.
5184 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
5185 No need of tranlating characters in PAT. Fix calculation of
5186 simple_translate.
5187
5188 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
5189
5190 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
5191 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
5192 Use XtNtopShadowPixel and XtNbottomShadowPixel.
5193 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
5194 really work and that breaks with some versions of Xaw3d.
5195
5196 2005-03-31 Kenichi Handa <handa@m17n.org>
5197
5198 * coding.c (syms_of_coding): Fix previous change.
5199
5200 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
5201
5202 * fileio.c (search_embedded_absfilename): Fix last change.
5203
5204 2005-03-25 Kenichi Handa <handa@m17n.org>
5205
5206 * coding.c (syms_of_coding): Suggest to use set-coding-category in
5207 the docstring of coding-category-list.
5208
5209 2005-03-31 Kim F. Storm <storm@cua.dk>
5210
5211 * keyboard.c (Qmouse_fixup_help_message): New var.
5212 (syms_of_keyboard): Intern and staticpro it.
5213 (show_help_echo): Apply mouse-fixup-help-message to help string.
5214
5215 2005-03-30 Kim F. Storm <storm@cua.dk>
5216
5217 * xdisp.c (display_line): Allow multiple overlay arrows in window.
5218
5219 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5220
5221 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
5222 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
5223 (Ffile_name_absolute_p): Use it.
5224 (search_embedded_absfilename): New fun, extracted from
5225 Fsubstitute_in_file_name. Use file_name_absolute_p.
5226 Free the pw data after use.
5227 (Fsubstitute_in_file_name): Use it.
5228 After cutting a prefix, re-check file-name-handler.
5229
5230 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
5231
5232 * w32term.h (x_output): Add focus_state.
5233
5234 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
5235 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
5236
5237 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
5238
5239 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
5240 Use Fexit_minibuffer.
5241 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
5242
5243 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5244
5245 * dired.c (Ffile_attributes): Add a missing gcpro.
5246
5247 * alloc.c (make_number): The arg can be bigger than `int'.
5248 * lisp.h (make_number): Make prototype more precise.
5249
5250 * process.c, dired.c (Vfile_name_coding_system)
5251 (Vdefault_file_name_coding_system):
5252 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
5253 (Vdefault_file_name_coding_system): Remove unused declarations.
5254
5255 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5256
5257 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
5258 if it failed to pop up (Gnome "show pointer on ctrl" option makes
5259 menus fail to pop up).
5260
5261 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5262
5263 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
5264 Just prepend a backslash without replacing the NBSP by an SPC.
5265
5266 2005-03-22 Kim F. Storm <storm@cua.dk>
5267
5268 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
5269 * dispextern.h (lookup_derived_face): Fix prototype.
5270 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
5271
5272 * xdisp.c (handle_single_display_spec): Derive left-fringe and
5273 right-fringe face from fringe face.
5274
5275 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
5276 Derive face from fringe face.
5277
5278 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5279
5280 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
5281
5282 2005-03-22 David Kastrup <dak@gnu.org>
5283
5284 * textprop.c (Fnext_char_property_change)
5285 (Fprevious_char_property_change): Allow marker as limit.
5286 (Fnext_single_char_property_change)
5287 (Fprevious_single_char_property_change): Check that limit is a
5288 number in strings.
5289 (Fnext_single_char_property_change): Coerce position to integer.
5290 (Fprevious_single_char_property_change): Same here.
5291
5292 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
5293
5294 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
5295
5296 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
5297
5298 * frame.c (Fignore_event): Remove.
5299 (syms_of_frame): Don't defsubr it.
5300
5301 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
5302 redundant `ignore-event'.
5303
5304 2005-03-19 Eli Zaretskii <eliz@gnu.org>
5305
5306 * unexec.c (write_segment, unexec): Move these functions to avoid
5307 forward references (which cause errors with "gcc -gcoff").
5308
5309 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5310
5311 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
5312 that it doesn't become "tooltip". The specbind is enough.
5313
5314 * xrdb.c (x_load_resources): Use different char *helv when I18N
5315 is present.
5316
5317 2005-03-17 Kenichi Handa <handa@m17n.org>
5318
5319 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
5320
5321 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5322
5323 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
5324 Use xic_create_fontsetname even for non-Motif menus.
5325 Don't forget to free the fontsetname.
5326
5327 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
5328
5329 2005-03-17 Richard M. Stallman <rms@gnu.org>
5330
5331 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
5332
5333 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
5334 (Fmake_symbolic_link): Use G to read the new file name.
5335
5336 * callint.c (Finteractive): Document G option.
5337 (Fcall_interactively): Implement G option.
5338
5339 * buffer.c (buffer_lisp_local_variables): New function,
5340 broken out from Fbuffer_local_variables.
5341 (clone_per_buffer_values): Use buffer_lisp_local_variables.
5342
5343 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5344
5345 * xfns.c (xic_create_fontsetname): Add `motif' argument.
5346 Always return a freshly allocated string.
5347 (xic_create_xfontset): Adjust call.
5348
5349 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
5350 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
5351 (dump_realized_face): Fix warning.
5352
5353 * emacs.c (Fkill_emacs): YAILOM.
5354
5355 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
5356
5357 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5358
5359 * mac.c (HASHKEY_TERMINAL): Remove.
5360 (HASHKEY_MAX_NID): New macro.
5361 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
5362 argument.
5363 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
5364 (xrm_create_database, xrm_q_put_resource)
5365 (xrm_merge_string_database, xrm_q_get_resource_1)
5366 (xrm_q_get_resource): Change resource database representation so
5367 that it may not use multiple hash tables for a single database.
5368 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
5369
5370 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
5371
5372 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
5373
5374 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
5375 locale-coding-system, as was already done for WINDOWSNT.
5376
5377 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
5378 translation for chars in the 0-255 range.
5379
5380 2005-03-16 Lute Kamstra <lute@gnu.org>
5381
5382 * floatfns.c (Ffloor): Doc fix.
5383
5384 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5385
5386 * mac.c: Include macterm.h instead of directly including Carbon.h.
5387 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
5388 (Qarray, Qdictionary): New variables.
5389 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
5390 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
5391 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
5392 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
5393 in callback for CFDictionaryApplyFunction.
5394 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5395 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5396 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
5397 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
5398 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
5399 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
5400 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
5401 (skip_white_space, parse_comment, parse_include_file)
5402 (parse_binding, parse_component, parse_resource_name, parse_value)
5403 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
5404 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
5405 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
5406 New functions.
5407
5408 * macfns.c (mac_get_rdb_resource): Remove function.
5409 (x_get_string_resource): Use xrm_get_resource.
5410
5411 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
5412
5413 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
5414 name_list_element.
5415 (mac_make_rdb): Create resource database from preferences and
5416 argument string.
5417 (mac_term_init): Save resource database to cddr part of
5418 name_list_element.
5419
5420 * macterm.h (xrm_merge_string_database, xrm_get_resource)
5421 (xrm_get_preference_database): Add externs.
5422 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5423 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5424 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
5425
5426 * process.c (init_process): Change `#ifdef DARWIN' to `#if
5427 defined (DARWIN) || defined (MAC_OSX)'
5428
5429 * s/darwin.h (DARWIN): Don't define.
5430
5431 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5432
5433 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
5434 Remove unused variables.
5435 (syms_of_macfns): Don't initialize them. Likewise for
5436 Qface_set_after_frame_default. Defvar and initialize
5437 Vx_window_horizontal_drag_shape.
5438 (x_set_mouse_color): Change mouse pointer shape.
5439 (mac_window) [!MAC_OSX]: Create root control.
5440 (Fx_create_frame): Remove initializations of mouse pointer shapes.
5441 (hourglass_started): New function (from xfns.c).
5442 (start_hourglass, cancel_hourglass): Put function body in #ifdef
5443 MAC_OSX.
5444 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
5445 indicator for each non-tooltip frame if needed, and show it.
5446 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
5447
5448 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
5449 Controls.h. Use ThemeCursor instead of CursHandle.
5450
5451 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
5452 Remove functions and declarations.
5453 (mac_set_colors): Take argument for saving background color.
5454 All callers changed.
5455 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
5456 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
5457 background color.
5458 (x_update_end, mac_do_track_drag): Don't reset background color.
5459 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
5460 Use SetThemeCursor.
5461 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
5462 indicator control to the upper-right corner of the window.
5463 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
5464 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
5465 (do_window_update): Update controls after updating content area.
5466 (mac_handle_window_event): Remove unused extern.
5467 (XTread_socket): Check both control handle and control part code
5468 to determine whether a scroll bar is clicked. Activate/deactivate
5469 root control instead of contained scroll bar controls.
5470 (make_mac_terminal_frame): Use ThemeCursor constants.
5471
5472 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
5473 New member hourglass_control.
5474 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
5475 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
5476
5477 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5478
5479 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
5480 coincides with that in Apple X11 except `clear', `enter' on
5481 laptops, and fn + `enter' on laptops.
5482
5483 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
5484
5485 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
5486 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
5487 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
5488
5489 * xfns.c (xic_defaut_fontset): New constant.
5490 (xic_create_fontsetname): New function.
5491 Extracted from create_frame_xic. Try to generate a slightly
5492 better fontset.
5493 (xic_create_xfontset): Use it.
5494 (create_frame_xic): Simplify.
5495
5496 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
5497
5498 * fileio.c (Fmake_symbolic_link): Fix last change.
5499
5500 2005-03-11 Richard M. Stallman <rms@gnu.org>
5501
5502 * fileio.c (Frename_file, Fadd_name_to_file)
5503 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
5504 expand the basename of FILE relative to it.
5505
5506 2005-03-11 Kenichi Handa <handa@m17n.org>
5507
5508 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
5509 before calling setup_coding_system so that autoloading of a coding
5510 system work.
5511
5512 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5513
5514 * xfns.c (hourglass_started): New function.
5515
5516 * dispextern.h: Declare hourglass_started.
5517
5518 * keyboard.c (Fexecute_extended_command): Restart hourglass
5519 after call to Fcompleting_read if already started.
5520
5521 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
5522 GTK main loop is entered in xterm.c, thus doing the redraw.
5523
5524 2005-03-10 Kim F. Storm <storm@cua.dk>
5525
5526 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
5527
5528 2005-03-08 Kenichi Handa <handa@m17n.org>
5529
5530 * frame.c (x_set_font): Call set_default_ascii_font if an
5531 available font is found.
5532
5533 * fontset.c (set_default_ascii_font): New function.
5534 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
5535
5536 * fontset.h (set_default_ascii_font): Extern it.
5537
5538 2005-03-07 Kim F. Storm <storm@cua.dk>
5539
5540 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
5541 (clear_image_cache_count): New var.
5542 (redisplay_internal): Don't clear face and image caches in the
5543 middle of redisplay; do it afterwards.
5544
5545 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
5546
5547 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
5548 is valid. If not, clear phys_cursor_on_p and return.
5549
5550 2005-03-07 Andreas Schwab <schwab@suse.de>
5551
5552 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
5553
5554 2005-03-06 Richard M. Stallman <rms@gnu.org>
5555
5556 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
5557
5558 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
5559 (Feval, Ffuncall): Use CHECK_CONS_LIST.
5560
5561 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
5562
5563 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
5564 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
5565
5566 2005-03-05 Juri Linkov <juri@jurta.org>
5567
5568 * emacs.c (USAGE1): Replace Info node name "command arguments"
5569 with "emacs invocation".
5570 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
5571 allow arguments `--color' and `MODE' to be separated by space.
5572 Add --no-blinking-cursor, -nbc.
5573 (standard_args): Add -nbc, --no-blinking-cursor.
5574
5575 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
5576
5577 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
5578 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
5579 * fileio.c (Fexpand_file_name) [VMS]:
5580 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
5581 * doc.c (munge_doc_file_name) [VMS]: Likewise.
5582 (Fsnarf_documentation): Call munge_doc_file_name.
5583
5584 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
5585
5586 * s/vms.h (FILE_SYSTEM_CASE): New macro.
5587 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
5588 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
5589
5590 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5591
5592 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
5593 defined (MAC_OSX) && defined (HAVE_CARBON)'.
5594
5595 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
5596
5597 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
5598 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
5599 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
5600 (mac_clear_font_name_table): Move extern to macterm.h.
5601
5602 * macfns.c (install_window_handler): Move extern to macterm.h.
5603 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
5604 valid. Don't check !NILP (dir) because it is already checked with
5605 CHECK_STRING.
5606 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
5607 specifying the default location and obtaining the selected filename.
5608
5609 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
5610
5611 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
5612 are included via Carbon.h.
5613
5614 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
5615 Define USE_CARBON_EVENTS to 1.
5616 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
5617 (x_free_frame_resources): Call remove_window_handler for
5618 non-tooltip windows.
5619 [TARGET_API_MAC_CARBON]: Don't include headers that are included
5620 via Carbon.h.
5621 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
5622 (mac_do_receive_dragUPP): New variables.
5623 (mac_handle_service_event, init_service_handler): Put declarations
5624 and definitions in #ifdef MAC_OSX.
5625 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
5626 drag-and-drop handler functions and register them.
5627 (remove_window_handler): New function.
5628 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
5629 Use fsspec_to_posix_pathname.
5630 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
5631 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
5632 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
5633 Set default cursors.
5634 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
5635 init_service_handler or init_quit_char_handler.
5636 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
5637
5638 * macterm.h (install_window_handler, remove_window_handler)
5639 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
5640 (mac_clear_font_name_table): New externs.
5641
5642 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
5643
5644 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
5645 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
5646 (Fexpand_file_name): Likewise.
5647
5648 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
5649
5650 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
5651 no longer special-case VMS. Add bogus return value.
5652
5653 2005-03-02 Kim F. Storm <storm@cua.dk>
5654
5655 * dispextern.h (XASSERTS): Define to 0 if not already defined.
5656 (xassert) [!XASSERTS]: Define dummy version.
5657
5658 2005-03-02 Kim F. Storm <storm@cua.dk>
5659
5660 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
5661 Reported by David Kastrup.
5662
5663 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
5664
5665 * xdisp.c (get_next_display_element): Fix control and escape
5666 glyph from display vector.
5667
5668 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
5669
5670 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
5671
5672 2005-02-27 Richard M. Stallman <rms@gnu.org>
5673
5674 * xdisp.c (fast_find_position): Rename END to BEG.
5675 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
5676
5677 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5678
5679 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
5680 gtk_window_resize and x_wm_set_size_hint.
5681
5682 2005-02-25 Kim F. Storm <storm@cua.dk>
5683
5684 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
5685
5686 * xdisp.c (init_from_display_pos): Don't read past end of
5687 it->overlay_strings array.
5688
5689 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
5690
5691 * buffer.c (syms_of_buffer): Fix typo.
5692
5693 2005-02-23 Lute Kamstra <lute@gnu.org>
5694
5695 * buffer.c (Foverlay_buffer): Doc fix.
5696
5697 2005-02-22 Kim F. Storm <storm@cua.dk>
5698
5699 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
5700 and symbol keys in alists and hash tables.
5701
5702 * xdisp.c (fast_find_position): Fix search for start of overlay.
5703
5704 2005-02-21 Kim F. Storm <storm@cua.dk>
5705
5706 * window.c (window_scroll_pixel_based): When scrolling backwards,
5707 handle partial visible line at end of window even when we hit PT.
5708
5709 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
5710
5711 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
5712
5713 2005-02-21 Kim F. Storm <storm@cua.dk>
5714
5715 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
5716 I think those asserts are bogus if buffer contains invisible text
5717 or images.
5718
5719 2005-02-21 David Kastrup <dak@gnu.org>
5720
5721 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
5722
5723 2005-02-20 Kim F. Storm <storm@cua.dk>
5724
5725 * xdisp.c (pos_visible_p): Be sure to move to the specified
5726 position. Always get the full ascent / descent of the
5727 corresponding row, to return reliable rtop and rbot values.
5728 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
5729 Must look one character back, as back_to_previous_line_start
5730 returns position after the newline.
5731 (move_it_vertically_backward): Fix heuristic for when to move further
5732 back in case line_height * 2/3 is larger than window height.
5733 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
5734 as it does not do anything anymore. Add arg current_matrix_p to
5735 use current matrix rather than desired matrix when set.
5736 (try_cursor_movement): Don't scroll to make cursor row fully
5737 visible if cursor didn't move. This avoids unexpected recentering
5738 in case of blinking cursor or accepting process output.
5739 Use current matrix to check cursor row visibility.
5740 (redisplay_window): Fix whether to recenter or move to top in case
5741 cursor line is taller than window height.
5742 (find_first_unchanged_at_end_row): Stop search if we reach a row
5743 which not enabled (instead of abort).
5744
5745 2005-02-18 Kim F. Storm <storm@cua.dk>
5746
5747 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
5748 to be nil in a :box attribute value list; customize prints that
5749 as lisp value when no box color is specified.
5750
5751 * .gdbinit (pitx, pit): Pretty print display iterator.
5752 (prowx, prow): Pretty print glyph row.
5753 (pcursorx, pcursor): Pretty print a window cursor.
5754 (pwinx, pwin): Pretty print struct window.
5755
5756 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
5757
5758 * alloc.c (BLOCK_BYTES): Harmless typo.
5759
5760 2005-02-17 Andreas Schwab <schwab@suse.de>
5761
5762 * xfns.c (hack_wm_protocols): Use correct type for last parameter
5763 of XGetWindowProperty to avoid aliasing issues.
5764 (Fx_window_property): Likewise.
5765
5766 * xselect.c (Fx_disown_selection_internal): Use union of struct
5767 input_event and struct selection_input_event to avoid aliasing issues.
5768
5769 * xterm.c (handle_one_xevent): Use union of struct input_event and
5770 struct selection_input_event to avoid aliasing issues.
5771 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
5772
5773 2005-02-17 Kim F. Storm <storm@cua.dk>
5774
5775 * dispextern.h (enum it_method): New enum.
5776 (GET_FROM_*): Its members.
5777 (struct it): Change member method from function pointer to enum.
5778
5779 * xdisp.c (check_it, init_from_display_pos, handle_stop)
5780 (setup_for_ellipsis, handle_single_display_spec)
5781 (handle_composition_prop, next_overlay_string)
5782 (get_overlay_strings, reseat_1, reseat_to_string)
5783 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
5784 (in_display_vector_p, display_line, get_next_display_element):
5785 Change it->method from function pointer to enum.
5786 (get_next_element): New array to map it->method to function.
5787 (get_next_display_element): Use it.
5788 (set_iterator_to_next): Use switch instead of if/else chain.
5789
5790 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5791
5792 * w32select.c: Summary: Thorough rework to implement Unicode
5793 clipboard operations and delayed rendering.
5794
5795 Drop last_clipboard_text and related code, keep track of
5796 ownership via clipboard_owner instead. Drop old #if0 sections.
5797
5798 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
5799 (clipboard_owner, modifying_clipboard, cfg_coding_system)
5800 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
5801 (current_coding_system, current_requires_encoding)
5802 (current_num_nls, current_clipboard_type, current_lcid):
5803 New static variables.
5804
5805 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
5806 (render, render_all, run_protected, lisp_error_handler)
5807 (owner_callback, create_owner, setup_config)
5808 (enum_locale_callback, cp_from_locale, coding_from_cp):
5809 New local functions.
5810
5811 (term_w32select, globals_of_w32select): New global functions.
5812
5813 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
5814 clipboard_owner instead. Use delayed rendering and provide
5815 all text formats. Provide CF_LOCALE if necessary.
5816
5817 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
5818 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
5819 available. Force DOS line-ends for decoding.
5820
5821 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
5822
5823 (syms_of_w32select): Init and register new variables.
5824
5825 * w32.h: Add prototypes for globals_of_w32select and
5826 term_w32select. Make the neighboring K&R declarations into
5827 prototypes, too.
5828
5829 * emacs.c: Include w32.h to get function prototypes.
5830 (main): Call globals_of_w32select.
5831
5832 * w32.c (term_ntproc): Call term_w32select.
5833
5834 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
5835
5836 2005-02-16 Kim F. Storm <storm@cua.dk>
5837
5838 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
5839 at end of display vector.
5840
5841 2005-02-15 Richard M. Stallman <rms@gnu.org>
5842
5843 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
5844 for mode and header lines.
5845
5846 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
5847
5848 * keymap.h (describe_map_tree): Change decl.
5849
5850 * keyboard.c (command_loop_1): Always use safe_run_hooks
5851 to run Qdeferred_action_function.
5852
5853 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
5854 (describe_map, describe_vector): Likewise. When it's 1,
5855 don't omit shadowed bindings, instead mark them as shadowed.
5856
5857 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
5858 for describe_map_tree. Pass 1 for MENTION_SHADOW.
5859
5860 * data.c (Fsetq_default): Allow no arg case.
5861
5862 2005-02-14 Kenichi Handa <handa@m17n.org>
5863
5864 * coding.c (encode_coding_string): Always return a unibyte string.
5865 If NOCOPY is nonzero and there's no need of encoding, make STR
5866 unibyte directly.
5867
5868 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
5869 multibyte string, signal an error instead of aborting.
5870
5871 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
5872
5873 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
5874
5875 2005-02-12 Kim F. Storm <storm@cua.dk>
5876
5877 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
5878
5879 2005-02-10 Kim F. Storm <storm@cua.dk>
5880
5881 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
5882 if it moves outside window or it doesn't display text.
5883
5884 2005-02-09 Kim F. Storm <storm@cua.dk>
5885
5886 * undo.c (Fprimitive_undo): Check that undo function does not
5887 switch buffer.
5888
5889 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5890
5891 * xselect.c (selection_data_to_lisp_data): For the special case
5892 type == XA_ATOM, data contains array of int, not array of Atom.
5893 (x_property_data_to_lisp, selection_data_to_lisp_data):
5894 Comment update: data must be array of int for format == 32.
5895
5896 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
5897
5898 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
5899
5900 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5901
5902 * xfns.c (Fx_change_window_property): Use long array when format is 32.
5903 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
5904 convert long array returned from XGetWindowProperty to an int array.
5905 (x_set_tool_bar_lines): Check that width and height is greater than
5906 zero before clearing area.
5907
5908 * xselect.c (x_reply_selection_request): Pass long array to
5909 XChangeProperty so that 64 bit longs are handeled correctly.
5910 (x_get_window_property): If format is 32 and long is bigger than 32
5911 bits convert data from XGetWindowProperty from long array to int array.
5912 (lisp_data_to_selection_data): When the input is a vector and the
5913 format is 32, allocate a long array even if long is bigger than 32 bits.
5914 (x_fill_property_data): Use char, short and long as the man page
5915 for XChangeProperty specifies. This way the data returned is OK for
5916 both 32 and 64 bit machines.
5917 (x_handle_dnd_message): Calculate size correctly even for 64 bit
5918 machines.
5919 (Fx_send_client_event): Undo change from 2005-02-05,
5920 x_fill_property_data now handles that case.
5921
5922 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
5923 reason for the approach in the code.
5924
5925 2005-02-07 Kim F. Storm <storm@cua.dk>
5926
5927 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
5928
5929 2005-02-06 Richard M. Stallman <rms@gnu.org>
5930
5931 * eval.c (Frun_hook_with_args)
5932 (Frun_hook_with_args_until_success)
5933 (Frun_hook_with_args_until_failure): Doc fixes.
5934
5935 2005-02-05 Andreas Schwab <schwab@suse.de>
5936
5937 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
5938
5939 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5940
5941 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
5942 the longs in a XClientMessageEvent correctly when long is 64 bits.
5943
5944 2005-02-05 Eli Zaretskii <eliz@gnu.org>
5945
5946 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
5947 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
5948
5949 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5950
5951 * xmenu.c (menubar_selection_callback): Force out GTK buffered
5952 events so the menu event comes after them. This is to prevent sit-for
5953 from exiting on buffered events directly after a menu selection,
5954 lisp code for Help => About Emacs uses sit-for.
5955
5956 * gtkutil.c (create_menus): Connect selection-done event instead of
5957 the deactivate event to deactivate_cb. This will make the last
5958 leave event come before the call to deactivate_cb, so the leave
5959 event does not make sit-for exit after a menu selection.
5960
5961 2005-02-03 Kim F. Storm <storm@cua.dk>
5962
5963 * dispnew.c (build_frame_matrix_from_leaf_window)
5964 [!GLYPH_DEBUG]: Fix xassert.
5965
5966 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
5967
5968 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5969
5970 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5971
5972 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
5973 the compiling OS version.
5974
5975 * macfns.c (x_create_tip_frame): Likewise.
5976
5977 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
5978
5979 2005-02-03 Richard M. Stallman <rms@gnu.org>
5980
5981 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
5982
5983 * xdisp.c (echo_area_display): Clear echo_message_buffer.
5984
5985 * buffer.c (Fbury_buffer): Doc fix.
5986
5987 2005-02-02 Steven Tamm <steventamm@mac.com>
5988
5989 * macfns.c (unwind_create_frame): Fix compile error due to
5990 xassert being uncondition, but predicate is.
5991 * dispnew.c (update_window): Fix compile error due to
5992 xassert being uncondition, but predicate is.
5993
5994 2005-02-02 Miles Bader <miles@gnu.org>
5995
5996 * dispextern.h (xassert): Enable unconditionally.
5997
5998 2005-02-02 Kim F. Storm <storm@cua.dk>
5999
6000 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
6001
6002 2005-02-02 Kenichi Handa <handa@m17n.org>
6003
6004 * casefiddle.c (casify_object): Enable changing characters of
6005 different byte length.
6006 (casify_region): Fix loop condition, args to replace_range_2, and
6007 update opoint_byte.
6008
6009 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
6010
6011 2005-02-01 Kim F. Storm <storm@cua.dk>
6012
6013 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
6014 stack before calling handle_display_prop.
6015
6016 2005-01-31 Kim F. Storm <storm@cua.dk>
6017
6018 * undo.c (Qapply): New lisp var.
6019 (syms_of_undo): Intern and staticpro it.
6020 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
6021 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
6022
6023 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
6024
6025 2005-01-30 Jesper Harder <harder@phys.au.dk>
6026
6027 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
6028 <mac-emulate-three-button-mouse>: Fix docstring indentation.
6029
6030 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
6031
6032 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6033 Increase value to 3 Meg.
6034
6035 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6036
6037 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
6038 button events are not received otherwise.
6039
6040 2005-01-29 Richard M. Stallman <rms@gnu.org>
6041
6042 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
6043
6044 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
6045
6046 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
6047
6048 * keymap.c (access_keymap): YAILOM.
6049
6050 2005-01-27 Kim F. Storm <storm@cua.dk>
6051
6052 * xdisp.c (get_phys_cursor_geometry): New function to calculate
6053 phys cursor position and size for hollow cursor. Position is
6054 aligned with get_glyph_string_clip_rect and ensures that a hollow
6055 cursor is shown, even when the actual glyph is not visible.
6056
6057 * dispextern.h (get_phys_cursor_geometry): Add prototype.
6058
6059 * xterm.c (x_clip_to_row): Ensure y >= 0.
6060 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6061
6062 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6063
6064 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6065
6066 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
6067
6068 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
6069
6070 2005-01-27 Kim F. Storm <storm@cua.dk>
6071
6072 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
6073 glyph, even when row is only partially visible and actual cursor
6074 position is not visible.
6075
6076 2005-01-24 Richard M. Stallman <rms@gnu.org>
6077
6078 * xterm.c (x_error_quitter): No longer static, and moved after
6079 x_error_handler.
6080
6081 2005-01-24 Kim F. Storm <storm@cua.dk>
6082
6083 * xdisp.c (move_it_by_lines): If we move forward after going too
6084 far back, cancel move if end position is same as start position.
6085
6086 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6087
6088 * dispextern.h (struct glyph_string): New members clip_head and
6089 clip_tail.
6090
6091 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
6092 region to the area between clip_head and clip_tail.
6093 (draw_glyphs): Record the area that need to be actually redrawn to
6094 the new variables clip_head and clip_tail when there are
6095 overhangs. Set values of these variables to the corresponding
6096 members in struct glyph_string. Refine x coordinates for
6097 notice_overwritten_cursor using clip_head and clip_tail.
6098
6099 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
6100
6101 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
6102 QDTextBounds.
6103 (x_draw_glyph_string): Don't fill the background of the successor
6104 of a glyph with a right overhang if the successor will draw a cursor.
6105 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6106 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
6107
6108 2005-01-24 Kim F. Storm <storm@cua.dk>
6109
6110 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
6111 direction if window height was smaller than next-screen-context-lines.
6112 Now always scroll at least one line in the requested direction.
6113 Ensure that we actually do scroll backwards when requested to do so.
6114
6115 * xdisp.c (redisplay_window): Only try to make cursor line fully
6116 visible once (to avoid redisplay loop).
6117
6118 2005-01-23 Kim F. Storm <storm@cua.dk>
6119
6120 * window.c (Fpos_visible_in_window_p): Simplify return value for
6121 partially visible rows.
6122 (window_scroll_pixel_based): Adapt to that change.
6123
6124 * window.c (window_scroll_pixel_based): Force moving to next line
6125 if scrolling doesn't move start point, e.g. if looking at tall image.
6126
6127 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
6128 Clear last_height before calling line_bottom_y to get real height.
6129 Fix calculation of y.
6130
6131 2005-01-22 Steven Tamm <steventamm@mac.com>
6132
6133 * s/darwin.h: Removed PTY_ITERATION from here.
6134 (DARWIN): Define.
6135
6136 * process.c (init_process): Default process-connection-type to
6137 nil on darwin 6 or less, t if it is 7 or higher. This way the
6138 broken pty behavior is still allowed on darwin 6 for interactive
6139 processes for people that know what they are doing.
6140
6141 2005-01-22 Kim F. Storm <storm@cua.dk>
6142
6143 * window.c (auto_window_vscroll_p): New boolean.
6144 (syms_of_window): DEFVAR_BOOL it.
6145 (Fpos_visible_in_window_p): Extend return value to include RTOP
6146 and RBOT values if FULLY is nil.
6147 (window_scroll_pixel_based): Adjust vscroll for partially visible
6148 rows if auto_window_vscroll_p is set.
6149 (Fset_window_vscroll): Do nothing if vscroll is not modified.
6150
6151 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
6152 to return number of partially invisible pixels at top and bottom
6153 of the dislay row at POS.
6154
6155 * lisp.h (pos_visible_p): Fix prototype.
6156
6157 2005-01-21 Richard M. Stallman <rms@gnu.org>
6158
6159 * fileio.c (Fcopy_file): Doc fix.
6160
6161 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6162
6163 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
6164 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
6165 start of function for older compilers.
6166
6167 2005-01-20 Richard M. Stallman <rms@gnu.org>
6168
6169 * editfns.c (Fmessage): If arg is "", return "" (as before).
6170
6171 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
6172
6173 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
6174 variable.
6175
6176 2005-01-20 Steven Tamm <steventamm@mac.com>
6177
6178 * editfns.c (Voperating_system_release): Add.
6179 (init_editfns): Assign new variable operating-system-release
6180 based on call to uname if available.
6181 (get_operating_system_release): Add function to
6182 allow c-level access to operating system release.
6183
6184 * config.h: Regenerated.
6185
6186 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
6187 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
6188 using ptys as '7'.
6189
6190 2005-01-20 Kim F. Storm <storm@cua.dk>
6191
6192 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
6193
6194 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
6195 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
6196
6197 * macterm.c (x_draw_glyph_string_box): Likewise.
6198
6199 * w32term.c (x_draw_glyph_string_box): Likewise.
6200
6201 * indent.c (Fvertical_motion): Temporarily disable selective display.
6202
6203 2005-01-19 Kim F. Storm <storm@cua.dk>
6204
6205 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
6206 image property.
6207
6208 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
6209
6210 2005-01-18 Kim F. Storm <storm@cua.dk>
6211
6212 * xdisp.c (fast_find_position): Backtrack to find first row if
6213 charpos is inside a display overlay that spans multiple lines.
6214
6215 2005-01-18 Kenichi Handa <handa@m17n.org>
6216
6217 * coding.c (decode_coding_iso2022): Translate invalid codes if
6218 translation-table is specified.
6219
6220 2005-01-18 Kim F. Storm <storm@cua.dk>
6221
6222 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
6223 change. If handle_display_prop indicates newline is replaced by
6224 image or text, move back to start of relevant overlay or interval
6225 and continue scan from there. Simplify.
6226
6227 2005-01-17 Kim F. Storm <storm@cua.dk>
6228
6229 * dispnew.c (mode_line_string, marginal_area_string):
6230 Fix off-by-one error in search for glyph.
6231
6232 2005-01-16 Kim F. Storm <storm@cua.dk>
6233
6234 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
6235
6236 2005-01-16 Steven Tamm <steventamm@mac.com>
6237
6238 * macterm.c (mac_to_x_fontname): Remove spurious argument.
6239
6240 2005-01-16 Andreas Schwab <schwab@suse.de>
6241
6242 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
6243
6244 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6245
6246 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
6247 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
6248
6249 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6250
6251 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
6252 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
6253 New flags for readable_events.
6254 (get_filtered_input_pending, readable_filtered_events): Remove.
6255 (tracking_off): Call readable_events and get_input_pending with
6256 flag READABLE_EVENTS_DO_TIMERS_NOW.
6257 (readable_events): Move code from old readable_filtered_events here,
6258 but check new READABLE_EVENTS_* in argument flags instead of previous
6259 two boolean arguments do_timers_now and filter_events.
6260 If we are doing mouse tracking and the mouse moved, return only if
6261 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
6262 (swallow_events): Call get_input_pending with flag
6263 READABLE_EVENTS_DO_TIMERS_NOW.
6264 (get_input_pending): Move code from old get_filtered_input_pending
6265 here. Replace boolean arguments do_timers_now, filter_events with
6266 flags, and pass flags to readable_events. Document new
6267 READABLE_EVENTS_* flags.
6268 (detect_input_pending_ignore_squeezables): New function.
6269 (detect_input_pending_run_timers): Call get_input_pending with flag
6270 READABLE_EVENTS_DO_TIMERS_NOW.
6271 (Finput_pending_p): Call get_input_pending with flags
6272 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
6273
6274 * dispnew.c (update_window, update_frame_1): Replace calls to
6275 detect_input_pending with detect_input_pending_ignore_squeezables
6276 so that redisplay is not paused if the event queue contains only
6277 mouse movements.
6278
6279 * lisp.h: Declare detect_input_pending_ignore_squeezables.
6280
6281 2005-01-15 Steven Tamm <steventamm@mac.com>
6282
6283 * macterm.c (Vmac_use_core_graphics): Declare variable for
6284 mac-allow-anti-aliasing.
6285 (syms_of_macterm): DEFVAR_LISP and initialize it.
6286 (mac_draw_string_common): Use core graphics text rendering if
6287 mac-allow-anti-aliasing is enabled.
6288
6289 * macfns.c (Fx_file_dialog): Save As dialog includes only the
6290 file name in the text box.
6291
6292 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6293
6294 * macfns.c (x_set_foreground_color, x_set_background_color):
6295 Sync with xfns.c.
6296 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
6297 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
6298 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
6299
6300 2005-01-14 Kim F. Storm <storm@cua.dk>
6301
6302 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
6303
6304 2005-01-13 Richard M. Stallman <rms@gnu.org>
6305
6306 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
6307 if Voverriding_terminal_local_map is non-nil.
6308
6309 * keyboard.c (syms_of_keyboard): Doc fix.
6310
6311 2005-01-13 Kim F. Storm <storm@cua.dk>
6312
6313 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
6314 (specify 0 for FACE instead). Reorder arg list. Doc fix.
6315
6316 2005-01-12 Richard M. Stallman <rms@gnu.org>
6317
6318 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
6319 face property for characters that don't specify one.
6320
6321 * fns.c (Frequire): Record in load-history unconditionally.
6322
6323 2005-01-10 Kim F. Storm <storm@cua.dk>
6324
6325 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
6326
6327 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
6328 Callers changed.
6329 Add support to merge with lisp face id too (if face_name is t).
6330
6331 * xdisp.c (get_next_display_element, next_element_from_display_vector):
6332 Don't lookup lface_id from display table glyphs here; instead use
6333 merge_faces to merge the lisp face id into current face.
6334
6335 2005-01-09 Kim F. Storm <storm@cua.dk>
6336
6337 * dispextern.h (struct it): New member dpvec_face_id.
6338 (merge_into_realized_face): Add prototype.
6339
6340 * xfaces.c (merge_into_realized_face): New function. Used to
6341 merge escape-glyph face or face from display table into current face.
6342
6343 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
6344 (syms_of_xdisp): DEFVAR_LISP it.
6345 (escape_glyph_face): Remove var.
6346 (redisplay_window): Don't initialize it.
6347 (setup_for_ellipsis, get_next_display_element):
6348 Set it->dpvec_face_id to -1.
6349 (get_next_display_element): Test Vshow_nonbreak_escape.
6350 Do not setup escape_glyph_face.
6351 Properly merge escape-glyph face or face from display table with
6352 current face for escape and control characters.
6353 Set it->dpvec_face_id to relevant face id instead of adding it to each
6354 element of display vector.
6355 (next_element_from_display_vector): If it->dpvec_face_id is set,
6356 use that instead of lface_id from glyph itself.
6357
6358 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6359
6360 * xterm.h (struct x_output): New member, toolbar_detached.
6361
6362 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
6363 38.
6364 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
6365 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
6366 (xg_create_tool_bar): Initialize toolbar_detached.
6367 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
6368 toolbar_detached is zero.
6369
6370 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6371
6372 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
6373 gtk_menu_popup if not for_click, so callbacks for the menu are called.
6374
6375 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
6376 (xg_tool_bar_callback, xg_tool_bar_help_callback)
6377 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
6378
6379 * xselect.c (x_get_foreign_selection, x_fill_property_data)
6380 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
6381 XFLOAT_DATA to get extract number from Lisp object.
6382
6383 2005-01-07 Kim F. Storm <storm@cua.dk>
6384
6385 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
6386 Set stop_charpos to current charpos instead of 0.
6387
6388 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
6389
6390 * xdisp.c (Fformat_mode_line): First arg now required.
6391
6392 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6393
6394 * macterm.c (XLoadQueryFont): Correctly handle 0 size
6395 font widths that are returned from some Japanese fonts.
6396
6397 2005-01-06 Kim F. Storm <storm@cua.dk>
6398
6399 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
6400 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
6401 (destroy_fringe_bitmap): Set fringe_faces element to nil.
6402 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
6403 fringe_faces array and init elements to nil.
6404 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
6405 non-persistent face id.
6406 (mark_fringe_data): New function for GC.
6407
6408 * alloc.c (mark_fringe_data): Declare extern.
6409 (Fgarbage_collect): Call mark_fringe_data.
6410
6411 * alloc.c (overrun_check_free): Invalidate freed memory if
6412 XMALLOC_CLEAR_FREE_MEMORY is defined.
6413
6414 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6415
6416 * macfns.c: Include sys/param.h.
6417 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
6418 and function.
6419 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
6420 of filename string. Set event callback function when creating
6421 dialog boxes. Add code conversions for filenames. Don't dispose
6422 of apple event descriptor record if failed to create it.
6423
6424 * macterm.c: Include sys/param.h.
6425 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
6426 kEventWindowUpdate.
6427 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
6428 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
6429 of FSSpec from apple event descriptor record.
6430 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
6431 size of filename string.
6432 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
6433 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
6434 file dialog is in action.
6435 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
6436 Reject only when there are no filename items. Set background color
6437 before (un)highlighting the window below the dragged items.
6438 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
6439
6440 2005-01-05 Romain Francoise <romain@orebokech.com>
6441
6442 * term.c (encode_terminal_code): Fix buffer size computation.
6443
6444 2005-01-04 Richard M. Stallman <rms@gnu.org>
6445
6446 * xdisp.c (Fformat_mode_line): Doc fix.
6447
6448 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
6449
6450 * alloc.c (refill_memory_reserve): Move.
6451 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
6452 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
6453
6454 2005-01-03 Richard M. Stallman <rms@gnu.org>
6455
6456 * window.c (window_scroll_pixel_based): Don't correct preserve_y
6457 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
6458
6459 2005-01-03 Jason Rumney <jasonr@gnu.org>
6460
6461 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
6462 fontp->space_width to FONT_WIDTH so they are valid.
6463
6464 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
6465 average width. Set fontp->average_width and fontp->space_width to
6466 their appropriate values.
6467
6468 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
6469 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
6470 fontp->space_width.
6471
6472 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6473
6474 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
6475 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
6476 metrics for max and min bounds.
6477 (x_load_font): Correctly calculate average font width metrics.
6478
6479 2005-01-02 Richard M. Stallman <rms@gnu.org>
6480
6481 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
6482
6483 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6484
6485 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
6486
6487 2004-12-31 Richard M. Stallman <rms@gnu.org>
6488
6489 * xdisp.c (setup_for_ellipsis, get_next_display_element):
6490 Set it->ellipsis_p to 1 or 0.
6491 (display_line): Record whether row ends in mid-ellipsis.
6492 (set_cursor_from_row): If ends in ellipsis, find start of it.
6493 (cursor_row_p): If PT's at the end of the ellipsis the row
6494 ends within, don't display cursor on this row.
6495
6496 * dispextern.h (struct it): New element ellipsis_p.
6497 (struct glyph_row): New element ends_in_ellipsis_p.
6498
6499 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
6500 position if we're reading from something other than the buffer.
6501
6502 * window.c (window_scroll_pixel_based): Only look at
6503 Vscroll_preserve_screen_position if the old PT can't be kept.
6504 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
6505
6506 2004-12-30 Kim F. Storm <storm@cua.dk>
6507
6508 * xdisp.c (get_line_height_property): New function extracted from
6509 original calc_line_height_property.
6510 (calc_line_height_property): Rework. Handle t and (nil . ratio).
6511 (x_produce_glyphs): Use them to handle line-height and
6512 line-spacing according to new height spec.
6513 (Qtotal): Remove.
6514 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
6515
6516 2004-12-30 Kenichi Handa <handa@m17n.org>
6517
6518 * fileio.c (Finsert_file_contents): Don't use
6519 current_buffer->buffer_file_coding_system even if REPLACE is
6520 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
6521
6522 * fontset.h (struct font_info): New members space_width and
6523 average_width.
6524
6525 * frame.h (struct frame): New member space_width.
6526 (FRAME_SPACE_WIDTH): New macro.
6527
6528 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
6529
6530 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
6531 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
6532 fontp->space_width.
6533 (x_load_font): Calculate fontp->space_width and fontp->average_width.
6534 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
6535
6536 * xdisp.c (x_produce_glyphs): Calculate tab width by
6537 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
6538
6539 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
6540
6541 * macterm.c (SelectionRange): Add Xcode position apple event struct.
6542 (do_ae_open_documents): Handle Xcode-style file position open events.
6543
6544 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
6545
6546 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
6547
6548 2004-12-29 Richard M. Stallman <rms@gnu.org>
6549
6550 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
6551
6552 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6553
6554 * macfns.c (install_window_handler): Modify extern to return OSErr
6555 value.
6556 (mac_window): Handle return value of install_window_handler.
6557
6558 * macterm.c (reflect_byte): Remove function.
6559 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
6560 Lookup table instead.
6561 (mac_do_font_lists): Simplify calculation of the longest
6562 nonspecial string.
6563 (init_mac_drag_n_drop): Remove function and declaration.
6564 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
6565 init_mac_drag_n_drop.
6566 (mac_do_track_drag): New function and declaration.
6567 (install_window_handler): Return OSErr value.
6568 (install_window_handler) [TARGET_API_MAC_CARBON]:
6569 Register handlers for tracking/receiving drag-and-drop items.
6570 (do_ae_open_documents): Generate unibyte strings for filenames.
6571 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
6572 Reject only non-filename items. Set event modifiers, and return value.
6573
6574 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
6575
6576 * coding.c (decode_coding): Fix previous change.
6577
6578 2004-12-28 Richard M. Stallman <rms@gnu.org>
6579
6580 * xdisp.c (back_to_previous_visible_line_start):
6581 Don't call handle_display_prop.
6582
6583 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
6584
6585 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
6586 (decode_coding_emacs_mule, encode_coding_emacs_mule)
6587 (decode_coding_iso2022, encode_designation_at_bol)
6588 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
6589 (decode_coding): Constify arguments and local vars.
6590
6591 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6592
6593 * xmenu.c (popup_get_selection): Only pop down dialogs
6594 on C-g and Escape.
6595 (popup_get_selection): Remove parameter down_on_keypress.
6596 (create_and_show_popup_menu, create_and_show_dialog):
6597 Remove parameter down_on_keypress to popup_get_selection.
6598
6599 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6600
6601 * dispextern.h: Change HAVE_CARBON to MAC_OS.
6602 (struct glyph_string): Likewise.
6603
6604 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
6605 mac_initialize.
6606
6607 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
6608 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
6609
6610 * fns.c (vector): Change MAC_OSX to MAC_OS.
6611
6612 * frame.c (x_set_frame_parameters, x_report_frame_params)
6613 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
6614 (x_set_border_width, Vdefault_frame_scroll_bars):
6615 Change HAVE_CARBON to MAC_OS.
6616
6617 * image.c [MAC_OS]: Include sys/stat.h.
6618 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
6619 QuickTimeComponents.h.
6620
6621 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
6622 [!MAC_OSX] (select): Use mac_wait_next_event.
6623 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
6624 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
6625 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
6626 (mac_clear_font_name_table): Add extern.
6627 (Fmac_clear_font_name_table): New defun.
6628 (syms_of_mac): Defsubr it.
6629 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
6630 [MAC_OSX] (select_and_poll_event): New function.
6631 [MAC_OSX] (sys_select): Use it.
6632 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
6633 [MAC_OSX && SELECT_USE_CFSOCKET]
6634 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
6635 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
6636 RunLoop for simultaneously monitoring two kinds of inputs, window
6637 events and process outputs, without periodically polling.
6638
6639 * macfns.c (mac_initialized): Remove extern.
6640 (stricmp): Put in #if 0. All callers changed to use xstricmp in
6641 xfaces.c.
6642 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
6643 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
6644 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
6645 (mac_get_rdb_resource): New function (from w32reg.c).
6646 (x_get_string_resource): Use it.
6647 (install_window_handler): Add extern.
6648 (mac_window): New function.
6649 (Fx_create_frame): Use it instead of make_mac_frame.
6650 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
6651 (Fx_open_connection, Fx_close_connection): New defuns.
6652 (syms_of_macfns): Defsubr them.
6653 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
6654 Add kWindowNoUpdatesAttribute to the window attribute.
6655 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
6656 (x_create_tip_frame): Don't call ShowWindow.
6657 (Fx_show_tip): Call ShowWindow.
6658 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
6659 TARGET_API_MAC_CARBON'.
6660 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
6661 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
6662
6663 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
6664 (Window): Typedef to WindowPtr and move outside `#if
6665 TARGET_API_MAC_CARBON'.
6666 (XSizeHints): New struct.
6667
6668 * macterm.c (x_update_begin, x_update_end)
6669 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
6670 frame.
6671 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
6672 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
6673 (construct_mouse_click): Put in #if 0.
6674 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
6675 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
6676 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
6677 (activate_scroll_bars, deactivate_scroll_bars)
6678 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
6679 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
6680 if the position is neither user-specified nor program-specified.
6681 (x_free_frame_resources): Free size_hints.
6682 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
6683 (mac_clear_font_name_table): New function.
6684 (mac_do_list_fonts): Initialize font_name_table if needed.
6685 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
6686 around mac_do_list_fonts.
6687 (mac_unload_font): New function.
6688 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
6689 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
6690 and definitions with #if TARGET_API_MAC_CARBON.
6691 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
6692 (install_window_handler): Add decl.
6693 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
6694 window. Use UpdateControls. Get the rectangle that should be
6695 updated and restrict the target of expose_frame to it.
6696 (do_grow_window): Set minimum height/width according to size_hints.
6697 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
6698 (do_zoom_window): Don't use x_set_window_size.
6699 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
6700 (install_window_handler): New function.
6701 [!USE_CARBON_EVENTS] (mouse_region): New variable.
6702 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
6703 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
6704 GetEventDispatcherTarget inside BLOCK_INPUT.
6705 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
6706 Update mouse_region when mouse is moved.
6707 (make_mac_frame): Remove.
6708 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
6709 Initialize mouse pointer shapes. Change values of f->left_pos and
6710 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
6711 Don't call ShowWindow.
6712 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
6713 Vinvocation_name and Vsystem_name.
6714 (mac_make_rdb): New function (from w32term.c).
6715 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
6716 already been opened. Don't pass argument to
6717 mac_initialize_display_info. Don't set dpyinfo->height/width.
6718 Add entries to x_display_list and x_display_name_list.
6719 (x_delete_display): New function.
6720 (mac_initialize): Don't call mac_initialize_display_info.
6721 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
6722
6723 * macterm.h (check_mac): Add extern.
6724 (struct mac_output): New member size_hints.
6725 (FRAME_SIZE_HINTS): New macro.
6726 (mac_unload_font): Add extern.
6727
6728 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
6729
6730 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
6731
6732 2004-12-27 Richard M. Stallman <rms@gnu.org>
6733
6734 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
6735 (syms_of_buffer): Don't defsubr it.
6736
6737 * process.c (list_processes_1): Set undo_list instead
6738 of calling Fbuffer_disable_undo.
6739
6740 * xdisp.c (single_display_spec_string_p): Rename from
6741 single_display_prop_string_p.
6742 (single_display_spec_intangible_p): Rename from
6743 single_display_prop_intangible_p.
6744 (handle_single_display_spec): Rename from handle_single_display_prop.
6745 Rewritten to be easier to understand.
6746
6747 Change in load-history format. Functions now get (defun . NAME),
6748 and variables get just NAME.
6749
6750 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
6751
6752 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
6753 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
6754 (Qdefvar): Var deleted.
6755 (syms_of_eval): Don't initialze it.
6756
6757 * lread.c (syms_of_lread) <load-history>: Doc fix.
6758
6759 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6760
6761 * xmenu.c (popup_get_selection): Pop down on C-g.
6762 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
6763 pops down menu on C-g.
6764 (xdialog_show): If dialog popped down and no button in the dialog was
6765 pushed, call Fsignal to quit.
6766 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
6767 Fsignal to quit.
6768
6769 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
6770
6771 * gtkutil.c (xg_initialize): Install bindings for C-g so that
6772 dialogs and menus pop down.
6773
6774 2004-12-27 Kenichi Handa <handa@m17n.org>
6775
6776 * coding.c (code_convert_region): Fix calculation of `ratio'.
6777
6778 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6779
6780 * gtkutil.c (update_frame_tool_bar): Make the value of
6781 tool-bar-button-margin control margins of images in tool bar.
6782
6783 * alloc.c (check_depth): New variable.
6784 (overrun_check_malloc, overrun_check_realloc): Only add
6785 overhead and write check pattern if check_depth is 1 (to handle
6786 recursive calls). Increase/decrease check_depth in entry/exit.
6787 (overrun_check_free): Only check for overhead if check_depth is 1.
6788 Increase/decrease check_depth in entry/exit.
6789
6790 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6791
6792 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
6793 before touching input_available_clear_time, to avoid accessing it
6794 from multiple threads.
6795
6796 2004-12-23 Jason Rumney <jasonr@gnu.org>
6797
6798 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
6799 of JPEG library.
6800
6801 2004-12-22 Richard M. Stallman <rms@gnu.org>
6802
6803 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
6804
6805 * lisp.h (Vundo_outer_limit): Fix decl.
6806
6807 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
6808 Uses changed.
6809 (syms_of_undo): Initialize appropriately.
6810 (truncate_undo_list): If it's nil, there's no limit.
6811
6812 2004-12-22 Kenichi Handa <handa@m17n.org>
6813
6814 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
6815
6816 2004-12-21 Richard M. Stallman <rms@gnu.org>
6817
6818 * eval.c (unwind_to_catch): Clear immediate_quit.
6819
6820 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
6821 specially as `\ ' and `\-'.
6822
6823 * keyboard.c (kbd_buffer_store_event_hold):
6824 In the code for while-no-input, handle immediate_quit.
6825
6826 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
6827 Call that at the very start.
6828 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
6829 (syms_of_alloc): Don't define undo-limit,
6830 undo-strong-limit and undo-outer-limit here.
6831
6832 * undo.c (truncate_undo_list): Return void.
6833 Take just one argument, the buffer.
6834 Make it current, and inhibit recursive GC.
6835 Access and update the undo list directly; return void.
6836 Refer to the undo...limit variables directly.
6837 Test undo_outer_limit only after counting the whole current command.
6838 When it's exceeded, call the function in undo-outer-limit-function.
6839 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
6840 (Vundo_outer_limit_function): New variable.
6841 (syms_of_undo): Define undo-limit, undo-strong-limit
6842 and undo-outer-limit here, and undo-outer-limit-function.
6843 Doc fixes.
6844
6845 * lisp.h (truncate_undo_list): Update decl.
6846
6847 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
6848
6849 * fileio.c (Fread_file_name): Delete duplicates in
6850 file-name-history when history_delete_duplicates is true.
6851
6852 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6853
6854 * macterm.c (mac_do_list_fonts): Fix memory leak
6855
6856 2004-12-20 Richard M. Stallman <rms@gnu.org>
6857
6858 * regex.c (re_match_2_internal) <symend, wordend>:
6859 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
6860
6861 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6862
6863 * macterm.c (endif, x_font_name_to_mac_font_name):
6864 Use maccentraleurroman instead of maccentraleuropean
6865 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
6866 quickly finding a specific font without needing regexps.
6867
6868 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6869
6870 * syssignal.h: Declare main_thread.
6871 (SIGNAL_THREAD_CHECK): New macro.
6872
6873 * keyboard.c (input_available_signal): Move thread checking code
6874 to macro SIGNAL_THREAD_CHECK and call that macro.
6875 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
6876
6877 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
6878
6879 * emacs.c: Define main_thread.
6880 (main): Initialize main_thread.
6881 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
6882 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
6883
6884 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
6885
6886 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
6887
6888 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
6889
6890 * process.c (send_process_trap, sigchld_handler):
6891 Call SIGNAL_THREAD_CHECK.
6892
6893 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
6894
6895 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
6896
6897 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
6898 returning when xg_ignore_gtk_scrollbar is true.
6899
6900 2004-12-14 Kim F. Storm <storm@cua.dk>
6901
6902 * keyboard.c (read_char): Save and restore echo_string when
6903 handling input method.
6904
6905 2004-12-13 Richard M. Stallman <rms@gnu.org>
6906
6907 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
6908
6909 * keyboard.c (Vthrow_on_input): New variable.
6910 (syms_of_keyboard): Defvar and initialize it.
6911 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
6912
6913 * lisp.h (QUIT): Check for Vthrow_on_input.
6914 (Vthrow_on_input): Declare it.
6915
6916 2004-12-13 Kim F. Storm <storm@cua.dk>
6917
6918 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
6919 vector.
6920
6921 2004-12-12 Richard M. Stallman <rms@gnu.org>
6922
6923 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
6924
6925 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
6926 (Ftry_completion): Really use outer `zero'; eliminate inner one.
6927
6928 2004-12-12 Kenichi Handa <handa@m17n.org>
6929
6930 * term.c (encode_terminal_code): Fix previous change.
6931
6932 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
6933
6934 * keyboard.c (handle_async_input): Remove pthread mutex handling.
6935 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
6936
6937 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
6938 in macro arguments.
6939
6940 * minibuf.c (Ftry_completion, Fall_completions): Don't use
6941 XFASTINT blindly.
6942
6943 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
6944
6945 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6946
6947 * w32term.c (x_calc_absolute_position): Remove calculation of
6948 difference between inner and outer window. Don't subtract difference
6949 for left and top calculations.
6950
6951 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
6952 for left and top calculations. Remove call to x_real_positions.
6953 [Bug report by Drew Adams in November]
6954 (x_check_expected_move): Do not set change_gravity to 1 when calling
6955 x_set_offset.
6956
6957 2004-12-08 Richard M. Stallman <rms@gnu.org>
6958
6959 * xdisp.c (get_next_display_element): Use `escape-glyph' for
6960 control chars and escaped octal codes.
6961 (Qescape_glyph): New variable.
6962 (syms_of_xdisp): Initialize it.
6963 (escape_glyph_face): New variable.
6964 (redisplay_window): Initialize it.
6965
6966 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
6967
6968 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
6969 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
6970
6971 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6972
6973 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
6974 reset_malloc_hooks.
6975
6976 * keyboard.c (handle_async_input, input_available_signal):
6977 Add ! defined (SYSTEM_MALLOC) around thread code.
6978
6979 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
6980
6981 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
6982
6983 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
6984
6985 * config.in: Regenerate.
6986
6987 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6988
6989 * xmenu.c (Fx_popup_menu): Correct documentation about position.
6990 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
6991 if not given by a mouse click to correspond with x-popup-menu
6992 documentation.
6993
6994 * config.in: Regenerate.
6995
6996 * gtkutil.c: Include signal.h and syssignal.h.
6997 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
6998
6999 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
7000 new variables main_thread and alloc_mutex,
7001 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
7002 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
7003 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
7004 (UN)BLOCK_INPUT.
7005 (emacs_blocked_free, emacs_blocked_malloc)
7006 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
7007 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
7008 (reset_malloc_hooks): New function.
7009
7010 * lisp.h: Declare reset_malloc_hooks.
7011
7012 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
7013
7014 * keyboard.c: Conditionally include pthread.h
7015 (handle_async_input, input_available_signalt): If not in the main
7016 thread, block signal, send signal to main thread and return.
7017
7018 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
7019 Set current folder in file chooser if default_filename is a directory.
7020
7021 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
7022
7023 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
7024 Remove redundant correctness checks.
7025 (regex_compile): Fix up error codes for \{..\} expressions.
7026
7027 2004-12-05 Richard M. Stallman <rms@gnu.org>
7028
7029 * regex.c (regex_compile): Fix end-of-pattern case for space.
7030
7031 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7032
7033 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
7034 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
7035 crashes with invalid characters.
7036 * macmenu.c (add_menu_item): Use it.
7037 * image.c (image_load_quartz2d): Likewise.
7038 * macfns.c (x_set_name, x_set_title): Likewise.
7039 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
7040 creating them each time for labels.
7041
7042 2004-12-02 Richard M. Stallman <rms@gnu.org>
7043
7044 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
7045 don't use it here.
7046
7047 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
7048 (interactive_p): Skip Scalled_interactively_p frames
7049 like Sinteractive_p frames.
7050 (unwind_to_catch): Clear handling_signal.
7051
7052 * data.c (Fmake_variable_buffer_local): Doc fix.
7053 (Fmake_local_variable): Doc fix.
7054
7055 * insdel.c (insert_from_string_before_markers)
7056 (insert_from_string): Don't modify buffer on empty insertion.
7057
7058 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
7059
7060 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7061
7062 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
7063 menu text as UTF8 fails.
7064
7065 2004-12-01 Kim F. Storm <storm@cua.dk>
7066
7067 * alloc.c: Add commentary for last change.
7068 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
7069 sizeof(size_t) != 4.
7070 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
7071 Use them. Also clear header and trailer of freed memory.
7072 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
7073 (string_overrun_cookie): Rename from string_overrun_pattern.
7074 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
7075
7076 2004-12-01 Andreas Schwab <schwab@suse.de>
7077
7078 * lisp.h: Declare string_to_multibyte.
7079
7080 2004-12-01 Kenichi Handa <handa@m17n.org>
7081
7082 * w32console.c (w32con_write_glyphs): Decide coding here.
7083 Adjusted for the change of encode_terminal_code.
7084
7085 * term.c (encode_terminal_code): Don't make it "static".
7086
7087 2004-11-30 Kenichi Handa <handa@m17n.org>
7088
7089 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
7090 (encode_terminal_code): Argument changed. Encode all
7091 characters at once, and return a pointer to the result of encoding.
7092 (write_glyphs): Decide coding here. Adjusted for the above change.
7093 (insert_glyphs): Likewise.
7094 (term_init): Initialize encode_terminal_bufsize to 0.
7095
7096 * coding.c (Vcode_conversion_workbuf_name): New variable.
7097 (syms_of_coding): Initialize and staticpro it.
7098 (set_conversion_work_buffer): New function.
7099 (run_pre_post_conversion_on_str): Use it.
7100 (run_pre_write_conversin_on_c_str): New function.
7101
7102 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
7103
7104 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7105
7106 * keyboard.c: Don't undef SIGIO
7107 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
7108 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
7109 (macfns.o): Don't depend on ccl.h.
7110 * macfns.c (mac_frame_parm_handlers): Set handlers for
7111 Qleft_fringe and Qright_fringe.
7112 * macterm.c (mac_fill_rectangle_to_pixmap)
7113 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
7114 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
7115 Put in #if 0.
7116 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
7117 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
7118 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
7119 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
7120 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
7121 XDrawImageString. Always draw background and foreground separately.
7122 (x_draw_image_foreground): Use clipping instead of computing the
7123 intersection rectangle.
7124 (x_draw_image_glyph_string): Don't draw an image with mask to a
7125 pixmap.
7126 (x_redisplay_interface): Set flush_display_optional member to 0.
7127 (XTread_socket): Correctly reset the TEConverter
7128 object.
7129
7130 2004-11-30 Kim F. Storm <storm@cua.dk>
7131
7132 * lisp.h: New defines to enable buffer overrun checking.
7133 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
7134 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
7135
7136 * alloc.c: Add more checks for buffer overruns.
7137 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
7138 xmalloc_overrun_check_trailer, overrun_check_malloc)
7139 overrun_check_realloc, overrun_check_free): Add.
7140 (GC_STRING_EXTRA, string_overrun_pattern): Add.
7141 (check_sblock, allocate_string_data, compact_small_strings):
7142 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
7143 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
7144 (check_string_free_list): Add.
7145 (allocate_string, sweep_strings): Call check_string_free_list.
7146
7147 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
7148 XMALLOC_OVERRUN_CHECK to avoid crash during load.
7149
7150 2004-11-29 Kim F. Storm <storm@cua.dk>
7151
7152 * fns.c (concat): Use SAFE_ALLOCA.
7153
7154 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
7155
7156 * sysdep.c (emacs_write): Don't use QUIT.
7157
7158 2004-11-29 Kenichi Handa <handa@m17n.org>
7159
7160 * buffer.c (init_buffer): Set current_buffer->directory to a
7161 multibyte string made by string_to_multibyte.
7162
7163 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
7164
7165 2004-11-27 Andreas Schwab <schwab@suse.de>
7166
7167 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
7168
7169 * s/gnu-linux.h: Enable no-op gcpros on ia64.
7170 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
7171
7172 * filelock.c (lock_file_1): Call get_boot_time early.
7173 Increase buffer size.
7174
7175 2004-11-27 Eli Zaretskii <eliz@gnu.org>
7176
7177 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
7178 is not defined.
7179
7180 2004-11-27 Kim F. Storm <storm@cua.dk>
7181
7182 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
7183 marker out of doc string.
7184
7185 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
7186
7187 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
7188 which was not mentioned in the log.
7189
7190 2004-11-26 Kim F. Storm <storm@cua.dk>
7191
7192 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
7193 angle bitmaps at top/bottom line.
7194
7195 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
7196 set it when it->method is set to next_element_from_display_vector.
7197 (setup_for_ellipsis): Add LEN argument. Callers changed.
7198 Set it->saved_face_id.
7199 (get_next_display_element): Use loop instead of recursion.
7200 Set it->saved_face_id. Combine duplicate code for ctr chars.
7201 (next_element_from_display_vector): Do not set it->saved_face_id.
7202 (next_element_from_ellipsis): Use setup_for_ellipsis.
7203
7204 2004-11-26 Eli Zaretskii <eliz@gnu.org>
7205
7206 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
7207 prevent compiler warnings.
7208
7209 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
7210
7211 * keyboard.c (command_loop_1): Print a message describing the key
7212 the user just pressed when this key has no binding.
7213
7214 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
7215 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
7216
7217 * lread.c (readchar): Check QUIT when `getc' is interrupted.
7218
7219 2004-11-24 Richard M. Stallman <rms@gnu.org>
7220
7221 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
7222
7223 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
7224
7225 2004-11-24 Kim F. Storm <storm@cua.dk>
7226
7227 * xdisp.c (move_it_in_display_line_to, display_line):
7228 Restore saved_face_id also when truncate-lines or hscrolled.
7229
7230 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7231
7232 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
7233 x-use-old-gtk-file-dialog.
7234
7235 * xfns.c: Define x_use_old_gtk_file_dialog.
7236 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
7237 outside ifdef USE_GTK.
7238
7239 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
7240
7241 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
7242 Don't use XFASTINT blindly.
7243
7244 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
7245
7246 * indent.c (skip_invisible): Avoid non-idempotent side-effects
7247 in macro arguments.
7248
7249 * keymap.c (Flookup_key): Check INTEGERP before XINT.
7250
7251 * lread.c (oblookup): Don't use XFASTINT blindly.
7252
7253 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
7254 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
7255
7256 2004-11-23 Kim F. Storm <storm@cua.dk>
7257
7258 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
7259 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
7260
7261 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
7262 signal_p is zero and face name is unknown.
7263 (Fx_list_fonts): Don't signal error in lookup_named_face.
7264 (Fface_font): Signal error in lookup_named_face.
7265 (ascii_face_of_lisp_face): Likewise.
7266
7267 * dispextern.h (lookup_named_face): Fix prototype.
7268
7269 * xdisp.c (handle_single_display_prop): Don't signal error in
7270 lookup_named_face for unknown fringe face name.
7271 (highlight_trailing_whitespace): Don't signal error in
7272 lookup_named_face if trailing-whitespace face unknown.
7273 (calc_line_height_property): Don't signal error in
7274 lookup_named_face if specified face name is unknown.
7275
7276 * fringe.c (update_window_fringes): Show top row indicator if
7277 window has header-line. Don't show arrow at bob and eob
7278 if the boundary indicators are not used.
7279 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
7280
7281 * window.c (set_window_buffer): Clear display_error_modiff.
7282
7283 2004-11-22 Kim F. Storm <storm@cua.dk>
7284
7285 * fringe.c (update_window_fringes): Provide sensible fall-back
7286 value for non-nil indicate-buffer-boundaries setting.
7287
7288 2004-11-22 Markus Rost <rost@ias.edu>
7289
7290 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
7291
7292 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
7293
7294 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
7295
7296 2004-11-21 Kim F. Storm <storm@cua.dk>
7297
7298 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
7299
7300 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
7301 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7302
7303 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
7304 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7305
7306 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
7307 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7308
7309 * xdisp.c (move_it_in_display_line_to, display_line):
7310 Restore saved_face_id if overflow-newline-into-fringe is enabled and
7311 line is continued before or in middle of element from display vector.
7312
7313 * indent.c (Fvertical_motion): Fix last change. Use another
7314 method to detect if iterator moved too far ahead after reseat.
7315
7316 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
7317 expand matrix width for overflow in zero-width area.
7318 (append_glyph, append_composite_glyph, produce_image_glyph)
7319 (append_stretch_glyph): Use it to avoid loop in redisplay.
7320 (note_mode_line_or_margin_highlight): Don't let help-echo from
7321 string override help-echo from image map.
7322
7323 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
7324
7325 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
7326 * callint.c (Fcall_interactively): Ditto.
7327
7328 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
7329
7330 * minibuf.c (Fminibuffer_complete_and_exit):
7331 Fixup the case of the completed value, for case-indep completion.
7332
7333 2004-11-20 Richard M. Stallman <rms@gnu.org>
7334
7335 * lisp.h (Fread_from_minibuffer): Add arg in decl.
7336
7337 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
7338 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
7339
7340 * search.c (Vsearch_spaces_regexp):
7341 Rename from Vsearch_whitespace_regexp. All uses changed.
7342
7343 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
7344
7345 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
7346
7347 2004-11-19 Richard M. Stallman <rms@gnu.org>
7348
7349 * search.c (Vsearch_whitespace_regexp): New variable.
7350 (syms_of_search): Defvar it.
7351 (compile_pattern_1): Call re_set_whitespace_regexp with it.
7352 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
7353 is non-nil.
7354 (struct regexp_cache): New element whitespace_regexp.
7355 (syms_of_search): Initialize whitespace_regexp elements.
7356 (compile_pattern): Compare whitespace_regexp elements.
7357 (compile_pattern_1): Set whitespace_regexp elements.
7358
7359 * regex.c (regex_compile): Substitute whitespace_regexp
7360 for spaces, if it is nonzero.
7361 (whitespace_regexp): New variable.
7362 (re_set_whitespace_regexp): New function.
7363
7364 2004-11-19 Kim F. Storm <storm@cua.dk>
7365
7366 * indent.c (Fvertical_motion): Fix last change.
7367
7368 2004-11-18 Kim F. Storm <storm@cua.dk>
7369
7370 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
7371 Instead, move back again if reseating moves too far ahead.
7372
7373 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
7374
7375 * xdisp.c (message3): Call clear_message.
7376
7377 2004-11-17 Kim F. Storm <storm@cua.dk>
7378
7379 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
7380
7381 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7382
7383 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
7384
7385 * xmenu.c (x_menu_in_use): Remove.
7386 (x_menu_set_in_use): Also set popup_activated_flag.
7387
7388 * xfns.c (Fx_file_dialog): Call popup_activated instead of
7389 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
7390
7391 * xterm.h (x_menu_in_use): Remove.
7392
7393 2004-11-16 Richard M. Stallman <rms@gnu.org>
7394
7395 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
7396 Use map-keymap-internal to implement that.
7397
7398 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
7399
7400 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
7401
7402 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
7403 a window before using XWINDOW.
7404
7405 * window.c (make_window, Fselect_window, make_dummy_parent)
7406 (save_window_save):
7407 * frame.c (make_frame):
7408 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
7409
7410 * lisp.h (NILP): Use EQ rather than XFASTINT.
7411
7412 2004-11-16 Kim F. Storm <storm@cua.dk>
7413
7414 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
7415
7416 * indent.c (Fvertical_motion): Fix last change. Only reseat when
7417 moving backwards.
7418
7419 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
7420
7421 * dispextern.h: Extern reseat_at_previous_visible_line_start.
7422
7423 2004-11-16 Kenichi Handa <handa@m17n.org>
7424
7425 * xdisp.c (display_mode_element): Fix previous change (calculate
7426 end position of substring to display correctly).
7427
7428 2004-11-16 Kim F. Storm <storm@cua.dk>
7429
7430 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
7431 Reported by Andrew M. Scott.
7432
7433 2004-11-15 Kim F. Storm <storm@cua.dk>
7434
7435 * fns.c (Fsafe_plist_get): New defun.
7436 (syms_of_fns): Defsubr it.
7437
7438 * lisp.h (Fsafe_plist_get): Add EXFUN.
7439
7440 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
7441 Use Fsafe_plist_get.
7442 (note_mode_line_or_margin_highlight, note_mouse_highlight):
7443 Fix image map element parsing. Use Fsafe_plist_get.
7444
7445 2004-11-15 Richard M. Stallman <rms@gnu.org>
7446
7447 * xdisp.c (get_next_display_element): Fix previous change.
7448
7449 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7450
7451 * window.c (shrink_windows): Handle special case of one window left
7452 when trying to shrink the final reminder. Grow windows if
7453 total_removed is less than total_shrink.
7454
7455 * xmenu.c (pop_down_menu): Remove global variable current_menu,
7456 extract pointer from arg with XSAVE_VALUE.
7457 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
7458 Construct arg to record_unwind_protect with make_save_value.
7459
7460 2004-11-13 Richard M. Stallman <rms@gnu.org>
7461
7462 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
7463 (get_next_display_element): Fix previous change to apply only to \n.
7464
7465 * indent.c (Fvertical_motion): Scan to PT from start of line to
7466 make iterator consistent.
7467
7468 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7469
7470 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7471
7472 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
7473
7474 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
7475 Record unwind with clean_up_file_dialog.
7476
7477 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
7478 Declare.
7479
7480 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
7481
7482 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7483
7484 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
7485 (xg_file_sel_destroy): Remove.
7486 (xg_file_response_cb, pop_down_file_dialog)
7487 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
7488 New functions.
7489 (xg_get_file_with_chooser, xg_get_file_with_selection):
7490 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
7491 Move common code to xg_get_file_name. Return widget created.
7492 (xg_get_file_name): Set name, transient for, modal and destroy
7493 with parent here. Connect response signal to xg_file_response_cb,
7494 connect delete-event to gtk_true. Record pop_down_file_dialog
7495 for unwind. Do event loop and call x_menu_wait_for_event in loop.
7496 (xg_create_widget): Make dialogs modal.
7497
7498 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
7499 Lisp_Object.
7500 (popup_get_selection): Move unwind protect ...
7501 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
7502 Move destroy of widget to pop_down_menu.
7503 (popup_widget_loop): Move unwind protect ...
7504 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
7505 Move destroy of widget to pop_down_menu.
7506 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
7507 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
7508 x_mouse_leave and grabbed = 0 to pop_down_menu.
7509
7510 2004-11-13 Kim F. Storm <storm@cua.dk>
7511
7512 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
7513 (syms_of_xdisp): DEFVAR_BOOL it.
7514 (make_cursor_line_fully_visible, try_cursor_movement)
7515 (try_window_id): Use it.
7516
7517 2004-11-12 Kim F. Storm <storm@cua.dk>
7518
7519 * dispextern.h (struct glyph_row): New member extra_line_spacing.
7520 (struct it): New member max_extra_line_spacing.
7521 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
7522 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
7523 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
7524 part of last line is only extra line spacing (so the text on the
7525 line is fully visible). Use helper macros.
7526 Add W arg (to use them). All callers changed.
7527 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
7528 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
7529
7530 * window.c (window_scroll_pixel_based, Frecenter):
7531 Use move_it_vertically_backward directly.
7532 (Frecenter): Fix calculation of new start pos for negative arg.
7533 Before, the new start pos was sometimes chosen too far back, so
7534 the last line became only partially visible, and thus would be
7535 either only semi-visible or automatically scrolled to the middle
7536 of the window by redisplay.
7537
7538 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
7539 (move_it_vertically_backward): Don't recure to move further back.
7540 (move_it_vertically): Remove superfluous condition.
7541 (move_it_by_lines): Clear last_height when moved 0 lines.
7542 (resize_mini_window): Use it.max_extra_line_spacing.
7543 (display_tool_bar_line): Clear row->extra_line_spacing.
7544 (try_scrolling): Use move_it_vertically_backward directly.
7545 (redisplay_window): Likewise.
7546 (compute_line_metrics): Set row->extra_line_spacing.
7547 (display_line, display_string): Likewise.
7548 (x_produce_glyphs): Update it->max_extra_line_spacing.
7549
7550 * xmenu.c (pop_down_menu): Return nil.
7551
7552 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7553
7554 * xmenu.c (x_menu_wait_for_event): New function.
7555 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
7556 to handle timers.
7557 (popup_widget_loop): Add argument do_timers.
7558 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
7559 do_timers to popup_widget_loop.
7560 (xmenu_show): Call XMenuActivateSetWaitFunction so that
7561 x_menu_wait_for_event is called by XMenuActivate.
7562 (create_and_show_popup_menu): Pass 1 for do_timers to
7563 popup_get_selection.
7564 (pop_down_menu): New function.
7565 (popup_get_selection, popup_widget_loop): Unwind protect to
7566 pop_down_menu.
7567 (popup_widget_loop): Add argument widget.
7568 (create_and_show_popup_menu, create_and_show_dialog): Pass new
7569 argument widget to popup_widget_loop.
7570
7571 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
7572
7573 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
7574
7575 2004-11-09 Kim F. Storm <storm@cua.dk>
7576
7577 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
7578 Fix various comments referring to XEvents instead of input events.
7579 (x_queue_event): Fix format strings.
7580 (x_stop_queuing_selection_requests): Likewise.
7581
7582 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
7583 (pint2hrstr): Add extra braces to silence compiler.
7584
7585 * print.c (print_object): Fix format string.
7586
7587 * lread.c (read1): Fix next_char matching.
7588
7589 * lisp.h (Fdelete): Add EXFUN.
7590 (replace_range_2): Add prototype.
7591
7592 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
7593
7594 * intervals.h (NULL_INTERVAL_P): Add separate version when
7595 ENABLE_CHECKING is not defined to silence compiler.
7596 (compare_string_intervals): Add prototype.
7597
7598 * fringe.c (destroy_fringe_bitmap): Fix return type.
7599 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
7600
7601 * emacs.c (Fdump_emacs): Fix format string.
7602
7603 * doc.c: Include <ctype.h>.
7604 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
7605
7606 * data.c (store_symval_forwarding): Remove unused variables.
7607
7608 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
7609
7610 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7611
7612 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
7613 to ${OLDXMENU}.
7614
7615 2004-11-09 Kim F. Storm <storm@cua.dk>
7616
7617 * process.c (Fmake_network_process): Remove kludge for interrupted
7618 connects on BSD. If connect is interrupted, just close socket and
7619 start over rather than sleeping and retry with same socket.
7620
7621 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7622
7623 * .cvsignore: Add buildobj.lst.
7624
7625 * doc.c: New variable Vbuild_files.
7626 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
7627 file names from buildobj.lst. Only attach docstrings from files
7628 that are in Vbuild_files.
7629 (syms_of_doc): Defvar Vbuild_files.
7630
7631 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
7632 and w32*.o.
7633 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
7634 (mostlyclean): Rm buildobj.lst
7635
7636 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
7637 is linked.
7638
7639 2004-11-09 Kim F. Storm <storm@cua.dk>
7640
7641 * fringe.c (update_window_fringes): Update fringe bitmaps if
7642 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
7643 also update previous row to get rid of misc. artifacts.
7644
7645 2004-11-08 Kim F. Storm <storm@cua.dk>
7646
7647 * xdisp.c (fast_find_position): Fix start pos if header line present.
7648 (note_mouse_highlight): Clear mouse face if we move out of text area.
7649
7650 2004-11-08 Eli Zaretskii <eliz@gnu.org>
7651
7652 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
7653 Don't include <sys/time.h> explicitly.
7654 Include <stdio.h> unconditionally, not just on MacOS.
7655
7656 2004-11-08 Kenichi Handa <handa@m17n.org>
7657
7658 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
7659 don't pay attention to '\' before '*'.
7660 (fontset_pattern_regexp): Change the meaning of the second arg.
7661 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
7662 (check_fontset_name): Try NAME as literal at first, and if it
7663 failes, try NAME as pattern.
7664
7665 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7666
7667 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
7668
7669 2004-11-07 Andreas Schwab <schwab@suse.de>
7670
7671 * lisp.h (Fmsdos_downcase_filename): Declare.
7672 * dired.c (Fmsdos_downcase_filename): Don't declare here.
7673 * fileio.c: Likewise.
7674
7675 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7676
7677 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
7678 comparisons with integers instead of Lisp_Object address.
7679 (Fmsdos_set_keyboard): Declare argument allkeys.
7680
7681 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
7682
7683 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
7684 int/Lisp_Object mixup.
7685
7686 * fileio.c: Ditto.
7687
7688 2004-11-06 Steven Tamm <steventamm@mac.com>
7689
7690 * editfns.c: Need to include sys/time.h before resource.h on darwin.
7691
7692 2004-11-06 Richard M. Stallman <rms@gnu.org>
7693
7694 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
7695
7696 * xfaces.c (merge_named_face): GCPRO the face_name in the
7697 named_merge_point struct that we make.
7698 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
7699
7700 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
7701 before deciding whether to inactivate mark.
7702
7703 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
7704
7705 * config.in: Regenerate (add HAVE_GETRUSAGE).
7706 * editfns.c (Fget_internal_run_time): New function.
7707 (syms_of_data): Defsubr it.
7708 * fns.c (sxhash): As far as possible, merge calculation of
7709 hash code for symbols and strings.
7710
7711 2004-11-06 Eli Zaretskii <eliz@gnu.org>
7712
7713 * frame.c (syms_of_frame): Fix the example in the doc string.
7714
7715 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7716
7717 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
7718
7719 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
7720 (create_and_show_dialog): Revert change from 2004-10-31.
7721
7722 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
7723
7724 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
7725
7726 2004-11-05 Kim F. Storm <storm@cua.dk>
7727
7728 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
7729
7730 * fileio.c (Ffile_modes): Doc fix.
7731 (auto_save_1): Check for Ffile_modes nil value.
7732
7733 2004-11-05 Kim F. Storm <storm@cua.dk>
7734
7735 * xselect.c (struct selection_event_queue, selection_queue)
7736 (x_queue_selection_requests, x_queue_event)
7737 (x_start_queuing_selection_requests)
7738 (x_stop_queuing_selection_requests): Add new queue for selection
7739 input events to replace previous XEvent queue in xterm.c.
7740 (queue_selection_requests_unwind): Adapt to new queue.
7741 (x_reply_selection_request): Adapt to new queue.
7742 Unexpect wait_object in case of x errors (memory leak).
7743 (x_handle_selection_request, x_handle_selection_clear): Make static.
7744 (x_handle_selection_event): New function. May queue selection events.
7745 (wait_for_property_change_unwind): Use save_value instead of cons.
7746 Clear property_change_reply_object.
7747 (wait_for_property_change): Abort if already waiting.
7748 Use save_value instead of cons for unwind data.
7749 (x_handle_property_notify): Skip events already arrived, but don't
7750 free them, as "arrived" field is checked by wait_for_property_change,
7751 and it will be freed by unwind or explicit unexpect_property_change.
7752 (x_get_foreign_selection): Add to new queue.
7753 (receive_incremental_selection): Don't unexpect wait_object when done
7754 as it has already been freed by previous wait_for_property_change.
7755
7756 * xterm.h (x_start_queuing_selection_requests)
7757 (x_stop_queuing_selection_requests, x_handle_selection_request)
7758 (x_handle_selection_clear): Remove prototypes.
7759 (x_handle_selection_event): Add prototype.
7760
7761 * xterm.c (handle_one_xevent): Don't queue X selection events
7762 here, it may be too late if we start queuing after we have already
7763 stored some selection events into the kbd buffer.
7764 (struct selection_event_queue, queue, x_queue_selection_requests)
7765 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
7766 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
7767 (x_catch_errors_unwind): Block input around final XSync.
7768
7769 * keyboard.h (kbd_buffer_unget_event): Add prototype.
7770
7771 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
7772 (kbd_buffer_unget_event): New function.
7773 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
7774 and use x_handle_selection_event.
7775 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
7776
7777 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7778
7779 * xselect.c (TRACE3): New debug macro.
7780 (x_reply_selection_request): Use it.
7781 (receive_incremental_selection): In call to TRACE0, the name of
7782 a symbol is in xname.
7783
7784 2004-11-05 Kim F. Storm <storm@cua.dk>
7785
7786 * fontset.c (fontset_pattern_regexp): Use unsigned char.
7787
7788 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7789
7790 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
7791
7792 * gtkutil.h (use_old_gtk_file_dialog): Declare.
7793
7794 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
7795 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
7796 * xfns.c (syms_of_xfns): ... to here.
7797
7798 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
7799 it doesn't start with /.
7800
7801 2004-11-04 Kenichi Handa <handa@m17n.org>
7802
7803 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
7804 treat it as a literal character.
7805
7806 2004-11-03 Kim F. Storm <storm@cua.dk>
7807
7808 * .gdbinit (ppt): New function.
7809
7810 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7811
7812 * xterm.c (x_window_to_scroll_bar): Only call
7813 xg_get_scroll_id_for_window if toolkit scroll bars are used.
7814
7815 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
7816 of save.
7817
7818 2004-11-02 Andreas Schwab <schwab@suse.de>
7819
7820 * window.c (Fscroll_right): Fix last change.
7821
7822 2004-11-02 Kim F. Storm <storm@cua.dk>
7823
7824 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
7825
7826 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7827
7828 * callproc.c (Fcall_process): Block input around vfork.
7829
7830 2004-11-02 Kim F. Storm <storm@cua.dk>
7831
7832 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
7833 (syms_of_eval): Defsubr it.
7834
7835 2004-11-02 Richard M. Stallman <rms@gnu.org>
7836
7837 * insdel.c (replace_range_2): New function.
7838
7839 * casefiddle.c (casify_region): Handle changes in byte-length
7840 using replace_range_2.
7841
7842 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
7843
7844 * xdisp.c (back_to_previous_visible_line_start):
7845 Subtract 1 from pos when checking previous newline for invisibility.
7846
7847 * window.c (window_scroll_pixel_based): Update preserve_y
7848 for header line if any.
7849 (Fscroll_left, Fscroll_right): Don't call interactive_p;
7850 use a new second argument instead.
7851
7852 * eval.c (Fcall_interactive_p): New function.
7853 (interactive_p): Don't test INTERACTIVE here.
7854 (Finteractive_p): Doc fix.
7855
7856 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
7857
7858 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7859
7860 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
7861 comparing font names.
7862
7863 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7864
7865 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
7866 Fx_file_dialog if only directories should be read.
7867
7868 * lisp.h: Fx_file_dialog takes 5 parameters.
7869
7870 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
7871 Add parameter only_dir_p.
7872 In Motif version, don't put DEFAULT_FILENAME in filter part of the
7873 dialog, just text field part. Do not add DEFAULT_FILENAME
7874 to list of files if it isn't there.
7875 In GTK version, pass only_dir_p parameter to xg_get_file_name.
7876
7877 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
7878 Check only_dir_p instead of comparing prompt to "Dired". When using
7879 a save dialog, add option kNavDontConfirmReplacement, change title
7880 to "Enter name", change text for save button to "Ok".
7881
7882 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
7883 Check only_dir_p instead of comparing prompt to "Dired".
7884
7885 * gtkutil.c (xg_get_file_with_chooser)
7886 (xg_get_file_with_selection): New functions, only defined ifdef
7887 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
7888 respectively.
7889 (xg_get_file_name): Add parameter only_dir_p.
7890 Call xg_get_file_with_chooser or xg_get_file_with_selection
7891 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
7892 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
7893
7894 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
7895
7896 * config.in: Rebuild (added HAVE_GTK_FILE_*).
7897
7898 2004-11-01 Kim F. Storm <storm@cua.dk>
7899
7900 * process.c (connect_wait_mask, num_pending_connects):
7901 Only declare and use them if NON_BLOCKING_CONNECT is defined.
7902 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
7903 (IF_NON_BLOCKING_CONNECT): New helper macro.
7904 (wait_reading_process_output): Only declare and use local vars
7905 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
7906
7907 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
7908
7909 * w32term.c (x_scroll_run): Delete region objects after use.
7910
7911 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7912
7913 * xmenu.c: Add prototypes for forward function declarations.
7914 (popup_get_selection): Remove parameter do_timers, remove call to
7915 timer_check.
7916 (create_and_show_popup_menu, create_and_show_dialog):
7917 Remove parameter do_timers from call to popup_get_selection.
7918
7919 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
7920 tool_bar_items and assign the result to f->tool_bar_items if
7921 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
7922 tool_bar_items to assignment of result.
7923
7924 * atimer.c (alarm_signal_handler): Do not call set_alarm if
7925 pending_atmers is non-zero.
7926
7927 2004-10-31 Kim F. Storm <storm@cua.dk>
7928
7929 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
7930
7931 2004-10-28 Will <will@glozer.net>
7932
7933 * macterm.c: Allow user to assign key modifiers to the Mac Option
7934 key via a 'mac-option-modifier' variable.
7935
7936 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7937
7938 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
7939 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
7940 (x_handle_selection_request, x_handle_selection_clear)
7941 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
7942
7943 2004-10-28 Richard M. Stallman <rms@gnu.org>
7944
7945 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
7946
7947 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
7948
7949 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
7950
7951 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
7952 comment-starter over a 1-char one.
7953
7954 2004-10-27 Richard M. Stallman <rms@gnu.org>
7955
7956 * xdisp.c (get_next_display_element): In mode lines,
7957 treat newline and tab like other control characters.
7958
7959 * editfns.c (Fmessage): Doc fix.
7960
7961 * indent.c (vmotion): When moving up, check the newline before.
7962 Make prevline an int, not a Lisp_Object.
7963
7964 2004-10-27 Kim F. Storm <storm@cua.dk>
7965
7966 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
7967 Only allocate info and discarded tables once.
7968
7969 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
7970 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
7971 (SAFE_FREE): Test it to determine if we need to unwind to free.
7972 Remove size arg. All users changed.
7973 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
7974
7975 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7976
7977 * gtkutil.c: Put empty line between comment and function body.
7978 (xg_destroy_widgets): Rename from remove_from_container.
7979 Just destroy all widgets in list. Argument wcont removed.
7980 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
7981 instead of remove_from_container.
7982 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
7983 (free_frame_tool_bar): Add comment.
7984
7985 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
7986 is not NULL before strcmp.
7987
7988 2004-10-26 Kim F. Storm <storm@cua.dk>
7989
7990 * callint.c (Fcall_interactively): Add 'U' code to get the
7991 up-event discarded by a previous 'k' or 'K' argument.
7992
7993 2004-10-26 David Kastrup <dak@gnu.org>
7994
7995 * buffer.c (syms_of_buffer): Fix a few typos.
7996
7997 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7998
7999 * xsmfns.c: Put empty line between comment and function body.
8000 Use two spaces before comment end.
8001
8002 2004-10-25 Kenichi Handa <handa@m17n.org>
8003
8004 * fontset.c (fontset_pattern_regexp): Optimize for the case that
8005 PATTERN is full XLFD.
8006
8007 2004-10-24 Kenichi Handa <handa@m17n.org>
8008
8009 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
8010
8011 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
8012 (regex_compile): Return REG_ERANGEX if appropriate.
8013
8014 2004-10-22 Kenichi Handa <handa@m17n.org>
8015
8016 * editfns.c (Ftranslate_region_internal): New function.
8017 (syms_of_editfns): Defsubr it.
8018
8019 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8020
8021 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
8022
8023 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8024
8025 * xterm.h (x_output): New member `xic_base_fontname'.
8026 (FRAME_XIC_BASE_FONTNAME): New macro.
8027 (xic_free_xfontset): Declare.
8028
8029 * xfns.c (xic_create_xfontset): Share fontsets between frames
8030 based on base_fontname.
8031 (xic_free_xfontset): New function.
8032 (free_frame_xic): Use it.
8033 (xic_set_xfontset): Ditto.
8034
8035 * xterm.c (xim_destroy_callback): Ditto.
8036
8037
8038 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
8039
8040 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
8041
8042 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8043
8044 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
8045 XSync.
8046
8047 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
8048 New variables and constant.
8049 (main): Calculate heap_bss_diff. If we are dumping and the
8050 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
8051 and exec ourself again.
8052 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
8053 print a warning.
8054
8055 * lastfile.c: Make my_endbss and my_endbss_static available on all
8056 platforms.
8057
8058 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
8059 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
8060
8061 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
8062
8063 * data.c (Flocal_variable_if_set_p): Doc fix.
8064
8065 2004-10-19 Jason Rumney <jasonr@gnu.org>
8066
8067 * w32.c (init_environment): Set emacs_dir correctly when running
8068 emacs from the build directory.
8069
8070 2004-10-19 Richard M. Stallman <rms@gnu.org>
8071
8072 * editfns.c (Fdelete_and_extract_region):
8073 If region is empty, return null string.
8074
8075 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8076
8077 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
8078 and canon_width.
8079 (xg_frame_cleared): Remove.
8080
8081 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
8082 (xg_find_top_left_in_fixed): Remove.
8083 (xg_create_scroll_bar): Put an event box widget between
8084 the scroll bar widget and the edit widget.
8085 (xg_show_scroll_bar): Show the parent widget (the event box).
8086 (xg_remove_scroll_bar): Destroy parent (the event box) also.
8087 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
8088 Move the parent (the event box) widget inside the fixed widget.
8089 Move window clear to xterm.c.
8090
8091 * gtkutil.h (xg_frame_cleared): Remove.
8092
8093 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
8094 (x_scroll_bar_create, XTset_vertical_scroll_bar):
8095 Remove arguments left and width to xg_update_scrollbar_pos.
8096 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
8097
8098 2004-10-19 Kenichi Handa <handa@m17n.org>
8099
8100 * xdisp.c (display_mode_element): Fix display of wide chars.
8101
8102 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8103
8104 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
8105 gdk_window_clear and move gdk_window_process_all_updates after
8106 clear so events are sent to the X server in correct order.
8107
8108 2004-10-18 Kenichi Handa <handa@m17n.org>
8109
8110 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
8111 comparing font names.
8112 (fs_query_fontset): Use fast_string_match for comparing fontset names.
8113 (list_fontsets): Likewise.
8114
8115 * search.c (fast_string_match_ignore_case): New function.
8116
8117 * lisp.h (fast_string_match_ignore_case): Extern it.
8118
8119 2004-10-17 Kim F. Storm <storm@cua.dk>
8120
8121 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
8122 than bitmap if there is not left fringe.
8123 (get_overlay_arrow_glyph_row): Also used on windows system.
8124 (display_line): Display overlay string if no left fringe.
8125
8126 2004-10-16 Jason Rumney <jasonr@gnu.org>
8127
8128 * w32fns.c (w32_font_match): Encode font name being matched.
8129
8130 2004-10-16 Richard M. Stallman <rms@gnu.org>
8131
8132 * window.c (Fspecial_display_p): Doc fix.
8133
8134 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
8135
8136 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
8137 Don't ignore menus, because where-is-internal already does it for us.
8138
8139 2004-10-15 Kim F. Storm <storm@cua.dk>
8140
8141 * xdisp.c (redisplay_window): Only update fringes and vertical
8142 border on window frames.
8143
8144 2004-10-14 Andreas Schwab <schwab@suse.de>
8145
8146 * m/ia64.h (DATA_SEG_BITS): Don't define.
8147
8148 2004-10-14 Kim F. Storm <storm@cua.dk>
8149
8150 * xterm.h: Include Xutil.h after keysym.h to work around bug
8151 in some X versions.
8152
8153 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
8154
8155 * fns.c (map_char_table): Add missing gcpros.
8156
8157 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
8158
8159 * keymap.c (get_keymap): An autoload form is not a keymap.
8160
8161 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
8162
8163 2004-10-13 Kim F. Storm <storm@cua.dk>
8164
8165 * callproc.c (Fcall_process): Simplify handling of display arg.
8166 Resume `display_on_the_fly' once a coding system is determined.
8167
8168 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
8169
8170 2004-10-12 Kim F. Storm <storm@cua.dk>
8171
8172 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
8173 caller, such as call-process, is not going to poll for input.
8174 (calc_line_height_property): Handle case where it->object is nil.
8175
8176 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
8177
8178 2004-10-12 Kenichi Handa <handa@m17n.org>
8179
8180 * xdisp.c (get_next_display_element):
8181 If unibyte_display_via_language_environment is zero, display 8-bit
8182 chars in octal in unibyte buffer.
8183
8184 2004-10-12 Kim F. Storm <storm@cua.dk>
8185
8186 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
8187 are no ordinary bindings.
8188
8189 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8190
8191 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
8192
8193 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8194
8195 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
8196 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
8197 (make_mac_frame): Add BLOCK_INPUT around the making of a
8198 terminal frame.
8199 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
8200 * macgui.h (mktime): Use emacs_mktime.
8201 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
8202 Make a cancel file-open dialog be like C-g.
8203 * mac.c (mktime): Use emacs_mktime.
8204 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
8205 (Fmac_paste_function): Add better error handling for carbon cut/paste.
8206
8207 2004-10-10 Kim F. Storm <storm@cua.dk>
8208
8209 * keyboard.c (timer_resume_idle): New function to resume idle
8210 timer without resetting timers on the idle list.
8211 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
8212 (timer_start_idle, timer_stop_idle): Declare static.
8213 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
8214
8215 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
8216
8217 2004-10-08 Steven Tamm <steventamm@mac.com>
8218
8219 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
8220 * macterm.c (mac_check_for_quit_char): Remove warning for using
8221 NULL where 0 should be used.
8222 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
8223 objc/malloc.h
8224 * mac.c: Include time.h for Tiger compatibility.
8225
8226 2004-10-07 Kim F. Storm <storm@cua.dk>
8227
8228 * xdisp.c (redisplay_window): Fix flicker on vertical line between
8229 windows. Update vertical line after drawing window fringes, but
8230 only if actually drawing any bitmaps--or there is no fringe.
8231
8232 * xterm.c (x_update_window_end): Likewise.
8233 * macterm.c (x_update_window_end): Likewise.
8234 * w32term.c (x_update_window_end): Likewise.
8235
8236 * fringe.c (draw_window_fringes): Return value now indicates if
8237 any fringe bitmaps were redrawn (or there are no fringes).
8238
8239 * dispextern.h (draw_window_fringes): Update prototype.
8240
8241 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8242
8243 * macfns.c (mac_get_window_bounds): Add extern.
8244 (x_real_positions): Use mac_get_window_bounds.
8245
8246 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
8247 xmenu.c (YAILOM).
8248
8249 * macterm.c [!MAC_OSX]: Include Windows.h.
8250 (front_emacs_window): Rename from mac_front_window. All uses
8251 changed. Return the frontmost non-tooltip emacs window.
8252 (mac_get_window_bounds): New function.
8253 (x_calc_absolute_position): Use the difference of width and height
8254 between the inner and outer window.
8255 (x_set_offset): Specify window position by the coordinae of the
8256 outer window. Adjust the position if the title bar is completely
8257 outside the screen.
8258 (app_is_suspended, app_sleep_time): Remove unused variables.
8259 (do_app_resume, do_app_suspend): Remove their contents because
8260 window-activate/deactivate events will do the job.
8261 (do_zoom_window): Remove unused variables. Make compliant to the
8262 standard way of zooming. Set f->left_pos and f->top_pos.
8263 (XTread_socket): Don't use argument `expected'. Don't use
8264 FrontWindow to determine the clicked window. Exclude unprocessed
8265 mouseUp cases in the early stage. Add parentheses to fix operator
8266 precedence.
8267 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
8268
8269 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
8270
8271 * config.in: Regenerate.
8272
8273 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
8274 HAVE_EXECSHIELD.
8275
8276 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8277
8278 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
8279 a row if Alt or Meta has been found for that row. Also stop scanning
8280 for Keysyms for that row.
8281
8282 2004-10-04 Kim F. Storm <storm@cua.dk>
8283
8284 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
8285 to list. Include overlay arrow bitmap in return value.
8286
8287 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
8288 bars with fractional column width. If scroll bar separates two
8289 windows, move it towards the window it belongs to. Only update
8290 the padding area below the scroll bar widget when necessary,
8291 i.e. when scroll bar widget is created, moved, or resized.
8292
8293 * xdisp.c (define_frame_cursor1): Do not change frame cursor
8294 while tracking/dragging mouse.
8295 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
8296
8297 * window.c (coordinates_in_window): Relax check for cursor
8298 on vertial border between mode lines.
8299 (Fset_window_fringes): Do not allow negative widths.
8300 (Fset_window_scroll_bars): Likewise.
8301
8302 * .gdbinit (pp): Shorthand for p ARG + pr.
8303 (ff): New command: flush frame updates (X only).
8304
8305 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
8306
8307 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
8308
8309 2004-09-30 Kenichi Handa <handa@m17n.org>
8310
8311 * process.c (send_process): Free composition data.
8312
8313 * fileio.c (Finsert_file_contents): Free composition data.
8314
8315 * coding.c (code_convert_region): Don't skip ASCIIs if there are
8316 compositions to encode.
8317 (encode_coding_string): Likewise. Free composition data.
8318
8319 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
8320
8321 * coding.c (code_convert_region): Free composition data.
8322
8323 2004-09-29 Kim F. Storm <storm@cua.dk>
8324
8325 * fringe.c: Remove limit on number of bitmaps.
8326 (fringe_bitmaps, fringe_faces): Change to pointers.
8327 (max_fringe_bitmaps): New var.
8328 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
8329 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
8330
8331 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
8332 (struct glyph_row): Reorder fringe_bitmap related fields.
8333 (struct it): Likewise.
8334
8335 * w32term.c (fringe_bmp): Change to pointer.
8336 (max_fringe_bmp): New var.
8337 (w32_define_fringe_bitmap): Expand fringe_bmp.
8338 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
8339 (w32_destroy_fringe_bitmap): Likewise.
8340
8341 2004-09-29 Kim F. Storm <storm@cua.dk>
8342
8343 * fringe.c: Simplify last change.
8344 (lookup_fringe_bitmap): New function.
8345 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
8346 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
8347 Keep standard bitmaps in Vfringe_bitmaps.
8348 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
8349 (Fset_fringe_bitmap_face): Likewise.
8350
8351 * dispextern.h (lookup_fringe_bitmap): Add prototype.
8352 (valid_fringe_bitmap_p): Remove prototype.
8353
8354 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
8355
8356 2004-09-29 Kim F. Storm <storm@cua.dk>
8357
8358 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
8359 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
8360
8361 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
8362
8363 * fringe.c (Vfringe_bitmaps): New variable.
8364 (syms_of_fringe): DEFVAR_LISP it.
8365 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
8366 Change arg to Lisp_Object and fail if not an integer.
8367 (get_fringe_bitmap_name, resolve_fringe_bitmap)
8368 (destroy_fringe_bitmap): New functions.
8369 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
8370 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
8371 clear its fringe property.
8372 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
8373 Fdestroy_fringe_bitmap.
8374 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
8375 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
8376 and set fringe property. Signal error if no free slots.
8377 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
8378 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
8379
8380 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
8381 symbols with a fringe property.
8382
8383 2004-09-27 Kim F. Storm <storm@cua.dk>
8384
8385 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
8386 Doc fix. Format may now be a symbol or alist, not a cons.
8387
8388 * fringe.c (update_window_fringes): Handle new formats of
8389 indicate-buffer-boundaries (symbol or alist). No longer
8390 allow a simple cons.
8391 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
8392
8393 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8394
8395 * config.in: Rebuild.
8396
8397 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8398
8399 * config.in: Rebuild.
8400
8401 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
8402
8403 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
8404
8405 * xterm.c (x_term_init): Work around a bug in some X servers.
8406
8407 2004-09-18 Richard M. Stallman <rms@gnu.org>
8408
8409 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
8410
8411 * xdisp.c (try_window_reusing_current_matrix):
8412 Handle the case where we reach the old displayed text,
8413 out of sync with the old line boundary.
8414
8415 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
8416
8417 * fileio.c (Finsert_file_contents): Fix case of replacement in a
8418 narrowed buffer.
8419
8420 2004-09-14 Kim F. Storm <storm@cua.dk>
8421
8422 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
8423
8424 * xfaces.c (Qface_no_inherit): New var.
8425 (syms_of_xfaces): Intern and staticpro it.
8426 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
8427 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
8428 Don't increment face_change_count when face has non-nil
8429 face-no-inherit property.
8430
8431 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
8432
8433 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
8434 (Fbyte_code): Remove dead code after `wrong_type_argument'.
8435
8436 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
8437 before doing the mark_stack_check_gcpros since they're not on the stack.
8438
8439 2004-09-12 Kim F. Storm <storm@cua.dk>
8440
8441 * editfns.c (Fformat): Handle format strings with multiple text
8442 properties. Reverse text property list from the format string,
8443 so the positions are in increasing order.
8444
8445 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8446
8447 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
8448 x_uncatch_errors so that possible protocol errors are delivered.
8449
8450 2004-09-10 Eli Zaretskii <eliz@gnu.org>
8451
8452 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
8453 blockinput.h.
8454 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
8455 charset.h, and coding.h
8456 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
8457 (term.o): Depend on window.h and keymap.h.
8458 (abbrev.o): Depend on syntax.h.
8459 (callint.o): Depend on keymap.h.
8460 (casefiddle.o): Depend on charset.h and keymap.h.
8461 (category.o): Depend on keymap.h.
8462 (coding.o): Depend on dispextern.h.
8463 (cmds.o): Depend on keyboard.h and keymap.h.
8464 (dispnew.o): Depend on indent.h and intervals.h.
8465 (doc.o): Depend on keymap.h.
8466 (editfns.o): Depend on frame.h.
8467 (emacs.o): Depend on dispextern.h.
8468 (fileio.o): Don't depend on ccl.h.
8469 (filelock.o): Depend on charset.h and coding.h.
8470 (frame.o): Depend on w32term.h and macterm.h.
8471 (insdel.o): Depend on region-cache.h.
8472 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
8473 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
8474 (search.o): Depend on $(INTERVALS_SRC).
8475 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
8476 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
8477 xterm.h, w32term.h, and macterm.h.
8478 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
8479 w32term.h, and macterm.h.
8480 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
8481 region-cache.h, xterm.h, w32term.h, and macterm.h.
8482 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
8483 (data.o): Depend on frame.h.
8484 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
8485 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
8486 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
8487 (intervals.o): Depend on keymap.h.
8488
8489 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
8490 Add debugging print-out to termscript.
8491
8492 2004-09-09 Richard M. Stallman <rms@gnu.org>
8493
8494 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
8495
8496 2004-09-08 Richard M. Stallman <rms@gnu.org>
8497
8498 * window.c (Fset_window_buffer): Doc fix.
8499
8500 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
8501
8502 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
8503
8504 * minibuf.c (history_delete_duplicates): New variable.
8505 (read_minibuf): Use it.
8506 (syms_of_minibuf): Create the corresponding lisp variable.
8507
8508 2004-09-08 Kim F. Storm <storm@cua.dk>
8509
8510 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
8511 overlay just before point.
8512
8513 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
8514
8515 * buffer.h (struct buffer): Add auto_save_file_format field.
8516 * buffer.c (reset_buffer, init_buffer_once):
8517 Handle auto_save_file_format field.
8518 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
8519 `buffer-auto-save-file-format'.
8520 * fileio.c: Delete declaration for removed Vauto_save_file_format.
8521 (build_annotations): Adapt to replacement of
8522 `auto-save-file-format' with the new buffer-local variable
8523 `buffer-auto-save-file-format'.
8524 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
8525
8526 2004-09-07 Jason Rumney <jasonr@gnu.org>
8527
8528 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
8529
8530 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
8531 Handle Unicode menu titles.
8532
8533 2004-09-07 Kim F. Storm <storm@cua.dk>
8534
8535 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
8536 property from text property or overlay strings at point.
8537
8538 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8539
8540 * xmenu.c (update_submenu_strings): YAILOM.
8541 (set_frame_menubar): Make sure last_i is initialized.
8542
8543 2004-09-03 Jason Rumney <jasonr@gnu.org>
8544
8545 * w32menu.c (_widget_value): Add lname and lkey.
8546 (digest_single_submenu): Set lname and lkey in widget_value
8547 instead of name and key.
8548 (update_submenu_strings): New function.
8549 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8550 call update_submenu_strings.
8551
8552 * w32menu.c (globals_of_w32menu): Check for Unicode API.
8553 (digest_single_submenu, w32_menu_show): Encode menu strings as
8554 UTF-8 if Unicode API is available.
8555 (utf8to16): New function.
8556 (add_menu_item): Use it when calling Unicode API.
8557
8558 2004-09-03 Kim F. Storm <storm@cua.dk>
8559
8560 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
8561 in overlay or text-property strings; set cursor on corresponding
8562 glyph rather than at end of the string.
8563
8564 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8565
8566 * macfns.c (x_real_positions): Save the current window port and
8567 set a new one before obtaining the global coordinate.
8568 Use FRAME_MAC_WINDOW.
8569 (x_set_name, x_set_title): Encode title to UTF8.
8570 Use SetWindowTitleWithCFString.
8571 (Fx_server_version): Get correct OS version.
8572
8573 * macmenu.c (add_menu_item): Remove unused variable `i'.
8574 Don't let separator items destroy refence constants of other menu items.
8575
8576 * macterm.c (x_update_end): Move SetPortWindowPort to inside
8577 BLOCK_INPUT.
8578 (x_set_offset): Use FRAME_MAC_WINDOW.
8579
8580 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
8581 nontext_cursor if it is on a scroll bar.
8582
8583 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
8584 Carbon support.
8585 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
8586 Use LIBS_CARBON.
8587
8588 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8589
8590 * xfns.c (x_set_name_internal): New function. Check if we shall call
8591 xfree before ENCODE_UTF_8.
8592 (x_set_name, x_set_title): Call x_set_name_internal.
8593
8594 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
8595
8596 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
8597 reload it.
8598
8599 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8600
8601 * macmenu.c (_widget_value): Add lname and lkey.
8602 (single_submenu): Set lname and lkey in widget_value
8603 instead of name and key.
8604 (update_submenu_strings): New function.
8605 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8606 call update_submenu_strings.
8607
8608 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
8609 instead of name and key.
8610 (update_submenu_strings): New function.
8611 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8612 call update_submenu_strings.
8613
8614 * gtkutil.h (_widget_value): Added lname and lkey.
8615
8616 2004-08-30 Steven Tamm <steventamm@mac.com>
8617
8618 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
8619 by using different names for inner loop variables.
8620
8621 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8622
8623 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
8624 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
8625
8626 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
8627 tool bar items is 0.
8628
8629 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8630
8631 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
8632 strings in menu items.
8633 (single_submenu): Use ENCODE_MENU_STRING
8634 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
8635 button release isn't passed to event loop
8636 (add_menu_item): Use SetMenuItemWithCFString
8637
8638 2004-08-26 Steven Tamm <steventamm@mac.com>
8639
8640 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
8641 tool-bar/menu click.
8642 * macfns.c (Fx_file_dialog): Implement using NavServices.
8643
8644 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8645
8646 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
8647
8648 * xfns.c (x_window_to_frame, x_any_window_to_frame)
8649 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8650 (x_top_window_to_frame): Return 0 if wdesc is None.
8651
8652 2004-08-22 Richard M. Stallman <rms@gnu.org>
8653
8654 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
8655 HAVE_TERMIOS]: If there's no char for this signal, drop through
8656 and use system calls.
8657
8658 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
8659
8660 2004-08-20 Kim F. Storm <storm@cua.dk>
8661
8662 * process.c (wait_reading_process_output): Rename from
8663 wait_reading_process_input. All uses changed.
8664 (wait_reading_process_output_1): Rename from
8665 wait_reading_process_input_1. All uses changed.
8666
8667 * dispnew.c (Fsleep_for): Remove obsolete code.
8668
8669 2004-08-20 Kenichi Handa <handa@m17n.org>
8670
8671 * syntax.c (skip_chars): Fix for unibyte case.
8672
8673 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
8674
8675 * syntax.c (char_quoted): Mixup byte/char pos.
8676 (back_comment): Fixup globals in all cases.
8677
8678 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8679
8680 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
8681 passing it to gtk_window_set_title.
8682
8683 2004-08-19 Kim F. Storm <storm@cua.dk>
8684
8685 * process.c (wait_reading_process_input): Clean up.
8686 Add wait_for_cell, wait_proc, and just_wait_proc args
8687 to avoid overloading `read_kbd' and `do_display' args.
8688 Change read_kbd arg to int. All callers changed.
8689
8690 * process.c (process_send_signal): Use CDISABLE.
8691
8692 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
8693
8694 2004-08-18 Kim F. Storm <storm@cua.dk>
8695
8696 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
8697 forward to wait_reading_process_input via DO_DISPLAY arg.
8698 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
8699 object, only process output from that process; also inhibit
8700 running timers if DO_DISPLAY==-2.
8701
8702 2004-08-17 Kim F. Storm <storm@cua.dk>
8703
8704 * process.c (process_send_signal): Fix last change--use
8705 _POSIX_VDISABLE instead of CVDISABLE when available.
8706
8707 2004-08-16 Richard M. Stallman <rms@gnu.org>
8708
8709 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
8710 Set VQUIT and VINTR chars to the standard ones if they are unset.
8711 [AIX]: Don't do that here. And don't force VINTR to standard
8712 when SIGNALS_VIA_CHARACTERS.
8713
8714 * process.c (process_send_signal)
8715 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
8716 Do nothing if the character is CVDISABLE.
8717
8718 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
8719
8720 * intervals.c (move_if_not_intangible):
8721 Force POSITION to be between BEGV and ZV.
8722
8723 2004-08-14 John Paul Wallington <jpw@gnu.org>
8724
8725 * buffer.c (Frestore_buffer_modified_p): Doc fix.
8726
8727 * fileio.c (Fread_file_name): Doc fix.
8728
8729 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
8730
8731 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
8732
8733 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
8734
8735 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
8736
8737 * keyboard.c: Declare Qdisabled_command_function instead of
8738 Qdisabled_command_hook.
8739 (Fcommand_execute): Use Qdisabled_command_function instead of
8740 Qdisabled_command_hook.
8741 (syms_of_keyboard): Ditto.
8742
8743 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
8744
8745 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
8746 (syms_of_keymap) <key-translation-map>: Doc fixes.
8747
8748 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
8749
8750 * window.c (window_list_1): YAILOM.
8751
8752 * fileio.c (make_temp_name): Handle multibyte prefixes.
8753
8754 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
8755
8756 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
8757 Doc fix.
8758
8759 2004-08-03 Kenichi Handa <handa@m17n.org>
8760
8761 * coding.c (decode_coding_string): Adjust coding->consumed, and
8762 etc. with shrinked_bytes.
8763
8764 2004-08-03 Kim F. Storm <storm@cua.dk>
8765
8766 * indent.c (compute_motion): Fix check for full width window
8767 in non-window case. Do not count left truncation glyph on
8768 window systems.
8769
8770 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
8771
8772 * data.c (Finteractive_form): Doc fix.
8773
8774 2004-08-02 Kim F. Storm <storm@cua.dk>
8775
8776 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
8777 properly accounting for continuation glyph on non-window systems.
8778 (Fcompute_motion): Use actual window width if WIDTH is nil, and
8779 actual window width/height if TOPOS is nil, properly accounting for
8780 continuation glyphs on non-window systems, and optional header lines.
8781 (vmotion): Let compute_motion calculate actual window width.
8782
8783 * window.c (window_scroll_line_based): Let compute_motion
8784 calculate actual window width.
8785
8786 2004-08-02 Kim F. Storm <storm@cua.dk>
8787
8788 * process.c (read_process_output): Use whole read buffer.
8789 Don't trigger adaptive read buffering on errors.
8790
8791 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
8792
8793 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
8794
8795 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
8796
8797 * callint.c (Fcall_interactively): Doc fix.
8798
8799 2004-07-30 Richard M. Stallman <rms@gnu.org>
8800
8801 * abbrev.c (Fexpand_abbrev): Undo previous change.
8802
8803 2004-07-30 Kim F. Storm <storm@cua.dk>
8804
8805 * editfns.c (Fformat): Allocate extra (dummy) element in info.
8806
8807 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
8808
8809 * eval.c (Fdefvar, Fdefconst): Doc fixes.
8810
8811 2004-07-27 Kim F. Storm <storm@cua.dk>
8812
8813 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
8814 we have ensured that the glyph fits on the current line (or returned
8815 MOVE_LINE_CONTINUED otherwise).
8816
8817 2004-07-26 Kim F. Storm <storm@cua.dk>
8818
8819 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
8820 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
8821 if target position is at end of display line but char is not a newline.
8822
8823 2004-07-25 Richard M. Stallman <rms@gnu.org>
8824
8825 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
8826 instead of ON_VERTICAL_BORDER, when on scroll bar.
8827 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
8828
8829 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
8830
8831 * window.c (Fcoordinates_in_window_p):
8832 Take account of FRAME_INTERNAL_BORDER_WIDTH.
8833
8834 * alloc.c (check_cons_list): New function (contents commented out).
8835
8836 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
8837
8838 * xfaces.c (Fcolor_supported_p): Doc fix.
8839
8840 * frame.c (Fselect_frame, Fset_frame_selected_window)
8841 (Fframe_visible_p, Fraise_frame): Doc fixes.
8842
8843 2004-07-24 Richard M. Stallman <rms@gnu.org>
8844
8845 * keyboard.h (not_single_kboard_state): Declare.
8846
8847 * fileio.c (Fwrite_region): Doc fix.
8848
8849 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
8850
8851 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
8852 only when a real abbrev is present.
8853
8854 * xfns.c (x_icon_verify): New function.
8855 (Fx_create_frame): Use it.
8856
8857 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
8858
8859 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
8860
8861 2004-07-21 Kim F. Storm <storm@cua.dk>
8862
8863 * window.h (struct glyph_matrix): New members nrows_scale_factor
8864 and ncols_scale_factor.
8865
8866 * window.c (make_window): Initialize nrows_scale_factor and
8867 ncols_scale_factor members.
8868
8869 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
8870 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
8871 (required_matrix_height): Apply nrows_scale_factor.
8872 (required_matrix_width): Apply ncols_scale_factor.
8873
8874 * xdisp.c (display_line): Increment nrows_scale_factor and set
8875 fonts_changed_p if past last allocated row.
8876 (append_glyph, append_composite_glyph, produce_image_glyph)
8877 (append_stretch_glyph): Increment ncols_scale_factor and set
8878 fonts_changed_p if current area is full.
8879
8880 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8881
8882 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
8883
8884 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
8885
8886 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
8887 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
8888 (Fset_window_start, Fscroll_up, Fscroll_down)
8889 (Fother_window_for_scrolling, Fscroll_other_window)
8890 (Fsave_window_excursion, Fset_window_vscroll)
8891 (syms_of_window) <window-size-fixed>: Doc fixes.
8892
8893 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8894
8895 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
8896 ENCODE_SYSTEM for filenames.
8897
8898 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8899
8900 * mac.c (sys_select): Block input around call to
8901 ReceiveNextEvent to prevent breakage. Correctly handle
8902 blocking on event queue only by calling ReceiveNextEvent
8903 instead of select (since GUI events aren't on an fd).
8904 (sys_read): Remove function
8905 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
8906
8907 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8908
8909 * mac.c (sys_select): Redo sys_select to use alarm-based
8910 polling instead of 1 sec timeouts (like solaris).
8911
8912 * macterm.c (x_make_frame_visible): Comment in polling on
8913 frame creation.
8914
8915 * keyboard.c: Undef SIGIO on Carbon
8916
8917 * atimer.c (alarm_signal_handler): Call alarm handlers after
8918 scheduling.
8919
8920 * eval.c (Feval): Remove quit_char test
8921
8922 * process.c (wait_reading_process_input): Remove clearing
8923 stdin for select call on process input.
8924
8925 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
8926
8927 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
8928 capitalization error in docstring.
8929
8930 2004-07-17 Juanma Barranquero <lektu@terra.es>
8931
8932 * keyboard.c (not_single_kboard_state): Do nothing unless
8933 MULTI_KBOARD is defined.
8934
8935 2004-07-17 Richard M. Stallman <rms@gnu.org>
8936
8937 * window.c (coordinates_in_window): Inside the window but outside
8938 its box to the L or R, return ON_VERTICAL_BORDER.
8939 (window_list_1): Rotate the list to start with WINDOW.
8940
8941 * print.c (print_preprocess): Test for print_depth at limit
8942 before entering in being_printed.
8943
8944 * keyboard.c (not_single_kboard_state): New function.
8945 (stuff_buffered_input): Now no-op only if no SIGTSTP.
8946
8947 * frame.c (Fdelete_frame): If we're in single_bboard_state on
8948 this kboard, and we delete its last frame, go to any_kboard_state.
8949
8950 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
8951
8952 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8953
8954 * w32fns.c (Fx_file_dialog): Encode strings in system coding
8955 system before passing them to OS functions for display.
8956
8957 2004-07-15 David Kastrup <dak@gnu.org>
8958
8959 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
8960 Apparently fixes an abort condition.
8961
8962 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
8963
8964 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
8965 instead of a cons.
8966
8967 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8968
8969 * keyboard.c (echo_dash): Do nothing if there already is a dash
8970 at the end of the echo string.
8971
8972 2004-07-12 Kim F. Storm <storm@cua.dk>
8973
8974 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
8975 if GC_MARK_STACK.
8976
8977 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
8978
8979 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
8980
8981 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
8982 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
8983 (Freplace_buffer_in_windows, Fset_window_buffer)
8984 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
8985 (syms_of_window): Expand docstring of `display-buffer-function'.
8986
8987 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
8988
8989 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
8990 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
8991 that time values of the type (HIGH . LOW) are considered obsolete.
8992
8993 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
8994
8995 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
8996 docstring.
8997
8998 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
8999
9000 2004-07-06 John Paul Wallington <jpw@gnu.org>
9001
9002 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
9003
9004 * fns.c (Fclear_string): Signal an error if STRING is not a string.
9005
9006 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9007
9008 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
9009 instead of CGMainDisplayID (only in OSX 10.2 and later).
9010
9011 2004-07-04 John Paul Wallington <jpw@gnu.org>
9012
9013 * fileio.c (read_file_name_completion_ignore_case): New variable.
9014 (syms_of_fileio): Declare and initialise it.
9015 (Fread_file_name): Bind `completion-ignore-case' to respect it.
9016
9017 2004-07-03 Eli Zaretskii <eliz@gnu.org>
9018
9019 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
9020 for event.x and event.y.
9021
9022 2004-07-01 Kenichi Handa <handa@m17n.org>
9023
9024 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
9025 after getting a new string by pre-write-conversion.
9026
9027 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
9028
9029 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
9030 (x_calc_absolute_position): Remove unused var `child'.
9031
9032 * xfaces.c (x_supports_face_attributes_p)
9033 (Fdisplay_supports_face_attributes_p): YAILOM.
9034 (tty_supports_face_attributes_p): Remove unused var `i'.
9035
9036 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
9037 back_unibyte_ok.
9038
9039 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
9040
9041 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
9042
9043 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
9044
9045 2004-06-30 Andreas Schwab <schwab@suse.de>
9046
9047 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
9048 (Finit_image_library): Pass LIBRARIES through to
9049 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
9050 (lookup_image_type): Pass Qnil as second argument to
9051 Finit_image_library.
9052
9053 * lisp.h (Finit_image_library): Declare.
9054
9055 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9056
9057 * macterm.c (do_window_activate, do_window_deactivate): Remove.
9058 (XTread_socket): Send mouse button events to the toolbox
9059 dispatcher even when the mouse is grabbed. Don't process window
9060 activate events for non-Emacs windows. Replace function calls to
9061 do_window_activate and do_window_deactivate with their contents.
9062 Reset mouse grabbing status when a window is deactivated.
9063
9064 2004-06-29 Steven Tamm <steventamm@mac.com>
9065
9066 * macterm.c (mac_get_emulated_btn)
9067 (mac_event_to_emacs_modifiers): Fix emulated mouse button
9068 support to correctly mask out modifiers.
9069
9070 2004-06-29 David Kastrup <dak@gnu.org>
9071
9072 * search.c (Fset_match_data): Allow buffer before end of list
9073 which can happen if set-match-data is using a pre-consed list.
9074
9075 2004-06-28 Steven Tamm <steventamm@mac.com>
9076
9077 * macterm.c (XTread_socket): Correctly set the frame position
9078 after the window is moved.
9079
9080 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9081
9082 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
9083 gpix and gmask just before return to avoid memory leak.
9084 (xg_get_image_for_pixmap): Add workaround for monochrome displays
9085 so insensitive and activated icons look ok.
9086
9087 2004-06-27 Jason Rumney <jasonr@gnu.org>
9088
9089 * w32fns.c (file_dialog_callback): Disable edit control if set
9090 to directories only on CDN_INITDONE message.
9091 (Fx_file_dialog): Default to directories only when prompt starts
9092 with "Dired".
9093
9094 2004-06-25 Kim F. Storm <storm@cua.dk>
9095
9096 * alloc.c (allocate_misc): Update total_free_markers.
9097 (free_misc): New function.
9098 (safe_alloca_unwind, free_marker): Use it.
9099
9100 * lisp.h (free_misc): Add prototype.
9101
9102 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
9103
9104 2004-06-24 Richard M. Stallman <rms@gnu.org>
9105
9106 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
9107 (syms_of_emacs): Lisp variables deleted.
9108
9109 2004-06-23 David Kastrup <dak@gnu.org>
9110
9111 * search.c (Freplace_match): Adjust the match-data more thoroughly
9112 when replacing strings in the buffer.
9113 (Fmatch_data): When INTEGERS is non-nil and the last match was in
9114 a buffer, add the buffer as last element to the match data.
9115 (Fset_match_data): If an additional element of the match-data is a
9116 buffer, restore it to last_thing_searched.
9117 (save_search_regs): Save last_thing_searched as part of the match data.
9118 (restore_match_data): Restore it again.
9119
9120 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
9121
9122 * keymap.c (Ftext_char_description): Doc fix.
9123 * doc.c (Fsnarf_documentation): Doc fix.
9124
9125 2004-06-22 Kim F. Storm <storm@cua.dk>
9126
9127 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
9128
9129 * lisp.h (struct Lisp_Save_Value): New member dogc.
9130 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
9131 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
9132 (SAFE_FREE_LISP): New macro.
9133
9134 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
9135 (make_save_value): Init new dogc member.
9136 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
9137
9138 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
9139 SAFE_FREE_LISP macros.
9140
9141 2004-06-22 Kim F. Storm <storm@cua.dk>
9142
9143 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
9144 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
9145 in that memory area are unknown to GC. Add comments.
9146
9147 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
9148
9149 2004-06-21 Kim F. Storm <storm@cua.dk>
9150
9151 * lisp.h (MAX_ALLOCA): Define here.
9152 (safe_alloca_unwind): Add prototype.
9153 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
9154
9155 * alloc.c (safe_alloca_unwind): New function.
9156
9157 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
9158
9159 * charset.c (Fstring): Use SAFE_ALLOCA.
9160
9161 * coding.c (MAX_ALLOCA): Remove define.
9162
9163 * data.c (MAX_ALLOCA): Remove define.
9164 (Faset): Use SAFE_ALLOCA.
9165
9166 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
9167
9168 * fns.c (string_make_multibyte, string_to_multibyte)
9169 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
9170 (MAX_ALLOCA): Remove define.
9171 (Fbase64_encode_region, Fbase64_encode_string)
9172 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
9173 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
9174 memory leak if encoding fails.
9175
9176 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
9177
9178 2004-06-21 Eli Zaretskii <eliz@gnu.org>
9179
9180 * print.c (Fwith_output_to_temp_buffer): Doc fix.
9181
9182 2004-06-20 Richard M. Stallman <rms@gnu.org>
9183
9184 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
9185
9186 * search.c (match_limit): Cleaner err msg when no match data available.
9187
9188 * window.c (syms_of_window): Doc fix.
9189
9190 * keyboard.c (command_loop_1): Handle values `only' and `identity'
9191 for Vtransient_mark_mode.
9192
9193 * buffer.c (syms_of_buffer): Doc fix.
9194
9195 2004-06-21 David Kastrup <dak@gnu.org>
9196
9197 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
9198 and unbinding of `case-fold-search' according to
9199 `completion-ignore-case' around calls of string-match and
9200 predicates, respectively. Should give satisfactory performance
9201 in all relevant cases.
9202
9203 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9204
9205 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
9206 clip_x/y_origin.
9207
9208 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
9209
9210 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
9211
9212 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
9213 on Mac OSX.
9214
9215 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
9216
9217 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
9218
9219 2004-06-16 Kim F. Storm <storm@cua.dk>
9220
9221 * dispextern.h (Vimage_types): Remove extern.
9222
9223 2004-06-16 Miles Bader <miles@gnu.org>
9224
9225 * image.c (lookup_image_type): Initialize image type if necessary.
9226
9227 2004-06-15 Kim F. Storm <storm@cua.dk>
9228
9229 * xdisp.c (try_cursor_movement): Exclude header line from scroll
9230 margin at top of window.
9231 (try_window_reusing_current_matrix): Calculate proper cursor position
9232 after scrolling up with non-zero scroll margin, as the old cursor
9233 position corresponds to value of PT before executing this command.
9234 (try_window_id): Consider scroll margin at bottom of window too;
9235 otherwise we fail to scroll when hl-line-mode is enabled.
9236
9237 * syntax.c (skip_chars): Only recognize [:class:] when it has the
9238 proper format and class is a lower-case word.
9239
9240 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9241
9242 * gtkutil.c (xg_get_image_for_pixmap): New function.
9243 (xg_get_gdk_pixmap_and_mask): Remove.
9244 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
9245 xg_get_gdk_pixmap_and_mask.
9246
9247 * xterm.h (struct x_display_info): Typo in comment fixed.
9248
9249 2004-06-14 Juanma Barranquero <lektu@terra.es>
9250
9251 * dispextern.h (Vimage_types): Make it conditional on
9252 HAVE_WINDOW_SYSTEM.
9253
9254 * image.c (Vimage_types): Move from xdisp.c.
9255 (Vimage_type_cache): New variable.
9256 (define_image_type): New argument indicating whether an image
9257 library was loaded; cache loaded status and return t on success,
9258 nil otherwise.
9259 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
9260 (w32_delayed_load): New function to load an image library from a
9261 list of possible filenames.
9262 (init_xpm_functions, init_png_functions, init_jpeg_functions)
9263 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
9264 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
9265 (Finit_image_library): New function, extracted from `init_image'.
9266 Try to initialize an image library on demand and cache whether we
9267 were successful or not.
9268 (syms_of_image): Initialize `Vimage_types' and
9269 `Vimage_type_cache'. Add recognized image types to Vimage_types.
9270 Export `init-image-library'.
9271 (init_image): Remove initialization of all image types, except xbm
9272 and pbm.
9273
9274 * xdisp.c (Vimage_types): Delete (moved to image.c).
9275
9276 2004-06-14 Andreas Schwab <schwab@suse.de>
9277
9278 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9279 Avoid calling specbind when completion-regexp-list is empty.
9280
9281 2004-06-13 Richard M. Stallman <rms@gnu.org>
9282
9283 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9284 (re_wctype, re_iswctype, re_wctype_to_bit):
9285 Non-function definitions moved here from regex.c.
9286
9287 * regex.c (re_wctype, re_iswctype): Function defs longer static.
9288 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9289 (re_wctype, re_iswctype, re_wctype_to_bit):
9290 Non-function definitions moved to regex.h.
9291
9292 * window.c (Fselect_window): Doc fix.
9293
9294 * syntax.c: Include regex.h.
9295 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
9296 If requested, make a list of classes, then check the scanned
9297 chars for membership in them.
9298 (in_classes): New function.
9299 Doc fix.
9300
9301 * keyboard.c (cmd_error): Don't call any_kboard_state
9302 if inside a recursive edit level.
9303
9304 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9305
9306 * keyboard.c (command_loop): Call any_kboard_state before
9307 command_loop_2 when at top level.
9308
9309 2004-06-13 Andreas Schwab <schwab@suse.de>
9310
9311 * print.c (print_object): Always use %ld for printing EMACS_INT.
9312
9313 * keyboard.c (cancel_hourglass_unwind): Return a value.
9314 (modify_event_symbol): Always use %ld for printing EMACS_INT.
9315 (Fexecute_extended_command): Likewise.
9316
9317 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
9318 avoid clashes.
9319 (SYNTAX): Likewise.
9320 (SYNTAX_WITH_FLAGS): Likewise.
9321 (SYNTAX_MATCH): Likewise.
9322
9323 * syntax.c (char_quoted): Avoid warning about undefined operation.
9324 (find_defun_start): Likewise.
9325 (scan_lists): Likewise.
9326 (INC_FROM): Likewise.
9327 (scan_sexps_forward): Likewise.
9328
9329 * image.c: Include <ctype.h>.
9330
9331 * xfaces.c (face_attr_equal_p): Declare parameters.
9332
9333 2004-06-13 Kenichi Handa <handa@m17n.org>
9334
9335 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
9336
9337 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
9338
9339 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
9340
9341 2004-06-12 Kenichi Handa <handa@m17n.org>
9342
9343 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
9344 ccl_prog_stack_struct and update it.
9345 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
9346 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
9347 ccl->eof_ic on EOF.
9348 (ccl_debug_hook): New function.
9349 (struct ccl_prog_stack): New member eof_ic.
9350 (ccl_driver): Handle EOF in subrountine call correctly.
9351
9352 2004-06-11 Kenichi Handa <handa@m17n.org>
9353
9354 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
9355
9356 2004-06-11 Kim F. Storm <storm@cua.dk>
9357
9358 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
9359
9360 2004-06-11 Juanma Barranquero <lektu@terra.es>
9361
9362 * keyboard.c (Fposn_at_point): Doc fix.
9363
9364 2004-06-11 David Kastrup <dak@gnu.org>
9365
9366 * search.c (match_limit): Don't flag an error if match-data
9367 exceeding the allocated search_regs.num_regs gets requested, just
9368 return Qnil.
9369
9370 2004-06-08 Miles Bader <miles@gnu.org>
9371
9372 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
9373
9374 2004-06-07 Juanma Barranquero <lektu@terra.es>
9375
9376 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
9377 (Fcurrent_time_string, Fcurrent_time_zone)
9378 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
9379
9380 2004-06-07 Miles Bader <miles@gnu.org>
9381
9382 * xfaces.c (struct named_merge_point): New type.
9383 (push_named_merge_point): New function.
9384 (merge_named_face): New function.
9385 (merge_face_ref, face_at_buffer_position, face_at_string_position):
9386 Use `merge_named_face'.
9387 (merge_face_inheritance): Function removed.
9388 (merge_face_ref): Rename from `merge_face_vector_with_property'.
9389 Add new `err_msgs' and `named_merge_points' args. Return error
9390 status. Only print error messages if ERR_MSGS is true. Don't try to
9391 do :inherit attribute validation.
9392 (merge_face_heights): Handle `unspecified' in both directions.
9393 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
9394 Call `merge_face_ref' instead of `merge_face_inheritance'.
9395 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
9396 (compute_char_face, face_at_buffer_position)
9397 (face_at_string_position): Call `merge_face_ref' instead of
9398 `merge_face_vector_with_property'.
9399
9400 2004-06-07 Kenichi Handa <handa@m17n.org>
9401
9402 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
9403 the necessary places.
9404
9405 2004-06-07 Kim F. Storm <storm@cua.dk>
9406
9407 * process.c (Fdelete_process): Undo 2004-05-28 change.
9408 Instead, call status_notify also for network process.
9409 (status_message): Use process instead of status as arg.
9410 Give messages "deleted" or "connection broken by remote peer" for
9411 an exited network process.
9412 (status_notify): Change call to status_message.
9413 (read_process_output): Increase readmax to 4096. Do not increase
9414 buffer size for datagram channels (default is now large enough).
9415
9416 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
9417
9418 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
9419 problem due to newly defined variable.
9420
9421 2004-06-06 Miles Bader <miles@gnu.org>
9422
9423 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
9424 immediately if non-interactive or not initialized.
9425
9426 2004-06-05 Richard M. Stallman <rms@gnu.org>
9427
9428 * minibuf.c (Fcompleting_read): Doc fix.
9429
9430 2004-06-05 Andreas Schwab <schwab@suse.de>
9431
9432 * macfns.c (x_create_tip_frame): Fix declaration after statement.
9433
9434 2004-06-05 Juanma Barranquero <lektu@terra.es>
9435
9436 * keymap.c (Fdescribe_vector): Fix docstring.
9437 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
9438
9439 2004-06-05 Miles Bader <miles@gnu.org>
9440
9441 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
9442 attributes have different values than the default face.
9443
9444 2004-06-04 Eli Zaretskii <eliz@gnu.org>
9445
9446 * xfaces.c (x_supports_face_attributes_p): Make this function
9447 conditional on HAVE_WINDOW_SYSTEM.
9448 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
9449 Don't call x_supports_face_attributes_p if it was not compiled in.
9450
9451 2004-06-04 Miles Bader <miles@gnu.org>
9452
9453 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
9454 from Ftty_supports_face_attributes_p.
9455 (x_supports_face_attributes_p): New function.
9456 (Ftty_supports_face_attributes_p): Function deleted.
9457 (Fdisplay_supports_face_attributes_p): New function.
9458 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
9459 (face_attr_equal_p): New function.
9460 (lface_equal_p): Use it.
9461
9462 2004-06-03 Juanma Barranquero <lektu@terra.es>
9463
9464 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
9465 (Vw32_color_map): Fix typo in docstring.
9466 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
9467 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
9468 Make argument names match their use in docstring.
9469
9470 2004-06-02 Juanma Barranquero <lektu@terra.es>
9471
9472 Work around bugs/problems with MinGW builds of graphics libraries
9473 called from MSVC builds of Emacs.
9474
9475 * image.c (lookup_image): Make pointer to img static.
9476 (png_read_from_memory): Disable "global" optimization.
9477
9478 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
9479
9480 * eval.c (Fcondition_case): Fix usage. Simplify.
9481
9482 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
9483
9484 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9485
9486 * macfns.c: Don't include ccl.h.
9487 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
9488 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
9489 TextUtils.h.
9490 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
9491 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
9492 display height/width.
9493 (compute_tip_xy, Vx_max_tooltip_size): Declare.
9494 (unwind_create_tip_frame, compute_tip_xy): New functions.
9495 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
9496 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
9497 and last_show_tip_args.
9498
9499 * macgui.h [!MAC_OSX]: Include Gestalt.h.
9500 (Cursor, No_Cursor): New defines.
9501 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
9502 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
9503
9504 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
9505
9506 * macterm.c: Don't include Gestalt.h.
9507 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
9508 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
9509 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
9510 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
9511 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
9512 (construct_mouse_click, XTmouse_position)
9513 (x_scroll_bar_report_motion, x_calc_absolute_position)
9514 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
9515 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
9516 (note_mouse_movement): Clear the mouse face and reset the pointer
9517 shape when the pointer goes outside the frame without grabbing.
9518 (mac_front_window): New function.
9519 (mac_window_to_frame): New macro.
9520 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
9521 (do_window_activate, do_window_deactivate, do_app_resume)
9522 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
9523 (do_zoom_window, mac_do_receive_drag, XTread_socket)
9524 (mac_check_for_quit_char): Use mac_front_window and/or
9525 mac_window_to_frame.
9526 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
9527 scroll-bar click event.
9528 (mac_define_frame_cursor): Change the pointer shape.
9529 (x_free_frame_resources): Reset tip_window to NULL when it is
9530 disposed of.
9531 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
9532 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
9533 (do_window_update): Don't do anything if the updated window is the
9534 tooltip window.
9535 (do_mouse_moved): Handle mouse movement events here (previously in
9536 XTread_socket). Clear the mouse face if
9537 dpyinfo->mouse_face_hidden is set.
9538 (do_os_event, do_events): Remove (now in XTread_socket).
9539 (XTread_socket): Immediately return if interrupt_input_blocked.
9540 Loop until all the events in the queue are processed.
9541 Rearrange codes for mouse grabbing. Add tooltip support. Include the
9542 contents of do_os_event and do_events. Remove mouse movement
9543 handling (now in do_mouse_moved). Add the case where
9544 Vmouse_highlight has an integer value.
9545 (NewMacWindow): Remove.
9546 (make_mac_frame): Do what NewMacWindow previously did. Don't do
9547 excess initializations.
9548 (make_mac_terminal_frame): Previous initializations in
9549 make_mac_frame are moved here.
9550 (mac_initialize_display_info):
9551 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
9552
9553 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
9554 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
9555
9556 2004-05-29 Richard M. Stallman <rms@gnu.org>
9557
9558 * lisp.h (truncate_undo_list): Update decl.
9559
9560 * alloc.c (undo_outer_limit): New variable.
9561 (syms_of_alloc): Defvar it.
9562 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
9563
9564 * undo.c (truncate_undo_list): New arg LIMITSIZE.
9565
9566 * alloc.c (lisp_align_malloc): Check for base == 0
9567 regardless of HAVE_POSIX_MEMALIGN.
9568 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
9569
9570 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9571
9572 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
9573 (marker_blocks_pending_free): Remove.
9574 (Fgarbage_collect): Sweep after cleaning up undo-lists.
9575 Mark the undo lists after claning them up.
9576 Don't free block in marker_blocks_pending_free.
9577 (mark_buffer): Don't mark undo_list.
9578 (gc_sweep): Sweep hash-tables and strings first.
9579 Do free marker blocks that are empty.
9580
9581 2004-05-28 Jim Blandy <jimb@redhat.com>
9582
9583 * regex.c (print_partial_compiled_pattern): Add missing 'break'
9584 after 'case wordend'. For symbeg and symend, print to stderr,
9585 like the other cases.
9586
9587 2004-05-28 Noah Friedman <friedman@splode.com>
9588
9589 * process.c (Fdelete_process): Do not call remove_process.
9590
9591 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9592
9593 * alloc.c (struct backtrace): Remove.
9594 (Fgarbage_collect): Use the new mark_backtrace.
9595
9596 * eval.c (mark_backtrace): New function.
9597
9598 * minibuf.c (run_exit_minibuf_hook): New function.
9599 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
9600 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
9601
9602 2004-05-27 Kim F. Storm <storm@cua.dk>
9603
9604 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
9605 over display properties, e.g. images, that replace buffer text.
9606
9607 2004-05-25 Kim F. Storm <storm@cua.dk>
9608
9609 * alloc.c (marker_blocks_pending_free): New var.
9610 (gc_sweep): Store free marker blocks on that list.
9611 (Fgarbage_collect): Free them after undo-list cleanup.
9612
9613 * process.c (wait_reading_process_input): Check connect_wait_mask
9614 before actually accepting connection in case it has already been
9615 accepted due to recursion.
9616
9617 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9618
9619 * coding.c (Fset_safe_terminal_coding_system_internal):
9620 Set suppress_error in safe_terminal_coding, not terminal_coding.
9621
9622 2004-05-22 Richard M. Stallman <rms@gnu.org>
9623
9624 * alloc.c (Fmake_string): Doc fix.
9625
9626 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
9627 and the alist pairs too.
9628
9629 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
9630
9631 * emacs.c (main): Update copyright year.
9632
9633 * fileio.c (Fread_file_name): Expand DIR if not absolute.
9634
9635 * insdel.c (del_range_2, replace_range): Don't write an anchor
9636 if the gap is empty.
9637
9638 * xdisp.c (try_scrolling): If scroll-up-aggressively or
9639 scroll-down-aggressively is small but positive, put point
9640 near the screen edge.
9641
9642 2004-05-22 Juanma Barranquero <lektu@terra.es>
9643
9644 * keymap.c (Fdefine_key): Doc fix.
9645
9646 2004-05-22 Kim F. Storm <storm@cua.dk>
9647
9648 * alloc.c (struct backtrace): Add debug_on_exit member.
9649 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
9650 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
9651 the removed cons cells.
9652 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
9653 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
9654 any cons cells pointing to unallocated stings.
9655 Do not lisp_free any marker blocks, as there may still be pointers
9656 to them from buffer undo lists at this stage of GC.
9657
9658 * keyboard.c (struct backtrace): Add debug_on_exit member.
9659 (Fcommand_execute): Clear it.
9660
9661 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
9662
9663 * intervals.c (lookup_char_property): Do not prematurely return nil.
9664
9665 2004-05-19 Jim Blandy <jimb@redhat.com>
9666
9667 Add support for new '\_<' and '\_>' regexp operators, matching the
9668 beginning and end of symbols.
9669
9670 * regex.c (enum syntaxcode): Add Ssymbol.
9671 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
9672 (re_opcode_t): New opcodes `symbeg' and `symend'.
9673 (print_partial_compiled_pattern): Print the new opcodes properly.
9674 (regex_compile): Parse the new operators.
9675 (analyse_first): Skip sym(beg|end) (they match only the empty string).
9676 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
9677 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
9678 (re_match_2_internal): Match symbeg and symend.
9679
9680 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
9681
9682 2004-05-19 Kim F. Storm <storm@cua.dk>
9683
9684 * .gdbinit (xsymbol): Fix last change.
9685
9686 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
9687
9688 * .gdbinit (xprintstr): New fun.
9689 (xstring, xprintsym): Use it.
9690
9691 * w32proc.c (create_child): Use INTMASK.
9692
9693 * alloc.c (Fgarbage_collect): Do all the marking before flushing
9694 unmarked elements of the undo list.
9695
9696 2004-05-18 David Ponce <david@dponce.com>
9697
9698 * print.c (print): Reset print_depth before to call print_object.
9699
9700 2004-05-18 Jason Rumney <jasonr@gnu.org>
9701
9702 * w32console.c: Prefix RIF functions with w32con_ to avoid
9703 namespace clash with functions in term.c and w32term.c.
9704
9705 * w32menu.c (add_menu_item, w32_menu_display_help)
9706 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
9707
9708 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
9709
9710 2004-05-18 Eli Zaretskii <eliz@gnu.org>
9711
9712 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
9713
9714 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
9715 with make_number.
9716 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
9717 with XINT.
9718
9719 2004-05-18 Kim F. Storm <storm@cua.dk>
9720
9721 * blockinput.h (INPUT_BLOCKED_P): New macros.
9722
9723 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
9724 (Ftop_level): Unblock input if blocked.
9725
9726 * buffer.h (GET_OVERLAYS_AT): New macro.
9727 * msdos.c (IT_note_mouse_highlight): Use it.
9728 * textprop.c (get_char_property_and_overlay): Use it.
9729 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
9730 * xfaces.c (face_at_buffer_position): Use it.
9731
9732 * print.c (print_object): Increase buf size.
9733
9734 2004-05-17 Jason Rumney <jasonr@gnu.org>
9735
9736 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
9737 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
9738 Lisp_Object using i member.
9739 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
9740 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
9741 consistently.
9742
9743 * w32proc.c (create_child): Use make_number instead of masking pid.
9744
9745 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
9746 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
9747 Use EQ to compare Lisp_Objects.
9748 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
9749
9750 * w32term.c (w32_num_mouse_buttons): Rename from
9751 Vw32_num_mouse_buttons and make it an int.
9752
9753 * w32.c (init_environment): Use it.
9754
9755 * w32fns.c (w32_wnd_proc): Likewise.
9756
9757 * w32proc.c (w32_pipe_read_delay): Rename from
9758 Vw32_pipe_read_delay and make it an int.
9759
9760 * w32.c (_sys_read_ahead): Use it.
9761
9762 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
9763
9764 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
9765
9766 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
9767 (key_event): Don't mix Lisp_Object and int.
9768
9769 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
9770
9771 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
9772 modifiers in language change event.
9773
9774 2004-05-17 Kim F. Storm <storm@cua.dk>
9775
9776 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
9777 Such objects may be freed markers which still exist on an undo list.
9778
9779 2004-05-16 Juanma Barranquero <lektu@terra.es>
9780
9781 * data.c (Fset_default): Make argument names match their use in
9782 docstring.
9783
9784 2004-05-15 Andreas Schwab <schwab@suse.de>
9785
9786 * emacs.c (gdb_array_mark_flag): Define.
9787 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
9788
9789 2004-05-15 Eli Zaretskii <eliz@gnu.org>
9790
9791 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
9792 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
9793 defined for the MS-DOS build.
9794
9795 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
9796
9797 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
9798
9799 2004-05-14 Kenichi Handa <handa@m17n.org>
9800
9801 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
9802
9803 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9804
9805 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
9806 section to frame.c section.
9807 (Fxw_display_color_p, Fx_file_dialog): Declare if
9808 HAVE_WINDOW_SYSTEM defined.
9809
9810 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
9811
9812 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
9813
9814 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
9815 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
9816 (XTread_socket): Fix int/Lisp_Object mixup.
9817 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
9818
9819 * macterm.h (struct frame, struct face, struct image)
9820 (display_x_get_resource, Fx_display_color_p)
9821 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
9822 Add prototypes.
9823
9824 2004-05-14 Kim F. Storm <storm@cua.dk>
9825
9826 * process.c (wait_reading_process_input): Make reentrant.
9827 Make Available and Connecting non-static. Save and restore value
9828 of waiting_for_user_input_p.
9829
9830 2004-05-13 Kim F. Storm <storm@cua.dk>
9831
9832 * keyboard.c (mark_kboards): Don't mark x and y members
9833 that are overloaded in selection request events.
9834
9835 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9836
9837 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
9838
9839 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
9840
9841 * window.c (Fdisplay_buffer, Fsplit_window)
9842 (split-height-threshold): Doc fix.
9843
9844 2004-05-13 Juanma Barranquero <lektu@terra.es>
9845
9846 * xfaces.c (Ftty_supports_face_attributes_p)
9847 (Finternal_copy_lisp_face): Fix typo in docstring.
9848 (Finternal_get_lisp_face_attribute): Fix docstring.
9849
9850 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9851
9852 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
9853
9854 2004-05-11 Steven Tamm <steventamm@mac.com>
9855
9856 * macfns.c (Fx_create_frame): Default to using tool-bar by
9857 setting tool-bar-lines to 1 in default-frame-alist.
9858
9859 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9860
9861 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
9862 (xpm_get_color_table_v, xpm_make_color_table_h)
9863 (xpm_put_color_table_h, xpm_get_color_table_h)
9864 (xpm_str_to_color_key, xpm_load_image, xpm_load)
9865 (syms_of_image): Support XPM on Carbon Emacs. Does not
9866 depend on libXpm, but only supports XPM version 3 without extensions.
9867
9868 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9869
9870 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
9871 instead of FRAME_X_P
9872
9873 2004-05-11 Kim F. Storm <storm@cua.dk>
9874
9875 * process.c (read_process_output): Grow decoding_buf when needed;
9876 this could cause a crash in allocate_string and compact_small_strings.
9877
9878 2004-04-29 Jim Blandy <jimb@redhat.com>
9879
9880 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
9881 against proper opcode.
9882
9883 2004-05-10 Juanma Barranquero <lektu@terra.es>
9884
9885 * process.c (Fstart_process): Fix docstring.
9886
9887 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
9888 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
9889 (Fsplit_char, Fchar_charset): Make argument names match their use
9890 in docstring.
9891
9892 2004-05-10 Richard M. Stallman <rms@gnu.org>
9893
9894 * print.c (print_preprocess): Use being_printed, loop_count and
9895 halftail to detect overdeep nesting and cyclic cdr chains.
9896
9897 2004-05-10 Andreas Schwab <schwab@suse.de>
9898
9899 * lisp.h (Fmake_symbolic_link): Declare.
9900
9901 * fileio.c (Frename_file): Remove extra argument in call to
9902 Fmake_symbolic_link.
9903
9904 2004-05-10 Kim F. Storm <storm@cua.dk>
9905
9906 * xdisp.c (calc_line_height_property): Use string position when
9907 object is a string.
9908
9909 2004-05-10 Kenichi Handa <handa@m17n.org>
9910
9911 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
9912 inhibit-modification-hooks to t temporarily before calling
9913 Ferase_buffer.
9914
9915 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
9916 inhibit-modification-hooks to t temporarily before calling
9917 Ferase_buffer.
9918
9919 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
9920 inhibit-modification-hooks to t temporarily before calling
9921 Ferase_buffer.
9922
9923 * fns.c (count_combining): Delete it.
9924 (concat): Don't check combining bytes.
9925
9926 2004-05-09 Jason Rumney <jasonr@gnu.org>
9927
9928 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
9929 (globals_of_w32fns): Set it.
9930
9931 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
9932
9933 * data.c (Fquo): Simplify.
9934
9935 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
9936
9937 * data.c (Fquo): If any argument is float, do the computation in
9938 floating point.
9939
9940 2004-05-08 Juanma Barranquero <lektu@terra.es>
9941
9942 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
9943 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
9944 Fix spelling of Emacs on docstring.
9945 (Fset_process_coding_system, Fprocess_coding_system)
9946 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
9947 Make argument names match their use in docstring.
9948 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
9949 Fix docstring.
9950
9951 * editfns.c (Finsert_buffer_substring): Make argument names match their
9952 use in docstring.
9953
9954 * syntax.c (Fmodify_syntax_entry): Fix docstring.
9955
9956 2004-05-07 Steven Tamm <steventamm@mac.com>
9957
9958 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
9959 around call to ReceiveEvent to avoid certain crashes.
9960
9961 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9962
9963 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
9964 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
9965 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
9966 Save/restore the current graphics port and device handle when
9967 drawing into an offscreen graphics world.
9968
9969 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
9970 (gif_load): Likewise.
9971
9972 2004-05-07 Juanma Barranquero <lektu@terra.es>
9973
9974 * window.c (Fset_window_buffer): Fix docstring.
9975
9976 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
9977
9978 * emacs.c (main) [VMS]: Fix var ref.
9979
9980 2004-05-06 Romain Francoise <romain@orebokech.com>
9981
9982 * data.c (Fsetq_default): Fix docstring.
9983
9984 2004-05-06 Jason Rumney <jasonr@gnu.org>
9985
9986 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
9987 to avoid name clash.
9988
9989 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9990
9991 * fileio.c (barf_or_query_if_file_exists): Use lstat.
9992 (Frename_file): Handle renaming of symlinks across file systems.
9993 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
9994
9995 2004-05-04 Kim F. Storm <storm@cua.dk>
9996
9997 * xdisp.c (Qtotal): New var.
9998 (syms_of_xdisp): Intern and staticpro it.
9999 (calc_line_height_property): New arg total. Set it if
10000 line-spacing property has format (total . VALUE).
10001 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
10002 Handle total line-spacing property.
10003
10004 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10005
10006 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
10007 "under" scroll bar when size/position changes.
10008
10009 2004-05-03 Jason Rumney <jasonr@gnu.org>
10010
10011 * makefile.nt: Remove.
10012
10013 2004-05-02 Eli Zaretskii <eliz@gnu.org>
10014
10015 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
10016 Avoid compiler warnings.
10017
10018 * Makefile.in (region-cache.o): Depend on config.h.
10019
10020 2004-05-02 Romain Francoise <romain@orebokech.com>
10021
10022 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
10023 with continuation lines, too.
10024
10025 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
10026
10027 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
10028
10029 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
10030
10031 * xdisp.c (calc_line_height_property): YAILOM (yet another
10032 int/Lisp_Object mixup).
10033
10034 2004-05-01 Eli Zaretskii <eliz@gnu.org>
10035
10036 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
10037 undo bad effect of pack(4) in some versions of system headers.
10038
10039 2004-05-01 Jason Rumney <jasonr@gnu.org>
10040
10041 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
10042
10043 2004-04-30 Kim F. Storm <storm@cua.dk>
10044
10045 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
10046 (syms_of_buffer) <cursor-type>: Doc fix.
10047
10048 * dispextern.h (struct it): Remove member use_default_face.
10049 Add members override_ascent, override_descent, override_boff.
10050
10051 * xdisp.c (init_iterator): Handle line-spacing float value.
10052 Initialize override_ascent member.
10053 (append_space_for_newline): Reset override_ascent.
10054 Remove use_default_face.
10055 (calc_line_height_property): New function to calculate value of
10056 line-height and line-spacing properties. Look at overlays, too.
10057 Set override_ascent, override_descent, override_boff members when
10058 using another face than the current face. Float values are now
10059 relative to the frame default font, by default; accept a cons
10060 of ratio and face name to specify value relative to a specific face.
10061 (x_produce_glyphs): Use calc_line_height_property.
10062 Use override_ascent etc. when set to handle different face heights.
10063 A negative line-spacing property value is interpreted as a total
10064 line height, rather than inter-line spacing.
10065 (note_mouse_highlight): Allocate room for 40 overlays initially.
10066
10067 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
10068
10069 * data.c (Fsubr_name): New fun.
10070 (syms_of_data): Defsubr it.
10071
10072 2004-04-29 Kim F. Storm <storm@cua.dk>
10073
10074 * xdisp.c (null_glyph_slice): New var.
10075 (append_glyph, append_composite_glyph, append_stretch_glyph):
10076 Use it to initialize glyph slice.
10077
10078 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
10079
10080 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
10081 (on_hot_spot_p): Make sure we always return a value.
10082 (Flookup_image_map): Remove unused var ix and iy.
10083 (note_mode_line_or_margin_highlight): Remove unused var `image'.
10084
10085 2004-04-27 Eli Zaretskii <eliz@gnu.org>
10086
10087 * msdos.c (init_environment): If one of the TMP... environment
10088 variables is set to a drive letter without a trailing slash,
10089 append a slash.
10090
10091 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
10092
10093 * editfns.c (lisp_time_argument): Provide externally.
10094
10095 * fileio.c (Fset_file_times): New function.
10096 (syms_of_fileio): Intern and staticpro it.
10097
10098 2004-04-27 Kim F. Storm <storm@cua.dk>
10099
10100 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
10101 header line strings.
10102
10103 * dispextern.h (struct it): New member use_default_face.
10104
10105 * xdisp.c (Qline_height): New variable.
10106 (syms_of_xdisp): Intern and staticpro it.
10107 (append_space_for_newline): Partially undo 2004-04-25 change;
10108 add default_face_p arg, and restore callers.
10109 Clear it->use_default_face after use.
10110 (x_produce_glyphs): Set default font for ascii char if
10111 it->use_default_font is set. Change line-spacing property to set
10112 just extra line spacing. Handle new line-height property.
10113
10114 2004-04-26 Andreas Schwab <schwab@suse.de>
10115
10116 * print.c (print_object): Print non-ascii characters in bool
10117 vector representation as octal escapes.
10118
10119 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
10120 * print.c (print_object): Use it instead of BITS_PER_CHAR for
10121 bool vectors.
10122 * lread.c (read1): Likewise.
10123 * alloc.c (Fmake_bool_vector): Likewise.
10124 * data.c (Faref, Faset): Likewise.
10125 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
10126 (mapcar1): Likewise.
10127
10128 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
10129
10130 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
10131
10132 2004-04-26 Miles Bader <miles@gnu.org>
10133
10134 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
10135
10136 2004-04-26 Juanma Barranquero <lektu@terra.es>
10137
10138 * buffer.c (Fpop_to_buffer): Fix docstring.
10139
10140 2004-04-26 Steven Tamm <steventamm@mac.com>
10141
10142 * lread.c (init_lread): Don't display missing lisp directory
10143 warnings with Carbon Emacs because self-contained bundled Emacs
10144 may be built without correct installation path.
10145
10146 2004-04-25 Kim F. Storm <storm@cua.dk>
10147
10148 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
10149
10150 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
10151
10152 * xdisp.c (append_space_for_newline): Rename from append_space.
10153 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
10154 (x_produce_glyphs): Handle line-spacing property on newline char.
10155 If value is t, adjust ascent and descent to fit current row height.
10156 If value is an integer or float, set extra_line_spacing to integer
10157 value, or to float value x current line height.
10158
10159 2004-04-23 Kenichi Handa <handa@m17n.org>
10160
10161 * fontset.c (Finternal_char_font): If POSITION is nil, return
10162 font for displaying CH with the default face.
10163
10164 2004-04-23 Juanma Barranquero <lektu@terra.es>
10165
10166 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
10167
10168 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10169
10170 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
10171 Don't make assumptions about the relative place of i and val.
10172 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
10173
10174 2004-04-21 Kim F. Storm <storm@cua.dk>
10175
10176 * dispextern.h (struct glyph_slice): New struct.
10177 (struct glyph): New member slice.
10178 (GLYPH_SLICE_EQUAL_P): New macro.
10179 (GLYPH_EQUAL_P): Use it.
10180 (struct glyph_string): New member slice.
10181 (struct it_slice): New struct.
10182 (struct it): New member slice, add member to stack too.
10183 New member constrain_row_ascent_descent_p.
10184 (image_ascent): Add prototype.
10185
10186 * dispnew.c (buffer_posn_from_coords): Return full image width
10187 and height even for image slices (posn is relative to full image).
10188 (marginal_area_string): Adjust x0,y0 for image slice.
10189
10190 * image.c (image_ascent): Add slice arg; calculate ascent for
10191 image slice (or full image).
10192
10193 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
10194 (syms_of_keyboard): Defsubr them.
10195
10196 * lisp.h (pos_visible_p): Fix prototype.
10197
10198 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10199 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10200 (x_draw_image_foreground, x_draw_image_relief)
10201 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10202 Draw sliced images.
10203
10204 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
10205 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10206 (x_draw_image_foreground, x_draw_image_relief)
10207 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
10208 Draw sliced images.
10209
10210 * w32term.h (image_ascent): Remove prototype.
10211
10212 * window.c (Fpos_visible_in_window_p): Return pixel position if
10213 PARTIALLY arg is non-nil. Simplify. Doc fix.
10214 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
10215 to return/set vscroll in pixels.
10216
10217 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
10218
10219 * xdisp.c (Qslice): New variable.
10220 (syms_of_xdisp): Intern and staticpro it.
10221 (pos_visible_p): Return pixel position in new x and y args.
10222 (init_iterator): Reset it->slice info.
10223 (handle_display_prop): Parse (slice ...) property.
10224 (push_it, pop_it): Save/restore slice info.
10225 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
10226 force repositioning of tall row if window is vscrolled, as that
10227 would reset vscroll.
10228 (append_space): Set it->constrain_row_ascent_descent_p to avoid
10229 increasing row height if row is non-empty.
10230 (fill_image_glyph_string): Copy slice info.
10231 (take_vertical_position_into_account): Simplify.
10232 (produce_image_glyph): Handle iterator slice info, setup glyph
10233 slice info. Do not force minimum line height.
10234 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
10235 do not increase height (ascent/descent) of non-empty row when
10236 adding normal character glyph; instead reduce glyph ascent/descent
10237 appropriately; if row is higher than current glyph, adjust glyph
10238 descent/ascent to reposition glyph within the existing row.
10239 Likewise, when char is newline, only set ascent/descent if row is
10240 currently empty.
10241 (note_mouse_highlight): Handle hotspots with sliced image.
10242
10243 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10244 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10245 (x_draw_image_foreground, x_draw_image_relief)
10246 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10247 Draw sliced images.
10248
10249 * xterm.h (image_ascent): Remove prototype.
10250
10251 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
10252
10253 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
10254
10255 2004-04-20 John Paul Wallington <jpw@gnu.org>
10256
10257 * fns.c (Fassoc, Feql): Fix indentation.
10258
10259 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
10260
10261 2004-04-19 John Paul Wallington <jpw@gnu.org>
10262
10263 * fns.c (Feql): New function.
10264 (syms_of_fns): Defsubr it.
10265
10266 2004-04-18 Jason Rumney <jasonr@gnu.org>
10267
10268 * w32select.c (Fw32_set_clipboard_data): Get sequence number
10269 after closing the clipboard.
10270
10271 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
10272
10273 * buffer.c (Fbuffer_base_buffer): Doc fix.
10274
10275 2004-04-17 Kim F. Storm <storm@cua.dk>
10276
10277 * keymap.c (Fkey_description): Add optional PREFIX arg.
10278 Combine prefix with KEYS to make up the full key sequence to describe.
10279 Correlate meta_prefix_char and following (simple) key to describe
10280 as meta modifier. All callers changed.
10281 (describe_map): Rename arg `keys' to `prefix'. Remove local
10282 `elt_prefix' var. Use Fkey_description with prefix instead of
10283 elt_prefix combined with Fsingle_key_description.
10284 (describe_vector): Declare static. Replace arg `elt_prefix' with
10285 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
10286 if !KEYMAP_P. Use Fkey_description with prefix instead of
10287 Fsingle_key_description.
10288
10289 * keymap.h (Fkey_description): Fix prototype.
10290 (describe_vector): Remove prototype.
10291
10292 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
10293
10294 * image.c (PNG_BG_COLOR_SHIFT): Remove.
10295 (png_load): Fix calculation of transparent background color on X
10296 and W32 platforms.
10297
10298 2004-04-16 Juanma Barranquero <lektu@terra.es>
10299
10300 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
10301 not too large before computing how much to scroll.
10302
10303 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
10304
10305 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
10306
10307 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
10308
10309 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
10310 Add hyperlink to Elisp manual to the docstring.
10311
10312 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
10313
10314 * callint.c (fix_command): Use XDCR.
10315
10316 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
10317
10318 * window.c (Fget_lru_window): Doc fix.
10319
10320 2004-04-14 Kim F. Storm <storm@cua.dk>
10321
10322 * editfns.c (Fformat): Fix allocation size of precision array.
10323
10324 * dispnew.c (update_window): Only set changed_p if
10325 scrolling_window actually did scroll.
10326 (scrolling_window): Only return 1 if we actually did scroll.
10327
10328 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
10329 height to glyph height when cursor row is not fully visible.
10330 (make_cursor_line_fully_visible): Add FORCE_P arg to return
10331 failure in case row is higher than window. Callers changed.
10332 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
10333 Try to scroll partially visible, higher-than-window cursor row.
10334 (redisplay_window): Always try to scroll partially visible,
10335 higher-than-window cursor row - both initially and again with
10336 centering_position = 0.
10337 Clear desired matrix before retrying with centering_position = 0.
10338
10339 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
10340
10341 * syntax.c (scan_lists): Simplify backward string scan.
10342 Fix off-by-one boundary check for string and comment fences.
10343
10344 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
10345
10346 * sheap.c, unexcw.c: New files.
10347
10348 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
10349
10350 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
10351 base buffer has been killed. Correct the error message if the
10352 base buffer does not exist.
10353
10354 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
10355
10356 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
10357 Cygwin itself. Add support for Xaw3d scrollbars.
10358
10359 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
10360
10361 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
10362
10363 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
10364 before Cygwin unexec.
10365
10366 * Makefile.in: Link changes for Cygwin unexec() support.
10367
10368 2004-04-12 Andreas Schwab <schwab@suse.de>
10369
10370 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
10371
10372 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
10373
10374 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
10375 IGNORE argument equals NAME. Doc fix.
10376
10377 2004-04-11 Masatake YAMATO <jet@gyve.org>
10378
10379 * buffer.c (fix_start_end_in_overlays): Make overlays
10380 empty if they are backwards.
10381
10382 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10383
10384 * xfaces.c (face_color_supported_p): Fix compilation without X11.
10385
10386 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
10387
10388 * doc.c (Fsnarf_documentation): Ignore new file name entries.
10389
10390 2004-04-06 Kim F. Storm <storm@cua.dk>
10391
10392 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10393 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
10394
10395 * w32term.c (w32_read_socket): Set mouse_face_hidden after
10396 clearing highlight.
10397
10398 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10399
10400 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
10401 clearing highlight.
10402
10403 * indent.c (vmotion): Do not reserve one column for continuation
10404 marks on window frames.
10405
10406 2004-04-04 Eli Zaretskii <eliz@gnu.org>
10407
10408 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
10409 from GCC.
10410
10411 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10412
10413 * .gdbinit-union: Remove.
10414
10415 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
10416 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
10417 ($nonvalbits): Remove.
10418 ($valmask): Set it by calling xreload to avoid redundancy.
10419
10420 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
10421 (gdb_emacs_intbits): Remove.
10422
10423 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10424
10425 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
10426
10427 2004-03-30 Kenichi Handa <handa@m17n.org>
10428
10429 * editfns.c (Fformat): Fix initialization of the array info.
10430
10431 2004-03-30 Kim F. Storm <storm@cua.dk>
10432
10433 * xterm.c (x_mouse_click_focus_ignore_position): New var.
10434 (syms_of_xterm): DEFVAR_BOOL it.
10435 (ignore_next_mouse_click_timeout): New var.
10436 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
10437 Use it to filter mouse clicks following focus event.
10438
10439 2004-03-29 David Ponce <david@dponce.com>
10440
10441 * callint.c (Fcall_interactively): Fix last change.
10442
10443 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
10444
10445 * eval.c (Fcommandp): Simplify.
10446
10447 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
10448 Extend to handle all kinds of functions.
10449
10450 * lisp.h (Finteractive_form): Declare.
10451
10452 * callint.c (Fcall_interactively): Use it.
10453
10454 2004-03-26 Kim F. Storm <storm@cua.dk>
10455
10456 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
10457 to catch errors in calc_pixel_width_or_height during redisplay.
10458
10459 2004-03-26 Masatake YAMATO <jet@gyve.org>
10460
10461 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
10462
10463 * lisp.h (fix_start_end_in_overlays): Likewise.
10464
10465 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
10466
10467 * editfns.c (Ftranspose_regions): Likewise.
10468
10469 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10470
10471 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
10472
10473 2004-03-19 Richard M. Stallman <rms@gnu.org>
10474
10475 * s/sol2-6.h: Delete previous change.
10476
10477 2004-03-19 Kim F. Storm <storm@cua.dk>
10478
10479 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
10480 to_charpos corresponds to newline in right fringe. Use local
10481 BUFFER_POS_REACHED_P macro.
10482
10483 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10484
10485 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
10486 to compile on non-window system.
10487
10488 2004-03-19 Kim F. Storm <storm@cua.dk>
10489
10490 * dispextern.h (calc_pixel_width_or_height): Add prototype.
10491
10492 * image.c (Qcenter): Move to xdisp.c.
10493
10494 * xdisp.c (Qcenter): Declare here.
10495 (syms_of_xdisp): Intern and staticpro it.
10496 (handle_single_display_prop): Allow space display property on all
10497 platforms.
10498 (display_mode_line): Set mode_line_p before displaying line.
10499 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
10500 handling. Remove complex cases for fringes and scroll-bars.
10501 Add left, right, and center alignment positions. Add text (area)
10502 width/height. Return width or height for image specs.
10503 (produce_stretch_glyph): Improve handling of :align-to. Is now
10504 relative to left of text area by default, but other base offsets
10505 can be specified -- also for text lines.
10506
10507 * term.c (produce_glyphs): Handle IT_STRETCH.
10508 (produce_stretch_glyph): New function to handle space width and
10509 align-to display properties on non-window systems.
10510
10511 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10512
10513 * fileio.c (Fread_file_name): Set completion-ignore-case for
10514 case-insensitive systems.
10515
10516 2004-03-14 Masatake YAMATO <jet@gyve.org>
10517
10518 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
10519 when keymap and cursor are setup.
10520
10521 2004-03-14 Steven Tamm <steventamm@mac.com>
10522
10523 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
10524
10525 2004-03-14 Kim F. Storm <storm@cua.dk>
10526
10527 * dispextern.h (x_find_image_file): Add prototype.
10528
10529 * image.c (x_find_image_file): Make extern.
10530
10531 * xfns.c (x_find_image_file): Remove prototype.
10532
10533 2004-03-13 Eli Zaretskii <eliz@gnu.org>
10534
10535 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
10536
10537 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
10538
10539 2004-03-12 Richard M. Stallman <rms@gnu.org>
10540
10541 * fns.c (internal_equal): New arg PROPS controls comparing
10542 text properties. All callers changed.
10543 (Fequal_including_properties): New function.
10544 (syms_of_fns): defsubr it.
10545
10546 2004-03-12 Kim F. Storm <storm@cua.dk>
10547
10548 Fix image support on MAC. From YAMAMOTO Mitsuharu.
10549
10550 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
10551 (image_background, image_background_transparent): Fix prototypes.
10552
10553 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
10554
10555 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
10556 (x_query_font, x_find_ccl_program, x_set_window_size)
10557 (x_make_frame_visible, mac_initialize, XCreatePixmap)
10558 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
10559 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
10560
10561 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
10562 (x_query_font, x_find_ccl_program, x_set_window_size)
10563 (x_make_frame_visible, mac_initialize, XCreatePixmap)
10564 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
10565 (mac_draw_line_to_pixmap): Add prototypes.
10566
10567 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10568
10569 * macterm.c (XTread_socket): Fix mouse click on tool bar.
10570
10571 2004-03-11 Kim F. Storm <storm@cua.dk>
10572
10573 * dispextern.h: Move image related prototypes from xfns.c section
10574 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
10575 HAVE_X_WINDOWS.
10576
10577 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
10578 Move gtkutil.o to new GTK_OBJ list.
10579 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
10580 (GTK_OBJ) [USE_GTK]: New declaration.
10581 (obj): Add $(GTK_OBJ) to list.
10582
10583 2004-03-11 Steven Tamm <steventamm@mac.com>
10584
10585 * image.c [MAC_OSX]: Include sys/stat.h.
10586
10587 * macfns.c (syms_of_macfns): Remove definitions of things now
10588 defined in image.c.
10589
10590 2004-03-11 Kim F. Storm <storm@cua.dk>
10591
10592 The following changes consolidates the identical/similar image
10593 support code previously found in xfns.c, w32fns.c, and macfns.c
10594 into a new file image.c.
10595
10596 * makefile.w32-in (OBJ1): Add image.o.
10597 ($(BLD)/image.$(O)): Add dependencies.
10598
10599 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
10600 (image.o): Add dependencies.
10601
10602 * image.c: New file with consolidated image support code.
10603 (COLOR_TABLE_SUPPORT): New define to control whether
10604 color table support is available (X only).
10605 (Bitmap_Record): Common name for x_bitmap_record,
10606 w32_bitmap_record, and mac_bitmap_record.
10607 (XImagePtr): Common name for pointer to XImage or equivalent.
10608 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
10609 to XImagePtr on X+MAC, and to HDC on W32.
10610 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
10611 (NO_PIXMAP): Common name for "None" or equivalent.
10612 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
10613 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
10614 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
10615 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
10616 Define with suitable equivalents on W32 and MAC for code sharing.
10617 (XDrawLine): Define on MAC for code sharing.
10618 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
10619 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
10620 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10621 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10622 (x_reference_bitmap, x_create_bitmap_from_data)
10623 (x_create_bitmap_from_file, x_destroy_bitmap)
10624 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10625 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10626 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10627 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10628 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10629 (define_image_type, lookup_image_type, valid_image_p)
10630 (image_error, enum image_value_type, struct image_keyword)
10631 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10632 (make_image, free_image, prepare_image_for_display, image_ascent)
10633 (four_corners_best, image_background, image_background_transparent)
10634 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10635 (make_image_cache, free_image_cache, clear_image_cache)
10636 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10637 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10638 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10639 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
10640 (init_image_func_pointer, image_load_quartz2d)
10641 (struct ct_color, init_color_table, free_color_table)
10642 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10643 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10644 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10645 (x_disable_image, x_build_heuristic_mask)
10646 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10647 (TIFF support, GIF support, Ghostscript support): Consolidate image
10648 code from xfns.c, w32fns.c, and macfns.c.
10649 (syms_of_image): Consolidate image related symbol setup here.
10650 (init_image): Consolidate image related initializations here.
10651
10652 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
10653 and init_image. Remove call to init_xfns.
10654
10655 * macterm.h (struct mac_bitmap_record): Add file member.
10656 Not currently used, but simplifies code sharing.
10657
10658 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10659 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10660 (x_reference_bitmap, x_create_bitmap_from_data)
10661 (x_create_bitmap_from_file, x_destroy_bitmap)
10662 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10663 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10664 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10665 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10666 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10667 (define_image_type, lookup_image_type, valid_image_p)
10668 (image_error, enum image_value_type, struct image_keyword)
10669 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10670 (make_image, free_image, prepare_image_for_display, image_ascent)
10671 (four_corners_best, image_background, image_background_transparent)
10672 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10673 (make_image_cache, free_image_cache, clear_image_cache)
10674 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10675 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10676 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10677 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
10678 (init_image_func_pointer, image_load_quartz2d)
10679 (struct ct_color, init_color_table, free_color_table)
10680 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10681 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10682 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10683 (x_disable_image, x_build_heuristic_mask)
10684 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10685 (TIFF support, GIF support, Ghostscript support): Merge with image
10686 code from xfns.c and macfns.c into image.c.
10687 (syms_of_xfns): Move image related symbols to image.c.
10688 (init_external_image_libraries, init_xfns): Remove; initialization
10689 moved to init_image in image.c.
10690
10691 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10692 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10693 (x_reference_bitmap, x_create_bitmap_from_data)
10694 (x_create_bitmap_from_file, x_destroy_bitmap)
10695 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10696 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10697 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10698 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10699 (define_image_type, lookup_image_type, valid_image_p)
10700 (image_error, enum image_value_type, struct image_keyword)
10701 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10702 (make_image, free_image, prepare_image_for_display, image_ascent)
10703 (four_corners_best, image_background, image_background_transparent)
10704 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10705 (make_image_cache, free_image_cache, clear_image_cache)
10706 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10707 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10708 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10709 (struct ct_color, init_color_table, free_color_table)
10710 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10711 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10712 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10713 (x_disable_image, x_build_heuristic_mask)
10714 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10715 (TIFF support, GIF support, Ghostscript support): Merge with image
10716 code from xfns.c and macfns.c into image.c.
10717 (syms_of_xfns): Move image related symbols to image.c.
10718 (init_external_image_libraries, init_xfns): Remove; initialization
10719 moved to init_image in image.c.
10720
10721 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10722 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10723 (x_reference_bitmap, x_create_bitmap_from_data)
10724 (x_create_bitmap_from_file, x_destroy_bitmap)
10725 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10726 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10727 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10728 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10729 (define_image_type, lookup_image_type, valid_image_p)
10730 (image_error, enum image_value_type, struct image_keyword)
10731 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10732 (make_image, free_image, prepare_image_for_display, image_ascent)
10733 (four_corners_best, image_background, image_background_transparent)
10734 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10735 (make_image_cache, free_image_cache, clear_image_cache)
10736 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10737 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10738 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10739 (struct ct_color, init_color_table, free_color_table)
10740 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10741 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10742 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10743 (x_disable_image, x_build_heuristic_mask)
10744 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10745 (TIFF support, GIF support, Ghostscript support): Merge with
10746 w32fns.c and macfns.c image code into image.c.
10747 (syms_of_xfns): Move image related symbols to image.c.
10748 (init_xfns): Remove; initialization moved to init_image in image.c.
10749
10750 * lisp.h (syms_of_image, init_image): Add protoypes.
10751 (init_xfns): Remove prototype.
10752
10753 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10754 (x_reference_bitmap, x_create_bitmap_from_data)
10755 (x_create_bitmap_from_file, x_destroy_bitmap)
10756 (x_create_bitmap_mask): Move prototypes from dispextern.h.
10757 (gamma_correct) [MAC_OS]: Add prototype.
10758
10759 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10760 (x_reference_bitmap, x_create_bitmap_from_data)
10761 (x_create_bitmap_from_file, x_destroy_bitmap)
10762 (x_create_bitmap_mask): Move prototypes to dispextern.h.
10763
10764 2004-03-09 Kenichi Handa <handa@etlken2>
10765
10766 * coding.c (decode_coding_emacs_mule): Handle insufficent source
10767 correctly.
10768
10769 2004-03-04 Richard M. Stallman <rms@gnu.org>
10770
10771 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
10772
10773 * window.c (Fdisplay_buffer): Doc fix.
10774
10775 * buffer.c (Fpop_to_buffer): Doc fix.
10776
10777 2004-03-03 Kim F. Storm <storm@cua.dk>
10778
10779 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
10780
10781 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
10782
10783 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
10784
10785 2004-03-02 Richard M. Stallman <rms@gnu.org>
10786
10787 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
10788
10789 2004-03-02 Kenichi Handa <handa@m17n.org>
10790
10791 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
10792
10793 2004-03-02 Kim F. Storm <storm@cua.dk>
10794
10795 * window.h (struct window): New member overlay_arrow_bitmap.
10796
10797 * window.c (make_window): Initialize overlay_arrow_bitmap.
10798
10799 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
10800 implement and integrate multiple overlay arrows with redisplay.
10801 (syms_of_xdisp): DEFVAR_LISP and initialize it.
10802 (last_arrow_position, last_arrow_string): Replace by properties.
10803 (Qlast_arrow_position, Qlast_arrow_string)
10804 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
10805 (syms_of_xdisp): Intern and staticpro them.
10806 (overlay_arrow_string_or_property, update_overlay_arrows)
10807 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
10808 (overlay_arrow_at_row): New functions for multiple overlay arrows.
10809 (redisplay_internal): Use them instead of directly accessing
10810 Voverlay_arrow_position etc. for multiple overlay arrows.
10811 (mark_window_display_accurate): Use update_overlay_arrows.
10812 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
10813 (try_window_id): Use overlay_arrows_changed_p.
10814 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
10815 (display_line): Use overlay_arrow_at_row to check multiple
10816 overlay arrows, and get relevant overlay-arrow-string and
10817 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
10818 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
10819 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
10820
10821 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
10822 (update_window_fringes): Remove unused code.
10823
10824 2004-03-01 Jason Rumney <jasonr@gnu.org>
10825
10826 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
10827
10828 2004-03-01 Juanma Barranquero <lektu@terra.es>
10829
10830 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
10831
10832 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
10833
10834 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10835
10836 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
10837 how many colors can be displayed.
10838
10839 2004-03-01 Kenichi Handa <handa@m17n.org>
10840
10841 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
10842 correctly.
10843
10844 2004-02-28 Kim F. Storm <storm@cua.dk>
10845
10846 * dispnew.c (update_window): Update header line also if there are
10847 no other changes in window (move code after set_cursor label).
10848
10849 * lisp.h (mark_window_display_accurate): Remove prototype.
10850
10851 * window.c (window_loop, Fforce_window_update): Force mode line
10852 updates by setting prevent_redisplay_optimizations_p and
10853 update_mode_lines.
10854
10855 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10856
10857 * xfns.c (x_window): Fix indentation.
10858
10859 * xterm.c (x_calc_absolute_position): Call x_real_positions
10860 to get WM window sizes and use those to calculate position.
10861 (x_set_offset): Remove code commented out.
10862
10863 2004-02-28 Miles Bader <miles@gnu.org>
10864
10865 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
10866
10867 2004-02-28 Kim F. Storm <storm@cua.dk>
10868
10869 * keyboard.c (kbd_buffer_store_event_hold): New function to store
10870 an event into kbd fifo, but with special handling of quit event;
10871 a quit event is saved for later, and further events are discarded
10872 until the saved quit event has been processed.
10873 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
10874 (gen_help_event): Store help event in kbd fifo.
10875 (NREAD_INPUT_EVENTS): Remove.
10876 (read_avail_input): Adapt to new read_socket_hook interface.
10877 Remove allocation and initialization of local input_event buffer,
10878 as read_socket_hook stores events directly in fifo. Allocate and
10879 initialize local hold_quit event to handle postponed quit event
10880 (and store it if set by kbd_buffer_store_event_hold).
10881
10882 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
10883 (gen_help_event): Fix prototype.
10884
10885 * macterm.c (XTread_socket): Remove bufp_r and
10886 numcharsp args. Add hold_quit arg.
10887 Rework to use just one, local, inev input_event. Store inev
10888 directly in fifo using kbd_buffer_store_event_hold.
10889
10890 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
10891 (read_input_waiting): Adapt to new read_socket_hook interface.
10892 Remove allocation and initialization of local input_event buffer,
10893 as read_socket_hook stores events directly in fifo. Allocate and
10894 initialize local hold_quit event to handle postponed quit event
10895 (and store it if set by kbd_buffer_store_event_hold).
10896
10897 * term.c (read_socket_hook): Fix arg list.
10898
10899 * termhooks.h (read_socket_hook): Fix prototype.
10900
10901 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
10902 numcharsp args. Add hold_quit arg.
10903 Rework to use just one, local, inev input_event. Store inev
10904 directly in fifo using kbd_buffer_store_event_hold.
10905
10906 * w32inevt.h (w32_console_mouse_position): Fix prototype.
10907
10908 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
10909 Add hold_quit arg. Rework to use just one, local, inev
10910 input_event. Store inev directly in fifo using
10911 kbd_buffer_store_event_hold. Update count in one place.
10912 Postpone call to gen_help_event until inev is stored; use new
10913 local do_help for this.
10914 Remove local emacs_event in handing of ButtonPress event; just use
10915 inev instead (so no reason to copy it later).
10916
10917 * xsmfns.c (x_session_check_input): Remove numchars arg.
10918
10919 * xterm.c (x_focus_changed, x_detect_focus_change):
10920 Remove numchars arg. Always store event into bufp arg.
10921 Return nothing. Callers changed accordingly.
10922 (glyph_rect): Simplify.
10923 (STORE_KEYSYM_FOR_DEBUG): New macro.
10924 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
10925 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
10926 (current_hold_quit) [USE_GTK]: Add.
10927 (event_handler_gdk): Adapt to new handle_one_xevent.
10928 (handle_one_xevent): Remove bufp_r and numcharsp args.
10929 Add hold_quit arg. Rework to use just one, local, inev
10930 input_event. Store inev directly in fifo using
10931 kbd_buffer_store_event_hold. Update count in one place.
10932 Postpone call to gen_help_event until inev is stored; use new
10933 local do_help for this.
10934 Simplify handling of keysyms (consolidate common code). Fix bug
10935 where count was updated with nchars instead of nbytes.
10936 Remove local emacs_event in handing of ButtonPress event; just use
10937 inev instead (so no reason to copy it later).
10938 Remove `out' label. Rename label `ret' to `done'; add various
10939 `goto done' to clarify code flow in deeply nested blocks.
10940 (x_dispatch_event): Simplify as handle_one_xevent now calls
10941 kbd_buffer_store_event itself.
10942 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
10943 arg. Call handle_one_xevent with new arglist. Store event from
10944 x_session_check_input in fifo.
10945 [USE_GTK]: Setup current_hold_quit.
10946 Decrement handling_signal before unblocking input.
10947 (x_initialize) [USE_GTK]: Initialize current_count.
10948
10949 * xterm.h (x_session_check_input): Fix prototype.
10950
10951 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10952
10953 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
10954
10955 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
10956 macgui.h).
10957
10958 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
10959
10960 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
10961 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
10962 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
10963 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
10964 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
10965 (Bitmap): Remove typedef.
10966 (Pixmap): Change int to GWorldPtr.
10967
10968 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
10969
10970 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
10971 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
10972 New #define to extract 16-bit depth color components from unsigned
10973 long representation.
10974 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
10975 colors used for masks.
10976 (struct mac_display_info): Add color_p. Remove n_cbits.
10977
10978 * macfns.c: Include sys/types.h and sys/stat.h.
10979 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
10980 Include QuickTime/QuickTime.h.
10981 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10982 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
10983 functions defined in macterm.c.
10984 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
10985 (ZPixmap): New #define for compatibility with xfns.c.
10986 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10987 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10988 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
10989 New functions.
10990 (four_corners_best, x_create_x_image_and_pixmap)
10991 (x_destroy_x_image, unwind_create_frame, x_disable_image)
10992 (x_edge_detection, init_color_table, colors_in_color_table)
10993 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
10994 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
10995 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
10996 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
10997 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
10998 long mixup.
10999 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
11000 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
11001 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
11002 (x_set_cursor_type, Fxw_color_values, valid_image_p)
11003 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
11004 (x_alloc_image_color, clear_image_cache, lookup_image)
11005 (x_find_image_file, xbm_read_bitmap_file_data)
11006 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
11007 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
11008 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
11009 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
11010 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
11011 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
11012 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
11013 #if 0.
11014 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
11015 #if 0. Free white_relief.gc and black_relief.gc.
11016 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
11017 New functions (from xfns.c).
11018 (Fx_create_frame): Record unwind_create_frame.
11019 (Fxw_display_color_p): Use dpyinfo->color_p.
11020 (Fx_display_grayscale_p, Fx_display_planes): Don't use
11021 dpyinfo->n_cbits.
11022 (Fx_display_color_cells): Use dpyinfo->n_planes;
11023 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
11024 (Qheuristic, cross_disabled_images, emboss_matrix)
11025 (laplace_matrix): New variables (from xfns.c).
11026 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
11027 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
11028 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
11029 (image_background_transparent): New function (from xfns.c).
11030 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11031 (image_load_quicktime): Add declaration.
11032 [MAC_OSX] (image_load_quartz2d): Likewise.
11033 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
11034 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
11035 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
11036 (xbm_load_image_from_file, x_laplace_read_row)
11037 (x_laplace_write_row, pbm_read_file): Remove functions.
11038 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
11039 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
11040 (colors_in_color_table): Sync with xfns.c (although not used).
11041 (lookup_rgb_color): Don't lookup color table. Just do gamma
11042 correction.
11043 (COLOR_INTENSITY): New #define (from xfns.c).
11044 (x_disable_image): New function (from xfns.c).
11045 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11046 (x_build_heuristic_mask): Sync with xfns.c.
11047 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11048 (HAVE_PBM): Remove #ifdef.
11049 (pbm_load): Sync with xfns.c. Set img->width and img->height
11050 before IMAGE_BACKGROUND.
11051 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
11052 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
11053 Don't enclose with #if HAVE_PNG.
11054 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
11055 symbol _CGImageCreateWithPNGDataProvider is defined.
11056 Otherwise use image_load_quicktime.
11057 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
11058 [HAVE_PNG] (png_load): Sync with xfns.c.
11059 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11060 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
11061 HAVE_JPEG.
11062 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
11063 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
11064 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
11065 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
11066 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
11067 (tiff_image_p, tiff_load): Don't enclose declarations with #if
11068 HAVE_TIFF.
11069 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
11070 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
11071 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
11072 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
11073 New functions (from xfns.c).
11074 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
11075 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
11076 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
11077 Don't enclose with #if HAVE_GIF.
11078 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
11079 animated gif. Otherwise use image_load_quicktime.
11080 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
11081 gif_DrawText to avoid conflict with QuickdrawText.h.
11082 [HAVE_GIF] (gif_load): Sync with xfns.c.
11083 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
11084 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
11085 Ghostscript is not supported yet).
11086 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
11087 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
11088 cross_disabled_images (from xfns.c). Remove #if 0 for supported
11089 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
11090 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
11091 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
11092 HAVE_PNG. Call EnterMovies to support animated gifs.
11093 Call init_image_func_pointer to bind a symbol
11094 _CGImageCreateWithPNGDataProvider if it is defined.
11095
11096 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
11097 (x_draw_bar_cursor): Sync declaration with xterm.c.
11098 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
11099 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
11100 graphics).
11101 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
11102 (mac_draw_line_to_pixmap, XCreatePixmap)
11103 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
11104 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
11105 New functions.
11106 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
11107 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
11108 Cast bits to char *.
11109 (reflect_byte): New function (from w32fns.c).
11110 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
11111 due to byte alignment.
11112 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
11113 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
11114 (XSetForeground): Remove static (now used in macfns.c).
11115 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
11116 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
11117 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
11118 (x_draw_glyph_string_box, x_draw_image_foreground)
11119 (x_draw_image_foreground_1, x_draw_image_glyph_string)
11120 (x_draw_stretch_glyph_string, x_draw_glyph_string)
11121 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
11122 Sync with xterm.c.
11123 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
11124 than the xterm.c version when a strictly horizontal or vertical
11125 line is drawn.
11126 (XTset_terminal_window): Add static.
11127 (x_make_frame_visible): Add UNBLOCK_INPUT.
11128 (x_free_frame_resources): New funcion (from xterm.c).
11129 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
11130 occurs in tool bar area.
11131 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
11132 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
11133 Initialize image cache.
11134 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
11135 Enclose unused functions with #if 0.
11136 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
11137 (decode_mac_font_name): New function to apply code conversions
11138 from a mac font name to an XLFD font name according to its script code.
11139 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
11140 font name to a mac font name according to REGISTRY and ENCODING fields.
11141 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
11142 whose name starts with `.'.
11143 (init_font_name_table): Use decode_mac_font_name. Add both
11144 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
11145 of a font is smJapanese.
11146 (mac_do_list_fonts): New function to list fonts that match a given
11147 pattern.
11148 (x_list_fonts, XLoadQueryFont): Use it.
11149 (XLoadQueryFont): Set rbearing field for each variable width
11150 character to avoid needless redraw.
11151 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
11152
11153 2004-02-26 Kim F. Storm <storm@cua.dk>
11154
11155 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
11156 as read_socket_hook handler on X aborts if buffer is too small
11157 and W32 handler doesn't always check buffer limit.
11158
11159 * xdisp.c (handle_single_display_prop): Handle left-fringe and
11160 right-fringe similar to a display margin image. Specifically,
11161 the characters having the fringe prop are no longer shown, and
11162 we use IT_IMAGE/next_element_from_image with image_id = -1 to
11163 do this. Set fringe bitmap face_id in it->face_id.
11164 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
11165 still realize it->face (i.e. the fringe bitmap face).
11166
11167 2004-02-25 Miles Bader <miles@gnu.org>
11168
11169 * xdisp.c (check_it): Check string/string_pos consistency.
11170 (init_iterator): Initialize string-related fields properly.
11171
11172 2004-02-11 Miles Bader <miles@gnu.org>
11173
11174 * xdisp.c (produce_image_glyph): Force negative descents to zero.
11175
11176 2004-02-10 Miles Bader <miles@gnu.org>
11177
11178 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
11179 BLOCK_INPUT can be nested, so it doesn't make much sense.
11180
11181 2004-02-24 Michael Mauger <mmaug@yahoo.com>
11182
11183 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
11184 (xbm_read_bitmap_data): Use unsigned char for image data.
11185
11186 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
11187
11188 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
11189
11190 2004-02-22 Jason Rumney <jasonr@gnu.org>
11191
11192 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
11193 correctly over other bitmaps.
11194
11195 2004-02-21 Eli Zaretskii <eliz@gnu.org>
11196
11197 * emacs.c (USAGE1): Split into two halves.
11198 (USAGE2): Second half of the old USAGE1.
11199 (USAGE3): Rename from USAGE2.
11200 (USAGE4): Rename from USAGE3.
11201
11202 2004-02-21 Juri Linkov <juri@jurta.org>
11203
11204 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
11205 Fix --multibyte. Move --help, --version to USAGE2. Add alias
11206 --file. Fix -f, -l. Sort options. Untabify.
11207 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
11208
11209 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
11210
11211 * category.c (Fdefine_category, Fcategory_docstring)
11212 (Fget_unused_category, Fset_category_table)
11213 (Fcategory_set_mnemonics): Doc fixes.
11214
11215 2004-02-20 Kim F. Storm <storm@cua.dk>
11216
11217 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
11218 The following changes are relative to the 2004-01-21 revision.
11219 (NREAD_INPUT_EVENTS): Define as max number of input events to read
11220 in one call to read_socket_hook. Value is 8.
11221 (read_avail_input): Separate and rework handling of read_socket_hook
11222 and non-read_socket_hook cases. Use smaller input_event buffer
11223 in read_socket_hook case, and repeat if full buffer is read.
11224 Use new local variable 'discard' to skip input after C-g.
11225 In non-read_socket_hook case, just use a single input_event, and
11226 call kbd_buffer_store_event on the fly for each character.
11227
11228 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11229
11230 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
11231 Remove unused `gu' alternative.
11232
11233 2004-02-19 Andreas Schwab <schwab@suse.de>
11234
11235 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
11236 warning.
11237
11238 2004-02-18 Kim F. Storm <storm@cua.dk>
11239
11240 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
11241 Fix last change.
11242
11243 2004-02-17 Kim F. Storm <storm@cua.dk>
11244
11245 * xdisp.c (fast_find_position): Fix return value of new version;
11246 it was inverted compared to the 21.1 version.
11247 (get_window_cursor_type): Don't look at glyph if NULL.
11248 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
11249
11250 * keyboard.c: Rework previous change; it didn't consider that the
11251 buf array was allocated on the stack.
11252 (prev_read): Remove variable.
11253 (read_avail_input_buf): New static event buffer array.
11254 (in_read_avail_input): New static variable to handle re-entrancy.
11255 (read_avail_input): Change buf to pinter to read_avail_input_buf.
11256 Use in_read_avail_input to handle re-entrance; when re-entered,
11257 fully initialize and use tmp_buf array instead of read_avail_input_buf.
11258 Do not initialize read_avail_input_buf in full here; instead assume it
11259 is always cleared on entry. To ensure that, we clear (just) the
11260 entries that were used before we return.
11261 (init_keyboard): Initialize read_avail_input_buf here.
11262
11263 2004-02-16 Jesper Harder <harder@ifa.au.dk>
11264
11265 * cmds.c (Fend_of_line): Doc fix.
11266
11267 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
11268
11269 * keyboard.c (prev_read): New static variable.
11270 (read_avail_input): Use it to zero out only those slots in buf[]
11271 that were used last time we were called.
11272
11273 2004-02-16 Eli Zaretskii <eliz@gnu.org>
11274
11275 * Makefile.in (obj): Move fringe.o from here...
11276 (XOBJ, MAC_OBJ): ...to here.
11277
11278 2004-02-16 Stephen Eglen <stephen@gnu.org>
11279
11280 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
11281
11282 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
11283
11284 * data.c (Fbyteorder):
11285 * fringe.c (Fdefine_fringe_bitmap):
11286 * xdisp.c (handle_single_display_prop):
11287 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
11288
11289 2004-02-16 Jason Rumney <jasonr@gnu.org>
11290
11291 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
11292
11293 2004-02-15 Steven Tamm <steventamm@mac.com>
11294
11295 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
11296 controlling emulation of a three button mouse with option and
11297 command keys.
11298 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
11299 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
11300
11301 2004-02-15 Kim F. Storm <storm@cua.dk>
11302
11303 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
11304
11305 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
11306 Perform byte-swapping.
11307
11308 2004-02-14 Kim F. Storm <storm@cua.dk>
11309
11310 * dispextern.h (struct draw_fringe_bitmap_params): Change member
11311 bits from char to short to facilitate wider bitmaps.
11312 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
11313 member.
11314
11315 * fringe.c (struct fringe_bitmap): Change member bits from char to
11316 short to facilitate 16 bits wide bitmaps. Modify all standard
11317 bitmaps accordingly.
11318 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
11319 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
11320 (draw_fringe_bitmap): Ditto.
11321 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
11322 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
11323 handle up to 16 bits wide bitmaps.
11324 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
11325 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
11326
11327 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
11328 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
11329 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
11330
11331 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
11332 so it is no longer necessary to expand them here.
11333
11334 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
11335
11336 2004-02-12 Kim F. Storm <storm@cua.dk>
11337
11338 * window.c (Fwindow_fringes): Doc fix.
11339
11340 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11341
11342 * xselect.c (x_get_foreign_selection): Add new optional parameter
11343 time_stamp.
11344 (Fx_get_selection_internal): Ditto, pass time_stamp to
11345 x_get_foreign_selection.
11346
11347 * data.c (Fbyteorder): New function.
11348
11349 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11350
11351 * atimer.c: Move include stdio.h to same place as in other files.
11352
11353 * region-cache.c: Ditto.
11354
11355 * sysdep.c: Ditto.
11356
11357 * xfaces.c: Ditto.
11358
11359 2004-02-09 Sam Steingold <sds@gnu.org>
11360
11361 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
11362
11363 2004-02-09 Kim F. Storm <storm@cua.dk>
11364
11365 * fringe.c: New file. Move original fringe related declarations
11366 and code from dispextern.h and xdisp.c here.
11367 Rework code to support user defined fringe bitmaps, redefining
11368 standard bitmaps, ability to overlay user defined bitmap with
11369 overlay arrow bitmap, and add faces to bitmaps.
11370 (Voverflow_newline_into_fringe): Declare here.
11371 (enum fringe_bitmap_align): New enum.
11372 (..._bits): All bitmaps are now defined without bitswapping; that
11373 is now done in init_fringe_once (if necessary).
11374 (standard_bitmaps): New array with specifications for the
11375 standard fringe bitmaps.
11376 (fringe_faces): New array.
11377 (valid_fringe_bitmap_id_p): New function.
11378 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
11379 (draw_fringe_bitmap): New function which draws fringe bitmap,
11380 possibly overlaying bitmap with cursor in right fringe or the
11381 overlay arrow in the left fringe.
11382 (update_window_fringes): Do not handle overlay arrow here.
11383 Compare and copy fringe bitmap faces.
11384 (init_fringe_bitmap): New function.
11385 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
11386 define and destroy user defined fringe bitmaps.
11387 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
11388 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
11389 (syms_of_fringe): New function. Defsubr new DEFUNs.
11390 DEFVAR_LISP Voverflow_newline_into_fringe.
11391 (init_fringe_once, init_fringe): New functions.
11392 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
11393
11394 * Makefile.in (obj): Add fringe.o.
11395 (fringe.o): New dependencies.
11396
11397 * dispextern.h (FRINGE_ID_BITS): New definition for number of
11398 bits allocated to hold a fringe number. Increase number of bits
11399 from 4 to 8 to allow user defined fringe bitmaps.
11400 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
11401 left_user_fringe_face_id, right_user_fringe_bitmap,
11402 right_user_fringe_face_id.
11403 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
11404 Move to new file fringe.c.
11405 (MAX_FRINGE_BITMAPS): Define here.
11406 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
11407 and overlay_p. Change member which to int.
11408 (struct redisplay_interface): New members define_fringe_bitmap
11409 and destroy_fringe_bitmap.
11410 (valid_fringe_bitmap_id_p): Add prototype.
11411 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
11412
11413 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
11414 arrows.
11415 (update_frame): Do flush_display if force_flush_display_p to
11416 ensure display (specifically fringes) are updated in a timely
11417 manner when resizing the frame by dragging the mouse.
11418 (update_window_line): Update row if overlay arrow changed.
11419 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
11420 or overlay arrow changed.
11421
11422 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
11423 syms_of_fringe, and init_fringe.
11424
11425 * frame.h (struct frame): New member force_flush_display_p.
11426
11427 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
11428 Add prototypes.
11429
11430 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
11431 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
11432 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
11433 Use cursor color for displaying cursor in fringe.
11434 (x_redisplay_interface): Add null handlers for
11435 define_fringe_bitmap and destroy_fringe_bitmap functions.
11436
11437 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
11438 xterm.c to handle overlayed fringe bitmaps and to use cursor color
11439 for displaying cursor in fringe.
11440 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
11441 specific functions to define and destroy fringe bitmaps in fringe_bmp.
11442 (w32_redisplay_interface): Add them to redisplay_interface.
11443 (w32_term_init): Call w32_init_fringe instead of explicitly
11444 defining fringe bitmaps in fringe_bmp array.
11445 (x_delete_display): Call w32_reset_fringes instead of explicitly
11446 destroying fringe bitmaps in fringe_bmp array.
11447
11448 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
11449 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
11450 (continued_bits, continuation_bits, ov_bits, first_line_bits)
11451 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
11452 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
11453 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
11454 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
11455 Move fringe handling vars and code to new file fringe.c.
11456 (handle_display_prop): Handle left-fringe and right-fringe
11457 display properties; store user fringe bitmaps in iterator.
11458 (move_it_in_display_line_to): Handle cursor in fringe at eob.
11459 (clear_garbaged_frames): Set force_flush_display_p if resized.
11460 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
11461 (display_line): Handle cursor in fringe at eob.
11462 (display_line): Set row user fringe bitmaps from iterator.
11463
11464 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
11465 Use cursor color for displaying cursor in fringe.
11466 (x_redisplay_interface): Add null handlers for
11467 define_fringe_bitmap and destroy_fringe_bitmap functions.
11468
11469 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11470
11471 * macfns.c (Fx_change_window_property): Make doc string and
11472 parameters same as for X version.
11473
11474 * w32fns.c (Fx_change_window_property): Ditto.
11475
11476 2004-02-07 Kim F. Storm <storm@cua.dk>
11477
11478 * xdisp.c (hscroll_window_tree): Position cursor near to right
11479 margin in hscrolled window when jumping to end of line (rather
11480 than centering cursor).
11481
11482 * process.c (wait_reading_process_input): Don't do adaptive read
11483 buffering if waiting for a specific process.
11484
11485 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
11486
11487 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
11488 (Fread_minibuffer, Feval_minibuffer)
11489 (Fread_string, Fread_no_blanks_input)
11490 (Fcompleting_read): Doc fixes.
11491 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
11492 completion-regexp-list. Define Qcase_fold_search and staticpro it.
11493 (read_minibuf): Fix initial comment.
11494 (Ftry_completion, Fall_completions, Ftest_completion): Bind
11495 case-fold-search to the value of completion-ignore-case when
11496 checking completion-regexp-list.
11497 (Fdisplay_completion_list): Make it handle arguments that are
11498 symbols. Doc fix.
11499
11500 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11501
11502 * xterm.h: Add declaration of free_frame_menubar.
11503
11504 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
11505 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
11506 (Fx_change_window_property): Add declaration of parameters type and
11507 format. Remove unused variable cons.
11508
11509 * xselect.c: Include stdio.h.
11510
11511 2004-02-05 Kenichi Handa <handa@m17n.org>
11512
11513 * fns.c (Fset_char_table_range): Fix previous change.
11514
11515 * buffer.c (Fset_buffer_multibyte): Fix docstring.
11516
11517 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
11518
11519 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
11520
11521 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
11522
11523 * keymap.c (Vmouse_events): Rename from Vmenu_events.
11524 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
11525
11526 2004-02-04 Kenichi Handa <handa@m17n.org>
11527
11528 * fns.c (Fset_char_table_range): Handle charsets ascii,
11529 eight-bit-control, and eight-bit-graphic correctly.
11530
11531 2004-02-03 Jason Rumney <jasonr@gnu.org>
11532
11533 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
11534
11535 * w32fns.c (x_to_w32_font): Likewise.
11536
11537 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11538
11539 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
11540 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
11541
11542 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
11543 ClientMessages.
11544
11545 * xselect.c: Include termhooks.h and X11/Xproto.h
11546 (x_check_property_data, x_fill_property_data)
11547 (x_property_data_to_lisp, mouse_position_for_drop)
11548 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
11549 (Fx_send_client_event): Move here from xfns.c.
11550 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
11551
11552 * xfns.c (x-send-client-message): Move to xselect.c
11553 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
11554 OUTER_P.
11555 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
11556 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
11557 if vector_ret_p is true.
11558 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
11559
11560 2004-02-02 Eli Zaretskii <eliz@gnu.org>
11561
11562 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
11563 basename of FILE relative to it, not FILE itself.
11564
11565 2004-02-02 Kenichi Handa <handa@m17n.org>
11566
11567 * coding.c (coding_restore_composition): Check invalid
11568 composition data more rigidly.
11569
11570 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
11571
11572 * fileio.c (Fread_file_name_internal): Correctly handle the case
11573 where insert-default-directory is nil.
11574 (Fread_file_name): Always return an empty string if the user exits
11575 with an empty minibuffer. Adapt the docstring accordingly.
11576 (syms_of_fileio): Adapt the docstring of insert-default-directory
11577 to the change in Fread_file_name.
11578
11579 2004-01-29 Eli Zaretskii <eliz@gnu.org>
11580
11581 * alloca.c [!alloca]: Fix the prototype for xfree.
11582
11583 2004-01-29 Kenichi Handa <handa@m17n.org>
11584
11585 * fns.c (string_char_to_byte): Optimize for ASCII only string.
11586 (string_byte_to_char): Likewise.
11587
11588 2004-01-28 Peter Runestig <peter@runestig.com>
11589
11590 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
11591
11592 2004-01-27 Steven Tamm <steventamm@mac.com>
11593
11594 * unexmacosx.c (unexec_copy): Do not copy more than was
11595 requested to prevent overwriting during unexec.
11596
11597 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11598
11599 * process.c (sigchld_handler): Add comment about not calling malloc.
11600
11601 * process.h: Add extern to synch_process_termsig.
11602
11603 2004-01-27 Steven Tamm <steventamm@mac.com>
11604
11605 * macterm.c (make_mac_frame, make_mac_terminal_frame):
11606 Move setting of scroll bars from make_mac_frame to
11607 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
11608
11609 2004-01-26 Richard M. Stallman <rms@gnu.org>
11610
11611 * search.c (Freplace_match): Handle nonexistent
11612 back-references properly.
11613
11614 2004-01-03 Richard M. Stallman <rms@gnu.org>
11615
11616 * window.c (decode_any_window): New function.
11617 (Fwindow_height, Fwindow_width, Fwindow_edges)
11618 (Fwindow_pixel_edges, Fwindow_inside_edges)
11619 (Fwindow_inside_pixel_edges): Use decode_any_window.
11620
11621 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11622
11623 * process.h: synch_process_termsig new variable.
11624
11625 * callproc.c: Define synch_process_termsig.
11626 (Fcall_process): Initiate synch_process_termsig to zero and
11627 check if non-zero and get signal name after subprocess has ended.
11628
11629 * process.c (sigchld_handler): Set synch_process_termsig
11630 if terminated by a signal. synch_process_death setting removed.
11631
11632 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
11633
11634 2004-01-26 Andreas Schwab <schwab@suse.de>
11635
11636 * print.c (print_preprocess): Declare size as EMACS_INT to not
11637 lose bits.
11638 (print_object): Likewise.
11639 * alloc.c (Fpurecopy): Likewise.
11640
11641 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
11642
11643 * window.c (Fwindow_minibuffer_p): Doc fix.
11644
11645 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
11646
11647 * editfns.c (Fformat): Make both passes accept the same set of flags.
11648
11649 2004-01-23 Kenichi Handa <handa@m17n.org>
11650
11651 * fns.c (Fmd5): If OBJECT is a buffer different from the current
11652 one, set buffer to OBJECT temporarily.
11653
11654 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
11655
11656 * keyboard.c (kbd_buffer_gcpro): Remove.
11657 (kbd_buffer_store_event, clear_event, Fdiscard_input)
11658 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
11659 Don't initialize and/or maintain the variable any more. It was made
11660 redundant by my commit of 2003-06-15.
11661
11662 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
11663
11664 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11665
11666 * lisp.h: Add undef DECL_ALIGN.
11667
11668 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
11669
11670 * process.c (wait_reading_process_input) [SYNC_INPUT]:
11671 Check interrupt_input_pending explicitly.
11672
11673 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
11674
11675 * keyboard.c (handle_async_input): New fun,
11676 extracted from input_available_signal.
11677 (input_available_signal, reinvoke_input_signal): Use it.
11678
11679 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
11680
11681 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
11682
11683 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
11684 manipulation macros for when tags are in the lower bits.
11685 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
11686 (DECL_ALIGN): New macro.
11687 (DEFUN): Use it.
11688
11689 * lisp.h [ENABLE_CHECKING]: Don't force union type.
11690
11691 * s/darwin.h (__attribute__): Remove outdated workaround.
11692
11693 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
11694
11695 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
11696 Don't check range of malloc address.
11697 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
11698
11699 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
11700
11701 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
11702
11703 2004-01-19 Kenichi Handa <handa@m17n.org>
11704
11705 * fontset.c (fontset_font_pattern): Fix previous change.
11706
11707 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
11708
11709 * xdisp.c (Voverflow_newline_into_fringe)
11710 (move_it_in_display_line_to, redisplay_internal)
11711 (update_window_fringes, redisplay_window, display_line, window):
11712 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
11713 that it compiles without a window-system.
11714 * dispnew.c (direct_output_for_insert, update_window): Likewise.
11715
11716 2004-01-16 Kim F. Storm <storm@cua.dk>
11717
11718 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
11719
11720 * buffer.c (init_buffer_once): Set buffer_defaults and
11721 buffer_local_flags for indicate_buffer_boundaries.
11722 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
11723 default- variable for it.
11724
11725 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
11726 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
11727 New members exact_window_width_line_p and cursor_in_fringe_p for
11728 overflowing newlines into right fringe.
11729 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
11730 and indicate_bottom_line_p for buffer boundaries and scrolling.
11731 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
11732 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
11733 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
11734 and HOLLOW_SQUARE_BITMAP.
11735 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
11736 Add prototypes.
11737
11738 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
11739 instead of related indicator fields.
11740 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
11741 (direct_output_for_insert): Handle exact width lines like
11742 contined lines. Call update_window_fringes.
11743 (update_window): Call update_window_fringes.
11744 (scrolling_window): Don't skip desired rows with changed bitmaps.
11745 Check if fringe bitmaps changes when assigning scrolled rows.
11746
11747 * xdisp.c (Voverflow_newline_into_fringe): New variable.
11748 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
11749 (move_it_in_display_line_to): Overflow newline into fringe for
11750 rows that are exactly as wide as the window.
11751 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
11752 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
11753 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
11754 (fringe_bitmaps): Add new bitmaps.
11755 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
11756 Select proper bitmap for cursor in fringe when appropriate.
11757 Handle alignment of bitmap to top or bottom of row.
11758 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
11759 done by update_window_fringes.
11760 (update_window_fringes, draw_window_fringes): New functions.
11761 (redisplay_internal): Call update_window_fringes in case only
11762 cursor row is updated.
11763 (redisplay_window): Call update_window_fringes.
11764 Explicitly call draw_window_fringes if redisplay was done using
11765 the current matrix or the overlay arrow is in the window.
11766 (try_window_reusing_current_matrix): Mark scrolled rows for
11767 fringe update (to update buffer-boundaries / scrolling icons).
11768 (find_last_unchanged_at_beg_row): Handle exact width lines line
11769 continued lines.
11770 (display_line): Overflow newline into fringe for rows that are
11771 exactly as wide as the window. Don't append space for newline
11772 in this case.
11773 (notice_overwritten_cursor): Explicitly clear cursor bitmap
11774 in fringe as if it had been overwritten.
11775 (erase_phys_cursor): Erase cursor bitmap in fringe.
11776 (syms_of_xdisp): Mark show-trailing-whitespace and
11777 void-text-area-pointer as user options.
11778 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
11779
11780 * xterm.c (x_update_window_end): Call draw_window_fringes.
11781 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
11782 in row instead of actually drawing fringe bitmaps.
11783 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
11784 (x_draw_window_cursor): Draw cursor in fringe.
11785
11786 * w32term.c (x_update_window_end): Call draw_window_fringes.
11787 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
11788 in row instead of actually drawing fringe bitmaps.
11789 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
11790 (w32_draw_window_cursor): Draw cursor in fringe.
11791
11792 * macterm.c (x_update_window_end): Call draw_window_fringes.
11793 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
11794 in row instead of actually drawing fringe bitmaps.
11795 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
11796 (mac_draw_window_cursor): Draw cursor in fringe.
11797
11798 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11799
11800 * xterm.c (handle_one_xevent): Don't handle characters that are part
11801 of an old style (XLookupString) compose sequence.
11802
11803 2004-01-15 Kenichi Handa <handa@m17n.org>
11804
11805 * search.c (Freplace_match): Use make_multibyte_string or
11806 make_unibyte_string according to the buffer multibyteness.
11807
11808 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
11809
11810 * alloc.c (struct interval_block, struct string_block)
11811 (struct symbol_block, struct marker_block, live_string_p)
11812 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
11813 Better preserve alignment for objects in blocks.
11814 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
11815
11816 * lread.c (defvar_per_buffer): Remove dead declaration.
11817
11818 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
11819 space size.
11820
11821 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11822
11823 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
11824 if a key press should pop down. Only pop down if a key is pressed
11825 outside the menu/dialog.
11826 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
11827 popup_get_selection.
11828 (create_and_show_dialog): Pass 1 for down_on_keypress to
11829 popup_get_selection.
11830
11831 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11832
11833 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
11834 BLOCK/UNBLOCK_INPUT.
11835
11836 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11837
11838 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
11839 specified.
11840
11841 2004-01-08 Kenichi Handa <handa@m17n.org>
11842
11843 * editfns.c (Fformat): Fix '&' to '&&'.
11844
11845 2004-01-08 Andreas Schwab <schwab@suse.de>
11846
11847 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
11848 size if PSEUDOVECTOR_FLAG is set.
11849
11850 2004-01-07 Kenichi Handa <handa@m17n.org>
11851
11852 * charset.c (Fdeclare_equiv_charset): Fix docstring.
11853
11854 * fontset.c (fontset_ref_via_base): Fix previous change.
11855
11856 2004-01-07 Kim F. Storm <storm@cua.dk>
11857
11858 * process.c (read_process_output): Only activate adaptive
11859 buffering if we read less than 256 bytes at a time.
11860
11861 2004-01-06 Kim F. Storm <storm@cua.dk>
11862
11863 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
11864 object and image object. Return glyph width and height.
11865 (mode_line_string, marginal_area_string): Ditto.
11866
11867 * dispextern.h (buffer_posn_from_coords, mode_line_string)
11868 (marginal_area_string): Fix prototypes.
11869
11870 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
11871 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
11872 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
11873
11874 * keyboard.c (make_lispy_position): Use modified mode_line_string,
11875 buffer_posn_from_coords, and marginal_area_string functions to
11876 include both string object and image object in the lispy position.
11877 Also add actual glyph width and height to position.
11878 (read_key_sequence): Use real buffer position from mouse
11879 event to find keymap property even when click is in marginal area.
11880
11881 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
11882 mode_line_string and marginal_area_string functions to handle
11883 both string object and image object properties.
11884
11885 2004-01-06 Andreas Schwab <schwab@suse.de>
11886
11887 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
11888 character.
11889
11890 2004-01-02 Andreas Schwab <schwab@suse.de>
11891
11892 * macterm.c (emacs_options, x_initialized, same_x_server):
11893 Remove unused (and duplicated) definitions.
11894
11895 2004-01-02 Kim F. Storm <storm@cua.dk>
11896
11897 * process.h (struct Lisp_Process): New members for adaptive read
11898 buffering: adaptive_read_buffering, read_output_delay, and
11899 read_output_skip.
11900
11901 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
11902 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
11903 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
11904 (process_output_delay_count, process_output_skip): New vars.
11905 (Vprocess_adaptive_read_buffering): New variable.
11906 (make_process): Initialize adaptive read buffering members.
11907 (Fstart_process): Set adaptive_read_buffering member.
11908 (deactivate_process): Cleanup adaptive read buffering.
11909 (wait_reading_process_input): Temporarily omit delayed
11910 subprocesses from the set of file descriptors to read from;
11911 adjust the select timeout if we skipped any subprocesses.
11912 (read_process_output): Increase adaptive read buffering delay if
11913 we read less than a full buffer; reduce delay when we read a
11914 full buffer.
11915 (send_process): Simplify using local Lisp_Process var.
11916 Reset adaptive read buffering delay after write.
11917 (init_process): Initialize process_output_delay_count and
11918 process_output_skip.
11919 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
11920
11921 2004-01-01 Jason Rumney <jasonr@gnu.org>
11922
11923 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
11924
11925 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
11926
11927 * print.c (Ferror_message_string): Add hyperlink in the docstring
11928 to the definition of `signal' in the Elisp manual.
11929 * eval.c (Fsignal): Ditto.
11930
11931 2003-12-29 James Clark <jjc@jclark.com>
11932
11933 * fns.c (internal_equal): Return t for two NaN arguments.
11934
11935 2003-12-29 Richard M. Stallman <rms@gnu.org>
11936
11937 * data.c (store_symval_forwarding): Handle setting
11938 default-fill-column, etc., by changing the value in
11939 buffers that use the default.
11940
11941 * minibuf.c (Fset_minibuffer_window): Doc fix.
11942
11943 * fileio.c (choose_write_coding_system): Ignore auto_saving
11944 if using the visited file for auto saves.
11945 (Fwrite_region): Don't update SAVE_MODIFF
11946 if auto-saving in visited file.
11947
11948 2003-12-29 Kenichi Handa <handa@m17n.org>
11949
11950 * dispextern.h (face_font_available_p): Extern it.
11951
11952 * fontset.c (Voverriding_fontspec_alist): New variable.
11953 (lookup_overriding_fontspec): New function.
11954 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
11955 (fontset_font_pattern): Likewise.
11956 (regulalize_fontname): New function.
11957 (Fset_fontset_font): Call regulalize_fontname.
11958 (Fset_overriding_fontspec_internal): New function.
11959 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
11960 Defsubr Sset_overriding_fontspec_internal.
11961
11962 * xfaces.c (face_font_available_p): New function.
11963
11964 2003-12-28 Richard M. Stallman <rms@gnu.org>
11965
11966 * buffer.c (Fother_buffer): Don't crash if BUF is nil
11967 or if its name is nil.
11968
11969 * buffer.c (Fkill_buffer): Don't delete auto-save file
11970 if it's the same as the visited file.
11971
11972 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
11973
11974 * coding.c (Fcheck_coding_system): Doc fix.
11975
11976 2003-12-28 Kim F. Storm <storm@cua.dk>
11977
11978 * Makefile.in (eval.o): Depend on dispextern.h.
11979
11980 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
11981 image glyph using image's ascent.
11982 (mode_line_string): Return image glyph as object clicked on.
11983 Adjust y0 for image glyph using image's ascent.
11984
11985 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
11986 (struct glyph): New members, ascent and descent. Used to save
11987 this glyph's ascent and descent, instead of having.
11988 (struct glyph): Declare member face_id using FACE_ID_BITS.
11989 (find_hot_spot): Add prototype.
11990
11991 * keyboard.c (Qimage): Remove extern (now in lisp.h).
11992 (QCmap): Declare extern.
11993 (make_lispy_position): When position is inside image hot-spot,
11994 use hot-spot element's id as posn element.
11995
11996 * lisp.h (IMAGEP): New macro to test for image object type.
11997 (Qimage): Declare extern.
11998
11999 * macfns.c (Qimage): Remove extern (now in lisp.h).
12000 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12001
12002 * macterm.c (Qface, Qmouse_face): Remove unused externs.
12003
12004 * w32fns.c (Qimage): Remove extern (now in lisp.h).
12005 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12006
12007 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
12008
12009 * w32term.c (Qface, Qmouse_face): Remove unused externs.
12010
12011 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
12012 pointer types.
12013 (Qrelative_width, Qalign_to): Remove unused variables.
12014 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
12015 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
12016 image maps.
12017 (x_y_to_hpos_vpos): Return glyph relative coordinates through
12018 new dx and dy args.
12019 Remove buffer_only_p arg (always 0). Simplify code accordingly.
12020 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
12021 than row's ascent and height, to get sensible height on tall rows.
12022 (build_desired_tool_bar_string): Remove Qimage extern.
12023 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
12024 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
12025 image glyph is alone on the last line.
12026 (append_glyph, append_composite_glyph, produce_image_glyph)
12027 (append_stretch_glyph): Set glyph's ascent and descent.
12028 (on_hot_spot_p): New function to check if position is inside an
12029 rectangular, circular, or polygon-shaped image hot-spot,
12030 (find_hot_spot): New function to search for image hot-spot.
12031 (Flookup_image_map): New defun to search for image hot-spot.
12032 (define_frame_cursor1): New aux function to determine frame pointer.
12033 (note_mode_line_or_margin_highlight, note_mouse_highlight):
12034 Handle `pointer' text property and :pointer image property to
12035 control frame pointer shape. Detect image hot-spots for pointer
12036 and help_echo properties. Use define_frame_cursor1.
12037 (note_mouse_highlight): Use Vvoid_text_area_pointer.
12038 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
12039 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
12040
12041 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
12042
12043 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
12044 (Qimage): Remove extern (now in lisp.h).
12045 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12046
12047 * xmenu.c (show_help_event): Remove unused code.
12048
12049 * xterm.c (Qface, Qmouse_face): Remove unused externs.
12050 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
12051 row's ascent and descent, to get a sensible height on tall rows.
12052
12053 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
12054
12055 * minibuf.c (Fcompleting_read): Undo previous change.
12056
12057 2003-12-25 Lars Hansen <larsh@math.ku.dk>
12058
12059 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
12060 Arguments GCPRO'ed in call to file name handler.
12061
12062 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
12063
12064 * termcap.c (tgetst1): Scan for "%pN"; if all
12065 N are continuous in [1,9], remove all "%pN".
12066
12067 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12068
12069 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
12070
12071 * xfaces.c (lface_fully_specified_p): Take into account that
12072 MAC OS always have unspecified stipple.
12073
12074 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
12075
12076 * tparam.c (tparam1): Add handling for `%pN', which
12077 means use param N for the next substitution.
12078
12079 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
12080
12081 * xfaces.c (Fcolor_gray_p): Fix omission bug:
12082 In case `frame' is nil, consult the selected frame.
12083 (Fcolor_supported_p): Likewise.
12084
12085 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
12086
12087 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
12088 Doc fixes.
12089
12090 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
12091 and an integer. Adapt the introductory comment accordingly.
12092 (Fread_from_minibuffer): Delete code moved into read_minibuf.
12093 Doc fix.
12094 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
12095 read_minibuf.
12096 (Fcompleting_read): Delete code moved into read_minibuf.
12097 (Ftest_completion): Make it handle obarrays and hash tables correctly.
12098
12099 2003-12-03 Kenichi Handa <handa@m17n.org>
12100
12101 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
12102 encoding sequence.
12103
12104 2003-12-01 Kenichi Handa <handa@m17n.org>
12105
12106 * composite.c (syms_of_composite): Don't make the compostion hash
12107 table week.
12108
12109 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
12110
12111 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
12112 * textprop.c (Fget_char_property_and_overlay): New function.
12113 (syms_of_textprop): Defsubr it.
12114
12115 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12116
12117 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
12118 to compile on terminal configuration.
12119
12120 * fileio.c (Fread_file_name): Check use_file_dialog also before
12121 calling Fx_file_dialog.
12122
12123 * fns.c (use_file_dialog): New variable.
12124 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
12125
12126 2003-11-29 Kim F. Storm <storm@cua.dk>
12127
12128 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
12129 (syms_of_msdos): Don't intern and staticpro them.
12130
12131 2003-11-27 Kim F. Storm <storm@cua.dk>
12132
12133 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
12134 coordinates relative to glyph at posn. If glyph is an image,
12135 return that as object at posn. Callers changed.
12136 (mode_line_string, marginal_area_string): Calculate and return
12137 pixel coordinates relative to glyph. Callers changed.
12138
12139 * dispextern.h (buffer_posn_from_coords, mode_line_string)
12140 (marginal_area_string): Fix prototypes.
12141 (window_box_left_offset, window_box_right_offset): Add prototypes.
12142
12143 * frame.h (get_specified_cursor_type, get_window_cursor_type):
12144 Remove prototypes.
12145
12146 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
12147
12148 * keyboard.c (make_lispy_position): Add x and y coordinates
12149 relative to the current glyph as 7th element of position.
12150 If glyph is an image, return it in the object element.
12151 (read_key_sequence): Skip checks for keymap property in cases
12152 where POSN_STRING is not a string (e.g. an image).
12153
12154 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
12155 (Vshow_text_cursor_in_void): New variable.
12156 (glyph_to_pixel_coords): Don't use negative hpos.
12157 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
12158 (append_stretch_glyph): Change ascent arg to be actual value
12159 in pixels rather than ratio to height. Callers changed.
12160 (calc_pixel_width_or_height): New aux function, implementing
12161 pixel based artihmetic for glyph widths and heights.
12162 (produce_stretch_glyph): Use calc_pixel_width_or_height for
12163 :width, :height, :align-to, and :ascent, thus allowing these to
12164 be specified in pixels as well as multiples of characters.
12165 Don't produce stretch glyphs with zero width or height.
12166 (get_specified_cursor_type): Declare static.
12167 (get_window_cursor_type): Declare static. Add glyph arg to be
12168 able to know when cursor is on an image; always substitute
12169 hollow-box cursor for filled-box cursor on images, to avoid
12170 negative images and flicker when blinking the cursor.
12171 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
12172 (note_mode_line_or_margin_highlight): Use non-text cursor rather
12173 than vertical scroll-bar cursor in display margins.
12174 (note_mouse_highlight): Use non-text cursor rather than text
12175 cursor in fringes and over images in the text area.
12176 Use non-text cursor when mouse pointer is outside editable text,
12177 i.e. in the void after end-of-line or end-of-buffer; this was
12178 already done for W32, but is now standard for all systems --
12179 user can toggle show-text-cursor-in-void to get old behaviour.
12180 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
12181 Vdisplay_pixels_per_inch.
12182
12183 2003-11-25 Andreas Schwab <schwab@suse.de>
12184
12185 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
12186 EMACS_INT to not lose bits.
12187 (Ffillarray): Don't set bits beyond the size of a bool vector.
12188
12189 2003-11-25 Kim F. Storm <storm@cua.dk>
12190
12191 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
12192 define this defun on systems that cannot use stderr as lvalue.
12193
12194 2003-11-24 Gerd Moellmann <gerd@gnu.org>
12195
12196 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
12197 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
12198 ld's default is incompatible with unexec.
12199
12200 2003-11-23 Kim F. Storm <storm@cua.dk>
12201
12202 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
12203 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
12204 (Fforce_window_update): New defun.
12205 (syms_of_window): Defsubr it.
12206 (Fset_window_margins, Fset_window_fringes): Doc fix.
12207
12208 * print.c (Fredirect_debugging_output): New defun.
12209 (syms_of_print): Defsubr it.
12210
12211 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
12212
12213 * fns.c (Fset_char_table_parent): Doc fix.
12214
12215 2003-11-22 Kim F. Storm <storm@cua.dk>
12216
12217 * dispnew.c (buffer_posn_from_coords): Return actual row/column
12218 for glyph clicked on, rather than (unused) pixel positions.
12219 (mode_line_string, marginal_area_string): Change X and Y args to
12220 pointers for returning actual row/column for glyph clicked on.
12221 Simplify and optimize loops.
12222
12223 * dispextern.h (mode_line_string, marginal_area_string):
12224 Update prototypes.
12225
12226 * keyboard.c (make_lispy_position): New function for generating
12227 mouse click positions from frame and pixel coordinates.
12228 Enhanced to return buffer position and actual row/column for
12229 events outside the text area using updated mode_line_string and
12230 marginal_area_string functions.
12231 Return left-fringe and right-fringe clicks as such, rather than
12232 clicks in text area.
12233 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
12234 pixel_to_glyph_coords, as we never use the results.
12235 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
12236 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
12237 Eliminate unused code in WHEEL_EVENT handling.
12238 (make_lispy_movement): Use make_lispy_position.
12239
12240 * window.c (coordinates_in_window): Remove redundant tests.
12241 Fix returned X pixel value for left-margin.
12242
12243 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
12244 mode_line_string and marginal_area_string parameters.
12245
12246 2003-11-22 Lars Hansen <larsh@math.ku.dk>
12247
12248 * w32.c (struct the_group, getgrgid): Add.
12249 * mac.c (struct my_group, getgrgid): Add.
12250
12251 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12252
12253 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
12254
12255 2003-11-21 Lars Hansen <larsh@math.ku.dk>
12256
12257 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
12258 include in call to file name handler. Optionally translate numeric
12259 UID and GID to strings. Update docstring.
12260 (directory_files_internal): Add parameter ID-FORMAT.
12261 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
12262 include in call to file name handler and call to
12263 directory_files_internal. Update Docstring.
12264 (Fdirectory_files): Add dummy parameter in call to
12265 directory_files_internal.
12266 * lisp.h (Qinteger): Add.
12267 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
12268 (Ffile_attributes): Add parameter.
12269 * data.c (Qinteger): Export.
12270
12271 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12272
12273 * fns.c (Freverse, Fnreverse): Doc fixes.
12274
12275 2003-11-19 Kim F. Storm <storm@cua.dk>
12276
12277 * xdisp.c (init_iterator): Initialize it->start to position
12278 before reseating (in case start position is invisible).
12279 (init_to_row_start): Set it->start to row-start.
12280 (redisplay_window): Accept optional_new_start if start position
12281 is invisible (in which case IT_CHARPOS overshoots PT).
12282 (display_line): Setup row->start from it->start (rather than
12283 it->current which is wrong if first char on line is invisible).
12284 When done, reseat it->start to it->current (= start of next row).
12285 (expose_area): Fix exposure of text area when first char (e.g. TAB)
12286 is only partially visible.
12287
12288 * dispextern.h (struct it): New member start.
12289
12290 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
12291
12292 * alloc.c (make_float, Fcons): Clear the markbit at init time.
12293 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
12294 of block_index outside of the macro call.
12295 (Fgarbage_collect): Remove null code.
12296
12297 * m/amdx86-64.h: Don't redefine XPNTR.
12298
12299 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
12300 of VALMASK.
12301
12302 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
12303 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
12304 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
12305
12306 * lisp.h (VALMASK): Only define for non-union type.
12307 (MARKBIT): Remove.
12308 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
12309 (XTYPE): Define unconditionally.
12310 (XSETTYPE): Remove one more remnant.
12311 (EQ): Define differently for the union and non-union cases.
12312 (INTMASK): New bit mask.
12313 (struct Lisp_Marker): Move down to prepare for upcoming patch.
12314 (GC_EQ): Delegate to EQ.
12315
12316 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
12317
12318 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12319
12320 * xterm.c (x_window_to_scroll_bar): Move check of display to
12321 where window_id is compared.
12322
12323 2003-11-17 Kim F. Storm <storm@cua.dk>
12324
12325 * dispextern.h (struct it): New member first_vpos.
12326
12327 * xdisp.c (start_display): Set it->first_vpos.
12328 (try_window_id): Use first_vpos to start display in first _text_
12329 line if no reusable lines at start of window with header line.
12330
12331 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12332
12333 * w32fns.c (XPutPixel):
12334 * w32bdf.c (w32_init_bdf_font):
12335 * sunfns.c (sel_read):
12336 * process.c (Fmake_network_process):
12337 * frame.c (store_frame_param):
12338 * fontset.c (Fset_fontset_font):
12339 * emacs.c (shut_down_emacs):
12340 * ccl.c (ccl_driver): Remove period at end of error message.
12341
12342 * config.in: Regenerate.
12343
12344 * xfns.c (x_window_to_frame, x_any_window_to_frame)
12345 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
12346 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
12347 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
12348 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
12349
12350 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
12351
12352 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
12353 (XTmouse_position, handle_one_xevent): Pass Display* to
12354 x_window_to_scroll_bar.
12355 (x_window_to_scroll_bar): Take a Display* argument.
12356 Check that display for frame is equal to Display* argument.
12357 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
12358 x_display_info_for_display instead. Use Display in xev instead
12359 of GDK_DISPLAY.
12360 (x_dispatch_event): Call x_display_info_for_display.
12361 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
12362 (x_connection_closed): Call xg_display_close for GTK.
12363 (x_term_init): Call xg_display_open for additional displays.
12364 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
12365 for GTK.
12366
12367 * xmenu.c (single_menu_item, mouse_position_for_popup)
12368 (x_activate_menubar): Formatting adjustments.
12369
12370 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
12371 adjustments.
12372
12373 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
12374 (xg_display_close, xg_create_default_cursor)
12375 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
12376 handling.
12377 (xg_left_ptr_cursor): Remove.
12378 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
12379 cursor here.
12380 (xg_win_to_widget): Take Display* argument, call
12381 gdk_xid_table_lookup_for_display.
12382 (xg_create_frame_widgets, xg_get_file_name, create_menus)
12383 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
12384 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
12385 in FRAME_X_DISPLAY_INFO.
12386 (xg_get_scroll_id_for_window): Take Display* argument.
12387 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
12388 (xg_initialize): Remove xg_left_ptr_cursor.
12389
12390 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
12391 Display* argument.
12392 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
12393
12394 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12395
12396 * xterm.c (x_detect_focus_change): Do not change focus frame for
12397 Enter/LeaveNotify if the current focus frame has explicit focus.
12398
12399 2003-11-14 Kim F. Storm <storm@cua.dk>
12400
12401 * dispnew.c (update_text_area): Fix redisplay error when hscroll
12402 is active and first glyph is only partially visible.
12403
12404 2003-11-13 Kenichi Handa <handa@m17n.org>
12405
12406 * xdisp.c (select_frame_for_redisplay): New function.
12407 (redisplay_internal): Record also selected_frame for
12408 unwind_redisplay. Call select_frame_for_redisplay before
12409 redrawing each frame.
12410 (unwind_redisplay): Argument changed to a cons.
12411
12412 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
12413
12414 * fns.c (Fstring_to_multibyte): Doc fix.
12415
12416 2003-11-11 Kenichi Handa <handa@m17n.org>
12417
12418 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
12419
12420 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12421
12422 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
12423 program specified positions.
12424
12425 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12426
12427 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
12428
12429 2003-11-08 Kenichi Handa <handa@m17n.org>
12430
12431 * Makefile.in (lisp): Add kannada.el.
12432 (shortlisp): Likewise.
12433
12434 2003-11-07 Kenichi Handa <handa@m17n.org>
12435
12436 * coding.c (coding_allocate_composition_data):
12437 Reset coding->composing to COMPOSITION_NO.
12438 (coding_restore_composition): Detect invalid composition data.
12439 Give Fstring and Fvector a Lispy integer, not C int.
12440
12441 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
12442
12443 * floatfns.c (Flogb): Don't use VALMASK.
12444
12445 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
12446 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
12447
12448 * lisp.h (XINT): Move the cast to clarify what is going on.
12449 (GCTYPEMASK, XSETTYPE): Remove.
12450 (XGCTYPE): Make it an alias of XTYPE.
12451
12452 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12453
12454 * xterm.c (x_term_init): Fix formatting.
12455
12456 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12457
12458 * gtkutil.h (xg_have_tear_offs): Declare.
12459 (xg_keep_popup, xg_did_tearoff): Remove.
12460
12461 * gtkutil.c: Remove variable xg_did_tearoff.
12462 (xg_have_tear_offs): New function.
12463 (tearoff_remove): Just decrease xg_detached_menus.
12464 (tearoff_activate): Increase xg_detached_menus and call
12465 tearoff_remove when tearoff is removed.
12466 (xg_keep_popup): Remove function.
12467 (create_menus): Give add_tearoff_p as argument to recursive
12468 call to create_menus.
12469 (xg_create_widget): Use variables instead of multiple
12470 strcmp. Tell create_menus to create tear off only for
12471 menu bar menus.
12472 (xg_update_menubar): Change title for a detached menu also.
12473 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
12474 of deep_p.
12475 (xg_initialize): Initialize xg_detached_menus, remove
12476 initialization of xg_did_tearoff.
12477
12478 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
12479 xg_have_tear_offs returns non-zero.
12480 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
12481 call to xg_keep_popup.
12482
12483 2003-11-01 Andrew Choi <akochoi@shaw.ca>
12484
12485 * macterm.c (XTread_socket): Handle menubar selection and grow
12486 window only for mouseDown events.
12487
12488 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12489
12490 * xterm.c (x_term_init): For GTK part, increase x_initialized
12491 to check for more than one display. Use error instead of return 0.
12492
12493 2003-10-31 Andrew Choi <akochoi@shaw.ca>
12494
12495 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
12496 (copy_dysymtab): Call it.
12497
12498 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
12499
12500 * eval.c (Fdefvaralias): Doc fix.
12501
12502 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
12503
12504 * data.c (Fsetplist): Doc fix.
12505
12506 2003-10-14 Lute Kamstra <lute@gnu.org>
12507
12508 * window.c (Fset_window_fringes): Clarify docstring.
12509
12510 2003-10-14 Kim F. Storm <storm@cua.dk>
12511
12512 * window.c (Fset_window_margins): Simplify arg checking.
12513
12514 2003-10-13 Richard M. Stallman <rms@gnu.org>
12515
12516 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
12517 (print_partial_compiled_pattern): Replace assert with a printout.
12518 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
12519
12520 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
12521
12522 * window.c (Fset_window_margins): Allow only integers as args.
12523 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
12524 Doc fixes.
12525
12526 2003-10-13 Lute Kamstra <lute@gnu.org>
12527
12528 * window.c (Fset_window_fringes): Elaborate docstring.
12529
12530 2003-10-12 Andrew Choi <akochoi@shaw.ca>
12531
12532 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
12533
12534 * s/darwin.h (GC_MARK_STACK): Define.
12535
12536 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12537
12538 * window.c (shrink_windows): New function.
12539 (size_window): Call shrink_windows to calculate window sizes when
12540 shrinking frame with more than one window.
12541
12542 2003-10-12 Kim F. Storm <storm@cua.dk>
12543
12544 * xdisp.c (compute_fringe_widths): Doc fix.
12545
12546 2003-10-08 Kenichi Handa <handa@m17n.org>
12547
12548 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
12549
12550 2003-10-07 Kenichi Handa <handa@m17n.org>
12551
12552 * coding.c (Qcoding_system_define_form): New variable.
12553 (syms_of_coding): Intern and staticpro it.
12554 (Fcheck_coding_system): Try to autoload the definition of
12555 CODING-SYSTEM.
12556
12557 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
12558
12559 * fns.c (Frequire): Doc fix.
12560
12561 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12562
12563 * xfns.c (Fx_send_client_event): New function as a base for
12564 manipulating extended window manager hints.
12565 (Fx_send_client_event): Remove unused variable s.
12566
12567 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
12568 that function is removed.
12569
12570 * xterm.c (x_set_offset): Use move_offset_left/top instead of
12571 x/y_pixels_outer_diff.
12572 (x_check_expected_move): Calculate move_offset_left/top.
12573
12574 * xterm.h (struct x_output): New members: move_offset_top/left.
12575
12576 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
12577 call x_set_offset directly.
12578
12579 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
12580
12581 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
12582
12583 * xterm.c (x_delete_display): Free font names and font_encoder
12584 in dpyinfo->font_table.
12585
12586 * xfns.c (Fx_close_connection): Only call XFreeFont here.
12587 Move xfree of font names to x_delete_display.
12588
12589 * xterm.h (struct x_display_info): New member, wm_type.
12590 (struct x_output): New members, expected_top/left and
12591 check_expected_move.
12592
12593 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
12594 is received.
12595 (handle_one_xevent): Rename x_check_expected_move from
12596 x_check_fullscreen_move.
12597 (x_set_offset): Only add WM decoration sizes to modified_top/left
12598 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
12599 (x_check_expected_move): Rename from x_check_fullscreen_move.
12600 Removed fullscreen specific code. Use check_expected_move,
12601 expected_left/top instead. Also, set wm_type.
12602 (x_term_init): Initialize wm_type to unknown.
12603
12604 * frame.c (x_fullscreen_move): Remove addition of WM decoration
12605 sizes to move_x/y.
12606
12607 2003-10-03 Kenichi Handa <handa@m17n.org>
12608
12609 * macterm.c (x_load_font): Clear all members of FONTP before start
12610 filling them.
12611
12612 2003-10-02 Kenichi Handa <handa@m17n.org>
12613
12614 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
12615 before calling find_ccl_program_func. Call find_ccl_program_func
12616 only when fontp->font_encoder is not NULL.
12617
12618 * xterm.c (x_load_font): Clear all members of FONTP before start
12619 filling them.
12620
12621 2003-10-03 John Paul Wallington <jpw@gnu.org>
12622
12623 * keymap.c (map_keymap): Don't abort when binding is a vector.
12624
12625 2003-10-02 Jason Rumney <jasonr@gnu.org>
12626
12627 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
12628 Sync dependencies with Makefile.in.
12629 (alloca.o): Remove.
12630
12631 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
12632 filling them.
12633
12634 * w32bdf.c (w32_load_bdf_font): Likewise.
12635
12636 2003-09-30 Richard M. Stallman <rms@gnu.org>
12637
12638 * term.c (set_tty_color_mode): Calculate current_mode_spec
12639 regardless of value of VAL.
12640
12641 * intervals.c (graft_intervals_into_buffer):
12642 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
12643 Handle over_used when splitting UNDER.
12644
12645 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12646
12647 * regex.c (regex_compile): Free the stack when returning from function.
12648
12649 2003-09-28 Kenichi Handa <handa@m17n.org>
12650
12651 * fontset.c (Finternal_char_font): Change return value to
12652 cons (FONT-NAME . GLYPH-CODE).
12653
12654 2003-09-28 Eli Zaretskii <eliz@gnu.org>
12655
12656 * term.c (tty_setup_colors): Treat any negative argument as -1.
12657
12658 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
12659
12660 * process.c (send_process): Delete unused temp_buf.
12661
12662 2003-09-26 Dave Love <fx@gnu.org>
12663
12664 * xterm.c (x_bitmap_mask): Declare.
12665
12666 2003-09-25 Dave Love <fx@gnu.org>
12667
12668 * Makefile.in (fns.o): Depend on md5.h.
12669
12670 2003-09-25 Kim F. Storm <storm@cua.dk>
12671
12672 * window.c (set_window_buffer): Fix redisplay problems when
12673 switching between buffers with different display margin widths.
12674
12675 2003-09-23 Kim F. Storm <storm@cua.dk>
12676
12677 * process.c (set_socket_option): Fix :bindtodevice option.
12678 (Fset_network_process_option): Update process contact list when
12679 setting option succeeds.
12680 (Fmake_network_process): Doc fix.
12681
12682 2003-09-23 Dave Love <fx@gnu.org>
12683
12684 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
12685
12686 2003-09-22 Eli Zaretskii <eliz@gnu.org>
12687
12688 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
12689 color mode is an integer number (it could be -1).
12690
12691 2003-09-22 Richard M. Stallman <rms@gnu.org>
12692
12693 * intervals.c (graft_intervals_into_buffer): Correct the main loop
12694 in the case where OVER is longer than UNDER.
12695
12696 2003-09-22 Masatake YAMATO <jet@gyve.org>
12697
12698 * window.c (Fset_window_scroll_bars): Validate the value of
12699 `vertical_type'.
12700
12701 2003-09-21 Kim F. Storm <storm@cua.dk>
12702
12703 * frame.c (Vdefault_frame_scroll_bars): New variable.
12704 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
12705 (syms_of_frame): DEFVAR_LISP it, and initialize according to
12706 window-system default scroll bar position.
12707
12708 * window.c (Fwindow_scroll_bars): Doc fix.
12709
12710 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12711
12712 * xterm.c (x_set_offset): Take window manager decorations into account.
12713
12714 2003-09-19 Richard M. Stallman <rms@gnu.org>
12715
12716 * atimer.h: Don't include lisp.h.
12717 (P_): Define it here (as well as elsewhere).
12718
12719 * print.c (Fprin1_to_string): Move the PRINTPREPARE
12720 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
12721
12722 * data.c (Fvariable_binding_locus): New function.
12723 (syms_of_data): defsubr it.
12724 (Flocal_variable_p): Delete duplicate call to indirect_variable.
12725
12726 2003-09-18 Dave Love <fx@gnu.org>
12727
12728 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
12729
12730 * process.c (Fnetwork_interface_info): Fix type error.
12731 (Fnetwork_interface_list): Doc fix.
12732 (read_process_output, read_process_output): Delete unused var.
12733
12734 2003-09-17 Kim F. Storm <storm@cua.dk>
12735
12736 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
12737 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
12738 (Fnetwork_interface_info): Check that ifreq struct has required
12739 fields before accessing them; this requires that those fields are
12740 defined as macros, which may be too restrictive on some platforms,
12741 but it is better than failing on other platforms.
12742 (syms_of_process): Only defsubr above fns when included.
12743
12744 2003-09-17 Dave Love <fx@gnu.org>
12745
12746 * unexalpha.c: Don't include varargs.h.
12747
12748 2003-09-17 Kim F. Storm <storm@cua.dk>
12749
12750 * process.c (Fset_process_sentinel): Add sentinel to childp plist
12751 for network process.
12752 (socket_options): Add `:' prefix to option names. Add optbit field.
12753 (set_socket_option): Remove no_error arg and special handling of s < 0.
12754 Return 1<<optbit for known option, 0 for unknown.
12755 Do not interpret 0 as false for boolean option (only nil).
12756 Pass failed option and value to report_file_error.
12757 (Fset_network_process_options): Replace by Fset_network_process_option.
12758 (Fset_network_process_option): New function to set just one option.
12759 (Fmake_network_process): Allow :coding arg to be a cons.
12760 Allow :server arg to be an integer specifying backlog size.
12761 Remove :options arg, and allow options to be specified directly
12762 as :KEY, VALUE pairs. Parse these options before binding socket.
12763 As before, :reuseaddr t is default for a server process, but this
12764 can now be disabled by specifying :reuseaddr nil.
12765 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
12766 (init_process): Availability of network options is now checked with
12767 simpler syntax (featurep 'make-network-process :OPTION); use loop to
12768 setup features.
12769 (syms_of_process): Fix defsubr's for the replaced functions.
12770
12771 2003-09-16 Dave Love <fx@gnu.org>
12772
12773 * Makefile.in: Depend on coding.h.
12774
12775 2003-09-14 Kim F. Storm <storm@cua.dk>
12776
12777 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
12778 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
12779 (syms_of_process): Defsubr them.
12780
12781 * config.in: Regenerate.
12782
12783 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
12784
12785 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
12786 * m/news-r6.h (XUNMARK): Remove.
12787 * m/mips.h (XUNMARK): Remove.
12788 * m/mips-siemens.h (XUNMARK): Remove.
12789 * m/iris4d.h (XUNMARK): Remove.
12790 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
12791
12792 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
12793
12794 * lisp.h (VALBITS): Don't remove 1 for the markbit.
12795 (union Lisp_Object): Use unsigned int for types. Remove markbit.
12796 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
12797 (XTYPE): Use unsigned right-shift.
12798 (XMARKBIT, XMARK, XUNMARK): Remove.
12799
12800 * alloc.c (init_intervals, init_symbol, init_marker):
12801 Don't preallocate anything.
12802 (Fgarbage_collect, mark_object): Ignore the markbit.
12803
12804 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
12805
12806 2003-09-08 Lute Kamstra <lute@gnu.org>
12807
12808 * xdisp.c (pint2hrstr): New function.
12809 (decode_mode_spec): Add `%i' and `%I' specs.
12810 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
12811 for `mode-line-format'.
12812
12813 2003-09-07 Andreas Schwab <schwab@suse.de>
12814
12815 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
12816 avoid warning.
12817
12818 2003-09-07 Eli Zaretskii <eliz@gnu.org>
12819
12820 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
12821
12822 2003-09-03 Kim F. Storm <storm@cua.dk>
12823
12824 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
12825 change (superseded by 2002-08-30 change); the default blink-off
12826 cursor is now again "no cursor".
12827
12828 2003-09-01 Jason Rumney <jasonr@gnu.org>
12829
12830 * makefile.w32-in (alloca.o): Remove.
12831 (coding.o): Depend on intervals.h
12832 (emacs.o, bytecode.o): Depend on window.h
12833
12834 2003-09-01 Dave Love <fx@gnu.org>
12835
12836 * Makefile.in (alloca.o): Remove commands.
12837 (coding.o): Depend on intervals.h composite.h window.h.
12838 (emacs.o): Depend on window.h keyboard.h keymap.h.
12839 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
12840 (bytecode.o): Depend on window.h.
12841
12842 2003-08-31 Jason Rumney <jasonr@gnu.org>
12843
12844 * w32term.c (w32_per_char_metric): Allow cached metrics to be
12845 returned even when font_type is unknown.
12846
12847 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
12848
12849 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12850
12851 * xterm.c (x_term_init): Initialize new fields in x_display_info.
12852
12853 * xterm.h (struct x_display_info): Add red/green/blue_bits and
12854 *_offset.
12855
12856 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
12857 calculate pixel value.
12858
12859 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
12860
12861 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
12862 Don't tell redisplay display is accurate when it's actually been
12863 paused for pending input.
12864
12865 2003-08-29 Richard M. Stallman <rms@gnu.org>
12866
12867 * dispnew.c (adjust_glyph_matrix): Call window_box
12868 whenever W is nonzero.
12869
12870 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
12871 (Fkill_local_variable, Fmake_variable_frame_local)
12872 (Flocal_variable_p, Flocal_variable_if_set_p):
12873 Use indirect_variable to trace thru variable aliases.
12874
12875 * config.in: Updated.
12876
12877 * callint.c (Fcall_interactively): Save and restore
12878 Vthis_command, Vthis_original_command, real_this_command,
12879 and current_kboard->Vlast_command.
12880
12881 * abbrev.c (Fexpand_abbrev): Insert before deleting.
12882
12883 2003-08-29 Gerd Moellmann <gerd@gnu.org>
12884
12885 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
12886
12887 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
12888
12889 * coding.c (decode_coding_iso2022): Initialize local variable c2.
12890 (decode_coding_sjis_big5): Likewise.
12891
12892 2003-08-27 Jason Rumney <jasonr@gnu.org>
12893
12894 * w32.c (sys_pipe): Protect against file descriptor overflow.
12895
12896 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
12897
12898 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
12899
12900 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
12901
12902 * xfns.c (Vgtk_version_string): New variable.
12903 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
12904
12905 2003-08-24 Eli Zaretskii <eliz@gnu.org>
12906
12907 * term.c (term_init): Remove `const' from buffer_size's declaration.
12908
12909 * Makefile.in (msdos.o): Depend on intervals.h.
12910
12911 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
12912
12913 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12914
12915 * xterm.h (struct x_display_info): New fields: client_leader_window
12916 and Xatom_wm_client_leader.
12917
12918 * xterm.c (x_initialize): Move call to x_session_initialize to ...
12919 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
12920
12921 * xsmfns.c (create_client_leader_window): New function.
12922 (x_session_initialize): Call create_client_leader_window, take
12923 dpyinfo as argument.
12924
12925 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
12926
12927 * Makefile.in (xsmfns.o): Add more depenedencies.
12928
12929 2003-08-21 Dave Love <fx@gnu.org>
12930
12931 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
12932
12933 2003-08-21 Kenichi Handa <handa@m17n.org>
12934
12935 * term.c (term_init): Fix previous change; don't rely on the
12936 length of `buffer' if TERMINFO is defined.
12937
12938 2003-08-20 Dave Love <fx@gnu.org>
12939
12940 * atimer.h: Include lisp.h.
12941
12942 * lisp.h (EMACS_LISP_H): New.
12943 (popup_activated_flag): Don't declare.
12944
12945 * alloca.c: Some merging with gnulib. Change logic and doc
12946 concerning (x)malloc/(x)free -- no longer Emacs-specific.
12947 [DO_BLOCK_INPUT]: Don't include lisp.h.
12948 (xmalloc, xfree): Declare.
12949 (malloc): Don't declare.
12950
12951 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
12952 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
12953 atimer.h, blockinput.h.
12954
12955 * alloc.c (lisp_align_malloc): Change type of `aligned'.
12956
12957 * alloca.s: Remove.
12958
12959 2003-08-19 Gerd Moellmann <gerd@gnu.org>
12960
12961 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
12962 use -lncurses.
12963
12964 * term.c (term_init): Use a buffer of size 4096 for tgetent since
12965 FreeBSD returns something longer than 2044. Abort if the end of
12966 the buffer is overwritten.
12967
12968 2003-08-19 Miles Bader <miles@gnu.org>
12969
12970 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
12971
12972 2003-08-19 Gerd Moellmann <gerd@gnu.org>
12973
12974 * alloc.c (lisp_align_malloc): Check for memory full when
12975 allocating ablocks, which also avoids freeing a pointer into an
12976 ablocks structure.
12977
12978 * puresize.h (BASE_PURESIZE): Increase to 1100000.
12979
12980 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
12981
12982 2003-08-16 Richard M. Stallman <rms@gnu.org>
12983
12984 * editfns.c (Fencode_time): Doc fix.
12985
12986 2003-08-16 David Ponce <david@dponce.com>
12987
12988 * fileio.c (Fwrite_region): Fix conditional expression to issue
12989 the right message.
12990
12991 2003-08-16 Juri Linkov <juri@jurta.org>
12992
12993 * syntax.c (Fforward_word): Argument changed to optional.
12994 Set default value to 1.
12995
12996 2003-08-15 Kenichi Handa <handa@m17n.org>
12997
12998 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
12999 what autoscaled.
13000 (best_matching_font): Once we find a better scalable font, set
13001 non_scalable_has_exact_height_p to 1.
13002 (try_font_list): Call try_alternative_families to try any family
13003 with the given registry.
13004
13005 2003-08-09 Andreas Schwab <schwab@suse.de>
13006
13007 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
13008
13009 * print.c (print_string): Fix printing of multibyte string with
13010 nontrivial printcharfun.
13011
13012 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13013
13014 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
13015
13016 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
13017
13018 2003-07-31 Kenichi Handa <handa@m17n.org>
13019
13020 * process.c (read_process_output): Return the actually read bytes
13021 instead of the result of decoding.
13022
13023 2003-07-31 Kenichi Handa <handa@m17n.org>
13024
13025 * xterm.h (struct x_bitmap_record): New member have_mask.
13026
13027 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
13028 to 0.
13029 (x_create_bitmap_from_file): Likewise.
13030 (x_destroy_bitmap): Check have_mask member before freeing a mask.
13031 (x_destroy_all_bitmaps): Likewise.
13032 (x_create_bitmap_mask): Set have_mask member to 1.
13033
13034 2003-07-30 Richard M. Stallman <rms@gnu.org>
13035
13036 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
13037
13038 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13039
13040 * gtkutil.c (xg_mark_data): Update calls to mark_object.
13041
13042 2003-07-29 Richard M. Stallman <rms@gnu.org>
13043
13044 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
13045 Conditionalize XIM code on HAVE_XIM.
13046
13047 * fns.c (Fclear_string): New function.
13048 (syms_of_fns): defsubr it.
13049
13050 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13051
13052 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
13053
13054 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
13055
13056 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
13057
13058 * buffer.c (delete_all_overlays): New function.
13059 * buffer.h (delete_all_overlays): Declare.
13060 * coding.c (run_pre_post_conversion_on_str):
13061 * print.c (temp_output_buffer_setup):
13062 * fileio.c (Finsert_file_contents):
13063 * minibuf.c (get_minibuffer): Use it.
13064
13065 2003-07-22 Andrew Choi <akochoi@shaw.ca>
13066
13067 * unexmacosx.c (unexec_regions_sort_compare):
13068 (unexec_regions_merge): New functions. Sort and merge unexec
13069 regions before dumping them.
13070
13071 2003-07-22 Dave Love <fx@gnu.org>
13072
13073 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
13074
13075 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
13076
13077 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
13078 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
13079 MARKBIT as the gcmarkbit for strings.
13080
13081 2003-07-21 Richard M. Stallman <rms@gnu.org>
13082
13083 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
13084
13085 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
13086 (syms_of_fns): Corresponding change.
13087
13088 * alloc.c (syms_of_alloc): Doc fixes.
13089
13090 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
13091
13092 * s/netbsd.h: Use -Wl syntax.
13093
13094 2003-07-17 Richard M. Stallman <rms@gnu.org>
13095
13096 * xterm.c (xim_initialize): Redo 6/24 change.
13097
13098 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
13099
13100 * buffer.c (copy_overlays): Use EMACS_INT for positions.
13101 (Fswitch_to_buffer): Don't signal an error when switching to the same
13102 buffer in a dedicated window.
13103
13104 * alloc.c: Use bitmaps for cons, as was done for floats.
13105 (init_float, init_cons): Let the normal code allocate the first block.
13106 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
13107 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
13108 New macros.
13109 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
13110 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
13111 (live_cons_p): Check the pointer is not past the `conses' array.
13112 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
13113 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
13114 (survives_gc_p): Use CONS_MARKED_P and simplify.
13115 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
13116
13117 2003-07-13 Paul Eggert <eggert@twinsun.com>
13118
13119 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
13120 puts it into BSS instead, at least on Solaris 8 and 9.
13121 This is a valid optimization, and it may occur on other platforms,
13122 so Emacs should not assume that initializing a static variable to
13123 zero puts it into data.
13124 * alloc.c (pure, staticvec):
13125 Initialize these arrays to nonzero, so that they're not
13126 put into BSS by that optimization.
13127
13128 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
13129
13130 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
13131 (lisp_align_malloc): Use posix_memalign is available.
13132 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
13133 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
13134 for consistency. Update users.
13135
13136 2003-07-13 Richard M. Stallman <rms@gnu.org>
13137
13138 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
13139
13140 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
13141
13142 * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
13143 and use the Gtk+ function gtk_window_icon_from_file if available.
13144
13145 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
13146 handle mask of bitmaps.
13147 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
13148 mask property.
13149 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
13150
13151 * xterm.h (xg_set_icon): New function.
13152
13153 2003-07-12 Paul Eggert <eggert@twinsun.com>
13154
13155 * unexelf.c (unexec): Consider a section to precede the .bss
13156 section if its addresses overlap that of .bss.
13157
13158 2003-07-12 Richard M. Stallman <rms@gnu.org>
13159
13160 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
13161
13162 * config.in (HAVE_CRTIN): Add #undef.
13163 (INLINE): Really inline only if OPTIMIZE is defined.
13164
13165 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
13166 END_FILES_1.
13167 (START_FILES_1, END_FILES_1): New macros (conditional).
13168 (LD_SWITCH_SYSTEM_TEMACS): Define.
13169
13170 * s/openbsd.h: Don't include bsd4-3.h.
13171 (TERMINFO): Define.
13172 (LIBS_TERMCAP): Define.
13173 (LD_SWITCH_SYSTEM): Define (two definitions).
13174
13175 * xfns.c: Include libpng/png.h instead of png.h.
13176
13177 2003-07-11 Andreas Schwab <schwab@suse.de>
13178
13179 * buffer.c (modify_overlay): Update prototype.
13180 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
13181 Likewise.
13182
13183 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13184
13185 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
13186 (struct interval): Move to intervals.h.
13187 (struct Lisp_Marker): Use EMACS_INT for position info.
13188 (forward_point): Remove prototype of defunct function.
13189 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
13190 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
13191 (syms_of_textprop, set_text_properties): Remove prototypes that are
13192 already in intervals.h.
13193
13194 * intervals.h (struct interval): Move from lisp.h.
13195 Use EMACS_INT for position and size info.
13196
13197 * coding.c: Include intervals.h for Fset_text_properties.
13198
13199 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13200 position and length information.
13201
13202 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13203
13204 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13205 position and length information.
13206
13207 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13208
13209 Change overlays_after and overlays_before so the overlays themselves
13210 are linked into lists, rather than using cons cells. After all each
13211 Lisp_Misc already occupies 5 words, so we can add a `next' field to
13212 Lisp_Overlay for free and save up one cons cell per overlay (not
13213 to mention one indirection when traversing the list of overlay).
13214
13215 * lisp.h (struct Lisp_Overlay): New field `next'.
13216
13217 * buffer.h (struct buffer): Change overlays_before and overlays_after
13218 from Lisp lists of overlays to pointers to overlays.
13219
13220 * buffer.c (overlay_strings, recenter_overlay_lists):
13221 Fix typo in eassert in last commit.
13222 (unchain_overlay): New function.
13223 (add_overlay_mod_hooklist): Use AREF.
13224 (copy_overlays, reset_buffer, overlays_at, overlays_in)
13225 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
13226 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
13227 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
13228 (report_overlay_modification, evaporate_overlays, init_buffer_once):
13229 Adjust to new type of overlays_(before|after).
13230
13231 * alloc.c (mark_object): Mark the new `next' field of overlays.
13232 (mark_buffer): Manually mark the overlays_(after|before) fields.
13233
13234 * coding.c (run_pre_post_conversion_on_str):
13235 * editfns.c (overlays_around):
13236 * xdisp.c (load_overlay_strings):
13237 * fileio.c (Finsert_file_contents):
13238 * indent.c (current_column):
13239 * insdel.c (signal_before_change, signal_after_change):
13240 * intervals.c (set_point_both):
13241 * print.c (temp_output_buffer_setup): Use new type for
13242 overlays_(before|after).
13243
13244 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
13245
13246 * buffer.c (report_overlay_modification): Don't run hooks while
13247 traversing the list of overlays.
13248
13249 * buffer.h (struct buffer): Use an int for overlay_center.
13250 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13251 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13252
13253 * buffer.c (reset_buffer, recenter_overlay_lists)
13254 (adjust_overlays_for_insert, adjust_overlays_for_delete)
13255 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
13256 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
13257 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13258 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13259
13260 * xdisp.c (fast_find_position): Remove unused var.
13261
13262 * cmds.c (Qexpand_abbrev): New sym.
13263 (syms_of_cmds): Initialize it.
13264 (internal_self_insert): Use it to call expand-abbrev.
13265
13266 2003-07-09 Kim F. Storm <storm@cua.dk>
13267
13268 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
13269 was configured with --without-xim.
13270 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
13271
13272 2003-07-07 Richard M. Stallman <rms@gnu.org>
13273
13274 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
13275
13276 * alloc.c (Fgarbage_collect): Doc fix.
13277
13278 2003-07-07 Nozomu Ando <nand@mac.com>
13279
13280 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
13281
13282 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13283
13284 * minibuf.c (read_minibuf): UNGCPRO before returning.
13285 (Ftry_completion, Fall_completions): Doc fix.
13286
13287 * alloc.c (live_float_p): Check that p is not past the `floats' array,
13288 now that `floats' is not the last element of the struct any more.
13289
13290 2003-07-06 Jason Rumney <jasonr@gnu.org>
13291
13292 * w32term.h (ClipboardSequence_Proc): New type.
13293
13294 * w32fns.c (clipboard_sequence_fn): New variable.
13295 (globals_of_w32fns): Initialize it.
13296
13297 * w32select.c (last_clipboard_sequence_number): New variable.
13298 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
13299 number if possible.
13300
13301 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13302
13303 * m/amdx86-64.h (MARKBIT):
13304 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
13305 MARKBIT and ARRAY_MARK_FLAG any more.
13306
13307 * m/hp800.h (XSETMARKBIT):
13308 * m/sr2k.h (XSETMARKBIT):
13309 * lisp.h (XSETMARKBIT): Remove unused macro.
13310
13311 * lisp.h (mark_object): Change prototype.
13312
13313 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
13314 (last_marked): Change accordingly.
13315 (mark_interval, mark_maybe_object, mark_maybe_pointer)
13316 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
13317 (mark_buffer): Update calls to mark_object.
13318
13319 * bytecode.c (mark_byte_stack):
13320 * fns.c (sweep_weak_table):
13321 * keyboard.c (mark_kboards): Update calls to mark_object.
13322
13323 2003-07-06 Jason Rumney <jasonr@gnu.org>
13324
13325 * alloc.c (struct ablock): Only include padding when there is some.
13326
13327 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
13328
13329 * alloc.c (ALIGN): Add casts to simplify usage.
13330 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
13331 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
13332 (struct ablock, struct ablocks): New types.
13333 (free_ablock): New global var.
13334 (lisp_align_malloc, lisp_align_free): New functions.
13335 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
13336 (struct float_block): Reorder and add gcmarkbits.
13337 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
13338 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
13339 (init_float, make_float): Use lisp_align_malloc.
13340 (free_float, live_float_p): Don't use `type' any more.
13341 (make_float): Use FLOAT_UNMARK to access to mark bit.
13342 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
13343 Use FLOAT_MARKED_P to access the mark bit.
13344 (pure_alloc): Simplify use of ALIGN.
13345 (mark_object): Use FLOAT_MARK to access the mark bit.
13346 (gc_sweep): Use new macros to access the float's mark bit.
13347 (init_alloc_once): Init free_ablock.
13348
13349 * lisp.h (struct Lisp_Float): Remove unused field `type'.
13350
13351 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
13352
13353 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
13354 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
13355 (allocate_buffer): Move.
13356 (string_bytes): Don't mask markbit of `size_byte'.
13357 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13358 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
13359 Use the `size' field of buffers (rather than the `name' field) for
13360 the mark bit, as is done for all other vectorlike objects.
13361 Use the new macros to access the mark bit of vectorlike objects.
13362
13363 2003-06-26 Richard M. Stallman <rms@gnu.org>
13364
13365 * puresize.h (BASE_PURESIZE): Increment base size.
13366
13367 * xdisp.c (fast_find_position): Enable Gerd's new definition.
13368
13369 * xterm.c (xim_initialize): Undo previous change.
13370
13371 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
13372
13373 * alloc.c (survives_gc_p): Simplify.
13374
13375 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
13376
13377 * window.c (Fset_window_dedicated_p): Simplify.
13378 (display_buffer_1): Don't raise the win from which minibuf was entered.
13379 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
13380 (Fminibuffer_selected_window): Simplify.
13381
13382 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
13383
13384 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
13385 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
13386
13387 * insdel.c (check_markers, adjust_markers_for_delete)
13388 (adjust_markers_for_insert, adjust_markers_for_replace)
13389 (prepare_to_modify_buffer, RESTORE_VALUE):
13390 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
13391 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
13392 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
13393 * alloc.c (Fmake_marker, free_marker, gc_sweep):
13394 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
13395 * editfns.c (save_excursion_restore, transpose_markers):
13396 * window.c (delete_window):
13397 * xdisp.c (message_dolog): Update for new types.
13398
13399 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13400
13401 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
13402 (realize_default_face): Use default_face_done_p for the force_p
13403 argument to set_lface_from_font_name. Set default_face_done_p to one.
13404
13405 * frame.c (make_frame): Initialize default_face_done_p.
13406
13407 * frame.h (struct frame): Add default_face_done_p.
13408
13409 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
13410 will be defined.
13411
13412 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
13413
13414 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
13415 Initialize the new field `gcmarkbit'.
13416 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
13417 (mark_interval_tree): Don't mark the tree separately from the nodes.
13418 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
13419 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13420 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
13421
13422 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
13423 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
13424 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
13425 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
13426 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
13427
13428 2003-06-24 Dave Love <fx@gnu.org>
13429
13430 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
13431
13432 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
13433 from gnulib.
13434
13435 2003-06-21 Richard M. Stallman <rms@gnu.org>
13436
13437 * fileio.c (Fwrite_region): Alternate messages
13438 for append and partial write.
13439
13440 * keyboard.c (read_key_sequence): When converting upcase fn key to
13441 downcase, update fkey and keytran so `backspace' gets translated.
13442
13443 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
13444
13445 * process.c (wait_reading_process_input): Don't signal SIGIO
13446 in batch mode.
13447
13448 2003-06-17 Kenichi Handa <handa@m17n.org>
13449
13450 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
13451 composite.h.
13452
13453 * xselect.c: Don't include charset.h, coding.h, composite.h.
13454 (Qforeign_selection): New variable.
13455 (syms_of_xselect): Intern and static it.
13456 (selection_data_to_lisp_data): Return a unibyte string made from
13457 data with `foreign-selection' text property.
13458
13459 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
13460
13461 * termhooks.h (EVENT_INIT): New macro.
13462
13463 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
13464
13465 * alloc.c (mark_kboards): Move to keyboard.c.
13466
13467 * keyboard.c (record_asynch_buffer_change, read_avail_input):
13468 * xterm.c (x_dispatch_event):
13469 * xmenu.c (find_and_call_menu_selection):
13470 * xdisp.c (handle_tool_bar_click):
13471 * w32menu.c (menubar_selection_callback):
13472 * sysdep.c (kbd_input_ast, read_input_waiting):
13473 * msdos.c (dos_rawgetc):
13474 * macterm.c (mac_check_for_quit_char):
13475 * macmenu.c (menubar_selection_callback):
13476 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
13477 data to kbd_buffer_store_event.
13478
13479 2003-06-15 Kim F. Storm <storm@cua.dk>
13480
13481 * xdisp.c (x_fix_overlapping_area): Always use area relative X
13482 to fix redisplay problem with tall characters (such as \e,AC\e(B).
13483
13484 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13485
13486 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
13487
13488 2003-06-12 Kenichi Handa <handa@m17n.org>
13489
13490 * fileio.c (Fwrite_region): Save and restore restriction.
13491
13492 2003-06-12 Dave Love <fx@gnu.org>
13493
13494 * alloca.c (alloca): Declare arg as size_t.
13495
13496 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
13497 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
13498
13499 2003-06-11 Dave Love <fx@gnu.org>
13500
13501 * search.c (shrink_regexp_cache): Use xrealloc.
13502 (syms_of_search): Use xmalloc.
13503
13504 2003-06-10 Kim F. Storm <storm@cua.dk>
13505
13506 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
13507 Adjust phys_cursor.x to be relative to window box, rather than
13508 text area before checking -- to ensure cursor is redrawn when
13509 exposing window.
13510 Note: This also fixes a similar (older) bug if display margins
13511 are present.
13512
13513 2003-06-06 Kenichi Handa <handa@m17n.org>
13514
13515 * coding.c (encoding_buffer_size): If coding->type is
13516 coding_type_ccl, double magnification on CRLF encoding.
13517
13518 2003-06-06 Jason Rumney <jasonr@gnu.org>
13519
13520 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
13521 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
13522
13523 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
13524 Mac too.
13525
13526 2003-06-05 Dave Love <fx@gnu.org>
13527
13528 * strftime.c: Merge changes from gnulib.
13529
13530 * mktime.c (__mktime_internal): Merge changes from gnulib
13531 involving year 69 and dst2.
13532
13533 Changes to merge with gnulib version and be consistent with the
13534 autoconf test:
13535
13536 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
13537 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
13538 [HAVE_LOCALE_H]: Include locale.h.
13539 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
13540
13541 2003-06-05 Kim F. Storm <storm@cua.dk>
13542
13543 * window.c (coordinates_in_window): Convert X and Y to window
13544 relative coordinates inside mode-line and header-line parts.
13545 Convert X and Y to margin area relative coordinates inside left
13546 and right display margin parts.
13547
13548 2003-06-05 Jason Rumney <jasonr@gnu.org>
13549
13550 * w32fns.c (add_system_logical_colors_to_map): New function.
13551 (Fx_open_connection): Use it.
13552
13553 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
13554
13555 * process.c (allocate_pty): Revert part of the previous patch.
13556 (Faccept_process_output): Simplify.
13557
13558 2003-06-04 Jason Rumney <jasonr@gnu.org>
13559
13560 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
13561
13562 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
13563 (lispy_mouse_wheel_names): Remove.
13564 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
13565 Always define drag_and_drop_syms.
13566
13567 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
13568 WHEEL_EVENT events.
13569
13570 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
13571
13572 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
13573
13574 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
13575
13576 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13577
13578 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
13579 menu item label.
13580
13581 2003-06-03 Richard M. Stallman <rms@gnu.org>
13582
13583 * window.c (Fwindow_edges): Doc fix.
13584 (Fwindow_pixel_edges, Fwindow_inside_edges)
13585 (Fwindow_inside_pixel_edges): New functions.
13586 (syms_of_window): defsubr them.
13587
13588 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
13589 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
13590
13591 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
13592
13593 * dispnew.c (Fsit_for): Don't lie about the number of args.
13594
13595 2003-06-02 Dave Love <fx@gnu.org>
13596
13597 * callproc.c: Use HAVE_FCNTL_H, not USG5.
13598 (syms_of_callproc) <process-environment>: Doc fix.
13599
13600 * doc.c: Use HAVE_FCNTL_H, not USG5.
13601
13602 * xfaces.c (font_rescale_ratio): Fix for K&R.
13603
13604 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
13605
13606 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
13607
13608 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
13609
13610 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
13611 (xg_create_frame_widgets): Use ENCODE_UTF_8.
13612
13613 * xterm.c (Qutf_8): Move to coding.c
13614
13615 * xmenu.c (ENCODE_MENU_STRING): New.
13616 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
13617 Use it.
13618
13619 * coding.h (ENCODE_UTF_8): New.
13620 (Qutf_8): Declare.
13621
13622 * coding.c (Qutf_8): New.
13623 (syms_of_coding): Intern it.
13624
13625 * fns.c: Doc fixes.
13626
13627 2003-06-02 Kenichi Handa <handa@m17n.org>
13628
13629 * buffer.c (Fset_buffer_multibyte): Fix previous change.
13630
13631 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
13632
13633 * lread.c (openp): Make sure STR is a string.
13634
13635 2003-06-01 David Ponce <david@dponce.com>
13636
13637 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
13638 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
13639
13640 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
13641 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
13642 (discard_mouse_events): Discard WHEEL_EVENT events too.
13643 (lispy_wheel_names, wheel_syms): New.
13644 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
13645 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
13646 (make_lispy_event): Add WHEEL_EVENT handler.
13647
13648 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
13649 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
13650 WHEEL_EVENT events.
13651
13652 2003-05-31 John Paul Wallington <jpw@gnu.org>
13653
13654 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
13655 timer are in lisp/emacs-lisp.
13656
13657 2003-05-31 Kenichi Handa <handa@m17n.org>
13658
13659 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
13660 region when a buffer is changed to unibyte.
13661
13662 * charset.h (VALID_LEADING_CODE_P): New macro.
13663 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
13664
13665 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
13666 is nonzero, accept multibyte form of eight-bit-control chars.
13667 (decode_composition_emacs_mule): Likewise.
13668 (decode_coding_emacs_mule): Likewise.
13669 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
13670 multibyte form of eight-bit-control chars.
13671
13672 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
13673 (Finsert_file_contents): If coding-system-for-read is bound to
13674 Qauto_save_coding, use the coding system emacs-mule with special
13675 setting for recovering a file.
13676 (choose_write_coding_system): On auto saving, use the coding
13677 system emacs-mule with special setting for auto saving.
13678 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
13679
13680 2003-05-30 Kenichi Handa <handa@m17n.org>
13681
13682 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
13683 properly before calling ccl_driver.
13684
13685 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
13686
13687 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
13688 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
13689 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
13690
13691 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
13692
13693 * xfaces.c (realize_default_face): Do not abort if lface is
13694 non-existent - reverts change from 2003-05-19.
13695
13696 2003-05-29 Kenichi Handa <handa@m17n.org>
13697
13698 * coding.c (decode_coding_iso2022): Pay attention to the byte
13699 sequence of CTEXT extended segment, and retain those bytes as is.
13700
13701 2003-05-28 Kenichi Handa <handa@m17n.org>
13702
13703 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
13704 of CODING_REPLACEMENT_CHARACTER.
13705 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
13706 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
13707 check this flag on encoding.
13708 (encode_coding_sjis_big5):
13709 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
13710 (Fset_terminal_coding_system_internal):
13711 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
13712 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
13713
13714 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
13715 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
13716 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
13717
13718 2003-05-28 Richard M. Stallman <rms@gnu.org>
13719
13720 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
13721
13722 * eval.c (unbind_to): Move init of this_binding to separate statement.
13723
13724 2003-05-28 Kim F. Storm <storm@cua.dk>
13725
13726 * xdisp.c (expose_window): Fix error in calculation of
13727 window relative coordinates of area to redisplay.
13728
13729 2003-05-27 Jason Rumney <jasonr@gnu.org>
13730
13731 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
13732
13733 2003-05-27 David Ponce <david@dponce.com>
13734
13735 Handle W32 mouse wheel events as mouse click events, like in X.
13736
13737 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
13738 MOUSE_WHEEL_EVENT anymore.
13739
13740 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
13741 Scrolling down/up the mouse wheel is respectively mapped to mouse
13742 button 4 and 5.
13743 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
13744 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
13745 WM_MOUSEWHEEL events.
13746
13747 2003-05-27 Andreas Schwab <schwab@suse.de>
13748
13749 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
13750
13751 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
13752 partially visible line.
13753
13754 * alloc.c (Fgarbage_collect): Fix last change.
13755
13756 2003-05-26 John Paul Wallington <jpw@gnu.org>
13757
13758 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
13759
13760 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
13761
13762 * window.c (Fset_window_buffer): Add type of `keep_margins'.
13763 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
13764
13765 * window.h (window_box_text_cols): Declare.
13766
13767 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
13768 (x_draw_vertical_border): Remove unused var `f'.
13769
13770 * xfaces.c (build_scalable_font_name): Remove `unused var
13771 pixel_size' warning.
13772
13773 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
13774
13775 * unexelf.c (unexec): Remove `unused var n' warning.
13776
13777 * strftime.c (my_strftime_localtime_r): Remove `defined but
13778 unused' warning.
13779
13780 * process.c (allocate_pty): Remove `unused var stb' and
13781 `cp might be used uninitialized' warnings.
13782
13783 * dispnew.c (mode_line_string): Remove unused var `f'.
13784
13785 * coding.c (find_safe_codings): Remove unused var `i'.
13786
13787 * bytecode.c (Fbyte_code): Remove `unused val' warning.
13788
13789 * buffer.c (Fkill_buffer): Remove unused var `list'.
13790
13791 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
13792
13793 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13794
13795 * frame.c (make_frame): Condition want_fullscreen with
13796 HAVE_WINDOW_SYSTEM.
13797
13798 2003-05-25 Juanma Barranquero <lektu@terra.es>
13799
13800 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
13801 (Fwindow_scroll_bars): Fix typo in docstring.
13802
13803 2003-05-24 Kim F. Storm <storm@cua.dk>
13804
13805 The following changes serve several purposes:
13806
13807 1) Swap the position of fringes and display margins in windows, i.e.
13808 the fringes are now displayed between the margins and the text area
13809 (by default).
13810
13811 2) Allow fringe and scroll bar parameters to be set per-buffer and
13812 per-window (like display margins). Such settings are now stored
13813 in window configurations, preserved when frames are resized, and
13814 copied when windows are split vertically or horizontally.
13815 Several bugs related to display margins have been fixed.
13816
13817 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
13818
13819 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
13820 rather than FRAME_WIDTH (FRAME_FONT (f)).
13821
13822 5) Introduce a consistent naming of variables, members and macros
13823 depending on whether their value is measured in pixels or in
13824 canonical columns/lines. Pixel dimensions are named *_width and
13825 *_height, while canonical columns/lines are named *_cols and
13826 *_lines. Pixel positions are named *_x and *_y, while column/line
13827 positions are named *_col and *_line.
13828
13829 6) Consolidate more of the X, W32, and MAC gui code by moving
13830 common data into struct frame, and generalize it for the non-gui
13831 case by using suitable defaults.
13832
13833 7) Cleanup and consolidate the macros controlling frame and window
13834 layout into frame.h and window.h, and generalize the use of the
13835 various window_box_* functions (enhanced to handle the new fringe
13836 position and the per-window fringe and scroll bar settings).
13837
13838 * frame.h (struct frame): Rename members height to text_lines,
13839 width to text_cols, window_height to total_lines, window_width to
13840 total_cols, new_height to new_text_lines, new_width to
13841 new_text_cols. All uses changed.
13842 (struct frame): New members which consolidate common members of
13843 x_output, w32_output, and mac_output structures: left_pos,
13844 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
13845 win_gravity, size_hint_flags, border_width, internal_border_width,
13846 line_height, fringe_cols, left_fringe_width, right_fringe_width,
13847 want_fullscreen. All uses changed.
13848 (struct frame): New member column_width contaning the canonical
13849 column width, analogue to line_height. All uses changed.
13850 (struct frame): Rename members scroll_bar_pixel_width to
13851 config_scroll_bar_width, and scroll_bar_cols to
13852 config_scroll_bar_cols. All uses changed.
13853 (struct frame): New member scroll_bar_actual_width which
13854 consolidates and renames the vertical_scroll_bar_extra member of
13855 x_output, w32_output, and mac_output structures. All uses changed.
13856 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
13857 from x/w32/macterm.h files. All uses changed. Also change code
13858 which referred to f->output_data...->pixel_height.
13859 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
13860 from x/w32/macterm.h files. All uses changed. Also change code
13861 which referred to f->output_data...->pixel_width.
13862 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
13863 Also change code which referred to f->height.
13864 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
13865 Also change code which referred to f->width.
13866 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
13867 to update new_text_lines and new_text_cols members directly.
13868 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
13869 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
13870 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
13871 FRAME_SCROLL_BAR_COLS. All uses changed.
13872 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
13873 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
13874 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
13875 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
13876 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
13877 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
13878 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
13879 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
13880 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
13881 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
13882 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
13883 Unconditionally return line_height member (it now has proper value
13884 also for non-window frames).
13885 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
13886 return new column_width member (rather than the default font width).
13887 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
13888 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
13889 from x/w32/macterm.h files. Unconditionally return corresponding
13890 member of frame structure (they now have proper values also for
13891 non-window frames).
13892 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
13893 Calculate return value from left and right widths.
13894 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
13895 internal_border_width member (has proper value for non-window frame).
13896 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
13897 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
13898 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
13899 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
13900 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
13901 consolidated from xterm.h, macterm.h, and w32term.h.
13902 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
13903 consolidated from xterm.h, macterm.h, and w32term.h.
13904 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
13905 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
13906 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
13907 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
13908 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
13909 consolidated from x/mac/w32term.h.
13910 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
13911 consolidated from x/mac/w32term.h.
13912 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
13913 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
13914 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
13915 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
13916
13917 * window.h (struct window): Rename members left to left_col,
13918 top to top_line, height to total_lines, width to total_cols,
13919 left_margin_width to left_margin_cols, right_margin_width to
13920 right_margin_cols, orig_height to orig_total_lines, orig_top to
13921 orig_top_line. All uses changed.
13922 (struct window): New members left_fringe_width, right_fringe_width,
13923 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
13924 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
13925 New macros primarily used to simplify other macros.
13926 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
13927 referred to XINT (w->width).
13928 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
13929 referred to XINT (w->height).
13930 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
13931 referred to XINT (w->width) * canon_x_unit.
13932 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
13933 referred to XINT (w->height) * canon_y_unit.
13934 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
13935 referred to XINT (w->left).
13936 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
13937 all uses and code that referred to XINT (w->left) + XINT (w->width).
13938 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
13939 referred to XINT (w->top).
13940 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
13941 referred to XINT (w->top) + XINT (w->height).
13942 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
13943 referred to XINT (w->left) * canon_x_unit.
13944 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
13945 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
13946 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
13947 referred to XINT (w->top) * canon_y_unit.
13948 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
13949 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
13950 (WINDOW_LEFTMOST_P): New macro.
13951 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
13952 All uses changed.
13953 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
13954 All uses changed.
13955 (WINDOW_BOX_LEFT_EDGE_X): Rename from
13956 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
13957 Do not exclude left fringe width.
13958 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
13959 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
13960 Do not exclude fringe widths.
13961 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
13962 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
13963 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
13964 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
13965 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
13966 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
13967 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
13968 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
13969 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
13970 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
13971 New macros. Change code which referenced corresponding
13972 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
13973 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
13974 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
13975 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
13976 allow per-window scroll-bar settings.
13977 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
13978 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
13979 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
13980 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
13981 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
13982 FRAME_SCROLL_BAR_WIDTH.
13983 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
13984 (WINDOW_SCROLL_BAR_AREA_X): New macros.
13985 (WINDOW_HEADER_LINE_HEIGHT): Rename from
13986 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
13987 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
13988 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
13989 (WINDOW_BOX_TEXT_HEIGHT): Rename from
13990 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
13991 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
13992 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
13993 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
13994 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
13995 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
13996 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
13997 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
13998 (window_from_coordinates): Update prototype.
13999 (Fset_window_buffer): Update EXFUN.
14000 (set_window_buffer): Update prototype.
14001
14002 * dispextern.h (struct glyph_matrix): Rename members window_left_x
14003 to window_left_col, window_top_y to window_top_line. All uses
14004 changed.
14005 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
14006 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
14007 internal_border_width is now set to 0 for non-window frames.
14008 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
14009 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
14010 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
14011 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
14012 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
14013 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
14014 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
14015 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
14016 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
14017 Move to window.h and renamed [see window.h changes].
14018 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
14019 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
14020 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
14021 Use WINDOW_TOTAL_LINES.
14022 (frame_update_line_height): Remove prototype.
14023
14024 * buffer.h (struct buffer): Rename members measured in columns:
14025 left_margin_width to left_margin_cols, right_margin_width to
14026 right_margin_cols. All uses changed.
14027 New members left_fringe_width, right_fringe_width,
14028 fringes_outside_margins for per-buffer fringe settings.
14029 New members scroll_bar_width and vertical_scroll_bar_type for
14030 per-buffer scroll bar settings.
14031
14032 * buffer.c (init_buffer_once): Set buffer_defaults and
14033 buffer_local_flags for new buffer-local variables
14034 left_fringe_width, right_fringe_width, fringes_outside_margins,
14035 scroll_bar_width, and vertical_scroll_bar_type.
14036 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
14037 default-* variables for them.
14038
14039 * dispnew.c: Make (many) trivial substitutions for renamed and
14040 new macros in dispextern.h, frame.h and window.h.
14041 (mode_line_string): No need to adjust width for mode lines, as it
14042 is already adjusted by the caller.
14043 (marginal_area_string): Handle fringes inside/outside margins.
14044
14045 * frame.c: Make (many) trivial substitutions for renamed and
14046 new macros in dispextern.h, frame.h and window.h.
14047 (make_frame): Initialize left_fringe_width, right_fringe_width,
14048 fringe_cols, scroll_bar_actual_width, border_width,
14049 internal_border_width, column_width, line_height, x_pixels_diff,
14050 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
14051 members with values suitable for a non-window frames.
14052
14053 * gtkutil.c: Make (many) trivial substitutions for renamed and
14054 new macros in dispextern.h, frame.h and window.h.
14055
14056 * indent.c: Make (few) trivial substitutions for renamed and
14057 new macros in dispextern.h, frame.h and window.h.
14058
14059 * keyboard.c: Make (many) trivial substitutions for renamed and
14060 new macros in dispextern.h, frame.h and window.h.
14061 (make_lispy_event): Use window positions returned from
14062 window_from_coordinates when constructing the lisp event for
14063 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
14064 (incorrect) values locally.
14065 (make_lispy_movement): Use window positions returned from
14066 window_from_coordinates when constructing the lisp event, rather
14067 than calculating (incorrect) values locally.
14068
14069 * scroll.c: Make (some) trivial substitutions for renamed and
14070 new macros in dispextern.h, frame.h and window.h.
14071
14072 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
14073 scroll-bars.
14074
14075 * sysdep.c: Make (few) trivial substitutions for renamed and
14076 new macros in dispextern.h, frame.h and window.h.
14077
14078 * term.c: Make (some) trivial substitutions for renamed and
14079 new macros in dispextern.h, frame.h and window.h.
14080
14081 * widget.c: Make (few) trivial substitutions for renamed and
14082 new macros in dispextern.h, frame.h and window.h.
14083
14084 * window.c: Make (many) trivial substitutions for renamed and
14085 new macros in dispextern.h, frame.h and window.h.
14086 (make_window): Initialize new members
14087 left_margin_cols, right_margin_cols, left_fringe_width,
14088 right_fringe_width, fringes_outside_margins, scroll_bar_width,
14089 and vertical_scroll_bar_type.
14090 (coordinates_in_window): Adapt to new fringe/margin positions
14091 and per-window fringes and scroll-bars.
14092 Fix bug related to incorrectly adjusting coordinates by
14093 frame's internal_border_width (the effect normally negible since
14094 the internal_border_width is typically 0 or 1 pixel, but very
14095 noticeable for an internal_border_width of e.g. 25 pixels).
14096 Upon successful return (other than ON_NOTHING), the coordinates
14097 are now always properly converted to window relative for the
14098 given display element.
14099 (window_from_coordinates): Add new parameters wx and wy to
14100 return the window relative x and y position in the returned
14101 window and part. A null arg means, don't return the position.
14102 All callers changed.
14103 (adjust_window_margins): New function which may reduce the width
14104 of the display margins if a window's text area is too small after
14105 resizing or splitting windows.
14106 (size_window): Fix bug that did not account for display margin
14107 widths when checking the minimum width of a window; use
14108 adjust_window_margins.
14109 (set_window_buffer): Call Fset_window_fringes and
14110 Fset_window_scroll_bars to setup per-window elements.
14111 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
14112 existing display margin, fringe widths, and scroll bar settings
14113 (e.g. after splitting a window or resizing the frame).
14114 All callers changed.
14115 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
14116 (Fsplit_window): Duplicate original window's display margin,
14117 fringe, and scroll-bar settings; then call Fset_window_buffer with
14118 KEEP_MARGINS non-nil. This fixes a bug which caused a split
14119 window to only preserve the display margins in one of the windows.
14120 When splitting horizontally, call adjust_window_margins on both
14121 windows to ensure that the text area of the new windows is non too
14122 narrow. This fixes a bug which could cause Emacs to trap if the
14123 width of the split window was less than the width of the display
14124 margins.
14125 (window_box_text_cols): Rename from window_internal_width.
14126 All uses changed. Adapt to per-window fringes and scroll bars.
14127 Fix bug that caused vertical separator to be subtracted also on
14128 window frames. Fix another bug that did not reduce the returned
14129 value by the columns used for display margins.
14130 (window_scroll_line_based): Fix bug related to scrolling too much
14131 when display margins are present (implicitly fixed by the fix to
14132 window_box_text_cols).
14133 (scroll_left, scroll_right): Fix bug related to scrolling too far
14134 by default when display margins are present (implicitly fixed by
14135 the fix to window_box_text_cols).
14136 (struct saved_window): Rename members left to left_col, top to
14137 top_line, width to total_cols, height to total_lines, orig_top to
14138 orig_top_line, orig_height to orig_total_lines. All uses changed.
14139 New members left_margin_cols, right_margin_cols,
14140 left_fringe_width, right_fringe_width, fringes_outside_margins,
14141 scroll_bar_width, and vertical_scroll_bar_type for saving
14142 per-window display elements.
14143 (Fset_window_configuration): Restore display margins, fringes,
14144 and scroll bar settings. This fixes a bug which caused display
14145 margins to be discarded when saving and restoring a window
14146 configuration.
14147 (save_window_save): Save display margins, fringes, and scroll bar
14148 settings. This fixes a bug which caused display margins to be
14149 discarded when saving and restoring a window configuration.
14150 (Fset_window_margins): Do nothing if display margins are not
14151 really changed. Otherwise, call adjust_window_margins to ensure
14152 the text area doesn't get too narrow. This fixes a bug which
14153 could cause Emacs to trap if setting display margins wider than
14154 the width of the window.
14155 (Fset_window_fringes): New defun to allow user to specifically set
14156 this window's fringe widths and position vs. display margins.
14157 (Fwindow_fringes): New defun to return window's actual fringe settings.
14158 (Fset_window_scroll_bars): New defun to allow user to specifically
14159 set this window's scroll bar width and position.
14160 (Fwindow_scroll_bars): New defun to return window's actual scroll
14161 bar settings.
14162 (compare_window_configurations): Also compare display margins,
14163 fringes, and scroll bar settings.
14164 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
14165
14166 * xdisp.c: Make (many) trivial substitutions for renamed and
14167 new macros in dispextern.h, frame.h and window.h.
14168 (window_box_width): Adapt to per-window fringes and scroll bars,
14169 and new fringe vs. display margin position. Note that returned
14170 value is no longer guaranteed to be a whole multiple of the frame
14171 column width, since per-window fringes may now be any width.
14172 (window_box_left_offset): New function like window_box_left, but
14173 value is relative to left border of window (rather than frame).
14174 (window_box_right_offset): New function like window_box_right,
14175 but value is relative to left border of window.
14176 (window_box_left): Adapt to per-window fringes and scroll bars,
14177 and new fringe vs. display margin position. Simplify by using
14178 WINDOW_LEFT_EDGE_X and window_box_left_offset.
14179 (window_box): Allow null args for unnecessary return values;
14180 change/simplify relevant callers.
14181 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
14182 and new fringe vs. display margin position.
14183 Use window_box_left_offset and window_box_right_offset
14184 (get_glyph_string_clip_rect): Adapt to per-window fringes and
14185 scroll bars, and new fringe vs. display margin position.
14186 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
14187 (draw_fringe_bitmap): Rework to handle per-window fringes and new
14188 fringe vs. display margin position.
14189 (hscroll_window_tree): Use window_box_width instead of window_box.
14190 (redisplay_window): Adapt to per-window scroll bars.
14191 (draw_glyphs): Rework to handle per-window fringes and scroll
14192 bars, and new fringe vs. display margin position.
14193 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
14194 (x_clear_end_of_line): Adapt to per-window fringes and scroll
14195 bars, and new fringe vs. display margin position. Fix bug which
14196 increased total width of full_width rows by width of scroll bars
14197 although window's total width already includes that.
14198 (x_fix_overlapping_area): Simplify using window_box_left_offset.
14199 (expose_area): Simplify using window_box_left_offset.
14200 (x_draw_vertical_border): Handle per-window scroll bar settings,
14201 mixing windows with left, right and no scroll bars.
14202
14203 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
14204 where it's used in x_list_fonts (for clarity).
14205 (frame_update_line_height): Remove unused function; functionality
14206 is now done directly when setting the default font in x_set_font.
14207
14208 * xfns.c: Make (many) trivial substitutions for renamed and
14209 new macros in dispextern.h, frame.h and window.h.
14210
14211 * xmenu.c: Make (some) trivial substitutions for renamed and
14212 new macros in dispextern.h, frame.h and window.h.
14213
14214 * xterm.h (struct x_output): Move members left_pos, top_pos,
14215 border_width, pixel_height, pixel_width, line_height,
14216 internal_border_width, vertical_scroll_bar_extra,
14217 left_fringe_width, right_fringe_width, fringe_cols,
14218 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14219 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14220 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14221 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14222 (PIXEL_WIDTH, PIXEL_HEIGHT)
14223 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14224 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14225 frame.h and renamed [see frame.h changes].
14226 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14227 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14228 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14229 and renamed [see frame.h changes].
14230
14231 * xterm.c: Make (several) trivial substitutions for renamed and
14232 new macros in dispextern.h, frame.h and window.h.
14233 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14234 (scroll_run): Adapt to new fringe position.
14235 (glyph_rect): Use window coordinates returned from
14236 window_from_coordinates rather than frame_to_window_pixel_xy.
14237 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14238 scroll-bars.
14239 (handle_one_xevent): Simplify a USE_GTK conditional.
14240 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14241 (fringes are now inside margins, i.e. always in the clipping area).
14242 All callers changed.
14243 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14244 directly, then call compute_fringe_widths. Don't call
14245 frame_update_line_height.
14246
14247 * w32term.h (struct w32_output): Move members left_pos, top_pos,
14248 border_width, pixel_height, pixel_width, line_height,
14249 internal_border_width, vertical_scroll_bar_extra,
14250 left_fringe_width, right_fringe_width, fringe_cols,
14251 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14252 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14253 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14254 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14255 (PIXEL_WIDTH, PIXEL_HEIGHT)
14256 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14257 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14258 frame.h and renamed [see frame.h changes].
14259 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14260 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14261 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14262 and renamed [see frame.h changes].
14263
14264 * w32term.c: Make (several) trivial substitutions for renamed and
14265 new macros in dispextern.h, frame.h and window.h.
14266 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14267 (glyph_rect): Use window coordinates returned from
14268 window_from_coordinates rather than frame_to_window_pixel_xy.
14269 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14270 scroll-bars.
14271 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
14272 (fringes are now inside margins, i.e. always in the clipping area).
14273 All callers changed.
14274 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14275 directly, then call compute_fringe_widths. Don't call
14276 frame_update_line_height.
14277
14278 * w32console.c: Make (few) trivial substitutions for renamed and
14279 new macros in dispextern.h, frame.h and window.h.
14280
14281 * w32fns.c: Make (many) trivial substitutions for renamed and
14282 new macros in dispextern.h, frame.h and window.h.
14283
14284 * w32menu.c: Make (few) trivial substitutions for renamed and
14285 new macros in dispextern.h, frame.h and window.h.
14286
14287 * macterm.h (struct mac_output): Move members left_pos, top_pos,
14288 border_width, pixel_height, pixel_width, line_height,
14289 internal_border_width, vertical_scroll_bar_extra,
14290 left_fringe_width, right_fringe_width, fringe_cols,
14291 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14292 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
14293 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14294 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14295 (PIXEL_WIDTH, PIXEL_HEIGHT)
14296 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14297 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14298 frame.h and renamed [see frame.h changes].
14299 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14300 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14301 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14302 and renamed [see frame.h changes].
14303
14304 * macterm.c: Make (several) trivial substitutions for renamed and
14305 new macros in dispextern.h, frame.h and window.h.
14306 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14307 (glyph_rect): Use window coordinates returned from
14308 window_from_coordinates rather than frame_to_window_pixel_xy.
14309 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14310 scroll-bars.
14311 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14312 (fringes are now inside margins, i.e. always in the clipping area).
14313 All callers changed.
14314 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14315 directly, then call compute_fringe_widths. Don't call
14316 frame_update_line_height.
14317
14318 * macfns.c: Make (several) trivial substitutions for renamed and
14319 new macros in dispextern.h, frame.h and window.h.
14320 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
14321
14322 * macmenu.c: Make (few) trivial substitutions for renamed and
14323 new macros in dispextern.h, frame.h and window.h.
14324
14325 * msdos.h (struct x_output): Remove members left_pos, top_pos,
14326 and line_height, and use corresponding new members in struct
14327 frame. All uses changed.
14328 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
14329 superseeded by corresponding macros in frame.h.
14330
14331 * msdos.c: Make (several) trivial substitutions for renamed and
14332 new macros in dispextern.h, frame.h and window.h.
14333 (IT_note_mouse_highlight): Use updated window coordinates returned
14334 by window_from_coordinates, rather than adjusting them locally.
14335 (internal_terminal_init): No need to initialize line_height here;
14336 it now defaults to 1.
14337
14338 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
14339
14340 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
14341 dropping `down' events.
14342
14343 2003-05-24 Andreas Schwab <schwab@suse.de>
14344
14345 * coding.c (find_safe_codings): Fix last change.
14346
14347 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
14348
14349 * xfns.c (x_window): Fix typo from 2003-05-21 change.
14350
14351 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
14352
14353 * xdisp.c (display_mode_element): Increase max depth.
14354 Simplify the error handling code. Use a different error string
14355 for the case where we hit the depth limit.
14356
14357 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
14358
14359 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
14360
14361 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
14362
14363 * intervals.c (get_local_map): Don't get char-property of previous
14364 point any more: get_pos_property already does it and better.
14365
14366 2003-05-21 Dave Love <fx@gnu.org>
14367
14368 [Merged from unicode branch.]
14369
14370 * xfns.c (x_window, x_window): Use use_xim.
14371
14372 * xterm.c (use_xim): Initialize.
14373 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14374 (x_term_init): Maybe set use_xim.
14375
14376 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14377
14378 2003-05-21 Jason Rumney <jasonr@gnu.org>
14379
14380 * unexw32.c (_start): Remove _fmode initialization.
14381
14382 * emacs.c (main) [WINDOWSNT]: Move it here.
14383
14384 2003-05-20 Dave Love <fx@gnu.org>
14385
14386 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
14387
14388 2003-05-19 Richard M. Stallman <rms@gnu.org>
14389
14390 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
14391 as value for QCfont attribute.
14392 (realize_default_face): lface should already exist; crash if not.
14393 Specify 0 for FORCE_P when calling set_lface_from_font_name.
14394
14395 * frame.c (Fignore_event): Doc fix.
14396
14397 2003-05-19 Kenichi Handa <handa@m17n.org>
14398
14399 * coding.c (decode_coding_string): Handle post-read-conversion
14400 even if the coding doesn't require decoding.
14401
14402 2003-05-18 Richard M. Stallman <rms@gnu.org>
14403
14404 * callproc.c (Fcall_process_region): Doc fix.
14405
14406 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14407
14408 * lread.c (Fload): Print a message if package is obsolete.
14409
14410 * window.c (Fselect_window): Add optional `norecord' arg.
14411 (select_window_1): Fold into Fselect_window.
14412 (select_window_norecord): New function.
14413 (temp_output_buffer_show): Use it. Preserve current buffer.
14414
14415 * window.h (Fselect_window): Update declaration.
14416
14417 * window.c (delete_window, Fother_window, Fset_window_configuration):
14418 * minibuf.c (read_minibuf):
14419 * macterm.c (x_new_focus_frame):
14420 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
14421 * callint.c (Fcall_interactively):
14422 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
14423
14424 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
14425
14426 2003-05-17 David Kastrup <dak@gnu.org>
14427
14428 * process.c (read_process_output): Back out change from 2003-03-09.
14429
14430 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14431
14432 * editfns.c (get_pos_property): Don't assume that `object' = nil.
14433
14434 * textprop.c (text_property_stickiness): New arg `buffer'.
14435
14436 * intervals.h (text_property_stickiness): New arg `buffer'.
14437 (get_pos_property): Declare.
14438
14439 * intervals.c (get_local_map): Use get_pos_property, to obey
14440 stickiness and empty overlays.
14441 (create_root_interval, graft_intervals_into_buffer): Use BEG.
14442 (merge_properties, intervals_equal, merge_properties_sticky):
14443 Use XCAR, XCDR.
14444 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
14445
14446 2003-05-17 Richard M. Stallman <rms@gnu.org>
14447
14448 * minibuf.c (read_minibuf): If buffer is empty, record the default
14449 in the history.
14450 (Fminibuffer_complete_word): When deleting the overlap, take account
14451 of its real position.
14452
14453 * fns.c (map_char_table): Fix previous change.
14454
14455 * syntax.c (find_defun_start):
14456 When open_paren_in_column_0_is_defun_start,
14457 return beginning of buffer.
14458
14459 * lisp.h (map_char_table): Declare added arg.
14460
14461 * fns.c (map_char_table): New arg TABLE gets the master table.
14462 All calls changed.
14463 Process default and inheritance, resorting to Faref if necessary.
14464
14465 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14466 (Faccessible_keymaps): Pass new arg to map_char_table.
14467
14468 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
14469
14470 * casetab.c (set_case_table): Pass new arg to map_char_table.
14471
14472 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
14473
14474 * lisp.h (specbinding_func): New typedef.
14475 (struct specbinding): Use specbinding_func, to put the `volatile'
14476 in the right place.
14477
14478 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
14479 to avoid GCC warning.
14480
14481 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
14482
14483 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
14484
14485 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
14486
14487 * keyboard.c (apply_modifiers): Don't fill the other cache.
14488
14489 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
14490
14491 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
14492
14493 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
14494 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
14495 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
14496 (Fset_window_configuration, Fcurrent_window_configuration)
14497 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
14498 (Fpos_visible_in_window_p, mark_window_cursors_off)
14499 (window_internal_height, window_internal_width, Frecenter)
14500 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
14501 (replace_buffer_in_all_windows, init_window_once, init_window)
14502 (syms_of_window, keys_of_window): Move from lisp.h.
14503 * lisp.h: Move window.c declarations to window.h.
14504
14505 * bytecode.c: Include window.h.
14506 * emacs.c: Include window.h.
14507
14508 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
14509 (keyremap): Add `parent' field.
14510 (keyremap_step): Use it. Remove `parent' argument.
14511 (read_key_sequence): Setup and use the new `parent' field.
14512
14513 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
14514
14515 * keyboard.c (adjust_point_for_property): Ensure termination.
14516
14517 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
14518
14519 * keyboard.c (follow_key): Remove dead variable `did_meta'.
14520 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
14521 duplicated handling of function-key-map and key-translation-map
14522 in read_key_sequence.
14523 (read_key_sequence): Use them.
14524
14525 * keyboard.c (adjust_point_for_property): Try harder to move point
14526 to the non-sticky end of an invisible property.
14527
14528 * xdisp.c (single_display_prop_intangible_p): Make `space' display
14529 property intangible as well.
14530
14531 2003-05-10 Andreas Schwab <schwab@suse.de>
14532
14533 * xmenu.c (single_menu_item): Change last parameter to void* to
14534 avoid warning.
14535
14536 2003-05-09 Richard M. Stallman <rms@gnu.org>
14537
14538 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
14539 Bind Qinhibit_modification_hooks to t so there will be no GC.
14540 Rename local `tem' to `save_deactivate_mark'.
14541
14542 * eval.c (specpdl_ptr): Declare volatile.
14543 (unbind_to): Copy the whole binding and decrement specpdl_ptr
14544 before doing the work of unbinding it.
14545
14546 * lisp.h (struct specbinding): Declare elements volatile.
14547 (specpdl_ptr): Declare volatile.
14548
14549 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
14550
14551 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
14552 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
14553
14554 2003-05-08 Dave Love <fx@gnu.org>
14555
14556 * coding.c (Vlast_coding_system_used): Doc fix.
14557
14558 2003-05-07 Jason Rumney <jasonr@gnu.org>
14559
14560 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
14561 when system does not support them.
14562
14563 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
14564
14565 * fileio.c (Qwrite_region_annotate_functions): New var.
14566 (build_annotations): Use it to process the global part of the hook.
14567 (syms_of_fileio): Init and staticpro it.
14568
14569 * keyboard.c (safe_run_hooks_error): Display a message instead of
14570 silently ignoring the error.
14571
14572 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
14573
14574 * keyboard.c (input_available_signal): Mark static.
14575 (menu_bar_items): Use map_keymap.
14576 (menu_bar_one_keymap): Remove.
14577 (menu_bar_item): Adjust arglist (for use in map_keymap).
14578 Properly hide a second binding when not both are keymaps.
14579
14580 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
14581 (single_keymap_panes): Use it and map_keymap.
14582 (single_menu_item): Use skp as well.
14583
14584 * keymap.h (map_keymap_function_t): New type.
14585 (map_keymap): Declare.
14586
14587 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
14588 (map_keymap_call, Fmap_keymap): New functions.
14589 (syms_of_keymap): Defsubr map-keymap.
14590
14591 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14592
14593 * gtkutil.c (create_dialog, make_widget_for_menu_item)
14594 (make_menu_item, create_menus, xg_update_menu_item): Don't call
14595 ..._with_mnemonic functions for menu items.
14596
14597 2003-05-01 Kenichi Handa <handa@m17n.org>
14598
14599 * coding.c (coding_system_accept_latin_extra_p): Delete this
14600 function.
14601 (find_safe_codings): Pay attention to
14602 the property tranlsation-table-for-encode of each codings.
14603 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
14604
14605 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
14606
14607 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
14608
14609 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
14610
14611 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
14612
14613 * lisp.h (CHECK): Wrap args in parenthesis.
14614 (specbind): Fix doc: symbol = Qnil is not supported any more.
14615
14616 * bytecode.c (Fbyte_code) <unwind-protect>:
14617 Use Fprogn rather than 0 and Qnil.
14618
14619 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
14620 `double', and `triple' modifiers as well.
14621
14622 2003-04-30 Richard M. Stallman <rms@gnu.org>
14623
14624 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
14625
14626 * alloc.c (abort_on_gc): New variable.
14627 (Fgarbage_collect): Abort if abort_on_gc is set.
14628
14629 * lisp.h (abort_on_gc): Add decl.
14630
14631 * eval.c (Fsignal): Clear abort_on_gc.
14632
14633 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
14634 Reinit FORMAT_START and END before second scan.
14635
14636 * xdisp.c (move_it_vertically_backward): Do the final big else
14637 even if nlines is 0.
14638
14639 * xdisp.c (redisplay_internal): Finish the per-frame loop
14640 even if redisplay is suspended by input.
14641
14642 2003-04-24 Andrew Choi <akochoi@shaw.ca>
14643
14644 * macterm.c (x_list_fonts): Return all fonts that match if
14645 maxnames = -1.
14646
14647 2003-04-25 Kenichi Handa <handa@m17n.org>
14648
14649 * syntax.c (skip_chars): Fix previous change.
14650
14651 2003-04-24 Kenichi Handa <handa@m17n.org>
14652
14653 * syntax.c (skip_chars): Make the code faster by using the common
14654 technique of *p, *stop, and *endp.
14655
14656 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14657
14658 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
14659 tool_bar_items so GTK tool bar expose callback does not access items
14660 being updated.
14661
14662 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
14663
14664 * eval.c (Fapply): Undo last change and add a comment about why.
14665
14666 2003-04-18 Miles Bader <miles@gnu.org>
14667
14668 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
14669 pickier PARSE_MULTIBYTE_SEQ.
14670
14671 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
14672
14673 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
14674 Use XCDR, XCAR, CONSP.
14675 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
14676 (Fapply): Remove unnecessary GCPRO.
14677
14678 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
14679
14680 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
14681
14682 * buffer.h: Don't hardcode BEG==1.
14683
14684 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
14685
14686 2003-04-16 Richard M. Stallman <rms@gnu.org>
14687
14688 * xdisp.c (try_window, try_window_reusing_current_matrix):
14689 When at end of window, set window_end_pos to Z-ZV.
14690
14691 * buffer.c (Foverlay_recenter): Doc fix.
14692
14693 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
14694
14695 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
14696
14697 2003-04-14 Andrew Choi <akochoi@shaw.ca>
14698
14699 * macterm.c (mac_check_for_quit_char): Don't check more often than
14700 once a second.
14701
14702 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
14703
14704 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
14705 specially, so that they can't hide an implicit switch-frame event.
14706 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
14707 (head_table): Use switch-frame as event_kind for select-window.
14708 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
14709
14710 * editfns.c (Fformat): Lisp_Object/int mixup.
14711 (format2): Remove unused var numargs.
14712
14713 2003-04-11 Kenichi Handa <handa@m17n.org>
14714
14715 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
14716 (Qafter_insert_file_set_coding): New variable.
14717 (syms_of_fileio): Initialize and staticpro it. Delete declaration
14718 for after-insert-file-adjust-coding-function.
14719 (Finsert_file_contents): Call Qafter_insert_file_set_coding
14720 instead of Vafter_insert_file_adjust_coding_function.
14721
14722 2003-04-11 Kenichi Handa <handa@m17n.org>
14723
14724 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
14725
14726 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
14727 string. Callers changed.
14728
14729 2003-04-10 Kenichi Handa <handa@m17n.org>
14730
14731 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
14732 (syms_of_fileio): Declare it as a lisp variable.
14733 (Finsert_file_contents):
14734 Call Vafter_insert_file_adjust_coding_function before calling
14735 decode-format.
14736
14737 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14738
14739 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
14740 get GtkAdjustment as widget now is a GtkRange.
14741
14742 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
14743 GtkRange to avoid memory leak.
14744
14745 2003-04-09 Kenichi Handa <handa@m17n.org>
14746
14747 * xfaces.c (Vface_font_rescale_alist): New variable.
14748 (struct font_name): New member rescale_ratio.
14749 (font_rescale_ratio): New function.
14750 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
14751 (better_font_p): On comparing point sized, pay attention to
14752 recale_ratio member of fonts.
14753 (build_scalable_font_name): Reflect font->rescale_ratio in the
14754 font name.
14755 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14756
14757 * lread.c (read1): Before calling index, check if the 2nd
14758 arguemnt is in ASCII range.
14759
14760 2003-04-08 Richard M. Stallman <rms@gnu.org>
14761
14762 * fileio.c (Ffile_symlink_p): Doc fix.
14763
14764 * editfns.c (Fformat): Translate positions of text properties
14765 in the format string to apply them to the result.
14766
14767 * fileio.c (Finsert_file_contents): Doc fix.
14768 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
14769
14770 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
14771
14772 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
14773
14774 2003-04-08 Steven Tamm <steventamm@mac.com>
14775
14776 * mac.c (init_mac_osx_environment): Switch libexec and bin so
14777 that self-contained application finds libexec files.
14778
14779 2003-04-08 Kenichi Handa <handa@m17n.org>
14780
14781 * coding.c (code_convert_region_unwind):
14782 Set Vlast_coding_system_used to the argument.
14783 (code_convert_region): If post-read-conversion function changed
14784 the value of last-coding-sytem, keep the new value in
14785 coding->symbol so that it won't be overridden.
14786 (run_pre_post_conversion_on_str): Likewise.
14787 (coding_system_accept_latin_extra_p): New function.
14788 (find_safe_codings): Pay attention to characters registered in
14789 latin-extra-code-table.
14790
14791 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
14792
14793 * Makefile.in (md5.o): Add missing dependency info.
14794
14795 2003-04-06 Richard M. Stallman <rms@gnu.org>
14796
14797 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
14798
14799 * marker.c (verify_bytepos): New function.
14800
14801 * intervals.c (set_intervals_multibyte_1): When becoming
14802 multibyte, adjust right and left child sizes to a whole set of
14803 characters. If an interval gets zero total-length, delete it.
14804 If an interval consists of just its children, delete one of them.
14805
14806 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
14807 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
14808
14809 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
14810 All calls deleted.
14811 (lisp_malloc): Do the work here directly.
14812
14813 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
14814
14815 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
14816 char tables.
14817
14818 2003-04-04 Kenichi Handa <handa@m17n.org>
14819
14820 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
14821 destructively change "%S" to "%s".
14822
14823 2003-04-03 Miles Bader <miles@gnu.org>
14824
14825 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
14826 always set.
14827
14828 2003-04-01 Dave Love <fx@gnu.org>
14829
14830 * xfns.c (xpm_lookup_color): Grok "opaque".
14831
14832 2003-03-31 Andrew Choi <akochoi@shaw.ca>
14833
14834 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
14835 parent window ID.
14836
14837 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
14838
14839 * macterm.h (struct mac_output): Define x_pixels_diff and
14840 y_pixels_diff.
14841
14842 2003-03-31 Juanma Barranquero <lektu@terra.es>
14843
14844 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
14845 blockinput.h and files included from it.
14846
14847 2003-03-31 Kim F. Storm <storm@cua.dk>
14848
14849 The following changes consolidates the common code related to
14850 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
14851 files into frame.c.
14852
14853 * frame.c: Include blockinput.h.
14854 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
14855 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
14856 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
14857 related vars here.
14858 (struct frame_parm_table, frame_parms): New table for describing
14859 frame parameters and their associated Q-variable.
14860 The order of the parameters corresponds to the sequence of the
14861 frame_parm_handlers table in redisplay_interface.
14862 (x_fullscreen_move, x_set_frame_parameters)
14863 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
14864 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
14865 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14866 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
14867 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
14868 Generic functions for processing of frame parameters.
14869 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
14870 (display_x_get_resource, x_get_resource_string): Functions for
14871 generic access to X resources.
14872 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
14873 (x_default_parameter, Fx_parse_geometry): Functions for generic
14874 access to frame parameters.
14875 (x_figure_window_size): Generic calculation of frame size.
14876 Fixed to add space needed for tool bar. Also setup size_hint_flags.
14877 (syms_of_frame): Intern and staticpro frame parameter variables.
14878 Defvar_lisp Vx_resource_class and Vx_resource_name here.
14879 Defsubr Sx_get_resource and Sx_parse_geometry.
14880
14881 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
14882 parameter related vars defined in frame.c.
14883 (EMACS_CLASS): Define here.
14884 (enum FULLSCREEN_*): Define here.
14885 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
14886 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
14887 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
14888 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
14889 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
14890 (x_set_visibility, x_set_autoraise, x_set_autolower)
14891 (x_set_unsplittable, x_set_vertical_scroll_bars)
14892 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
14893 (x_figure_window_size): Add prototypes.
14894
14895 * dispextern.h (frame_parm_handler): New typedef.
14896 (struct redisplay_interface): New member frame_parm_handlers.
14897 (enum resource_types): Move declaration here.
14898 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
14899 (x_default_parameter): Add prototypes.
14900
14901 * window.c: Remove extern decl for frame parameter vars.
14902 (change_window_heights): New generic function;
14903 replaces x_change_window_heights. All users changed.
14904
14905 * window.h (change_window_heights): Add prototype.
14906
14907 * xfaces.c: Remove extern decl for frame parameter vars.
14908
14909 * xterm.h (EMACS_CLASS): Remove. Use generic define.
14910 (struct w32_display_info): Fix type of xrdb member.
14911 (enum FULLSCREEN_*): Remove.
14912 Remove prototypes for generic functions (in frame.h).
14913
14914 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
14915 parameters now defined in frame.h and frame.c.
14916 (Vx_resource_name): Remove. Use generic var.
14917 (enum x_frame_parms): Remove (bogus, unused enum).
14918 (check_x_display_info): Make non-static (for frame.c).
14919 (struct x_frame_parm_table, x_frame_parms): Remove.
14920 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
14921 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
14922 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14923 (x_change_window_heights, x_set_autoraise, x_set_autolower)
14924 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
14925 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
14926 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
14927 Remove. Use generic functions instead.
14928 (enum resource_types): Remove.
14929 (x_set_scroll_bar_default_width): New global function (for frame.c).
14930 (Fx_create_frame): Depend on x_figure_window_size to add space for
14931 toolbar and setup size_hint_flags.
14932 (x_frame_parm_handlers): New table for redisplay_interface.
14933 (syms_of_xfns): Don't intern/staticpro removed vars.
14934
14935 * xterm.c: Remove unnecessary extern declarations.
14936 (x_fullscreen_adjust): Remove. Use generic instead.
14937 (x_redisplay_interface): Add x_frame_parm_handlers member.
14938
14939 * w32gui.h (XrmDatabase): New (dummy) typedef.
14940
14941 * w32term.h (EMACS_CLASS): Remove. Use generic define.
14942 (struct w32_display_info): Fix type of xrdb member.
14943 (enum FULLSCREEN_*): Remove.
14944 (x_fullscreen_adjust): Remove prototype.
14945
14946 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
14947 parameters now defined in frame.h and frame.c.
14948 (Vx_resource_name): Remove. Use generic var.
14949 (enum x_frame_parms): Remove (bogus, unused enum).
14950 (check_x_display_info): Make non-static (for frame.c).
14951 (struct x_frame_parm_table, x_frame_parms): Remove.
14952 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
14953 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
14954 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14955 (x_change_window_heights, x_set_autoraise, x_set_autolower)
14956 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
14957 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
14958 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
14959 Remove. Use generic functions instead.
14960 (enum resource_types): Remove.
14961 (x_set_scroll_bar_default_width): New global function (for frame.c).
14962 (Fx_create_frame): Depend on x_figure_window_size to add space for
14963 toolbar and setup size_hint_flags.
14964 (w32_frame_parm_handlers): New table for redisplay_interface.
14965 (syms_of_w32fns): Don't intern/staticpro removed vars.
14966
14967 * w32term.c: Remove unnecessary extern declarations.
14968 (x_fullscreen_adjust): Remove. Use generic instead.
14969 (x_redisplay_interface): Add w32_frame_parm_handlers member.
14970
14971 * w32reg.c (x_get_string_resource): Use XrmDatabase.
14972
14973 * macgui.h (XrmDatabase): New (dummy) typedef.
14974
14975 * macterm.h (EMACS_CLASS): Remove.
14976 (struct mac_display_info): Add xrdb member.
14977 (struct mac_output): Add want_fullscreen member.
14978
14979 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
14980 parameters now defined in frame.h and frame.c.
14981 (Vx_resource_name): Remove. Use generic var.
14982 (check_x_display_info): Make non-static (for frame.c).
14983 (struct x_frame_parm_table, x_frame_parms): Remove.
14984 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
14985 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
14986 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14987 (x_change_window_heights, x_set_autoraise, x_set_autolower)
14988 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
14989 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
14990 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
14991 Remove. Use generic functions instead.
14992 (enum resource_types): Remove.
14993 (x_set_scroll_bar_default_width): New global function (for frame.c).
14994 (mac_frame_parm_handlers): New table for redisplay_interface.
14995 (syms_of_macfns): Don't intern/staticpro removed vars.
14996
14997 * macterm.c: Remove unnecessary extern declarations.
14998 (x_redisplay_interface): Add mac_frame_parm_handlers member.
14999
15000 * Makefile.in (frame.o): Add dependency on blockinput.h and files
15001 included from it (atimer.h and systime.h).
15002
15003 2003-03-30 Andreas Schwab <schwab@suse.de>
15004
15005 * xdisp.c (x_insert_glyphs): Fix swapped width and height
15006 parameters for shift_glyphs_for_insert.
15007
15008 * macterm.c (x_redisplay_interface): Add missing entry for
15009 draw_vertical_window_border.
15010
15011 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
15012
15013 * fileio.c (Fexpand_file_name): In the no-handler case, after
15014 expanding, look again for a handler and invoke it. This is needed
15015 for filenames like "/foo/../user@host:/bar/../baz" -- the first
15016 expansion produces "/user@host:/bar/../baz" which needs to be
15017 expanded again for the finame result "/user@host:/baz".
15018
15019 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15020
15021 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
15022 of area to be redrawn for better performance.
15023
15024 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
15025
15026 * xterm.c (take_vertical_position_into_account): Remove.
15027 (xt_action_hook): Call set_vertical_scroll_bar if needed.
15028 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
15029 (xm_scroll_callback, x_create_toolkit_scroll_bar)
15030 (x_set_toolkit_scroll_bar_thumb): Simplify.
15031 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
15032 (XTread_socket): Remove unused var.
15033 (x_make_frame_invisible): Replace goto with else.
15034
15035 * xdisp.c (set_vertical_scroll_bar): New fun.
15036 (redisplay_window): Use it.
15037
15038 2003-03-26 Richard M. Stallman <rms@gnu.org>
15039
15040 * xdisp.c (update_tool_bar): Recompute tool bar if
15041 update_mode_lines is set. Set w->update_mode_line
15042 only if the tool bar contents actually change.
15043 (update_menu_bar): Undo previous change.
15044
15045 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15046
15047 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
15048 (xg_frame_set_char_size): Calculate scroll bar width before frame
15049 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
15050 (xg_separator_p): Check for all documented separator types.
15051 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
15052 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
15053
15054 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
15055 so tool bar gets updated.
15056
15057 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
15058
15059 * data.c (store_symval_forwarding): Re-instate part of the code
15060 that was deleted with too much enthusiasm.
15061
15062 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
15063
15064 * data.c (store_symval_forwarding): Delete special read-only
15065 hack for type == -1, since we now use ->constant instead.
15066 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
15067
15068 * buffer.c (overlays_in): Declare static.
15069 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
15070 `constant' field rather than the variable's `type' field.
15071
15072 2003-03-24 Andrew Choi <akochoi@shaw.ca>
15073
15074 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
15075
15076 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
15077
15078 * fns.c [MAC_OSX]: Do not redefine vector.
15079
15080 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
15081
15082 * macgui.h: Remove definition of No_Cursor.
15083
15084 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
15085
15086 * xdisp.c: Define No_Cursor.
15087 (x_write_glyphs, notice_overwritten_cursor)
15088 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
15089 (note_mouse_highlight): Remove Mac-specific code.
15090 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
15091
15092 2003-03-24 John Paul Wallington <jpw@gnu.org>
15093
15094 * xdisp.c (redisplay_window): If mini window's buffer is not
15095 empty, then redisplay it like other windows.
15096
15097 2003-03-23 Kim F. Storm <storm@cua.dk>
15098
15099 * w32term.c (w32_draw_window_cursor): Fix last change.
15100
15101 2003-03-23 Kenichi Handa <handa@m17n.org>
15102
15103 * alloc.c (make_string_from_bytes, make_specified_string):
15104 Add `const' for the arg CONTENTS.
15105
15106 * lisp.h (make_string_from_bytes, make_specified_string):
15107 Prototypes adjusted.
15108
15109 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15110
15111 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
15112
15113 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
15114 (XG_SB_RANGE): New define.
15115
15116 * gtkutil.c (xg_fixed_handle_expose): New function.
15117 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
15118 expose events.
15119 (xg_update_scrollbar_pos): Take two more arguments, left and width
15120 of scroll bar including borders.
15121 Clear left and right part outside scroll bar separately as some
15122 themes have bars that are not an even number of pixels.
15123 Don't set reallocate_redraws, don't call
15124 gdk_window_process_all_updates.
15125 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
15126 so no need to change it. Calculate size and value with XG_SB_RANGE.
15127
15128 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
15129 Pass left and width of scroll bar including borders to
15130 xg_update_scrollbar_pos.
15131
15132 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
15133
15134 * Makefile.in: Make sure space precedes end-of-line backslashes.
15135
15136 2003-03-22 Kim F. Storm <storm@cua.dk>
15137
15138 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
15139 Add generic versions here. Remove system specific versions
15140 defined elsewhere.
15141
15142 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
15143 Add prototypes.
15144
15145 * xterm.h (STORE_NATIVE_RECT): New macro.
15146
15147 2003-03-21 Kim F. Storm <storm@cua.dk>
15148
15149 * xdisp.c (get_glyph_string_clip_rect):
15150 Use FRAME_INTERNAL_BORDER_WIDTH.
15151
15152 * dispextern.h (struct redisplay_interface): Add active_p
15153 argument to draw_window_cursor member. All uses changed.
15154
15155 2003-03-21 Kim F. Storm <storm@cua.dk>
15156
15157 The following changes consolidate code related to writing and
15158 inserting glyphs, exposing frame, the tool bar, the mouse face,
15159 the output cursor, and help echo from xterm.c, w32term.c and
15160 macterm.c into xdisp.c. It also generalizes the use of the
15161 window_part enum instead of using numeric values throughout.
15162
15163 * xdisp.c: Consolidate gui-independent code here.
15164 Include keymap.h.
15165 (Qhelp_echo): Import.
15166 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
15167 (help_echo_string, help_echo_window, help_echo_object)
15168 (previous_help_echo_string, help_echo_pos): Declare here.
15169 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
15170 (estimate_mode_line_height): Define here. Handle windowing
15171 systems directly (without using estimate_mode_line_height_hook).
15172 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
15173 (update_window_cursor, update_cursor_in_window_tree)
15174 (fast_find_position, fast_find_string_pos)
15175 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
15176 (expose_area, expose_line, expose_overlaps, expose_window)
15177 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
15178 declared static as they are only used locally in xdisp.c.
15179 (draw_glyphs): Rename from x_draw_glyphs and make static.
15180 (tool_bar_item_info, notice_overwritten_cursor): Make static.
15181 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
15182 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
15183 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
15184 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
15185 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
15186 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
15187 (note_mouse_highlight, x_clear_window_mouse_face)
15188 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
15189 (x_intersect_rectangles): New generic functions for use by xdisp.c
15190 and GUI front-ends.
15191 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
15192 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
15193
15194 * dispextern.h (Display_Info): Generic typedef for *_display_info.
15195 (NativeRectangle): Generic typedef for rectangle type.
15196 (enum window_part): Move here from window.c.
15197 (struct redisplay_interface): New members flush_display_optional,
15198 define_frame_cursor, clear_frame_area, draw_window_cursor,
15199 draw_vertical_window_border, shift_glyphs_for_insert.
15200 Rename member clear_mouse_face to clear_window_mouse_face.
15201 (estimate_mode_line_height_hook): Remove hook.
15202 (auto_raise_tool_bar_buttons_p): Don't declare extern.
15203 (tool_bar_item_info): Remove prototype.
15204 (help_echo_string, help_echo_window, help_echo_object)
15205 (previous_help_echo_string, help_echo_pos)
15206 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
15207 (x_stretch_cursor_p, output_cursor): Declare extern.
15208 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
15209 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
15210 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
15211 (display_and_set_cursor, set_output_cursor, x_cursor_to)
15212 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
15213 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
15214 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
15215 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
15216 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
15217 Add prototypes.
15218 (mode_line_string, marginal_area_string): Fix prototypes.
15219
15220 * window.c (enum window_part): Move to dispextern.h.
15221 (coordinates_in_window): Use enum window_part member names
15222 instead of numbers to describe return value.
15223 (struct check_window_data): Change part member to window_part.
15224 (check_window_containing): Return window_part unaltered.
15225 (window_from_coordinates): Change part arg from int to enum
15226 window_part. Allow part arg to be null. All users changed.
15227
15228 * window.h (window_from_coordinates): Fix prototype.
15229
15230 * term.c (estimate_mode_line_height): Move to xdisp.c.
15231
15232 * keyboard.c (make_lispy_event): Use enum window_part.
15233
15234 * dispnew.c (mode_line_string, marginal_area_string): Use enum
15235 window_part instead of int in arg list. Users changed.
15236
15237 * xterm.h (No_Cursor): Declare as None for X.
15238 (struct mac_output): Replace member cross_cursor by hand_cursor.
15239
15240 * xterm.c: Remove consolidated defines and code.
15241 (BETWEEN): Remove unused macro.
15242 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
15243 (x_define_frame_cursor, x_clear_frame_area)
15244 (x_draw_window_cursor): New X-specific functions for RIF.
15245 (x_redisplay_interface): Add new members.
15246
15247 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
15248
15249 * w32term.h (struct w32_output): Remove cross_cursor member.
15250
15251 * w32term.c: Remove consolidated defines and code.
15252 (BETWEEN): Remove unused macro.
15253 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
15254 (w32_define_frame_cursor, w32_clear_frame_area)
15255 (w32_draw_window_cursor): New W32-specific functions for RIF.
15256 (w32_redisplay_interface): Add new members.
15257
15258 * w32gui.h (No_Cursor): Define as 0 for W32.
15259 (XRectangle): Add X compatible rectangle type.
15260 (NativeRectangle): Declare as RECT for W32.
15261 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15262
15263 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
15264
15265 * w32console.c: Remove consolidated defines and code.
15266
15267 * msdos.h (Display_Info): Add generic typedef.
15268
15269 * msdos.c: Remove consolidated defines and code.
15270 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
15271
15272 * macterm.h (struct mac_output): Replace member cross_cursor by
15273 hand_cursor.
15274 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
15275
15276 * macterm.c: Remove consolidated defines and code.
15277 (BETWEEN): Remove unused macro.
15278 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
15279 (mac_define_frame_cursor, mac_clear_frame_area)
15280 (mac_draw_window_cursor): New Mac-specific functions for RIF.
15281 (x_redisplay_interface): Add new members.
15282
15283 * macgui.h (No_Cursor): Define as 0 for Mac.
15284 (XRectangle): Add X compatible rectangle type.
15285 (NativeRectangle): Declare as Rect for Mac.
15286 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15287
15288 * macfns.c (x_set_mouse_color): Setup hand_cursor.
15289 (x_set_cursor_color): Use x_display_and_set_cursor.
15290
15291 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
15292 included from it. Add dependency on keymap.h.
15293
15294 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
15295
15296 2003-03-21 Kenichi Handa <handa@m17n.org>
15297
15298 * fileio.c (Fexpand_file_name): Fix previous change.
15299
15300 2003-03-19 Kenichi Handa <handa@m17n.org>
15301
15302 * fileio.c (Ffile_name_directory): Reconstruct file name by
15303 make_specified_string.
15304 (Ffile_name_nondirectory, Ffile_name_as_directory)
15305 (Fdirectory_file_name, Fexpand_file_name)
15306 (Fsubstitute_in_file_name): Likewise.
15307 (Fread_file_name): Compare decoded homedir with DIR and
15308 DEFAULT_FILENAME.
15309
15310 * alloc.c (make_specified_string): If NCHARS is negative, count
15311 the number of characters.
15312
15313 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15314
15315 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
15316 all widgets.
15317
15318 * gtkutil.h: Removed xg_ignore_next_thumb.
15319
15320 2003-03-18 Kenichi Handa <handa@m17n.org>
15321
15322 * coding.c (Vchar_coding_system_table): Remove this variable.
15323 (Vcoding_system_safe_chars): New variable.
15324 (intersection): Remove this function.
15325 (find_safe_codings): Don't use Vchar_coding_system_table, but try
15326 all codings in SAFE_CODINGS.
15327 (Ffind_coding_systems_region_internal): Adjust for the change of
15328 find_safe_codings. Get generic coding systems from
15329 Vcoding_system_safe_chars.
15330 (Fdefine_coding_system_internal): New function.
15331 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
15332 Initialize and staticpro Vcoding_system_safe_chars.
15333
15334 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15335
15336 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
15337 equal old values before updating.
15338
15339 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
15340
15341 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
15342
15343 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15344
15345 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
15346 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
15347 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
15348 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
15349 (xg_create_scroll_bar): Pass bar to button event callback.
15350 (xg_find_top_left_in_fixed): New function.
15351 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
15352 whole scroll bar area. Get old position with
15353 xg_find_top_left_in_fixed, calculate and only clear needed areas.
15354 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
15355 dragging is in progress. Calculate whole as for Motif.
15356 Remove code that saved last values. Call gtk_range functions to
15357 set scroll bar sizes.
15358
15359 * gtkutil.h: Removed xg_ignore_next_thumb.
15360
15361 2003-03-17 Juanma Barranquero <lektu@terra.es>
15362
15363 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
15364 and files included from it.
15365
15366 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
15367
15368 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
15369 multiple occurrences of the same keymap under different prefixes.
15370 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
15371
15372 2003-03-16 Jason Rumney <jasonr@gnu.org>
15373
15374 * w32gui.h: Use HDC for Display.
15375
15376 * w32term.c (w32_encode_char): Prevent double-byte chars from
15377 crashing Emacs.
15378
15379 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
15380 as binary.
15381
15382 2003-03-16 Juanma Barranquero <lektu@terra.es>
15383
15384 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
15385
15386 2003-03-16 Kim F. Storm <storm@cua.dk>
15387
15388 The following changes consolidate some of the gui-independent
15389 parts of the processing and drawing of "glyph strings" from
15390 xterm.c, w32term.c, and macterm.c into xdisp.c.
15391
15392 * dispextern.h (struct glyph): Reduce face_id member from 22 to
15393 21 bits (this reduces number of faces from 4M to 2M).
15394 Replace W32 specific w32_font_type member (2 bits) by generic
15395 font_type member (3 bits) for portability.
15396 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
15397 (enum draw_glyphs_face): Define here.
15398 (struct glyph_string): Define here. Merge W32 and X versions.
15399 (struct redisplay_interface): New members per_char_metric,
15400 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
15401 (VCENTER_BASELINE_OFFSET): Define here.
15402 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
15403 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
15404
15405 * xdisp.c: Consolidate gui-independent "glyph string" code here.
15406 (dump_glyph_string): Moved here.
15407 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
15408 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
15409 (fill_composite_glyph_string, fill_glyph_string)
15410 (fill_image_glyph_string, fill_stretch_glyph_string)
15411 (left_overwritten, left_overwriting, right_overwritten)
15412 (right_overwriting, get_char_face_and_encoding)
15413 (set_glyph_string_background_width, compute_overhangs_and_x)
15414 (append_glyph, append_composite_glyph, produce_image_glyph)
15415 (take_vertical_position_into_account, append_stretch_glyph)
15416 (produce_stretch_glyph): New generic functions (based on X version).
15417 Call platform specific functions through rif.
15418 (INIT_GLYPH_STRING): New macro, hides W32 details.
15419 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
15420 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
15421 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
15422 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
15423 (notice_overwritten_cursor):
15424 Generic functions exported to platform modules. Users changed.
15425
15426 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
15427 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
15428 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
15429 New macros for consolidated code.
15430
15431 * xterm.c: Remove consolidated defines and code.
15432 (x_per_char_metric, x_encode_char)
15433 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
15434 (x_redisplay_interface): Add new members.
15435
15436 * w32gui.h (Display): Add dummy typedef for consolidation.
15437 (XChar2b): Define alias for wchar_t for consolidation.
15438 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
15439
15440 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
15441 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
15442 New macros for consolidation.
15443
15444 * w32term.c: Remove consolidated defines and code.
15445 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
15446 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
15447 (w32_per_char_metric): Change font_type arg to int for RIF.
15448 (w32_encode_char): Return int according to RIF requirements.
15449 (w32_compute_glyph_string_overhangs): Adapt to RIF.
15450 (w32_get_glyph_overhangs): New function for RIF. Uses generic
15451 x_get_glyph_overhangs.
15452 (w32_redisplay_interface): Add new members.
15453
15454 * macgui.h (XChar2b): Move typedef here for consolidation.
15455 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
15456
15457 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
15458 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
15459 consolidation.
15460
15461 * macterm.c: Remove consolidated defines and code.
15462 (mac_per_char_metric): New function for RIF.
15463 (mac_encode_char): Adapt to new RIF requirements.
15464 (mac_compute_glyph_string_overhangs): Adapt for RIF.
15465 (x_redisplay_interface): Add new members.
15466
15467 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
15468
15469 * keymap.c (Vmenu_events): New var.
15470 (syms_of_keymap): Initialize it.
15471 (where_is_internal): Check more carefully what is a menu event.
15472
15473 2003-03-14 Richard M. Stallman <rms@gnu.org>
15474
15475 * lread.c (read1): After #!, exit loop on eof.
15476
15477 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15478
15479 * gtkutil.h: Add declaration for xg_frame_cleared.
15480
15481 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
15482
15483 * gtkutil.c (struct xg_last_sb_pos): New structure.
15484 (handle_fixed_child): New function.
15485 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
15486 and force a redraw on them.
15487 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
15488 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
15489 so we can avoid unneeded redraws.
15490 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
15491 and force a redraw on the scroll bar.
15492 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
15493 if xg_last_sb_pos shows the positions are up to date.
15494 (xg_frame_cleared): New function.
15495
15496 2003-03-13 Kenichi Handa <handa@m17n.org>
15497
15498 * coding.c (Fdetect_coding_region): Fix docstring.
15499 (Fdetect_coding_string): Fix docstring.
15500
15501 2003-03-13 Andreas Schwab <schwab@suse.de>
15502
15503 * gtkutil.c: Add prototype for create_menus.
15504
15505 * data.c (long_to_cons): Fix type of top.
15506
15507 * xselect.c (selection_data_to_lisp_data): Use int instead of
15508 long for an integer of size 4.
15509
15510 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
15511 (xg_tool_bar_help_callback): Likewise.
15512
15513 2003-03-12 Andreas Schwab <schwab@suse.de>
15514
15515 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
15516
15517 2003-03-12 Kim F. Storm <storm@cua.dk>
15518
15519 The following changes consolidate the fringe handling from
15520 xterm.c, w32term.c, and macterm.c into xdisp.c.
15521
15522 * xdisp.c: Consolidate fringe handling code here.
15523 (left_bits, right_bits, continued_bits, continuation_bits)
15524 (ov_bits, zv_bits): Define fringe bitmaps.
15525 (fringe_bitmaps): New array holding fringe bitmaps.
15526 (draw_fringe_bitmap): Draw a specific bitmap; call display
15527 specific drawing routine via rif->draw_fringe_bitmap.
15528 (draw_row_fringe_bitmaps): Generic replacement for
15529 x_draw_row_fringe_bitmaps; all callers changed.
15530 (compute_fringe_widths): Generic replacement for
15531 x_compute_fringe_widths; all callers changed.
15532
15533 * dispextern.h (enum fringe_bitmap_type): Define here.
15534 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
15535 (fringe_bitmaps): Declare extern.
15536 (struct redisplay_interface): New member draw_fringe_bitmap.
15537 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
15538
15539 * xterm.c: Remove generic fringe code.
15540 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
15541 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
15542
15543 * w32term.c: Remove generic fringe code.
15544 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
15545 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
15546
15547 * macterm.c: Remove generic fringe code.
15548 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
15549 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
15550
15551 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
15552
15553 * print.c (Fprin1_to_string): Return unibyte string if possible.
15554
15555 2003-03-09 David Kastrup <dak@gnu.org>
15556
15557 * process.c (read_process_output): We have allocated enough space
15558 for readmax and carryover, so actually use the alloted space.
15559
15560 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15561
15562 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
15563 toolkit scrollbar click.
15564
15565 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
15566 for USE_GTK.
15567 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
15568 also.
15569 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
15570 scrollbar and control is pressed, call x_scroll_bar_handle_click.
15571
15572 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
15573
15574 * gtkutil.c (xg_get_scroll_id_for_window): New function.
15575 (xg_tool_bar_item_expose_callback): New function.
15576 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
15577 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
15578 on the tool bar widget.
15579 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
15580 to expose on the tool bar item widgets.
15581
15582 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15583
15584 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
15585 struct image* when deciding to update (struct image* may have been
15586 deleted from the image cache).
15587
15588 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
15589 the event isn't for a frame (i.e. for dialogs).
15590
15591 2003-03-07 Kenichi Handa <handa@m17n.org>
15592
15593 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
15594 composition components reaches the limit, terminate composing.
15595 (COMPOSITION_OK): New macro.
15596 (detect_coding_iso2022): Use it if an escape sequence for
15597 composition is found.
15598 (coding_restore_composition): Adjust the number of composition
15599 components if it is not sane.
15600
15601 2003-03-06 Juanma Barranquero <lektu@terra.es>
15602
15603 * w32term.h (struct w32_display_info): Add xrdb member to support
15604 passing resources via -xrm on Windows.
15605
15606 * w32term.c (w32_make_rdb): New function.
15607 (w32_term_init): Use it to initialize xrdb member of w32_display_info
15608 struct. Delete leftover code.
15609
15610 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
15611 for resources passed on the command line.
15612
15613 * w32reg.c (w32_get_rdb_resource): New function.
15614 (x_get_string_resource): Use it, so resources passed with -xrm
15615 supercede the ones in the registry.
15616
15617 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15618
15619 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
15620 instead of x_top_window_to_frame.
15621
15622 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15623
15624 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
15625 when restarting Emacs.
15626
15627 2003-03-03 Richard M. Stallman <rms@gnu.org>
15628
15629 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
15630 to run kill-buffer-query-functions.
15631 (Qkill_buffer_query_functions): New var.
15632 (syms_of_buffer): Init and staticpro it.
15633
15634 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15635
15636 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
15637
15638 2003-02-25 Kim F. Storm <storm@cua.dk>
15639
15640 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
15641 If centering point failed to make whole line visible and vscroll
15642 is non-zero, disable vscroll and try centering point again.
15643
15644 * lread.c (read1): Accept `single space' syntax like (? x).
15645
15646 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15647
15648 * keyboard.c (cancel_hourglass_unwind): Surround with
15649 #ifdef HAVE_X_WINDOWS
15650
15651 2003-02-25 Kenichi Handa <handa@m17n.org>
15652
15653 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
15654 process only when "subprocesses" is defined.
15655
15656 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
15657
15658 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
15659
15660 2003-02-24 Juanma Barranquero <lektu@terra.es>
15661
15662 * callint.c (fix_command): Declare as static void and move before
15663 Fcall_interactively.
15664
15665 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
15666 (syms_of_xdisp): Don't initialize Qwhen.
15667
15668 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15669
15670 * keyboard.c (cancel_hourglass_unwind): New function.
15671 (command_loop_1): Cancel hourglass with unwind-protect.
15672
15673 2003-02-23 Richard M. Stallman <rms@gnu.org>
15674
15675 * callint.c (fix_command): New subroutine, from Fcall_interactively.
15676 Detect (when ... (region-beginning)) etc.
15677 (Fcall_interactively): Call fix_command.
15678 (Qif, Qwhen): New variables.
15679 (syms_of_callint): Init and staticpro them.
15680
15681 * regex.c (print_partial_compiled_pattern): Output to stderr.
15682
15683 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
15684
15685 * dired.c (directory_files_internal): Don't expand directory.
15686 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
15687 instead. From Lars Hansen <larsh@math.ku.dk>.
15688
15689 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
15690
15691 * fns.c (string_to_multibyte): Remove unused var i.
15692 (Flanginfo): Fix int/Lisp_Object mixup.
15693 (void_call2): New fun.
15694 (Fmap_char_table): Use it in place of call2.
15695
15696 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
15697
15698 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
15699
15700 * keymap.c (copy_keymap_1): Make it static.
15701
15702 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
15703
15704 2003-02-22 David Ponce <david@dponce.com>
15705
15706 * lread.c (Fload): Don't check STRING_MULTIBYTE.
15707
15708 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15709
15710 * process.h: Removed subtty field from struct Lisp_Process.
15711
15712 * process.c (create_process): Remove setting of subtty.
15713 (emacs_get_tty_pgrp): New function.
15714 (Fprocess_running_child_p, process_send_signal):
15715 Call emacs_get_tty_pgrp instead of ioctl.
15716 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
15717
15718 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
15719
15720 * keymap.c (Fdefine_key): Doc fix.
15721
15722 2003-02-21 Juanma Barranquero <lektu@terra.es>
15723
15724 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
15725
15726 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
15727 POLLING_PROBLEM_IN_SELECT.
15728
15729 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
15730 Delete #undef of POLLING_PROBLEM_IN_SELECT.
15731
15732 * s/hpux10-20.h: New file.
15733
15734 * process.c (wait_reading_process_input):
15735 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
15736
15737 2003-02-20 Kenichi Handa <handa@m17n.org>
15738
15739 * fontset.c (check_fontset_name): If NAME is nil, return the
15740 default fontset.
15741 (override_font_info): New function.
15742 (Fset_fontset_font): Document that NAME nil means the default fontset.
15743 (Ffontset_info): If FONTSET is not the default fontset, merge
15744 FONTSET onto the copy of the default fontset, and work on that
15745 copy. Document that NAME nil means the default fontset.
15746 (Ffontset_font): Document that NAME nil means the default fontset.
15747
15748 * process.c (setup_process_coding_systems): If the process's
15749 in/out descriptor is -1, do nothing.
15750
15751 2003-02-19 Andreas Schwab <schwab@suse.de>
15752
15753 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
15754 Add prototypes.
15755
15756 2003-02-19 Kenichi Handa <handa@m17n.org>
15757
15758 * xfaces.c (try_alternative_families): Try all scalable fonts if
15759 Vscalable_fonts_allowed is not Qt.
15760
15761 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15762
15763 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
15764
15765 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15766
15767 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
15768 names.
15769
15770 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
15771 (sorted_font_list): Move allocation of struct font_name to
15772 x_face_list_fonts.
15773 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
15774 (Fx_list_fonts): Set maxnames to -1 to get all font names.
15775
15776 2003-02-18 Kim F. Storm <storm@cua.dk>
15777
15778 * lread.c (read1): Fix last change.
15779 "`" is not always special. Allow "?" after a character constant.
15780
15781 2003-02-18 Andrew Choi <akochoi@shaw.ca>
15782
15783 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
15784
15785 2003-02-18 Andreas Schwab <schwab@suse.de>
15786
15787 * window.c (window_scroll_pixel_based): Move outside a
15788 multi-glyph character before setting new window start.
15789
15790 * xdisp.c (in_display_vector_p): New function.
15791 * dispextern.h (in_display_vector_p): Declare.
15792
15793 2003-02-18 Kim F. Storm <storm@cua.dk>
15794
15795 * lread.c (read1): Fix and relax read syntax.
15796 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
15797 Only recognize "," after dotted-pair dot if inside backquote.
15798 Never include "`" or "," (inside backquote) in a symbol.
15799 Allow dotted-pair dot after a character constant.
15800 Allow "`" and "," (inside backquote) after a character constant.
15801
15802 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15803
15804 * gtkutil.c (xg_tool_bar_expose_callback): New function.
15805 (xg_create_tool_bar): Force style of tool bar to be horizontal with
15806 icons. Set name of tool bar to emacs-toolbar.
15807 (update_frame_tool_bar): Connect expose event to
15808 xg_tool_bar_expose_callback.
15809
15810 2003-02-17 Richard M. Stallman <rms@gnu.org>
15811
15812 * keyboard.c (this_command_key_count_reset): New variable.
15813 Initiatize to 0 where this_command_key_count is set.
15814 (read_char): Save and restore this_command_key_count_reset
15815 around input method code.
15816 (read_char): If this_command_key_count_reset, echo reread commands.
15817 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
15818
15819 2003-02-17 Kenichi Handa <handa@m17n.org>
15820
15821 * fns.c (string_to_multibyte): Always return a multibyte string.
15822
15823 2003-02-16 Jason Rumney <jasonr@gnu.org>
15824
15825 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
15826 Negative max_fonts parameter means list all.
15827
15828 2003-02-14 Dave Love <fx@gnu.org>
15829
15830 * fns.c (Flanginfo): Doc fix.
15831
15832 2003-02-13 Kim F. Storm <storm@cua.dk>
15833
15834 * lread.c (read_escape): Interpret \s as a SPACE character, except
15835 for \s-X in a character constant which still is the super modifier.
15836 (read1): Signal an `invalid read syntax' error if a character
15837 constant is immediately followed by a digit or symbol character.
15838
15839 * search.c (Fmatch_data): Doc fix. Explicitly state that
15840 match-data is undefined if last search failed.
15841
15842 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
15843 All uses changed.
15844
15845 2003-02-12 Juanma Barranquero <lektu@terra.es>
15846
15847 * eval.c (Fdefmacro): Fix typo.
15848
15849 2003-02-12 Kim F. Storm <storm@cua.dk>
15850
15851 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
15852 macro is a string, convert meta modifiers in string when copying
15853 the string into a vector.
15854
15855 2003-02-11 Kim F. Storm <storm@cua.dk>
15856
15857 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
15858
15859 2003-02-11 Kenichi Handa <handa@m17n.org>
15860
15861 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
15862
15863 2003-02-10 Kim F. Storm <storm@cua.dk>
15864
15865 * process.c: Doc fixes.
15866 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
15867
15868 2003-02-10 Kenichi Handa <handa@m17n.org>
15869
15870 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
15871
15872 * process.c (QCfilter_multibyte): New variable.
15873 (setup_process_coding_systems): New function.
15874 (Fset_process_buffer, Fset_process_filter):
15875 Call setup_process_coding_systems.
15876 (Fstart_process): Initialize the member `filter_multibyte' of
15877 struct Lisp_Process.
15878 (create_process): Call setup_process_coding_systems.
15879 (Fmake_network_process): New keyward `:filter-multibyte'.
15880 Initialize the member `filter_multibyte' of struct Lisp_Process.
15881 Call setup_process_coding_systems.
15882 (server_accept_connection): Call setup_process_coding_systems.
15883 (read_process_output): If the process has a filter, decide the
15884 multibyteness of a string to given to the filter by
15885 `filter_multibyte' member of the process. If the process doesn't
15886 have a filter and the result of conversion is unibyte, use
15887 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
15888 multibyte form.
15889 (Fset_process_coding_system): Call setup_process_coding_systems.
15890 (Fset_process_filter_multibyte): New function.
15891 (Fprocess_filter_multibyte_p): New function.
15892 (syms_of_process): Intern and staticpro QCfilter_multibyte.
15893 Defsubr Sset_process_filter_multibyte and
15894 Sprocess_filter_multibyte_p.
15895
15896 * process.h (struct Lisp_Process): New member filter_multibyte.
15897
15898 * lisp.h (setup_process_coding_systems): Add prototype.
15899
15900 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
15901 process, update coding systems for the process.
15902
15903 2003-02-09 Kenichi Handa <handa@m17n.org>
15904
15905 * fns.c (string_to_multibyte): New function.
15906 (Fstring_to_multibyte): New function.
15907 (syms_of_fns): Defsubr it.
15908
15909 2003-02-08 Andreas Schwab <schwab@suse.de>
15910
15911 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
15912 instead of the substitution.
15913
15914 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15915
15916 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
15917
15918 * xmenu.c (menu_position_func): Adjust menu popup position so that
15919 the menu is fully visible.
15920
15921 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15922
15923 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
15924 (x_make_frame_invisible, x_wm_set_icon_position):
15925 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
15926
15927 * xfns.c (x_set_name, x_set_title): Ditto.
15928
15929 2003-02-04 Richard M. Stallman <rms@gnu.org>
15930
15931 * keyboard.c (echo_now): Update before_command_echo_length.
15932 (Freset_this_command_lengths): Reset this_command_key_count etc.
15933 immediately rather than arranging to do it later.
15934 (before_command_key_count_1, before_command_echo_length_1)
15935 (before_command_restore_flag): Vars deleted.
15936 (add_command_key): Don't handle before_command_restore_flag.
15937 (read_char, record_menu_key): Don't update before_command_key_count or
15938 before_command_echo_length.
15939 (read_char): Don't handle before_command_restore_flag.
15940
15941 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
15942 in direct-output clauses if it wouldn't be called in the ordinary case.
15943
15944 2003-02-04 Kim F. Storm <storm@cua.dk>
15945
15946 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
15947
15948 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15949
15950 * gtkutil.c (remove_from_container): Copying list is not needed.
15951 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
15952 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
15953 on list returned from gtk_container_get_children to avoid memory leak.
15954
15955 2003-02-01 Jason Rumney <jasonr@gnu.org>
15956
15957 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
15958 local malloc.
15959 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
15960 definitions in xpm.h.
15961 (init_xpm_functions): New function.
15962 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
15963 (init_external_image_libraries): Try to load libXpm.dll.
15964
15965 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
15966 timestamp.
15967
15968 2003-01-31 Dave Love <fx@gnu.org>
15969
15970 * syntax.c (Fskip_chars_forward)
15971 (open-paren-in-column-0-is-defun-start): Doc fix.
15972
15973 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
15974
15975 * fileio.c: Support // at start of name for Cygwin (just added proper
15976 preprocessor tests).
15977
15978 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
15979
15980 * Makefile.in: Use @EXEEXT@ for Cygwin.
15981
15982 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
15983
15984 * s/cygwin.h: Added for Cygwin port.
15985
15986 2003-01-31 Juanma Barranquero <lektu@terra.es>
15987
15988 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
15989 when including gif_lib.h.
15990 (init_gif_functions, init_tiff_functions): New functions.
15991 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
15992 Windows. Disable color table lookups. Call library functions
15993 through pointers determined at runtime.
15994 (init_external_image_libraries): Try to load libungif.dll and
15995 libtiff.dll.
15996
15997 2003-01-31 Kenichi Handa <handa@m17n.org>
15998
15999 * xdisp.c (SKIP_GLYPHS): New macro.
16000 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
16001
16002 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16003
16004 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
16005
16006 2003-01-30 Dave Love <fx@gnu.org>
16007
16008 * alloc.c (Vgc_elapsed, gcs_done): New variables.
16009 (Fgarbage_collect): Use them.
16010 (init_alloc, syms_of_alloc): Set them up.
16011
16012 2003-01-30 Juanma Barranquero <lektu@terra.es>
16013
16014 * w32fns.c (init_external_image_libraries): Add missing operator.
16015
16016 2003-01-29 Jason Rumney <jasonr@gnu.org>
16017
16018 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
16019 an alternative name for jpeg.dll.
16020
16021 2003-01-29 Kenichi Handa <handa@m17n.org>
16022
16023 * xdisp.c (set_cursor_from_row): Pay attention to string display
16024 properties.
16025
16026 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
16027
16028 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
16029 <escape>.
16030 (keycode_to_xkeysym_table): Reformat and add more comments.
16031 (XTread_socket): Drop special case for backspace.
16032
16033 2003-01-28 Andrew Choi <akochoi@shaw.ca>
16034
16035 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
16036 values in old-style RGB specs.
16037
16038 2003-01-27 Juanma Barranquero <lektu@terra.es>
16039
16040 * w32fns.c (init_external_image_libraries): Try alternate names for the
16041 jpeg dll.
16042
16043 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16044
16045 * gtkutil.c (create_dialog, xg_separator_p)
16046 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
16047 before calling strcmp or strlen.
16048
16049 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16050
16051 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
16052 and handle image load failure.
16053
16054 2003-01-26 Jason Rumney <jasonr@gnu.org>
16055
16056 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
16057 New functions.
16058 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
16059 Disable color table lookups. Call jpeg library functions
16060 through pointers determined at runtime.
16061 (init_external_image_libraries): Try to load jpeg.dll.
16062
16063 2003-01-25 Richard M. Stallman <rms@gnu.org>
16064
16065 * lisp.h: Declare format2 instead of format1.
16066
16067 * fileio.c (barf_or_query_if_file_exists):
16068 Call format2 instead of format1.
16069
16070 * editfns.c (format2): New function, replaces format1
16071 but takes exactly two Lisp Objects as format args.
16072
16073 * buffer.c (Fkill_buffer): Call format2 instead of format1.
16074
16075 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16076
16077 * xterm.h: Change to return value of x_dispatch_event to int.
16078
16079 * xterm.c (x_filter_event): New function.
16080 (event_handler_gdk, XTread_socket): Call x_filter_event.
16081 (x_dispatch_event): Change to return value of finish.
16082 (event_handler_gdk): Use return value from x_dispatch_event.
16083
16084 * xfns.c (x_window): Call create_frame_xic for GTK version to
16085 initialize input methods.
16086
16087 * gtkutil.h: Add (void) prototypes.
16088
16089 * gtkutil.c (create_menus): Remove code that puts the help menu to
16090 the right.
16091
16092 2003-01-25 Jason Rumney <jasonr@gnu.org>
16093
16094 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
16095 [HAVE_PNG]: Sync with xfns.c version.
16096 (png_load): Adjust colors for Windows. Use Windows
16097 bitmaps. Disable color table lookups.
16098 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
16099 (init_png_functions): New function.
16100 (png_read_from_memory, png_load): Call png library functions
16101 through pointers determined at runtime.
16102 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
16103 (init_external_image_libraries): New function.
16104 (init_xfns): Call it.
16105
16106 2003-01-24 Andreas Schwab <schwab@suse.de>
16107
16108 * minibuf.c (Fminibuffer_message): Verify type of parameter.
16109
16110 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16111
16112 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
16113 of static initializer.
16114
16115 2003-01-24 Dave Love <fx@gnu.org>
16116
16117 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
16118 architectures.
16119
16120 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
16121 Use __alignof__.
16122
16123 2003-01-24 Kenichi Handa <handa@m17n.org>
16124
16125 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
16126 It it is nonzero, don't pretend that an invisible area doesn't exist.
16127 (command_loop_1): Call adjust_point_for_property with proper
16128 second arg.
16129
16130 2003-01-22 Jason Rumney <jasonr@gnu.org>
16131
16132 Sync changes with xterm.c and xfns.c.
16133
16134 * w32term.c (x_draw_glyph_string_foreground)
16135 (x_draw_composite_glyph_string_foreground): Implement overstriking.
16136
16137 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
16138 phys_cursor's hpos is overwritten. This is still not completely
16139 correct, as it doesn't really make sense to use hpos at all to
16140 get the cursor glyph (as that is relative to the width of the
16141 characters on the line, which may have changed during the update).
16142
16143 * w32term.c (notice_overwritten_cursor): Handle the special case
16144 of the cursor being in the first blank non-text line at the
16145 end of a window.
16146
16147 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
16148 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
16149 Compute from the x position returned by x_draw_glyphs.
16150
16151 (x_display_and_set_cursor): Don't set phys_cursor_width here,
16152 except for NO_CURSOR and system caret, to make phys_cursor_width
16153 contain what its name suggests.
16154 (notice_overwritten_cursor): Consider the cursor image erased if
16155 the output area intersects the cursor image in y-direction.
16156
16157 * w32term.c (note_mode_line_or_margin_highlight): Rename from
16158 note_mode_line_highlight and extend.
16159
16160 * w32term.c (last_window): New variable.
16161 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
16162 (note_mouse_movement): Remove reimplemented code in #if 0.
16163
16164 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
16165 not update_mode_lines, and always set it to 1.
16166
16167 2003-01-21 Jason Rumney <jasonr@gnu.org>
16168
16169 * w32fns.c (IDC_HAND): Define it if system headers don't.
16170
16171 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
16172
16173 * w32term.h (struct w32_output): New member hand_cursor.
16174 (WM_EMACS_SETCURSOR): New message definition.
16175
16176 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
16177 function w32_define_cursor.
16178 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
16179 position, change member name output_data.x to output_data.w32 and
16180 add function w32_define_cursor.
16181 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
16182 and change member name output_data.x to output_data.w32.
16183 (w32_initialize_display_info):
16184 Setup dpyinfo->vertical_scroll_bar_cursor.
16185
16186 * w32fns.c (Vx_hand_shape): New variable.
16187 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
16188 WM_EMACS_SETCURSOR.
16189 (x-create-frame): Setup Cursor types.
16190
16191 2003-01-21 David Ponce <david@dponce.com>
16192
16193 * w32term.c (w32_encode_char): For DIM=1 charset, set
16194 ccl->reg[2] to -1 before calling ccl_driver.
16195 (Sync. with xterm.c x_encode_char change by Kenichi Handa
16196 <handa@m17n.org> on 2002-09-30.)
16197 (w32_draw_relief_rect): Declare all args.
16198 (w32_define_cursor): New.
16199
16200 * w32fns.c (w32_load_cursor): New function.
16201 (w32_init_class): Use it.
16202 (x_put_x_image): Declare all args.
16203
16204 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
16205
16206 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
16207
16208 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16209
16210 * gtkutil.c: Must include stdio.h before termhooks.h
16211
16212 2003-01-21 Dave Love <fx@gnu.org>
16213
16214 * alloc.c (Fgc_status): Print zombie list.
16215 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16216 Fix assignment of zombies.
16217 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16218 Don't take car of non-cons.
16219
16220 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16221
16222 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16223
16224 2003-01-20 David Ponce <david@dponce.com>
16225
16226 * w32menu.c (digest_single_submenu): Declare all args.
16227
16228 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
16229 changes in xmenu.c:
16230
16231 (parse_single_submenu): Use individual keymap's prompt
16232 string as pane name, if there is one.
16233 (set_frame_menubar): Save menu_items_n_panes from each call to
16234 parse_single_submenu and use it when calling digest_single_submenu.
16235
16236 2003-01-20 Steven Tamm <steventamm@mac.com>
16237
16238 * macterm.c (XTread_socket): Check for valid, visible window
16239 before sending a scroll-wheel event.
16240
16241 2003-01-20 Richard M. Stallman <rms@gnu.org>
16242
16243 * xdisp.c (redisplay_window): If mini window's buffer is not
16244 a minibuffer, then redisplay it like other windows.
16245
16246 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16247
16248 * gtkutil.c (xg_create_frame_widgets): Check if there is an
16249 external tool bar before setting tool bar height.
16250
16251 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16252
16253 * xterm.c (handle_one_xevent): Surround popup_activated
16254 with #ifdef:s for non-toolkit version.
16255
16256 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
16257 (gtkutil.o): New file.
16258 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
16259 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
16260
16261 * gtkutil.c: New file for GTK version.
16262
16263 * gtkutil.h: New file for GTK version.
16264
16265 * xterm.h: Add xt_or_gtk_widget.
16266 Include gtk files for USE_GTK.
16267 (struct x_output): Add toolbar_height.
16268 (struct x_output): Add GTK widgets and Gdk size_hints.
16269 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
16270 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
16271 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
16272
16273 * xterm.c: Include gtkutil.h for USE_GTK.
16274 (free_frame_menubar): Declare extern void for USE_GTK.
16275 (note_mouse_highlight): Check popup_activated for USE_GTK.
16276 (xt_action_hook): Don't compile if USE_GTK.
16277 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
16278 (xg_scroll_callback): New function.
16279 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
16280 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
16281 for USE_GTK.
16282 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
16283 xg_show_scroll_bar for USE_GTK.
16284 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
16285 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
16286 (event_handler_gdk): New function for USE_GTK.
16287 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
16288 (handle_one_xevent): Make sure widget is mapped before
16289 calling x_real_positions for USE_GTK.
16290 (XTread_socket): Add GTK event loop for USE_GTK.
16291 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
16292 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
16293 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
16294 (x_iconify_frame): Add code for USE_GTK.
16295 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
16296 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
16297 is in gtkutil.c.
16298 (x_term_init): Add initialization for GTK.
16299 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
16300
16301 * xmenu.c: Include gtkutil.h for USE_GTK.
16302 (Fx_popup_menu): Use current position if x and y is NIL.
16303 (single_menu_item, single_menu_item, Fx_popup_dialog):
16304 Check for USE_GTK.
16305 (popup_widget_loop): New function for USE_GTK.
16306 (x_activate_menubar): Add code for USE_GTK.
16307 (popup_activate_callback, popup_deactivate_callback)
16308 (menu_highlight_callback, menubar_selection_callback):
16309 Add USE_GTK versions.
16310 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
16311 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
16312 (free_frame_menubar): Only compile if not USE_GTK. GTK version
16313 is in gtkutil.c.
16314 (popup_selection_callback): New version for USE_GTK.
16315 (create_and_show_popup_menu): New fuction, one USE_GTK version and
16316 one USE_X_TOOLKIT version.
16317 (xmenu_show): Call create_and_show_popup_menu.
16318 (dialog_selection_callback): New version for USE_GTK.
16319 (create_and_show_dialog): New fuction, one USE_GTK version and
16320 one USE_X_TOOLKIT version.
16321 (xdialog_show): Call create_and_show_dialog.
16322
16323 * xfns.c: Include gtkutil for USE_GTK.
16324 (x_window_to_frame, x_any_window_to_frame)
16325 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
16326 (x_top_window_to_frame): Add code for USE_GTK.
16327 (x_set_background_color): Call xg_set_background_color for GTK.
16328 (x_set_menu_bar_lines): Check for USE_GTK.
16329 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
16330 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
16331 (x_window): Call xg_create_frame_widgets for USE_GTK.
16332 (Fx_create_frame): Check for USE_GTK
16333 (Fx_file_dialog): New implementation for USE_GTK.
16334
16335 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
16336 (update_menu_bar): Add check for USE_GTK.
16337 (update_tool_bar): Add check for USE_GTK and external tool bar.
16338 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
16339 (redisplay_internal): Add check for USE_GTK and popup_activated.
16340 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
16341 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
16342 (display_menu_bar): Add check for USE_GTK
16343
16344 * lisp.h (Vx_resource_name): Declare extern.
16345
16346 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
16347 for USE_GTK.
16348 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
16349
16350 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
16351 (FRAME_EXTERNAL_TOOL_BAR): New macro.
16352 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
16353
16354 * fileio.c (Fread_file_name): Add check for USE_GTK.
16355
16356 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
16357 Add check for USE_GTK.
16358
16359 * config.in: Added HAVE_GTK
16360
16361 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
16362
16363 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
16364
16365 * charset.h (Funibyte_char_to_multibyte): Export.
16366
16367 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16368
16369 * xmenu.c (mouse_position_for_popup): New function.
16370 (Fx_popup_menu): Call mouse_position_for_popup for X and
16371 mouse_position_hook for others.
16372
16373 2003-01-17 Kim F. Storm <storm@cua.dk>
16374
16375 * editfns.c (Finsert): Mention `string-make-multibyte' and
16376 `string-as-multibyte' in doc string.
16377
16378 2003-01-17 Kenichi Handa <handa@m17n.org>
16379
16380 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
16381
16382 * editfns.c (Fformat): Convert an unibyte char argument that is
16383 formatted by "%c" to multibyte if the total result must be a
16384 multibyte string.
16385
16386 2003-01-16 Kim F. Storm <storm@cua.dk>
16387
16388 * process.c (set-process-filter): Document unibyte/multibyte-ness
16389 of string argument.
16390
16391 2003-01-16 Kenichi Handa <handa@m17n.org>
16392
16393 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
16394
16395 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
16396 (re_search_2): Likewise.
16397
16398 2003-01-15 Kenichi Handa <handa@m17n.org>
16399
16400 * xdisp.c (message_dolog): Fix bug of the case that *Message*
16401 buffer is unibyte.
16402
16403 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
16404
16405 * fns.c (Fsubstring): Clarify doc string.
16406
16407 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
16408 (Fprevious_char_property_change)
16409 (Fnext_single_char_property_change)
16410 (Fprevious_single_char_property_change, Fnext_property_change)
16411 (Fnext_single_property_change, Fprevious_property_change)
16412 (Fprevious_single_property_change, Fadd_text_properties)
16413 (Fput_text_property, Fset_text_properties)
16414 (Fremove_text_properties, Fremove_list_of_text_properties)
16415 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
16416
16417 2003-01-14 Kim F. Storm <storm@cua.dk>
16418
16419 * process.h (struct Lisp_Process): New member plist replaces old
16420 member private_vars. All uses changed.
16421
16422 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
16423 (QCplist): Rename from QCvars. Change all uses.
16424 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
16425 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
16426 (syms_of_process): Intern, staticpro, defsubr these.
16427 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
16428
16429 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
16430
16431 * m/delta.h: Remove (obsolete).
16432
16433 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
16434
16435 * fileio.c (Fdelete_directory, Fdelete_file): Document the
16436 behaviour in front of symlinks.
16437 (Fdelete_file): Raise an error on directories.
16438
16439 2003-01-13 Dave Love <fx@gnu.org>
16440
16441 * fns.c (Freverse): Use QUIT.
16442
16443 2003-01-13 Richard M. Stallman <rms@gnu.org>
16444
16445 * minibuf.c (minibuffer_completion_contents):
16446 Error if point is inside prompt.
16447
16448 * keyboard.c (command_loop_1): Don't redisplay directly
16449 if there's a post-command-hook.
16450
16451 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
16452 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
16453
16454 2003-01-12 Kim F. Storm <storm@cua.dk>
16455
16456 * process.h (struct Lisp_Process): New member private_vars.
16457
16458 * process.c (QCvars): New variable.
16459 (syms_of_process): Intern and staticpro it.
16460 (Fset_process_contact): Removed function.
16461 (Fprocess_variable, Fset_process_variable): New functions.
16462 (syms_of_process): Defsubr them.
16463 (Fstart_process): Initialize private_vars plist to nil.
16464 (Fmake_network_process): New arg :vars to setup the private
16465 variables for new network process.
16466 (server_accept_connection): Copy server's private variables to
16467 client process.
16468
16469 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
16470 crashes). Code rewritten and simplified. Now directly aligns the
16471 pointer and recalculates pure_bytes_used, rather than aligning the
16472 size and adjusting the pointer.
16473
16474 2003-01-11 Kim F. Storm <storm@cua.dk>
16475
16476 * process.c (Fset_process_contact): New function.
16477 (syms_of_process): defsubr it.
16478 (make-network-process): Update doc.
16479
16480 2003-01-10 Andreas Schwab <schwab@suse.de>
16481
16482 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
16483 Reported by Berthold Gunreben <b.gunreben@web.de>.
16484
16485 2003-01-10 Dave Love <fx@gnu.org>
16486
16487 * composite.c (syms_of_composite): Make composition_hash_table weak.
16488
16489 2003-01-09 Kim F. Storm <storm@cua.dk>
16490
16491 * process.c (Fmake_network_process): Convert new port number
16492 to host byte order for `:service t' case. From Mario Lang.
16493
16494 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16495
16496 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
16497 instead of XtAppProcessEvent.
16498
16499 * xterm.c (handle_one_xevent): New function.
16500 (x_dispatch_event): New function.
16501 (XTread_socket): Call handle_one_xevent.
16502
16503 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
16504
16505 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
16506 call XQueryPointer to get coordinates.
16507 (popup_get_selection): Do not set popup_activated_flag to zero,
16508 let popup_deactivate_callback do that. Needed for Motif.
16509 Call x_dispatch_event instead of XtDispatchEvent.
16510 (xmenu_show): Calculate root coordinate from frame top/left position.
16511
16512 2003-01-08 Kim F. Storm <storm@cua.dk>
16513
16514 * process.c (server_accept_connection): Fix recording of new
16515 connection's local address in :local property of contact info.
16516 (Fmake_network_process): Record local network address for new
16517 client processes in :local property of contact info.
16518 (format-network-address): Add arg OMIT-PORT. Change callers.
16519
16520 2003-01-07 Dave Love <fx@gnu.org>
16521
16522 * Makefile.in (fns.o): Depend on coding.h.
16523
16524 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
16525
16526 * minibuf.c (Fread_variable): Doc fix.
16527
16528 * eval.c (Fuser_variable_p): Doc change. For custom variables,
16529 use the same test as for custom-variable-p.
16530
16531 2003-01-05 Richard M. Stallman <rms@gnu.org>
16532
16533 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
16534 Count LAST_LINE_MISFIT in scroll margin for end of window.
16535 Move label too_near_end before setting SCROLL_MARGIN_POS.
16536 Set LAST_LINE_MISFIT before jumping there.
16537
16538 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
16539 scroll_conservatively case. If scrolling that much doesn't change
16540 STARTP, move it down one line.
16541
16542 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
16543 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
16544
16545 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
16546 selected frame.
16547
16548 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
16549 (syms_of_keymap): Staticpro them.
16550 (Fapropos_internal): Initialize them and clear them out.
16551 Don't GCPRO them.
16552
16553 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
16554 Doc fixes.
16555
16556 * lisp.h: New misc type Lisp_Save_Value.
16557 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
16558 (XSAVE_VALUE): New macro.
16559 (struct Lisp_Save_Value): New data type.
16560 (union Lisp_Misc): Add u_save_value alternative.
16561 (make_save_value): Declare.
16562
16563 * alloc.c (make_save_value): New function.
16564
16565 * xterm.c (x_catch_errors): Save dpy using make_save_value.
16566 (x_catch_errors_unwind): Call XSync.
16567
16568 2003-01-01 Richard M. Stallman <rms@gnu.org>
16569
16570 * window.c (window_scroll_pixel_based): Partially undo last change.
16571
16572 * keyboard.c (command_loop_1): Call adjust_point_for_property
16573 in direct action cases for Qforward_char and Qbackward_char.
16574 Set already_adjusted so it won't be done twice.
16575
16576 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
16577
16578 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
16579 type definition of size_t.
16580
16581 2003-01-02 Steven Tamm <steventamm@mac.com>
16582
16583 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
16584 distinguish Carbon GUI builds from X11 builds on darwin.
16585
16586 2002-12-30 Steven Tamm <steventamm@mac.com>
16587
16588 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
16589 to default to t.
16590
16591 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
16592
16593 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
16594
16595 2002-12-28 Steven Tamm <steventamm@mac.com>
16596
16597 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
16598 allow building in a different directory than source. Uses some
16599 GNU Make extensions, but there is no other make on Mac OS X.
16600
16601 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
16602
16603 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
16604 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
16605 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
16606 (Fstring_to_number): Mention the returned value in the doc strings.
16607
16608 2002-12-23 Richard M. Stallman <rms@gnu.org>
16609
16610 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
16611 <scroll-down-aggressively>: Doc fix.
16612
16613 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
16614 string as pane name, if there is one.
16615 (set_frame_menubar): Save menu_items_n_panes from each call to
16616 parse_single_submenu and use it when calling digest_single_submenu.
16617
16618 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
16619 Don't try to make last line fully visible if it is past end of window.
16620
16621 2002-12-22 Steven Tamm <steventamm@mac.com>
16622
16623 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
16624 (mac_menu_show): Add support for hierarchical popup menus.
16625 (add_menu_item): Remove indentation support.
16626 (fill_submenu, fill_menu): Create hierarchical menus
16627 instead of using indentation.
16628
16629 2002-12-22 Richard M. Stallman <rms@gnu.org>
16630
16631 * xdisp.c (try_cursor_movement): Don't call try_window here.
16632 (redisplay_window): Never redisplay minibuffer when inactive.
16633
16634 * window.c (select_window_1): Undo 9/21 change.
16635
16636 2002-12-22 Steven Tamm <steventamm@mac.com>
16637
16638 * macterm.c (XTread_socket): Call KeyTranslate for control and
16639 meta to deal correctly shifted non-alpha characters, like C-S-5
16640 being treated like C-%. Do not look for shift key to deal
16641 with masking off control-key with mac-reverse-ctrl-meta.
16642
16643 2002-12-21 Richard M. Stallman <rms@gnu.org>
16644
16645 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
16646 If it is non-nil, run timers. Use an unwind-protect to requeue
16647 the events that were read ahead.
16648 (popup_get_selection_unwind): New subroutine.
16649 (popup_get_selection_queue): File-scope variable now holds that queue.
16650 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
16651 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
16652 Use an unwind-protect to pop down the dialog box.
16653 (xdialog_show_unwind): New subroutine implements that.
16654
16655 * xdisp.c (row_containing_pos): Change exit test using last_y.
16656 (try_window_id): Abort if row_containing_pos returns null.
16657
16658 * lread.c (load_error_handler): New function.
16659 (Fload): Handle errors in Fsubstitute_in_file_name.
16660 Don't expect Fsignal to return.
16661
16662 * eval.c: Errors and throws work right with interrupt blocking.
16663 (struct catchtag): New elt interrupt_input_blocked.
16664 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
16665 (internal_catch, Fcondition_case, internal_condition_case)
16666 (internal_condition_case_1, internal_condition_case_2): Save it.
16667 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
16668
16669 * editfns.c (Fformat): Add parens.
16670
16671 * dired.c (file_name_completion): Fix that change.
16672 Delete special quit-handling code; just use QUIT.
16673
16674 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
16675
16676 * dired.c (file_name_completion): Close directory on error
16677 just as in directory_files_internal.
16678
16679 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
16680
16681 * window.c (Fset_window_configuration): Set old_point to correct
16682 value when new_current_buffer == current_buffer.
16683
16684 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
16685
16686 Revisited my earlier fix for the following entry in etc/PROBLEMS:
16687 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
16688 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
16689
16690 These changes were in part based upon suggestions made by Peter
16691 'Luna' Runestig [peter@runestig.com].
16692
16693 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
16694 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
16695 (g_b_init_get_sid_identifier_authority ): Add several static
16696 global variables.
16697
16698 * w32.c (globals_of_w32): New function. Used to initialize those
16699 global variables that must always be initialized on startup even
16700 when the global variable initialized is non zero. Its primary
16701 purpose at this time is to set the global variables
16702 g_b_init_is_windows_9x, g_b_init_open_process_token,
16703 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
16704 g_b_init_get_sid_identifier_authority to 0 on startup.
16705 Called from main.
16706
16707 * w32.c (is_windows_9x): Perform initialization only if
16708 g_b_init_is_windows_9x is equal to 0. On initialization set
16709 g_b_init_is_windows_9x equal to 1.
16710
16711 * w32.c (open_process_token): Perform initialization only if
16712 g_b_init_open_process_token is equal to 0. On initialization set
16713 g_b_init_open_process_token equal to 1.
16714
16715 * w32.c (get_token_information): Perform initialization only if
16716 g_b_init_get_token_information is equal to 0. On initialization
16717 set g_b_init_get_token_information equal to 1.
16718
16719 * w32.c (lookup_account_sid): Perform initialization only if
16720 g_b_init_lookup_account_sid is equal to 0. On initialization
16721 set g_b_init_lookup_account_sid equal to 1.
16722
16723 * w32.c (get_sid_identifier_authority): Perform initialization
16724 only if g_b_init_get_sid_identifier_authority is equal to 0.
16725 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
16726
16727 * w32fns.c (globals_of_w32fns): New function. Used to initialize
16728 those global variables that must always be initialized on startup
16729 even when the global variable initialized is non zero.
16730 Its primary purpose at this time is to initialize the global variable
16731 track_mouse_event_fn.
16732
16733 * w32fns.c (w32_wnd_proc): Remove initialization of
16734 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
16735
16736 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
16737
16738 * w32menu.c (globals_of_w32menu): New function. Used to
16739 initialize those global variables that must always be initialized
16740 on startup even when the global variable initialized is non zero.
16741 Its primary purpose at this time is to initialize the global
16742 variables get_menu_item_info and set_menu_item_info.
16743
16744 * w32menu.c (initialize_frame_menubar): Remove initialization of
16745 get_menu_item_info and set_menu_item_info.
16746
16747 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
16748
16749 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
16750 Declare them.
16751
16752 * emacs.c (main): Call globals_of_w32 prior to calling
16753 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
16754 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
16755 is defined.
16756
16757 * w32term.c (x_update_window_begin): Fix Windows API error
16758 detected by BoundsChecker. Test to determine if
16759 w32_system_caret_hwnd is NULL prior to attempting to use
16760 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
16761
16762 * w32term.c (x_update_window_end): Fix Windows API error
16763 detected by BoundsChecker. Test to determine if
16764 w32_system_caret_hwnd is NULL prior to attempting to use
16765 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
16766
16767 2002-12-17 Kenichi Handa <handa@m17n.org>
16768
16769 * coding.c (coding_system_require_warning): New variable.
16770 (syms_of_coding): DEFVAR it.
16771
16772 * coding.h (coding_system_require_warning): Extern it.
16773
16774 * fileio.c (choose_write_coding_system): Even if
16775 Vcoding_system_for_write is non-nil, if
16776 coding_system_require_warning is nonzero, call
16777 Vselect_safe_coding_system_function.
16778
16779 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
16780
16781 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
16782 (lisp): Add font-core.
16783
16784 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
16785
16786 * textprop.c (text_read_only): New arg `propval'.
16787 (get_char_property_and_overlay): Remove unused var `next_overlay'.
16788 (verify_interval_modification): Use text_read_only's new arg.
16789
16790 2002-12-13 Kenichi Handa <handa@m17n.org>
16791
16792 * coding.c (Funencodable_char_position): Set pend correctly.
16793
16794 2002-12-12 Jason Rumney <jasonr@gnu.org>
16795
16796 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
16797 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
16798 Be more careful about when help_events are generated.
16799
16800 2002-12-12 Steven Tamm <steventamm@mac.com>
16801
16802 * macterm.c (mac_check_for_quit_char): Correctly set the
16803 modifiers of the event to 0.
16804 * mac.c (sys_select): Duplicate rfds before calling select to
16805 ensure that rfds survive the while loop.
16806
16807 2002-12-11 Kim F. Storm <storm@cua.dk>
16808
16809 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
16810 row_containing_pos returned NULL.
16811
16812 2002-12-10 Steven Tamm <steventamm@mac.com>
16813
16814 * mac.c (sys_read): Fix sys_read to not call select if IO is
16815 non-blocking.
16816 (sys_select): Fix sys_select to not use a timeout larger than
16817 the one given.
16818
16819 2002-12-10 Juanma Barranquero <lektu@terra.es>
16820
16821 * editfns.c (Fformat): Use alloca, not _alloca.
16822
16823 2002-12-09 Richard M. Stallman <rms@gnu.org>
16824
16825 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
16826 as the last thing.
16827
16828 2002-12-09 Dave Love <fx@gnu.org>
16829
16830 * s/sol2-8.h: Removed. (Not necessary.)
16831
16832 2002-12-09 Matthew Swift <swift@alum.mit.edu>
16833
16834 * editfns.c (Fformat): Handle precision in string conversion
16835 specifiers like libc functions do (ie, print at most that many
16836 characters).
16837
16838 2002-12-08 Richard M. Stallman <rms@gnu.org>
16839
16840 * xdisp.c (row_containing_pos): Check more carefully
16841 whether charpos is really in the row before returning it.
16842
16843 2002-12-07 Steven Tamm <steventamm@mac.com>
16844
16845 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
16846
16847 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
16848 each stack frame. This may change as it could be time consuming.
16849
16850 * macterm.c (mac_check_for_quit_char, quit_char_comp)
16851 (init_quit_char_handler, mac_determine_quit_char_modifiers)
16852 (mac_initialize): Add code to check for pressing of quit_char
16853 in the OS event queue.
16854
16855 * mac.c (sys_select): Call mac_check_for_quit_char every second
16856 while blocking on select.
16857
16858 * mac.c (sys_read): Use sys_select to test for input first
16859 before calling read, to allow C-g to break.
16860
16861 2002-12-07 Richard M. Stallman <rms@gnu.org>
16862
16863 * minibuf.c (Fcompleting_read): Doc fix.
16864
16865 * lread.c (syms_of_lread) <load-history>: Doc fix.
16866
16867 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
16868
16869 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
16870 autoload.
16871
16872 * data.c (Fdefalias): Record in load-history redefining an autoload.
16873
16874 * alloca.c: Undo ifdef change accidentally made on 12-04.
16875
16876 2002-12-06 Francesco Potorti` <pot@gnu.org>
16877
16878 * xfns.c (png_load): Avoid double gamma correction for PNG images.
16879
16880 2002-12-04 Richard M. Stallman <rms@gnu.org>
16881
16882 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
16883
16884 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
16885
16886 * alloca.c: Don't use #error.
16887
16888 2002-12-03 Dave Love <fx@gnu.org>
16889
16890 * buffer.c (Qucs_set_table_for_input): New.
16891 (Fget_buffer_create): Use it.
16892 (Qset_buffer_major_mode_hook): Deleted.
16893 (Fset_buffer_major_mode): Revert previous change.
16894 (init_buffer_once): Intern ucs-set-table-for-input.
16895 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
16896 Add &Qucs_set_table_for_input.
16897
16898 2002-12-03 Andreas Schwab <schwab@suse.de>
16899
16900 * callint.c (Fcall_interactively): Use next_event only if less
16901 than key_count.
16902
16903 2002-12-02 Andrew Choi <akochoi@shaw.ca>
16904
16905 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
16906 names to 255 characters.
16907
16908 * macterm.c (XTread_socket): If all frames have been collapsed,
16909 expand the first one before handling drag-and-drop events.
16910
16911 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
16912 which is detected by autoconf.
16913
16914 2002-12-01 Steven Tamm <steventamm@mac.com>
16915
16916 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
16917 offset in two hints table to allow prebinding to be redone and
16918 allow the executable to be stripped.
16919
16920 2002-11-29 Dave Love <fx@gnu.org>
16921
16922 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
16923 already provided.
16924
16925 2002-11-29 Richard M. Stallman <rms@gnu.org>
16926
16927 * xdisp.c (start_display): Check more intelligently for
16928 whether the line is continued.
16929 (move_it_vertically_backward): Clear it->continuation_lines_width.
16930
16931 2002-11-28 Dave Love <fx@gnu.org>
16932
16933 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
16934 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
16935
16936 2002-11-27 Steven Tamm <steventamm@mac.com>
16937
16938 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
16939 more descriptive error output from lread.c:Fload upon most require
16940 cycles during boostrapping.
16941
16942 2002-11-27 Jason Rumney <jasonr@gnu.org>
16943
16944 * fileio.c (Finsert_file_contents): Give a more appropriate error
16945 for files bigger than 2Gb when off_t is 32 bit.
16946
16947 * dired.c (Ffile_attributes): Don't return negative file sizes for
16948 files bigger than 2Gb when off_t is 32 bit.
16949
16950 2002-11-27 Dave Love <fx@gnu.org>
16951
16952 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16953
16954 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
16955 Test GETPGRP_VOID instead.
16956 [BSD_TERMIOS]: Remove definitions (never used).
16957
16958 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
16959 Don't define.
16960 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16961
16962 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
16963
16964 2002-11-25 Jason Rumney <jasonr@gnu.org>
16965
16966 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
16967 supported.
16968
16969 2002-11-25 Dave Love <fx@gnu.org>
16970
16971 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
16972
16973 * Makefile.in (TEMACS_LDFLAGS): Update last change.
16974
16975 2002-11-25 Andreas Schwab <schwab@suse.de>
16976
16977 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
16978
16979 2002-11-24 Steven Tamm <steventamm@mac.com>
16980
16981 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
16982 determine the size of pointers alloced in unexed space instead
16983 of using possibly invalid emacs_zone pointers. This fixes the
16984 binary incompatibility problems caused by updates to libSystem.B.
16985
16986 2002-11-24 Richard M. Stallman <rms@gnu.org>
16987
16988 * search.c (Fstring_match): Doc fix.
16989
16990 * callint.c (Fcall_interactively): If a command fails because
16991 `*' detects a read-only buffer, but RECORD_FLAG is set,
16992 record it anyway if the args don't actually do tty input.
16993
16994 2002-11-22 Dave Love <fx@gnu.org>
16995
16996 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
16997
16998 * keyboard.c (interrupt_signal): Provide forward declaration.
16999 (kbd_buffer_store_event): Don't declare interrupt_signal.
17000
17001 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
17002
17003 2002-11-21 Richard M. Stallman <rms@gnu.org>
17004
17005 * eval.c (interactive_p): Skip any number of bytecode
17006 and special form frames, in any order.
17007
17008 2002-11-20 Jason Rumney <jasonr@gnu.org>
17009
17010 * w32fns.c (convert_mono_to_color_image): New function.
17011 (xbm_load, xbm_load_image): Use it when foreground or background
17012 is explicitly set.
17013
17014 2002-11-19 Dave Love <fx@gnu.org>
17015
17016 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
17017
17018 2002-11-18 Jason Rumney <jasonr@gnu.org>
17019
17020 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
17021 (XPutPixel): Swap blue and red.
17022 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
17023 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
17024 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
17025 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
17026
17027 2002-11-18 Dave Love <fx@gnu.org>
17028
17029 * m/orion105.h (HAVE_ALLOCA): Don't define.
17030
17031 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
17032
17033 * m/intel386.h: Don't include alloca.h or define alloca.
17034
17035 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
17036 malloc, realloc, calloc.
17037
17038 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
17039 (bcmp): Don't define.
17040
17041 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
17042
17043 * m/amdahl.h: Don't define LIB_STANDARD.
17044
17045 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
17046
17047 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
17048
17049 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
17050 Don't include alloca.h.
17051
17052 * s/aix3-2.h (HAVE_FSYNC): Don't define.
17053
17054 * regex.c (_GNU_SOURCE): Don't define.
17055
17056 * process.c (_GNU_SOURCE): Don't define.
17057
17058 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
17059
17060 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
17061
17062 * s/sol2-8.h: Include sol2-6.h.
17063
17064 2002-11-18 Miles Bader <miles@gnu.org>
17065
17066 * dispextern.h (struct face): Add `overstrike' field.
17067 * xterm.c (x_draw_glyph_string_foreground)
17068 (x_draw_composite_glyph_string_foreground): Implement overstriking.
17069 * xfaces.c (load_face_font): Set `face->overstrike' based on
17070 result from choose_face_font.
17071 (best_matching_font, choose_face_font): Add `needs_overstrike'
17072 argument, and use it to return whether overstriking is desirable
17073 for this face/font combo.
17074 (set_font_frame_param: Pass new argument to choose_face_font.
17075
17076 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
17077
17078 This change is my fix for the following entry in etc/PROBLEMS:
17079 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
17080 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
17081
17082 * w32.c: Added wrapper functions around the win32 API functions
17083 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
17084 GetSidIdentifierAuthority. These wrapper functions serve two
17085 purposes:
17086 1. They ensure that the wrapped function can never be called
17087 when Emacs is running on an operating system on which they are
17088 not supported (Microsoft Windows 95 / 98 / ME).
17089 2. They call the wrapped functions via function pointers rather
17090 than calling them directly. This avoids taking advantage of the
17091 undocumented fact that although these functions are not supported
17092 in the 9x branch of Microsoft Windows, the functions do exist in
17093 the version of advapi32.dll that is found in the 9x branch of
17094 Microsoft Windows.
17095
17096 * w32.c (init_user_info): Replace the calls to the win32 API
17097 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
17098 and GetSidIdentifierAuthority with calls to the newly added
17099 wrapper functions.
17100
17101 * w32.h: Added extern declarations for the following functions:
17102 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
17103 syms_of_w32menu, and void syms_of_fontset.
17104
17105 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
17106 function pointer track_mouse_event_fn in the handler for the
17107 WM_SETFOCUS message.
17108
17109 * w32menu.c (initialize_frame_menubar): Add code to
17110 reinitialize the function pointers set_menu_item_info and
17111 get_menu_item_info.
17112
17113 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
17114
17115 * sound.c: Added a partial implementation of play-sound-internal
17116 for Microsoft Windows. Added various #ifdef / #else / #endif
17117 code blocks to separate the code that will compile under
17118 Microsoft Windows from the code that is specific to GNU/Linux.
17119 Moved several blocks of code around to make this separation of code
17120 into Windows compatible and GNU/Linux compatible code blocks easier.
17121
17122 * makefile.w32-in: Include sound.c and link with WinMM.lib.
17123
17124 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
17125 added support for play-sound-internal under Windows would be
17126 included in the build of Emacs.
17127
17128 2002-11-16 Jason Rumney <jasonr@gnu.org>
17129
17130 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
17131
17132 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
17133
17134 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
17135
17136 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
17137 (adjust_point_for_property): Move out of display and invisible even if
17138 we were already inside before (in case a property was added while
17139 we weren't looking). Be more careful when handling invisible props.
17140 Skip invisible text as if it really wasn't there at all.
17141
17142 2002-11-15 Jason Rumney <jasonr@gnu.org>
17143
17144 * w32term.c (x_draw_image_foreground)
17145 (w32_draw_image_foreground_1): Use standard copy and invert
17146 operations to draw images.
17147
17148 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
17149 depth of 1.
17150 (xbm_read_bitmap_data): Invert bits as xbm is read in.
17151 (XPutPixel): Don't invert bits here.
17152
17153 2002-11-15 Jason Rumney <jasonr@gnu.org>
17154
17155 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
17156 (w32_draw_image_foreground_1): Handle image masks.
17157 (x_draw_image_glyph_string): Don't BitBlt transparently.
17158
17159 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
17160 (x_from_xcolors): Adjust RGB values for W32.
17161 (image_background, image_background_transparent)
17162 (postprocess_image, x_to_xcolors, x_disable_image)
17163 (x_build_heuristic_mask): Adapt for W32 and enable.
17164 (x_create_x_image_and_pixmap): Mark images with palettes as such.
17165 (xbm_load): Remove unused variable.
17166
17167 2002-11-14 Richard M. Stallman <rms@gnu.org>
17168
17169 * buffer.c (syms_of_buffer): Doc fix.
17170
17171 2002-11-14 Dave Love <fx@gnu.org>
17172
17173 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
17174
17175 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
17176 * xmenu.c (unuse_menu_items, digest_single_submenu):
17177 * xfns.c (x_put_x_image):
17178 * xdisp.c (message2_nolog, set_message):
17179 * undo.c (record_point):
17180 * terminfo.c (tparam):
17181 * syntax.c (scan_sexps_forward):
17182 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
17183 * composite.c (update_compositions):
17184 * cm.c (calccost, cmgoto):
17185 * charset.c (c_string_width): Declare all args (per C99).
17186
17187 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
17188
17189 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
17190 Don't declare.
17191
17192 * emacs.c (main) [!VMS]: Avoid third arg.
17193
17194 * fns.c (Fcopy_sequence): Doc fix.
17195 (Fmap_char_table): Cast `call2'.
17196
17197 2002-11-14 Francesco Potorti` <pot@gnu.org>
17198
17199 * s/sol2-8.h: New file.
17200
17201 2002-11-14 Kim F. Storm <storm@cua.dk>
17202
17203 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
17204 dependency on `risky-local-variable' and the :propertize form.
17205
17206 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
17207
17208 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
17209
17210 * syntax.c (scan_sexps_forward): Undo last patch.
17211 Use a more obvious fix: check eob before updating the syntax table.
17212
17213 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
17214
17215 * syntax.c (scan_sexps_forward): Update syntax table before reading
17216 a char rather than after so we don't update the table past eob.
17217
17218 2002-11-09 Dave Love <fx@gnu.org>
17219
17220 * buffer.c (Fset_buffer_major_mode): Fix last change.
17221
17222 * regex.c (regexec): Fix pmatch declaration.
17223
17224 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
17225
17226 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
17227 to self-inserting characters.
17228 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
17229
17230 * coding.c (Vtranslation_table_for_input): New.
17231 (syms_of_coding): DEFVAR it.
17232
17233 2002-11-08 Juanma Barranquero <lektu@terra.es>
17234
17235 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
17236 window.
17237
17238 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17239
17240 * process.c (Fformat_network_address): Remove unused locals p,
17241 cp, and i.
17242
17243 2002-11-06 Dave Love <fx@gnu.org>
17244
17245 * buffer.c (Qset_buffer_major_mode_hook): New.
17246 (Fset_buffer_major_mode): Use it.
17247
17248 2002-11-06 Richard M. Stallman <rms@gnu.org>
17249
17250 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
17251 and stop_polling.
17252
17253 * process.c (wait_reading_process_input):
17254 Test POLLING_PROBLEM_IN_SELECT, not hpux.
17255 Avoid initialization for auto Lisp_Object var.
17256
17257 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
17258
17259 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
17260
17261 2002-11-05 Richard M. Stallman <rms@gnu.org>
17262
17263 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
17264
17265 * callint.c (Fcall_interactively): New local filter_specs.
17266 (Fcall_interactively): Check for progn as well as let.
17267 Add a gcpro.
17268 (Qprogn): New variable.
17269 (syms_of_callint): Staticpro and init Qprogn.
17270
17271 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
17272
17273 * lread.c (Feval_buffer): Doc fix.
17274
17275 2002-11-04 Dave Love <fx@gnu.org>
17276
17277 * keyboard.c (read_char): Always translate iff
17278 Vkeyboard_translate_table is a char table and c is valid.
17279
17280 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17281 and fix C types.
17282
17283 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
17284
17285 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
17286
17287 * editfns.c (get_pos_property): Don't hardcode Qfield.
17288
17289 * keyboard.c (adjust_point_for_property): Handle `display' prop on
17290 overlays. Also handle `invisible' prop.
17291
17292 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
17293
17294 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
17295 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
17296
17297 2002-11-01 Andreas Schwab <schwab@suse.de>
17298
17299 * editfns.c (Fmessage): Revert last change to properly handle %%.
17300
17301 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
17302
17303 * xmenu.c (unuse_menu_items): New fun.
17304 (menu_items_inuse): New var.
17305 (syms_of_xmenu): Initialize it.
17306 (init_menu_items): Use it to detect re-entrance.
17307 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
17308 (Fx_popup_menu): Remove spurious XSETFRAME.
17309
17310 * editfns.c (find_field): Make an exception for nil fields.
17311
17312 2002-11-01 Dave Love <fx@gnu.org>
17313
17314 * m/gec63.h: Deleted.
17315
17316 2002-10-31 Dave Love <fx@gnu.org>
17317
17318 * xterm.c (XTread_socket): Fix last change.
17319 (xaw_scroll_callback): Cast call_data to long to avoid warning.
17320
17321 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
17322
17323 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
17324
17325 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
17326
17327 * editfns.c (overlays_around, get_pos_property): New funs.
17328 (find_field): Use them.
17329 Also be careful not to modify POS before its last use.
17330 (Fmessage): Don't Fformat if there's nothing to format.
17331
17332 2002-10-30 Dave Love <fx@gnu.org>
17333
17334 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
17335 [HAVE_PTY_H]; Include pty.h.
17336
17337 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
17338
17339 * xterm.c (Qeql): Declare.
17340 (Vx_keysym_table): New.
17341 (syms_of_xterm): Initialize it.
17342 (XTread_socket): Use it. Deal with ASCII keysyms.
17343 (XSetIMValues) [HAVE_X11R6]: Prototype.
17344
17345 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
17346 (lispy_kana_keys): Comment out.
17347 (make_lispy_event) [XK_kana_A]: Comment out.
17348 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
17349 Fix sprintf call.
17350
17351 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
17352 regexp.h change).
17353 (TERMINFO, LIBS_TERMCAP): Define.
17354
17355 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
17356 (bcmp): Define conditional on HAVE_BCMP.
17357 (NO_SIOCTL_H): Don't define.
17358 (TIOCSIGSEND): Don't make conditional on IRIX6.
17359
17360 * s/sol2-5.h: Don't include strings.h.
17361 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
17362
17363 * s/irix6-0.h (IRIX6): Don't define.
17364 (bcopy, bcmp, bzero): Don't undef.
17365
17366 * s/irix6-5.h: Don't include strings.h.
17367 (IRIX6): Don't define.
17368 (bcopy, bcmp, bzero): Don't undef.
17369
17370 * syntax.c (Fforward_comment): Doc fix.
17371
17372 2002-10-29 Kim F. Storm <storm@cua.dk>
17373
17374 * process.c (Fsignal_process): Allow PROCESS to be specified by
17375 name in addition to pid (as integer or string).
17376
17377 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
17378
17379 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
17380 environments.
17381
17382 2002-10-27 Kim F. Storm <storm@cua.dk>
17383
17384 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17385
17386 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
17387
17388 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
17389
17390 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17391
17392 2002-10-26 Richard M. Stallman <rms@gnu.org>
17393
17394 * editfns.c (Fformat): Detect invalid format letters for floats.
17395
17396 2002-10-25 Kenichi Handa <handa@m17n.org>
17397
17398 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
17399 (x_set_title): Likewise.
17400
17401 2002-10-25 Juanma Barranquero <lektu@terra.es>
17402
17403 * macgui.h:
17404 * w32gui.h: Remove definition of XColor.
17405
17406 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
17407
17408 2002-10-24 Kim F. Storm <storm@cua.dk>
17409
17410 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
17411 Callers changed (supply dummy arg).
17412
17413 * lisp.h (get_window_cursor_type): Update prototype.
17414
17415 * w32term.c (x_display_and_set_cursor): Get active_cursor from
17416 get_window_cursor_type to track system caret.
17417
17418 2002-10-24 Kim F. Storm <storm@cua.dk>
17419
17420 * process.c (Fformat_network_address): New function.
17421 (syms_of_process): Defsubr it.
17422 (list_processes_1): Use it to format :local/:remote address if
17423 service/host is not set; before Emacs would crash in that case.
17424 (Fmake_network_process): Don't use Ffind_operation_coding_system
17425 to setup coding system if host or service is not set.
17426
17427 2002-10-23 Juanma Barranquero <lektu@terra.es>
17428
17429 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
17430
17431 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
17432 COLORREF.
17433
17434 * macgui.h:
17435 * w32gui.h: Add definition of XColor.
17436
17437 * macfns.c:
17438 * w32fns.c:
17439 * xfaces.c: Remove definition of XColor.
17440
17441 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
17442
17443 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
17444
17445 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
17446 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
17447 window if it is dedicated.
17448 (Fshrink_window): Add preserve_before as was done for enlarge_window.
17449 (Vspecial_display_function): Update docstring.
17450
17451 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
17452 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
17453 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
17454
17455 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
17456
17457 * casefiddle.c (casify_region): Don't treat a prefix char as part
17458 of a word when at the beginning.
17459
17460 2002-10-17 Juanma Barranquero <lektu@terra.es>
17461
17462 * lread.c (syms_of_lread): Fix typos.
17463
17464 2002-10-17 Dave Love <fx@gnu.org>
17465
17466 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
17467
17468 2002-10-16 Richard M. Stallman <rms@gnu.org>
17469
17470 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
17471
17472 2002-10-14 Juanma Barranquero <lektu@terra.es>
17473
17474 * w16select.c (syms_of_win16select): Fix docstring for
17475 `selection-coding-system'.
17476
17477 * w32select.c (syms_of_w32select): Likewise.
17478
17479 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
17480
17481 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
17482 a backslash-quoted char.
17483 (scan_lists, scan_sexps_forward): Pacify the compiler.
17484
17485 2002-10-13 Richard M. Stallman <rms@gnu.org>
17486
17487 * window.c (window_scroll): Set immediate_quit.
17488
17489 * print.c (print): When backquote form is the car of a list,
17490 output in old style. Use old_backquote_output to output all
17491 comma forms inside it in old style too.
17492
17493 * buffer.h (struct buffer): Move `undo_list' down below `name'.
17494
17495 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
17496
17497 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
17498 batch mode).
17499
17500 * lread.c (Fload): Doc fix (load-suffixes).
17501
17502 2002-10-10 Steven Tamm <steventamm@mac.com>
17503
17504 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
17505 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
17506 Also switch the default to Qnil from Qt.
17507
17508 2002-10-08 Kenichi Handa <handa@m17n.org>
17509
17510 * coding.c (code_convert_region): When we need more GAP for
17511 conversion, pay attention to the case that coding->produced is not
17512 greater than coding->consumed.
17513
17514 2002-10-07 Richard M. Stallman <rms@gnu.org>
17515
17516 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
17517
17518 2002-10-06 Andrew Choi <akochoi@shaw.ca>
17519
17520 * macmenu.c (mac_menu_show): Add j to count menu items; match
17521 menu_item_selection to it to find selected item.
17522
17523 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17524
17525 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
17526 cases. The correct fix is to pass ReparentNotify to Xt.
17527 The shell widget interprets ConfigureNotify differently depending
17528 on if it has been reparented or not.
17529
17530 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
17531
17532 * editfns.c (Fformat_time_string): Doc fix.
17533
17534 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
17535
17536 * fns.c (Flength): Doc fix.
17537
17538 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
17539
17540 * keyboard.c (keyremap): New struct.
17541 (read_key_sequence): Use it: globally replace keytran_foo with
17542 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
17543 keytran_next and fkey_next to just `next'.
17544
17545 2002-10-04 Steven Tamm <steventamm@mac.com>
17546
17547 * macterm.c (keycode_to_xkeysym_table): Change return to be
17548 treated like an X keysym.
17549
17550 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17551
17552 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
17553 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
17554 This is to also handle x/y changes that occur because of a resize.
17555
17556 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
17557
17558 * frame.c (Vdelete_frame_functions): New variable.
17559 (syms_of_frame): Initialize and defvar it.
17560 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
17561 it when frame's `tooltip' parameter is non-nil.
17562
17563 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
17564
17565 * w32fns.c (x_create_tip_frame): Likewise.
17566
17567 * macfns.c (x_create_tip_frame): Likewise.
17568
17569 2002-09-30 Kenichi Handa <handa@m17n.org>
17570
17571 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
17572 -1 before calling ccl_driver.
17573
17574 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
17575 Only when it is non-nil, handle composition sequence.
17576 (setup_coding_system) <0>: Don't force composition handling.
17577
17578 * Makefile.in (lisp, shortlisp): Add utf-16.elc
17579
17580 2002-09-29 Richard M. Stallman <rms@gnu.org>
17581
17582 * search.c (Freplace_match): Adjust match data for the substitution
17583 just made in the buffer.
17584
17585 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
17586 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
17587
17588 2002-09-27 Richard M. Stallman <rms@gnu.org>
17589
17590 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
17591 (read_char): Use them. Do all exits thru the end of the function.
17592
17593 2002-09-27 Kenichi Handa <handa@etl.go.jp>
17594
17595 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
17596 is nil.
17597
17598 2002-09-26 Richard M. Stallman <rms@gnu.org>
17599
17600 * regex.h (__restrict_arr): Don't define if already defined.
17601
17602 * coding.c (run_pre_post_conversion_on_str):
17603 Save and restore Vdeactivate_mark.
17604
17605 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
17606
17607 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
17608
17609 2002-09-26 Kenichi Handa <handa@etl.go.jp>
17610
17611 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
17612 nonzero, try face's family at first. Otherwise try FAMILY at first.
17613 (choose_face_font): If C is a single byte char or latin-1, call
17614 try_font_list with PREFER_FACE_FAMILY 1.
17615
17616 2002-09-21 Richard M. Stallman <rms@gnu.org>
17617
17618 * window.c (select_window_1): Don't select frame.
17619 Set frame's selected window only when frame itself is selected.
17620 (Fselect_window): Doc fix.
17621
17622 2002-09-18 Kim F. Storm <storm@cua.dk>
17623
17624 * process.c (make-network-process): Doc fix (there is no
17625 network-server-log-function hook).
17626
17627 2002-09-18 Richard M. Stallman <rms@gnu.org>
17628
17629 * print.c (print): Clear out the unused parts of Vprint_number_table.
17630 (syms_of_print): Doc fix for `print-number-table'.
17631
17632 * unexelf.c (unexec): Undo previous change.
17633
17634 2002-09-17 Andreas Schwab <schwab@suse.de>
17635
17636 * m/alpha.h [LINUX]: Don't define DATA_START.
17637
17638 2002-09-16 Dave Love <fx@gnu.org>
17639
17640 * unexelf.c (unexec): Deal with .got, reinstating change from
17641 25-08-1999.
17642
17643 2002-09-13 Richard M. Stallman <rms@gnu.org>
17644
17645 * s/sol2-6.h (UNEXEC): Comment out definition.
17646
17647 * unexsol.c (unexec): Don't downcase first letter of error msg.
17648
17649 * xfaces.c (Fcolor_supported_p): Just one arg is required.
17650
17651 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
17652
17653 * unexsol.c: Include buffer.h, charset.h, coding.h.
17654
17655 2002-09-11 Richard M. Stallman <rms@gnu.org>
17656
17657 * unexsol.c: Don't use report_file_error; do it by hand
17658 using dlerror.
17659
17660 * process.c (wait_reading_process_input, both versions):
17661 Before calling turn_on_atimers, call stop_polling.
17662
17663 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
17664
17665 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
17666 we go to too_near_end, call clear_glyph_matrix.
17667 (redisplay_window): After make_cursor_line_fully_visible,
17668 call clear_glyph_matrix and bypass `goto done'.
17669
17670 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
17671 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
17672
17673 2002-09-10 Richard M. Stallman <rms@gnu.org>
17674
17675 * fileio.c (Fdo_auto_save): Catch error making directory.
17676 Only call push_message if we need to.
17677 At the same time, make an unwind-protect to pop it.
17678 Rename local message_p to old_message_p.
17679 (do_auto_save_make_dir, do_auto_save_eh): New functions.
17680 (do_auto_save_unwind): Don't call pop_message.
17681
17682 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
17683
17684 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
17685
17686 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
17687
17688 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
17689
17690 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
17691
17692 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
17693 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
17694 (re_match_2_internal): Be more careful with infinite loops.
17695
17696 2002-09-10 Kim F. Storm <storm@cua.dk>
17697
17698 * macros.c (end_kbd_macro): New function.
17699 (Fend_kbd_macro): Use it.
17700
17701 * macros.h (end_kbd_macro): Declare extern.
17702
17703 * keyboard.c (Fdiscard_input): If defining keyboard macro,
17704 end and save it instead of discarding it.
17705
17706 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
17707
17708 * s/sol2-6.h: Fix typo. Add comment.
17709
17710 2002-09-09 Richard M. Stallman <rms@gnu.org>
17711
17712 * regex.c (regnum_t): Use signed int, not unsigned int.
17713
17714 * s/sol2-6.h: New file.
17715
17716 * s/sol2-5.h (UNEXEC): Definition deleted.
17717
17718 2002-09-08 Kim F. Storm <storm@cua.dk>
17719
17720 * macros.c (executing_macro_index): Change type to EMACS_INT.
17721 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
17722
17723 * macros.h (executing_macro_index): Change type to EMACS_INT.
17724
17725 2002-09-06 Richard M. Stallman <rms@gnu.org>
17726
17727 * casetab.c (set_case_table): Make canon table point to eqv table.
17728
17729 2002-09-06 Juanma Barranquero <lektu@terra.es>
17730
17731 * coding.c (syms_of_coding): Fix spacing.
17732
17733 * composite.c (Fcompose_region_internal)
17734 (Fcompose_string_internal): Likewise.
17735
17736 * data.c (Flsh): Likewise.
17737
17738 * fontset.c (Fset_fontset_font): Likewise.
17739
17740 * macfns.c (Fx_server_max_request_size): Likewise.
17741
17742 * w16select.c (syms_of_win16select): Likewise.
17743
17744 * w32select.c (syms_of_w32select): Likewise.
17745
17746 * xselect.c (syms_of_xselect): Likewise.
17747
17748 2002-09-05 Richard M. Stallman <rms@gnu.org>
17749
17750 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
17751 call EXTEND_RANGE_TABLE and return a proper value.
17752 (set_image_of_range): Don't call set_image_of_range_1
17753 if no TRANSLATE or if range includes all of Latin-1.
17754 Only call it for the Latin-1 part of the range.
17755 For other cases, make two separate ranges,
17756 one for the original specified characters and one for
17757 their case-conversions.
17758
17759 2002-09-04 Richard M. Stallman <rms@gnu.org>
17760
17761 * s/sol2-5.h (UNEXEC): Use unexsol.o.
17762
17763 * window.c (displayed_window_lines): Correct for one-off bug
17764 in HEIGHT on non-window displays.
17765
17766 * regex.c (set_image_of_range_1): New function.
17767 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
17768 Return a value to indicate running out of memory.
17769 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
17770 (extend_range_table_work_area): New subroutine.
17771 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
17772 Different calling conventions, and used from set_image_of_range{,_1}.
17773 (IMMEDIATE_QUIT_CHECK): Definitions moved.
17774
17775 2002-09-04 Juanma Barranquero <lektu@terra.es>
17776
17777 * makefile.w32-in: All dependencies updated.
17778
17779 2002-09-01 Richard M. Stallman <rms@gnu.org>
17780
17781 * unexsol.c: New file.
17782
17783 * xfns.c (Qbox): Declare external, don't define.
17784
17785 * xdisp.c (redisplay_window) <force-start case>:
17786 If point is on semi-visible last line, reposition
17787 it at previous line.
17788
17789 * alloc.c (display_malloc_warning): Use display-warning.
17790 (malloc_warning_1): Function deleted.
17791
17792 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
17793
17794 * lread.c (read1): Handle #! by skipping the line.
17795
17796 2002-08-31 Richard M. Stallman <rms@gnu.org>
17797
17798 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
17799 Don't include LDFLAGS.
17800 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
17801
17802 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
17803
17804 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
17805 member of x_display_info unless we compile for some window system.
17806
17807 2002-08-31 Kim F. Storm <storm@cua.dk>
17808
17809 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
17810 (get_window_cursor_type): Don't use them.
17811 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
17812
17813 2002-08-30 Kenichi Handa <handa@etl.go.jp>
17814
17815 * xdisp.c (get_next_display_element): Fix previous change.
17816
17817 2002-08-30 Andrew Choi <akochoi@shaw.ca>
17818
17819 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
17820 (expose_window): Use it to fix the display of overlapping
17821 rows (merge code from xterm.c).
17822
17823 * macfns.c (Qbox): Add extern declaration.
17824
17825 2002-08-30 Juanma Barranquero <lektu@terra.es>
17826
17827 * w32fns.c (Qbox): Make extern.
17828 (syms_of_w32fns): Remove initialization of Qbox.
17829
17830 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
17831
17832 * xfns.c (Fx_open_connection): Fix error message.
17833
17834 2002-08-30 Kim F. Storm <storm@cua.dk>
17835
17836 The following changes consolidates the handling of the cursor
17837 type in xdisp.c, moving duplicate code and functionality from
17838 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
17839
17840 * frame.h (enum text_cursor_kinds): Consolidated here.
17841 Added DEFAULT_CURSOR value.
17842 (struct frame) <desired_cursor, cursor_width>
17843 <blink_off_cursor, blink_off_cursor_width>: New fields.
17844 Consolidated from output_x, output_w32 and output_mac structs.
17845 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
17846 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
17847
17848 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
17849 Variables consolidated here.
17850 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
17851 (Vcursor_in_non_selected_windows): Renamed from
17852 cursor_in_non_selected_windows and changed to Lisp_Object.
17853 (syms_of_xdisp): Define and staticpro new and moved variables.
17854 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
17855 consolidated here. Recognize Qhollow setting.
17856 (set_frame_cursor_types): New function to set frame cursor types
17857 based on the frame parameters.
17858 (get_window_cursor_type): New function to calculate new cursor
17859 type and width for the specified window. Based on duplicated
17860 code consolidated here.
17861 Enhancements: cursor-in-non-selected-windows may be a cursor type,
17862 check buffer-local alternate-cursor-type and blink-cursor-alist
17863 before using built-in blink off methods.
17864
17865 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
17866
17867 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
17868 (get_specified_cursor_type, get_window_cursor_type)
17869 (set_frame_cursor_types): Added prototypes.
17870
17871 * macfns.c (x_specified_cursor_type): Removed.
17872 (x_set_cursor_type): Use set_frame_cursor_types.
17873 (Qbar, Qbox): Removed.
17874 (syms_of_macfns): Don't intern or staticpro them.
17875
17876 * macterm.c (x_specified_cursor_type): Remove prototype.
17877 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
17878 (x_display_and_set_cursor): Use get_window_cursor_type.
17879 Remove unused local variables cursor_non_selected, active_cursor.
17880 Redraw cursor if hbar cursor width changes.
17881 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
17882
17883 * macterm.h (enum text_cursor_kinds): Removed.
17884 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
17885 <blink_off_cursor, blink_off_cursor_width>: Members removed.
17886 (FRAME_DESIRED_CURSOR): Macro removed.
17887
17888 * w32fns.c (Vblink_cursor_alist): Removed.
17889 (Qbar, Qhbar, Qbox, Qhollow): Removed.
17890 (syms_of_w32fns): Don't intern, staticpro, or define them.
17891 (x_specified_cursor_type): Removed.
17892 (x_set_cursor_type): Use set_frame_cursor_types.
17893
17894 * w32term.c (x_specified_cursor_type): Remove prototype.
17895 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
17896 (x_display_and_set_cursor): Use get_window_cursor_type.
17897 Remove unused local variables cursor_off_state.
17898 Redraw cursor if hbar cursor width changes.
17899 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
17900
17901 * w32term.h (enum text_cursor_kinds): Removed.
17902 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
17903 <blink_off_cursor, blink_off_cursor_width>: Members removed.
17904 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
17905 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
17906 (struct w32_display_info) <x_highlight_frame>: Renamed member from
17907 w32_highlight_frame.
17908
17909 * xfns.c (Vblink_cursor_alist): Removed.
17910 (Qbar, Qhbar, Qbox, Qhollow): Removed.
17911 (syms_of_xfns): Don't intern, staticpro, or define them.
17912 (x_specified_cursor_type): Removed.
17913 (x_set_cursor_type): Use set_frame_cursor_types.
17914
17915 * xterm.c (x_specified_cursor_type): Remove prototype.
17916 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
17917 (x_display_and_set_cursor): Use get_window_cursor_type.
17918 Remove unused local variables cursor_off_state.
17919 Redraw cursor if hbar cursor width changes.
17920
17921 * xterm.h (enum text_cursor_kinds): Removed.
17922 (struct output_x) <current_cursor, desired_cursor, cursor_width>
17923 <blink_off_cursor, blink_off_cursor_width>: Members removed.
17924 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
17925 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
17926 (x_specified_cursor_type): Remove prototype.
17927
17928 2002-08-28 Richard M. Stallman <rms@gnu.org>
17929
17930 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
17931 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
17932 (Vblink_cursor_alist): New variable.
17933 (syms_of_w32fns): Initialize and defvar it.
17934 (x_specified_cursor_type): Recognize Qbox for filled box.
17935 Exceptions are hollow boxes.
17936 (Qbox, Qhollow): New variables.
17937 (syms_of_w32fns): Initialize and staticpro them.
17938
17939 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
17940 New macros.
17941 (struct w32_output): New fields blink_off_cursor,
17942 blink_off_cursor_width.
17943 (FRAME_CURSOR_WIDTH): New macro.
17944
17945 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
17946 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
17947
17948 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
17949 for bar cursor.
17950
17951 * w32term.c (expose_overlaps): New function.
17952 (expose_window): Use it to fix the display of overlapping rows.
17953
17954 2002-08-28 Simon Josefsson <jas@extundo.com>
17955
17956 * xfns.c (Fx_open_connection): Improve help when X connection
17957 fails, xhost is insecure and xauth is better.
17958
17959 2002-08-28 Juanma Barranquero <lektu@terra.es>
17960
17961 * makefile.w32-in: Add missing dependencies on w32term.h and
17962 composite.h.
17963
17964 * emacs.c (USAGE1): Add missing newline.
17965
17966 2002-08-27 Andrew Choi <akochoi@shaw.ca>
17967
17968 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
17969
17970 2002-08-27 Richard M. Stallman <rms@gnu.org>
17971
17972 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
17973 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
17974 (Vblink_cursor_alist): New variable.
17975 (syms_of_xfns): Initialize and defvar it.
17976 (x_specified_cursor_type): Recognize Qbox for filled box.
17977 Exceptions are hollow boxes.
17978 (Qbox, Qhollow): New variables.
17979 (syms_of_xfns): Initialize and staticpro them.
17980
17981 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
17982 New macros.
17983 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
17984
17985 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
17986 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
17987
17988 * emacs.c (main): Handle --script.
17989 (USAGE1): Mention --script.
17990 (standard_args): Define sort order for --script.
17991
17992 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
17993
17994 * xdisp.c (redisplay_updating_p): Variable removed.
17995 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
17996 New variables.
17997 (init_iterator): Don't free realized faces if
17998 inhibit_free_realized_faces is set.
17999 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
18000 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
18001 initialize Qinhibit_free_realized_faces.
18002
18003 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
18004 when iterator is adding glyphs to a glyph matrix.
18005
18006 2002-08-27 Kenichi Handa <handa@etl.go.jp>
18007
18008 * xdisp.c (get_next_display_element): In unibyte case, don't use
18009 octal form for such eight-bit characters that can be converted to
18010 multibyte char.
18011
18012 2002-08-26 Kim F. Storm <storm@cua.dk>
18013
18014 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
18015 foreground and background colors. From Joe Buehler.
18016
18017 2002-08-26 Miles Bader <miles@gnu.org>
18018
18019 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
18020
18021 2002-08-25 Andrew Choi <akochoi@shaw.ca>
18022
18023 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
18024 defined instead of MAC_OSX.
18025
18026 * s/darwin.h (select): Define select to sys_select only if
18027 HAVE_CARBON is defined.
18028 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
18029 (DONT_REOPEN_PTY): #def it.
18030
18031 * macterm.c (XTread_socket): Remove code to call
18032 SendEventToEventTarget for keys with command modifiers when
18033 mac_command_key_is_meta is nil.
18034
18035 2002-08-24 Andreas Schwab <schwab@suse.de>
18036
18037 * eval.c (Fdefvar): Fix last change.
18038
18039 2002-08-23 Richard M. Stallman <rms@gnu.org>
18040
18041 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
18042 Record variables in load history as (defvar . VAR).
18043 (Fdefvar): Don't record in load history if no initial value.
18044 (Qdefvar): New variable.
18045 (syms_of_eval): Init and staticpro it.
18046
18047 * lread.c (syms_of_lread): Doc fix.
18048 (build_load_history): Use Fmember to see if a definition
18049 is already in the Vload_history element.
18050
18051 * process.c (Fstart_process): Remove /: from program name.
18052
18053 * emacs.c (decode_env_path): Don't add /: if file name handler
18054 has a `safe-magic' property.
18055
18056 * callproc.c (Fcall_process): Remove /: from program name.
18057
18058 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
18059
18060 * regex.c (PATFETCH): Remove the translating fetch.
18061 (PATFETCH_RAW): Rename to PATFETCH.
18062 (set_image_of_range): New fun.
18063 (SET_RANGE_TABLE_WORK_AREA): Use it.
18064 (regex_compile): Don't translate the pattern chars so eagerly.
18065 Only do it when inserting an `exactn' bytecode or when handling
18066 a char-range.
18067 (mutually_exclusive_p): Avoid empty statement.
18068
18069 2002-08-22 Kim F. Storm <storm@cua.dk>
18070
18071 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
18072 end up on a partially visible line; this reverts a specific part
18073 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
18074 display error which has been reported several times now.
18075 However it introduces the problem that changes was supposed to fix.
18076 See my comments in the source if you want to debug this further.
18077
18078 2002-08-20 Kenichi Handa <handa@etl.go.jp>
18079
18080 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18081
18082 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
18083
18084 * msdos.c (croak): Add `void' to definition.
18085
18086 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
18087 Don't define them, they are defined in msdos.c.
18088
18089 * mem-limits.h [MSDOS]: Declare etext.
18090
18091 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
18092 `const' since CORRECT_DIR_SEPS modifies its target.
18093
18094 2002-08-19 Kim F. Storm <storm@cua.dk>
18095
18096 * keyboard.c (Fclear_this_command_keys): Add optional arg
18097 KEEP-RECORD to avoid clearing lossage when we just want to clear
18098 the current key sequence (kmacro needs this).
18099
18100 2002-08-19 Kenichi Handa <handa@localhost>
18101
18102 * composite.c (run_composition_function): Call FUNC if it is fboundp.
18103
18104 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
18105 cons, return Qnil.
18106
18107 2002-08-17 Richard M. Stallman <rms@gnu.org>
18108
18109 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
18110
18111 * sysdep.c [!VMS]: Include sys/files.h.
18112
18113 * editfns.c (save_restriction_restore): Defend from unchained marker.
18114
18115 * buffer.c (overlays_at): Handle extending vec uniformly.
18116 (overlays_in): Handle extending vec from length 0 as in overlays_at.
18117
18118 2002-08-15 Andrew Choi <akochoi@shaw.ca>
18119
18120 * mac.c (init_mac_osx_environment): New function.
18121
18122 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
18123
18124 2002-08-14 Kim F. Storm <storm@cua.dk>
18125
18126 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
18127 executing macro before appending to it (when used from Lisp).
18128 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
18129 which is called prior to each iteration of macro (for kmacro.el).
18130 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
18131
18132 * lisp.h (Fexecute_kbd_macro): Update prototype.
18133
18134 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
18135
18136 2002-08-14 Kenichi Handa <handa@etl.go.jp>
18137
18138 * xselect.c (QUTF8_STRING): New variable.
18139 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
18140 (x_atom_to_symbol): Likewise.
18141 (x_get_local_selection): New argument local_request. If it is
18142 nonzero, call handler_fn with the second arg nil.
18143 (x_handle_selection_request): Call x_get_local_selection with
18144 local_request 0.
18145 (lisp_data_to_selection_data): Don't encode the string here.
18146 (Fx_get_selection_internal): Call x_get_local_selection with
18147 local_request 1.
18148 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
18149
18150 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
18151
18152 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
18153
18154 2002-08-13 Richard M. Stallman <rms@gnu.org>
18155
18156 * minibuf.c (Fminibufferp): New function.
18157 (syms_of_minibuf): Defsubr it.
18158 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
18159
18160 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
18161
18162 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
18163
18164 2002-08-12 Richard M. Stallman <rms@gnu.org>
18165
18166 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
18167 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
18168 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
18169 already.
18170
18171 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
18172
18173 2002-08-11 Andrew Choi <akochoi@shaw.ca>
18174
18175 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
18176 (Vmac_pass_command_to_system): New variable.
18177 (Vmac_pass_control_to_system): New variable.
18178 (do_mouse_moved): Check wp with is_emacs_window.
18179 (XTread_socket): Check window_ptr with is_emacs_window.
18180 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
18181 events back to Mac Toolbox for processing, depending on values of
18182 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
18183 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
18184 Vmac_pass_control_to_system.
18185
18186 2002-08-10 Kenichi Handa <handa@etl.go.jp>
18187
18188 * coding.c (unencodable_char_position): New function.
18189 (Funencodable_char_position): New function.
18190 (syms_of_coding): Defsubr Funencodable_char_position.
18191
18192 2002-08-10 Andrew Choi <akochoi@shaw.ca>
18193
18194 * mac.c (sys_select) [MAC_OSX]: New function.
18195
18196 * macterm.c (MakeMeTheFrontProcess): New function.
18197 (mac_initialize): Call MakeMeTheFrontProcess.
18198
18199 * s/darwin.h: Define select to sys_select.
18200
18201 2002-08-09 Richard M. Stallman <rms@gnu.org>
18202
18203 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
18204
18205 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
18206
18207 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
18208 end of the buffer.
18209
18210 2002-08-08 Ken Raeburn <raeburn@gnu.org>
18211
18212 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
18213
18214 * puresize.h (BASE_PURESIZE): Increase to 910000.
18215
18216 2002-08-08 Kenichi Handa <handa@etl.go.jp>
18217
18218 * coding.c (Ffind_operation_coding_system): For write-region, if
18219 VISIT is a filename, make it the target.
18220
18221 2002-08-07 Richard M. Stallman <rms@gnu.org>
18222
18223 * alloc.c (mark_object): Detect long lists for debugging.
18224 (mark_object_loop_halt): New variable.
18225
18226 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
18227
18228 * data.c (Fmake_variable_frame_local): Doc fix.
18229
18230 2002-08-01 David Ponce <david@dponce.com>
18231
18232 * w32menu.c (local_heap, local_alloc, local_free): New macros.
18233 (malloc_widget_value, free_widget_value)
18234 (w32_free_submenu_strings): Use them.
18235
18236 (push_submenu_start, push_submenu_end, push_left_right_boundary)
18237 (push_menu_pane, push_menu_item, single_keymap_panes)
18238 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
18239 (single_submenu, set_frame_menubar)
18240 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
18241
18242 (Fx_popup_menu): Don't show pop up menu until preceding one is
18243 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
18244
18245 * w32menu.c: Changes adapted from xmenu.c
18246 (set_frame_menubar): First parse all submenus,
18247 then make widget_value trees from them.
18248 Don't allocate any widget_value objects
18249 until we are done with the parsing.
18250 (parse_single_submenu): New function.
18251 (digest_single_submenu): New function.
18252 (single_submenu): Function deleted, replaced by those two.
18253
18254 2002-08-04 Andrew Choi <akochoi@shaw.ca>
18255
18256 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
18257 returns a valid window pointer before proceeding for keyDown and
18258 autoKey events.
18259
18260 2002-08-03 Andrew Choi <akochoi@shaw.ca>
18261
18262 * macterm.c (USE_CARBON_EVENTS): New macro.
18263 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
18264 (x_iconify_frame): Call CollapseWindow.
18265 (Vmac_reverse_ctrl_meta): New variable.
18266 (Vmac_wheel_button_is_mouse_2): New variable.
18267 (init_mac_drag_n_drop): New function.
18268 (mac_do_receive_drag): New function.
18269 (mac_handle_service_event): New function.
18270 (init_service_handler): New function.
18271 (mac_to_emacs_modifiers): New function.
18272 (mac_event_to_emacs_modifiers): New function.
18273 (mac_get_mouse_btn): New function.
18274 (mac_convert_event_ref): New function.
18275 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
18276 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
18277 mac_get_mouse_btn.
18278 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
18279
18280 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
18281 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
18282 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
18283 TOOL_BAR_EVENT for MAC_OS as well.
18284 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
18285 as for WINDOWS_NT.
18286 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
18287
18288 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
18289
18290 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
18291
18292 * xdisp.c (forward_to_next_line_start): Fix a condition that
18293 lead to a newline being skipped.
18294
18295 2002-08-02 Andrew Choi <akochoi@shaw.ca>
18296
18297 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
18298
18299 2002-08-01 Richard M. Stallman <rms@gnu.org>
18300
18301 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
18302
18303 2002-07-31 Andrew Choi <akochoi@shaw.ca>
18304
18305 * macfns.c: #undef init_process before #define-ing it.
18306
18307 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
18308 HAVE_CARBON is defined.
18309
18310 2002-07-31 Richard M. Stallman <rms@gnu.org>
18311
18312 * xmenu.c (set_frame_menubar): First parse all submenus,
18313 then make widget_value trees from them.
18314 Don't allocate any widget_value objects
18315 until we are done with the parsing.
18316 (parse_single_submenu): New function.
18317 (digest_single_submenu): New function.
18318 (single_submenu): Function deleted, replaced by those two.
18319
18320 2002-07-30 Juanma Barranquero <lektu@terra.es>
18321
18322 * w32proc.c (syms_of_ntproc): Fix docstring of
18323 `w32-get-true-file-attributes'.
18324
18325 2002-07-28 Richard M. Stallman <rms@gnu.org>
18326
18327 * s/hpux8.h (HPUX8): Define this before including hpux.h.
18328 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
18329
18330 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
18331
18332 * keyboard.c (make_lispy_event):
18333 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
18334 Explicitly clear up_modifier in event->modifiers.
18335
18336 2002-07-27 Richard M. Stallman <rms@gnu.org>
18337
18338 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
18339
18340 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
18341 for bar cursor.
18342
18343 2002-07-26 Kenichi Handa <handa@etl.go.jp>
18344
18345 * coding.c (detect_coding_iso2022): While checking a byte sequence
18346 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
18347 it in the normal loop.
18348
18349 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
18350
18351 * xterm.c (expose_overlaps): New function.
18352 (expose_window): Use it to fix the display of overlapping rows.
18353
18354 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
18355
18356 2002-07-23 Ken Raeburn <raeburn@gnu.org>
18357
18358 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
18359 since it only depends on XUINT.
18360
18361 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
18362 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
18363 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
18364 Macros deleted.
18365
18366 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
18367 its value over other approaches.
18368 * sysdep.c (start_of_data): Don't define the function if a macro
18369 form has been defined.
18370
18371 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
18372
18373 * xdisp.c (redisplay_updating_p): New variable.
18374 (init_iterator): Don't free realized faces when
18375 redisplay_updating_p is set.
18376 (redisplay_internal): Set redisplay_updating_p while updating
18377 the display.
18378
18379 2002-07-23 Richard M. Stallman <rms@gnu.org>
18380
18381 * editfns.c (Fmessage): Treat "" like nil.
18382
18383 2002-07-23 Kenichi Handa <handa@etl.go.jp>
18384
18385 * xdisp.c (face_before_or_after_it_pos):
18386 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18387
18388 2002-07-22 Juanma Barranquero <lektu@terra.es>
18389
18390 * callproc.c (init_callproc) [DOS_NT]:
18391 Initialize Vshared_game_score_directory to nil.
18392 (syms_of_callproc) [DOS_NT]: Likewise.
18393
18394 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
18395
18396 * xdisp.c (display_line): Replace an abort with xassert.
18397
18398 2002-07-21 Richard M. Stallman <rms@gnu.org>
18399
18400 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
18401 and END_UNCHANGED when setting buffer_unchanged_p.
18402 Use current_matrix_up_to_date_p to decide whether to use
18403 try_cursor_movement.
18404
18405 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
18406
18407 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
18408
18409 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
18410 Set to nil if dir does not exist.
18411 (syms_of_callproc): Init unconditionally and simply.
18412
18413 * buffer.c (Fbuffer_list): Doc fix.
18414
18415 2002-07-21 Ken Raeburn <raeburn@gnu.org>
18416
18417 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
18418
18419 * buffer.c (mmap_realloc): When shrinking, make sure number of
18420 pages to unmap is rounded towards zero.
18421
18422 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
18423 (XSETINT): Deleted.
18424
18425 * m/att3b.h (XINT): Don't define.
18426 (VALBITS, VALMASK, XTYPE): Deleted.
18427 (DATA_SEG_BITS): Define.
18428 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
18429 ARRAY_MARK_FLAG): Deleted.
18430 (DATA_SEG_BITS): Define.
18431 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
18432 (DATA_SEG_BITS): Define.
18433
18434 2002-07-20 Richard M. Stallman <rms@gnu.org>
18435
18436 * print.c (print_error_message): New args CONTEXT and CALLER.
18437 Calls changed.
18438
18439 * lisp.h (print_error_message): Declare new args.
18440
18441 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
18442 and CONTEXT to print_error_message, don't print them here.
18443 For a Quit, don't use Vsignaling_function.
18444 Call message_log_maybe_newline.
18445
18446 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
18447
18448 2002-07-20 Kim F. Storm <storm@cua.dk>
18449
18450 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
18451
18452 2002-07-19 Ken Raeburn <raeburn@gnu.org>
18453
18454 * bytecode.c (struct byte_stack): Pointers into byte string now
18455 point to const.
18456 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
18457 const.
18458 * charset.h (BCOPY_SHORT): Source pointer now points to const.
18459 * coding.c (encode_eol, detect_coding, detect_eol):
18460 (decode_coding, encode_coding, detect_coding_system):
18461 Source strings now treated as const.
18462 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
18463 modify Lisp string contents.
18464 * coding.h (decode_coding, encode_coding, detect_coding,
18465 detect_eol): Declarations updated.
18466 * composite.c (compose_chars_in_text): Treat Lisp string contents
18467 as const.
18468 * dispnew.c (safe_bcopy): Source pointer now points to const.
18469 * lisp.h (STRING_COPYIN): New macro.
18470 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
18471 (internal_with_output_to_temp_buffer): Declarations updated.
18472 * print.c (temp_output_buffer_setup):
18473 (internal_with_output_to_temp_buffer): Buffer name argument is now
18474 pointer to const.
18475 * sound.c (struct sound_device): Function pointer field "write"
18476 buffer argument now points to const.
18477 (vox_write): Buffer argument points to const.
18478 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
18479 contents as const.
18480 * sysdep.c (emacs_write): Buffer pointer now const.
18481 * term.c (encode_terminal_code): Buffer pointer now const.
18482 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
18483 (x_face_list_fonts, x_update_menu_appearance):
18484 (hash_string_case_insensitive): Treat Lisp string contents as const.
18485
18486 2002-07-19 Juanma Barranquero <lektu@terra.es>
18487
18488 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
18489
18490 * fileio.c (syms_of_fileio): Likewise.
18491 (Ffile_name_as_directory): Fix argument name in docstring.
18492 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
18493
18494 2002-07-18 Richard M. Stallman <rms@gnu.org>
18495
18496 * data.c (Fdefalias): Doc fix.
18497
18498 2002-07-17 Dave Love <fx@gnu.org>
18499
18500 * intervals.h (text_property_stickiness): Use P_.
18501
18502 * ccl.c: Remove `emacs' conditionals.
18503 (ccl_backtrace_table): Fix size spec.
18504 (ccl_driver): Fix type errors.
18505
18506 2002-07-16 Ken Raeburn <raeburn@gnu.org>
18507
18508 * alloc.c (xstrdup, make_string, make_unibyte_string)
18509 (make_multibyte_string, build_string): String pointer args now
18510 point to const.
18511 * charset.c (find_charset_in_text, c_string_width):
18512 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
18513 * fileio.c (report_file_error):
18514 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
18515 (count_combining_before, count_combining_after, insert_1_both):
18516 (insert, insert_and_inherit, insert_string):
18517 (insert_before_markers, insert_before_markers_and_inherit):
18518 * lread.c (intern, oblookup, hash_string):
18519 * minibuf.c (temp_echo_area_glyphs):
18520 * search.c (fast_c_string_match_ignore_case):
18521 * sysdep.c (emacs_open, set_file_times):
18522 * xfaces.c (xstricmp):
18523 * xdisp.c (store_frame_title, string_char_and_length):
18524 (message_dolog, message2, message2_nolog, set_message): Likewise.
18525 (set_message_1): Cast message string argument to const pointer.
18526 * editfns.c (general_insert_function): Insertion function now
18527 takes pointer to const for input data.
18528 * charset.h (find_charset_in_text, c_string_width):
18529 (parse_str_as_multibyte): Declarations updated.
18530 * dispextern.h (xstricmp): Declaration updated.
18531 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
18532 (count_size_as_multibyte, count_combining_before):
18533 (count_combining_after, insert_1, insert_1_both, message_dolog):
18534 (insert, insert_and_inherit, insert_before_markers)
18535 (insert_before_markers_and_inherit, set_message, message2):
18536 (message2_dolog, build_string, make_string, make_unibyte_string):
18537 (make_multibyte_string, intern, oblookup, report_file_error):
18538 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
18539 (emacs_open, xstrdup): Declarations updated.
18540 * systime.h (set_file_times): Declaration updated.
18541
18542 * charset.c (find_charset_in_text, lisp_string_width): Use const
18543 for pointer to lisp string data.
18544 * charset.h (FETCH_STRING_CHAR_ADVANCE):
18545 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
18546 * coding.c (Ffind_coding_systems_region_interval):
18547 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
18548 (Fmake_directory_internal, Fdelete_directory):
18549 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
18550 * fontset.c (font_family_registry, fs_query_fontset):
18551 (list_fontsets):
18552 * frame.c (Fframe_parameter):
18553 * keyboard.c (cmd_error_internal):
18554 * keymap.c (Fdescribe_buffer_bindings):
18555 * lread.c (complete_filename_p, openp):
18556 * minibuf.c (Fminibuffer_complete_word):
18557 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
18558 (face_before_or_after_it_pos, next_element_from_string):
18559 (get_overlay_arrow_glyph_row, display_mode_element):
18560 (decode_mode_spec_coding):
18561 * xterm.c (same_x_server): Likewise.
18562
18563 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
18564 settings of non-existent fields.
18565
18566 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
18567 copy a lisp value.
18568
18569 * lread.c (Fintern_soft): Use string macros instead of
18570 Lisp_String fields.
18571 * keyboard.c (echo_char, parse_modifiers_uncached):
18572 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
18573 * textprop.c (validate_interval_range, interval_of): Likewise.
18574
18575 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
18576
18577 * charset.h (FETCH_STRING_CHAR_ADVANCE)
18578 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
18579 XSTRING()->size_byte.
18580
18581 * lisp.h (SDATA, SREF): Produce rvalue.
18582 (SSET): New macro.
18583 * alloc.c (make_event_array): Use SSET for storing into a string.
18584 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
18585 a string.
18586 * casefiddle.c (casify_object): Use SSET.
18587 * charset.h (FETCH_STRING_CHAR_ADVANCE)
18588 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
18589 address of string contents.
18590 * data.c (Faref): Use SDATA.
18591 (Faset): Use SDATA, SSET.
18592 * dired.c (directory_files_internal): Use SSET.
18593 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
18594 (Fread_file_name): Use SREF, SSET.
18595 * fns.c (concat): Use SSET.
18596 (concat, Fdelete): Use SDATA.
18597 * insdel.c (insert_from_string_1): Use SDATA.
18598 * keyboard.c (Fevent_convert_list): Use SREF.
18599 * lread.c (Fload): Use SDATA, SSET.
18600 * macfns.c (validate_x_resource_name): Use SSET.
18601 * process.c (status_message): Use SSET.
18602 * search.c (wordify): Use SDATA.
18603 (Freplace_match): Use SREF.
18604 * w32fns.c (validate_x_resource_name): Use SSET.
18605 * xfns.c (validate_x_resource_name): Use SSET.
18606 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
18607
18608 2002-07-16 Richard M. Stallman <rms@gnu.org>
18609
18610 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
18611
18612 * xdisp.c (reconsider_clip_changes):
18613 Don't test prevent_redisplay_optimizations_p.
18614 (redisplay_internal): Test prevent_redisplay_optimizations_p
18615 along with clip_changed in some cases.
18616 (try_window_id): Likewise.
18617 (redisplay_window): New local var buffer_unchanged_p.
18618
18619 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
18620
18621 * process.c (create_process): Test USG_SUBTTY_WORKS.
18622 (process_send_signal): Clean up handling of GID.
18623 Detect errors in ioctls meant to set GID.
18624
18625 * window.c (temp_output_buffer_show):
18626 Don't set prevent_redisplay_optimizations_p.
18627
18628 2002-07-15 Juanma Barranquero <lektu@terra.es>
18629
18630 * eval.c (Fdefvaralias): Add docstring argument.
18631
18632 2002-07-15 Ken Raeburn <raeburn@gnu.org>
18633
18634 * lisp.h (STRING_INTERVALS): Produce rvalue.
18635 (STRING_SET_INTERVALS): New macro.
18636 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
18637 * fns.c (Fstring_as_multibyte): Likewise.
18638 * intervals.c (balance_possible_root_interval, delete_interval)
18639 (create_root_interval, copy_intervals_to_string): Likewise.
18640 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
18641 instead of 0.
18642
18643 2002-07-14 Ken Raeburn <raeburn@gnu.org>
18644
18645 * lisp.h (STRING_SET_CHARS): New macro.
18646 (SCHARS, SBYTES): Produce rvalues.
18647 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
18648 * fns.c (concat): Likewise.
18649 * lread.c (read_vector): Likewise.
18650
18651 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
18652 (STRING_SET_UNIBYTE): New macro.
18653 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
18654 length of -1) changed to use STRING_SET_UNIBYTE.
18655 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
18656 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
18657 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
18658 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
18659 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
18660 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
18661 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
18662 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
18663 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
18664 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
18665 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
18666 STRING_BYTES or indirection changed to SCHARS, SBYTES,
18667 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
18668 unchanged for now.
18669
18670 2002-07-13 Kim F. Storm <storm@cua.dk>
18671
18672 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
18673
18674 2002-07-12 Richard M. Stallman <rms@gnu.org>
18675
18676 * fileio.c (Fwrite_region): Doc fix.
18677
18678 * print.c (print_error_message): Don't handle Vsignaling_function here.
18679
18680 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
18681 (command_loop_1): Avoid certain actions after memory-full error.
18682
18683 * eval.c (Fsignal): Don't call cancel_hourglass.
18684 For a memory-full error, don't call Vsignal_hook_function
18685 and don't set Vsignaling_function.
18686
18687 * process.c (process_send_signal): Add abort call.
18688
18689 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
18690
18691 * keymap.c (Fkey_binding): Fix typo.
18692
18693 2002-07-11 Richard M. Stallman <rms@gnu.org>
18694
18695 * alloc.c (Vmemory_full): New variable.
18696 (Vmemory_signal_data): Rename from memory_signal_data.
18697 Uses changed.
18698 (syms_of_alloc): Defvar them.
18699 (memory_full, buffer_memory_full): Set Vmemory_full.
18700
18701 * lisp.h (Vmemory_full): Add declaration.
18702 (current_column, indented_beyond_p): Change declaration.
18703
18704 * indent.c (last_known_column): Declare as double, not float.
18705 (current_column, current_column_1, string_display_width)
18706 (position_indentation): Return `double'.
18707 (indented_beyond_p): Arg `column' is `double'. Callers changed.
18708
18709 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
18710 (back_to_previous_visible_line_start)
18711 (reseat_at_next_visible_line_start, next_element_from_buffer):
18712 Use `double', not `float', when calling indented_beyond_p.
18713
18714 * s/hpux11.h (BROKEN_SA_RESTART): Define.
18715
18716 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
18717
18718 2002-07-11 Juanma Barranquero <lektu@terra.es>
18719
18720 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
18721 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
18722 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
18723 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
18724 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
18725 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
18726
18727 2002-07-10 Juanma Barranquero <lektu@terra.es>
18728
18729 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
18730 All callers changed.
18731
18732 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
18733
18734 * data.c (Fdefalias): Add an optional `docstring' argument.
18735 (set_internal, Fsetq_default): Use XCAR/XCDR.
18736
18737 * composite.c (HASH_VALUE, HASH_KEY):
18738 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
18739
18740 2002-07-09 Kenichi Handa <handa@etl.go.jp>
18741
18742 * callproc.c (Fcall_process): Fix previous change.
18743
18744 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
18745
18746 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
18747 Add support for hash-tables.
18748 (Ftry_completion): Return t even if the string appears multiple times.
18749
18750 * fns.c (Fnconc): Use XCDR.
18751 (Fprovide): Use CONSP and XCDR.
18752 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
18753 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
18754 (Fmake_hash_table): Accept `:size nil'.
18755 (Fmakehash): Delete: moved to subr.el.
18756 (syms_of_fns): Don't defsubr makehash.
18757
18758 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
18759 (HASH_TABLE_SIZE): Move from fns.c.
18760
18761 2002-07-07 Richard M. Stallman <rms@gnu.org>
18762
18763 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
18764 Instead just return 0 when there is something to be done.
18765 (try_scrolling): If make_cursor_line_fully_visible returns 0,
18766 retry scrolling as if cursor were off the bottom.
18767 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
18768 return CURSOR_MOVEMENT_MUST_SCROLL.
18769 (redisplay_window): If make_cursor_line_fully_visible returns 0,
18770 go to try_to_scroll.
18771
18772 * buffer.c (Fbuffer_local_value): Store current value into its binding
18773 so we get the up-to-date value for the binding that is loaded.
18774
18775 * eval.c (Fdefmacro): Doc fix.
18776
18777 2002-07-05 Dave Love <fx@gnu.org>
18778
18779 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
18780 correctly.
18781
18782 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
18783 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
18784 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
18785 CCL_LookupCharConstTbl.
18786 (syms_of_ccl): Defvar translation-hash-table-vector.
18787
18788 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18789
18790 * xdisp.c: Remove unused variable `face'.
18791
18792 2002-07-04 Juanma Barranquero <lektu@terra.es>
18793
18794 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
18795 obsolescence information.
18796
18797 2002-07-03 Andrew Choi <akochoi@shaw.ca>
18798
18799 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
18800 pattern. Search cache first.
18801 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
18802 for Japanese font.
18803 (XLoadQueryFont): Use it.
18804
18805 2002-07-02 Richard M. Stallman <rms@gnu.org>
18806
18807 * keymap.c (Fdefine_key): Doc fix.
18808
18809 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
18810
18811 2002-07-02 Juanma Barranquero <lektu@terra.es>
18812
18813 * keymap.c (syms_of_keymap): Fix typo.
18814
18815 2002-07-01 Andrew Choi <akochoi@shaw.ca>
18816
18817 * s/darwin.h: Define POSIX_SIGNALS.
18818
18819 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
18820 and FSRefMakePath to convert FSSpec returned with Apple Event to
18821 Posix pathname.
18822 (mac_initialize) [TARGET_API_MAC_CARBON]:
18823 Call init_required_apple_events and disable the `Quit' menu item
18824 provided automatically by the Carbon Toolbox.
18825
18826 2002-07-01 Dave Love <fx@gnu.org>
18827
18828 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
18829 for K&R.
18830
18831 * xterm.c: Fix prototype for K&R.
18832
18833 * term.c (costs_set): Declare static, non-initialized for pcc.
18834
18835 2002-07-01 Richard M. Stallman <rms@gnu.org>
18836
18837 * keyboard.c (timer_last_idleness_start_time): New variable.
18838 (timer_start_idle): Set that.
18839 (read_key_sequence): Use that to reset timer_idleness_start_time
18840 to previous value.
18841
18842 * window.c (Frecenter): With arg, set optional_new_start.
18843
18844 * xdisp.c (redisplay_internal): Make optional_new_start really work.
18845
18846 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
18847 buffer for completion.
18848
18849 2002-06-29 Ken Raeburn <raeburn@gnu.org>
18850
18851 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
18852
18853 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18854
18855 * keyboard.c (readable_filtered_events): New function that filters
18856 FOCUS_IN_EVENT depending on parameter.
18857 (readable_events): Calls readable_filtered_events, not filtering
18858 FOCUS_IN_EVENT.
18859 (get_filtered_input_pending): New function, filtering parameter passed
18860 to readable_filtered_events.
18861 (get_input_pending): Calls get_filtered_input_pending, not filtering
18862 FOCUS_IN_EVENT.
18863 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
18864 FOCUS_IN_EVENT.
18865
18866 * xterm.h (struct x_output): Add focus_state.
18867
18868 * xterm.c (x_focus_changed): New function.
18869 (x_detect_focus_change): New function.
18870 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
18871 EnterNotify and LeaveNotify to track X focus changes.
18872
18873 2002-06-28 Andreas Schwab <schwab@suse.de>
18874
18875 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
18876
18877 2002-06-27 Kim F. Storm <storm@cua.dk>
18878
18879 * xdisp.c (mode_line_string_list, mode_line_string_face)
18880 (mode_line_string_face_prop): New variables.
18881 (store_mode_line_string): New function.
18882 (display_mode_element): Use store_mode_line_string to
18883 add mode-line string elements to mode_line_string_list
18884 when mode_line_string_list is non-nil.
18885 (Fformat_mode_line): Now returns propertized string by
18886 default. New arg NO-PROPS to ignore properties.
18887 (decode_mode_spec): Only add two dashes for %- in propertized
18888 mode-line string.
18889 (syms_of_xdisp): Init and staticpro mode_line_string_list.
18890
18891 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
18892
18893 * minibuf.c (minibuffer_completion_contents): Add return type.
18894
18895 2002-06-27 Juanma Barranquero <lektu@terra.es>
18896
18897 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
18898
18899 2002-06-26 Juanma Barranquero <lektu@terra.es>
18900
18901 * fileio.c (read_file_name_cleanup): Add missing return.
18902
18903 2002-06-26 Richard M. Stallman <rms@gnu.org>
18904
18905 * window.c (Frecenter): Don't set force_start flag.
18906
18907 * minibuf.c (do_completion, Fminibuffer_complete_word)
18908 (Fminibuffer_completion_help): Complete just the text before point.
18909 (minibuffer_completion_contents): New function.
18910
18911 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
18912
18913 * frame.c (frames_bury_buffer): Function deleted.
18914
18915 2002-06-25 Miles Bader <miles@gnu.org>
18916
18917 * callint.c (Fcall_interactively): When checking to see if doprnt hit
18918 the end of callint_message, allow for a terminating '\0'.
18919
18920 2002-06-24 Juanma Barranquero <lektu@terra.es>
18921
18922 * w32select.c: Include composite.h.
18923
18924 * w16select.c: Likewise.
18925
18926 2002-06-24 Kenichi Handa <handa@etl.go.jp>
18927
18928 * callproc.c (Fcall_process): If code detection is necessary,
18929 call detect_coding directly here.
18930
18931 * coding.c (detect_eol): Preserve coding->cmp_data.
18932
18933 * w16select.c (Fw16_get_clipboard_data):
18934 * w32fns.c (w32_to_x_font):
18935 * w32select.c (Fw32_get_clipboard_data):
18936 * xselect.c (selection_data_to_lisp_data):
18937 * xterm.c (XTread_socket): Disable composition handling.
18938
18939 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
18940
18941 * print.c (temp_output_buffer_setup): Kill all local variables.
18942
18943 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
18944
18945 * lread.c (Fread): Remove redundant and imprecise declaration.
18946
18947 * xfns.c (check_x_display_info): Use check_x_frame.
18948
18949 * .gdbinit (xprintsym): Use the new `xname' field.
18950 (xsymbol): Use it.
18951
18952 2002-06-22 Jason Rumney <jasonr@gnu.org>
18953
18954 * w32fns.c (file_dialog_callback): New function.
18955 (Fx_file_dialog): Allow selecting directories as well as files.
18956
18957 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18958
18959 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
18960 OpenBSD. Add support for mipseb-*-netbsd* machines.
18961
18962 2002-06-17 Andrew Choi <akochoi@shaw.ca>
18963
18964 * macterm.c (mac_scroll_area): Set foreground and backcolor to
18965 black and white before scrolling. Restore frame background and
18966 foreground color after scrolling.
18967 (do_window_update): Call XClearWindow before calling expose_frame.
18968 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
18969 FRAME_FOREGROUND_PIXEL of frame.
18970
18971 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
18972 test Mac command key as <ALT> key.
18973
18974 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
18975
18976 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
18977
18978 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
18979 Lookup keys in function-key-map immediately so that key-translation-map
18980 can be applied earlier.
18981 Remove function_key_possible and key_translation_possible, replaced
18982 by checking `keytran_start < t'.
18983
18984 * .gdbinit (xsymbol): Use the new `xname' field.
18985
18986 2002-06-17 Andrew Choi <akochoi@shaw.ca>
18987
18988 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
18989 test Mac command key as <ALT> key.
18990
18991 * mac.c (do_applescript): Call initialize_applescript if necessary
18992 when first called. Dispose of result_desc only when there is no error.
18993 (Fdo_applescript): Use %d format specifier instead of %ld.
18994
18995 2002-06-16 Andrew Choi <akochoi@shaw.ca>
18996
18997 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
18998 of FrontWindow for cases keyDown and autoKey.
18999
19000 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
19001 Vdefault_fontset to Monaco with mac-roman coding.
19002
19003 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
19004 init_process before and after inclusion of Carbon/Carbon.h, resp.
19005
19006 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
19007 cursor_gc.
19008 (add_font_name_table_entry): New function.
19009 (init_font_name_table): Use add_font_name_table_entry; add italic,
19010 bold, and bold-italic entries for truetype fonts.
19011
19012 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
19013 for Mac too.
19014 (try_font_list) [MAC_OS]: If no font matches given registry, try
19015 fonts with any registry matching face_family.
19016 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
19017
19018 * s/darwin.h: If autoconf detects the Ncurses library, define
19019 LIBS_TERMCAP to -lncurses to use it.
19020
19021 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
19022
19023 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
19024
19025 2002-06-15 Richard M. Stallman <rms@gnu.org>
19026
19027 * window.c (Fset_window_configuration): Explicitly preserve
19028 the point value that new_current_buffer had at the start.
19029
19030 2002-06-14 Juanma Barranquero <lektu@terra.es>
19031
19032 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
19033 Fix typos.
19034
19035 2002-06-14 Kim F. Storm <storm@cua.dk>
19036
19037 * insdel.c (insert_1_both, insert_from_string_1)
19038 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
19039 insert happened in the end_unchanged region. Otherwise, the
19040 redisplay may be confused and duplicate the last line in the
19041 buffer [seen after save-buffer when require-final-newline==t].
19042
19043 2002-06-13 Jason Rumney <jasonr@gnu.org>
19044
19045 * w32.c (init_environment): Remove EMACSLOCKDIR.
19046 (stat): Swap _S_IFDIR and _S_IFREG.
19047
19048 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19049
19050 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
19051 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
19052 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
19053 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
19054 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
19055 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
19056 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
19057 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
19058 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
19059 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
19060 SELECTION_REQUEST_EVENT, selection_clear_event to
19061 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
19062 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
19063 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
19064 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
19065 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
19066 no_event to NO_EVENT.
19067
19068 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19069
19070 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
19071
19072 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
19073
19074 * intervals.c (textget): Don't forget to `return'.
19075 (lookup_char_property): Use XCAR/XCDR.
19076
19077 2002-06-12 Juanma Barranquero <lektu@terra.es>
19078
19079 * xdisp.c (Fformat_mode_line): Fix typo.
19080
19081 2002-06-12 Kim F. Storm <storm@cua.dk>
19082
19083 * xdisp.c (Fformat_mode_line): New function.
19084 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
19085 (store_frame_title_char, store_frame_title): Use unconditionally.
19086 (init_xdisp): Defsubr Fformat_mode_line.
19087 Initialize frame_title_buf etc. unconditionally.
19088
19089 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
19090
19091 * keyboard.c (read_key_sequence):
19092 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
19093 things through those maps after downcasing events.
19094 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
19095 applies after function-key-map.
19096 Make sure that keytran can be done in the middle in the sequence.
19097 Be careful not to throw away events past the one we downcase.
19098
19099 * lread.c (read_integer): Remove unused var `tem'.
19100 (read1): Fix int/Lisp_Object mixup.
19101
19102 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
19103
19104 2002-06-11 Richard M. Stallman <rms@gnu.org>
19105
19106 * keyboard.c (readable_events): Ignore any number of
19107 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
19108
19109 2002-06-09 Miles Bader <miles@gnu.org>
19110
19111 * xfaces.c (Ftty_supports_face_attributes_p): New function.
19112 (parse_rgb_list, tty_lookup_color): New functions.
19113 (tty_defined_color): Use `tty_lookup_color' to do all the work.
19114 (color_distance, Fcolor_distance): New functions.
19115 (TTY_SAME_COLOR_THRESHOLD): New macro.
19116 (Qtty_color_standard_values): New variable.
19117 (syms_of_xfaces): Initialize new vars & functions.
19118
19119 2002-06-08 Colin Walters <walters@verbum.org>
19120
19121 * textprop.c (Vchar_property_alias_alist): New variable.
19122 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
19123
19124 * intervals.c (lookup_char_property): New function for looking up
19125 overlay and text properties, created from textget.
19126 (textget): Use it.
19127
19128 * intervals.h (lookup_char_property): Declare.
19129 (Vchar_property_alias_alist): Declare.
19130
19131 * buffer.c (Foverlay_get): Use lookup_char_property.
19132
19133 2002-06-07 Sam Steingold <sds@gnu.org>
19134
19135 * xselect.c (lisp_data_to_selection_data): Fix last change:
19136 *data_ret is not a Lisp string, while unibyte_string is.
19137
19138 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
19139
19140 * xselect.c (lisp_data_to_selection_data): Fix last change:
19141 set size_ret.
19142
19143 2002-06-07 Andreas Schwab <schwab@suse.de>
19144
19145 * m/amdx86-64.h: New file.
19146
19147 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
19148
19149 * fns.c (Fstring_make_unibyte): Doc fix.
19150
19151 * xselect.c (lisp_data_to_selection_data): If the requested type
19152 is STRING, call string_make_unibyte to encode the selected text
19153 as a string.
19154
19155 * window.c (Fset_window_hscroll): Doc fix.
19156
19157 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19158
19159 * fileio.c (choose_write_coding_system):
19160 Call select-safe-coding-system properly.
19161
19162 2002-06-03 Richard M. Stallman <rms@gnu.org>
19163
19164 * xdisp.c (message_with_string): Error if STRING is not a string.
19165
19166 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
19167
19168 * fileio.c (choose_write_coding_system): Pass FILE arg to
19169 Vselect_safe_coding_system_function.
19170
19171 2002-06-03 Ken Raeburn <raeburn@gnu.org>
19172
19173 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
19174
19175 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
19176
19177 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
19178 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
19179 * keymap.c (describe_command): Likewise.
19180 * minibuf.c (read_minibuf): Likewise.
19181
19182 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
19183 Cast `current_column' return value to int.
19184 (back_to_previous_visible_line_start)
19185 (reseat_at_next_visible_line_start, next_element_from_buffer):
19186 Cast `indented_beyond_p' 3rd arg to float.
19187
19188 * indent.c (last_known_column): Now a float.
19189 (current_column_1, position_indentation, current_column)
19190 (string_display_width): Return float.
19191 (Fcurrent_column): Cast `current_column' return value to int.
19192 (Fcurrent_indentation): Cast `position_indentation' retval to int.
19193 (indented_beyond_p): Third arg now a float.
19194 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
19195
19196 * lisp.h (current_column): Now returns float.
19197 (indented_beyond_p): 3rd arg now a float.
19198
19199 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
19200
19201 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
19202 is Qcompound_text_with_extensions.
19203
19204 * xselect.c (lisp_data_to_selection_data): Always set selection
19205 type as string if x_encode_text returns streingp non-NULL.
19206
19207 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
19208
19209 2002-05-30 Richard M. Stallman <rms@gnu.org>
19210
19211 * window.c (Fset_window_configuration): Correct the handling
19212 of point in current buffer, to work with multiple windows.
19213
19214 2002-05-29 Colin Walters <walters@verbum.org>
19215
19216 * lread.c (Fread_from_string): Don't depend on order of evaluation
19217 for C function parameters.
19218
19219 2002-05-28 Richard M. Stallman <rms@gnu.org>
19220
19221 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
19222 way for blinked-off state and for a nonselected window.
19223
19224 * window.c (window_scroll_pixel_based): Don't call Fbolp;
19225 instead, see if the new start pos is at beginning of line.
19226
19227 * fileio.c (Fwrite_region): If START is a string, don't
19228 make any annotations.
19229
19230 * eval.c (syms_of_eval): Doc fix.
19231
19232 2002-05-28 Colin Walters <walters@debian.org>
19233
19234 * emacs.c (USAGE1): Add --no-splash.
19235 (standard_args): Ditto.
19236
19237 2002-05-28 Colin Walters <walters@gnu.org>
19238
19239 * lread.c (readchar_count): New variable.
19240 (readchar): Increment it.
19241 (unreadchar): Decrement it.
19242 (read_multibyte): Decrement it.
19243 (Vread_with_symbol_positions): New variable.
19244 (Vread_symbol_positions_list): New variable.
19245 (read_internal_start): New function, created from Fread and
19246 Fread_from_string. Handle Vread_symbol_positions_list and
19247 Vread_with_symbol_positions.
19248 (readevalloop, Fread, Fread_from_string): Use it.
19249 (read1): Use readchar_count to add symbol positions to
19250 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
19251 (syms_of_lread): DEFVAR_LISP and initialize them.
19252
19253 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
19254 (substitute_object_recurse, substitute_object_in_subtree)
19255 (substitute_in_interval): Prototype.
19256 (read_multibyte): Return c if it's less than zero.
19257
19258 2002-05-28 Kim F. Storm <storm@cua.dk>
19259
19260 * fileio.c (Fread_file_name_internal): Added brute-force
19261 speed up for using predicate file-directory-p.
19262
19263 2002-05-28 Kim F. Storm <storm@cua.dk>
19264
19265 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
19266 New variables.
19267 (syms_of_fileio): DEFVAR_LISP them.
19268 (read_file_name_cleanup): New unwind function.
19269 (Fread_file_name_internal): Only return completions satifying
19270 Vread_file_name_predicate. Temporarily unwind protect and rebind
19271 default-directory while checking completions against the predicate.
19272 (Fread_file_name): Added PREDICATE argument. Specbind it to
19273 Vread_file_name_predicate during completion.
19274 Call Vread_file_name_function to read the file name if non-nil.
19275
19276 * lisp.h (Fread_file_name): Now has 6 args.
19277
19278 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
19279 predicate for Fread_file_name when reading directory name.
19280 Supply Qnil for predicate in other calls to Fread_file_name.
19281
19282 2002-05-26 Miles Bader <miles@gnu.org>
19283
19284 * term.c (tty_capable_p): New function.
19285 * dispextern.h (tty_capable_p): New function declaration.
19286 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
19287 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
19288
19289 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
19290
19291 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
19292 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
19293 (Vwrite_region_annotate_functions): Docstring fix.
19294
19295 2002-05-23 Kim F. Storm <storm@cua.dk>
19296
19297 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
19298 phys_cursor's hpos is overwritten. This is still not completely
19299 correct, as it doesn't really make sense to use hpos at all to
19300 get the cursor glyph (as that is relative to the width of the
19301 characters on the line, which may have changed during the update).
19302
19303 2002-05-22 Jason Rumney <jasonr@gnu.org>
19304
19305 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
19306 Lisp_Object.
19307 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
19308 Use modified enumfont_t struct.
19309
19310 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
19311
19312 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
19313 Handle the `hbar' cursor type.
19314 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
19315
19316 * w32fns.c (Qhbar): New variable.
19317 (x_specified_cursor_type): Use it.
19318
19319 2002-05-21 Ken Raeburn <raeburn@gnu.org>
19320
19321 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
19322 now, when the address is needed.
19323
19324 2002-05-21 Colin Walters <walters@gnu.org>
19325
19326 * Makefile.in (shortlisp): Add font-core.el.
19327
19328 2002-05-20 Richard M. Stallman <rms@gnu.org>
19329
19330 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
19331
19332 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
19333 equivalent key bindings here.
19334
19335 2002-05-20 Ken Raeburn <raeburn@gnu.org>
19336
19337 Change symbol structure to contain a lisp object for the symbol
19338 name:
19339 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
19340 object field named "xname".
19341 (SYMBOL_NAME): New macro.
19342 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
19343 name field.
19344 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
19345 (mark_object, gc_sweep): Use symbol xname field and XSTRING
19346 instead of name field.
19347 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
19348 SYMBOL_NAME instead of XSYMBOL and name field.
19349 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
19350 instead of XSYMBOL and name field.
19351 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
19352 and SYMBOL_NAME instead of XSYMBOL and name field.
19353 * coding.c (Fread_coding_system, code_convert_region1)
19354 (code_convert_string1, code_convert_string_norecord)
19355 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
19356 XSYMBOL and name field.
19357 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
19358 (Fmake_variable_buffer_local, Fmake_local_variable)
19359 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
19360 of XSYMBOL and name field.
19361 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
19362 XSYMBOL and name field.
19363 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
19364 instead of XSYMBOL and name field.
19365 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
19366 XSYMBOL and name field.
19367 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
19368 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19369 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
19370 instead of XSYMBOL and name field.
19371 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
19372 (parse_modifiers, apply_modifiers, Fevent_convert_list)
19373 (parse_solitary_modifier, Fexecute_extended_command):
19374 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19375 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
19376 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
19377 of XSYMBOL and name field.
19378 (describe_command, describe_translation): Use SYMBOL_NAME and
19379 assignment instead of XSYMBOL and name field and XSETSTRING.
19380 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
19381 instead of XSYMBOL and name field.
19382 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
19383 name field and XSETSTRING.
19384 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19385 of XSYMBOL and name field.
19386 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
19387 assignment instead of XSYMBOL and name field and XSETSTRING.
19388 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
19389 XSTRING instead of XSYMBOL and name field.
19390 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
19391 and XSTRING instead of XSYMBOL and name field.
19392 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
19393 and XSTRING instead of XSYMBOL and name field.
19394 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
19395 XSTRING instead of XSYMBOL and name field.
19396 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19397 of XSYMBOL and name field.
19398 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
19399 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19400
19401 2002-05-19 Ken Raeburn <raeburn@gnu.org>
19402
19403 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
19404 and XCDR real rvalues in most configurations.
19405
19406 * buffer.c (fix_overlays_in_range, fix_overlays_before):
19407 Don't take the address of the cdr part of a cons cell; instead, track
19408 the parent cell and call XSETCDR, or set the variable for the head
19409 of the list if we haven't started down the list yet.
19410
19411 2002-05-19 Richard M. Stallman <rms@gnu.org>
19412
19413 * doc.c (reread_doc_file): Don't ask for confirmation.
19414
19415 2002-05-18 Jason Rumney <jasonr@gnu.org>
19416
19417 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
19418 (xbm_load_image): Use it.
19419 (xbm_load): Ditto.
19420 (xbm_read_bitmap_data): Reverted to xfns.c version.
19421 From David Ponce <david@dponce.com>.
19422
19423 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
19424
19425 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
19426 2.02 and later.
19427
19428 2002-05-16 Juanma Barranquero <lektu@terra.es>
19429
19430 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
19431
19432 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
19433
19434 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
19435 meaningful test.
19436 (read_char_minibuf_menu_prompt): Fix typo.
19437
19438 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
19439
19440 * eval.c (Fcommandp): Doc fix.
19441
19442 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
19443
19444 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
19445 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
19446 (Fset_keymap_parent): Gcpro a bit more.
19447 (access_keymap): Gcpro around meta_map call and around the main loop.
19448 (get_keyelt): Gcpro when following indirect references.
19449 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
19450 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
19451 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
19452 Remove useless ad-hoc remap code.
19453
19454 2002-05-13 Richard M. Stallman <rms@gnu.org>
19455
19456 * search.c (search_buffer): Give up boyer moore search if inverse
19457 translation change charset_base.
19458
19459 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
19460
19461 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
19462 characters is carried over from the previous block of text, adjust
19463 coding->produced to account for the extra character.
19464
19465 2002-05-11 Andreas Schwab <schwab@suse.de>
19466
19467 * coding.c (intersection): Keep the elements of the returned list
19468 in the same order as in the first list.
19469
19470 2002-05-11 Kim F. Storm <storm@cua.dk>
19471
19472 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
19473 only update cmm_size if realloc actually succeeds.
19474 Testing with initial size of 2 elements revealed that using
19475 realloc on GNU/Linux would cause a random trap in xmalloc
19476 later on, so I rewrote the code to use malloc/bcopy/free instead
19477 of realloc.
19478
19479 2002-05-10 Jason Rumney <jasonr@gnu.org>
19480
19481 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
19482
19483 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
19484
19485 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
19486 parens, to ensure correct evaluation order.
19487
19488 2002-05-10 Kim F. Storm <storm@cua.dk>
19489
19490 * keymap.c (Vemulation_mode_map_alists): New variable.
19491 (syms_of_keymap): DEFVAR_LISP it.
19492 (current_minor_maps): Process keymap alists in that list before
19493 minor-mode-overriding-map-alist and minor-mode-map-alist.
19494
19495 2002-05-09 Richard M. Stallman <rms@gnu.org>
19496
19497 * search.c (Freplace_match): Doc fix.
19498
19499 2002-05-09 Kim F. Storm <storm@cua.dk>
19500
19501 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
19502 Enlarge cursor rectangle drawn around image with non-zero relief.
19503
19504 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
19505 Enlarge cursor rectangle drawn around image with non-zero relief.
19506
19507 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
19508 Enlarge cursor rectangle drawn around image with non-zero relief.
19509
19510 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
19511
19512 * xselect.c (lisp_data_to_selection_data): Don't set selection
19513 type if comes from the Lisp object's car. If the selection
19514 contains a pure ASCII text, always return QSTRING as its type.
19515
19516 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19517
19518 * mac.c (mac-cut-function): Doc fix.
19519
19520 2002-05-05 Richard M. Stallman <rms@gnu.org>
19521
19522 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
19523
19524 2002-05-04 Jason Rumney <jasonr@gnu.org>
19525
19526 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
19527 for event-click-count.
19528
19529 * process.c (init_process): Only add server subfeature if we can
19530 use non-blocking I/O.
19531
19532 2002-05-04 Andrew Choi <akochoi@shaw.ca>
19533
19534 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
19535 repeatedly.
19536
19537 2002-05-03 Jason Rumney <jasonr@gnu.org>
19538
19539 * process.c (Fmake_network_process): Only support server sockets
19540 when we can make them non-blocking.
19541
19542 * s/ms-w32.h (HAVE_SELECT): Define.
19543
19544 * w32.h (FILE_NDELAY): New flag.
19545
19546 * w32.c (sys_getpeername, fcntl): New functions.
19547 (_sys_read_ahead): Temporarily block on non-blocking sockets.
19548
19549 * w32proc.c: Include sys/file.h.
19550
19551 2002-05-03 Colin Walters <walters@verbum.org>
19552
19553 * callproc.c (Vgame_score_directory): Renamed to
19554 Vshared_game_score_directory.
19555
19556 2002-04-30 Richard M. Stallman <rms@gnu.org>
19557
19558 * s/gnu.h [emacs]: Include stdio.h.
19559 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
19560
19561 * eval.c (do_autoload): Error if called while preparing to dump.
19562
19563 * fns.c (Frequire): Error if need to load while preparing to dump.
19564
19565 2002-04-28 Colin Walters <walters@verbum.org>
19566
19567 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
19568 Default to "~/.emacs.d/games".
19569
19570 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
19571
19572 * lread.c (openp): Change arg exec_only to predicate.
19573 (build_load_history): Use XCAR/XCDR.
19574 (Flocate_file_internal): New fun.
19575 (syms_of_lread): Defsubr it.
19576 (Fload): Update call to openp.
19577
19578 * lisp.h (openp): Update prototype.
19579
19580 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
19581 * w32proc.c (sys_spawnve):
19582 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
19583 * w32.c (check_windows_init_file):
19584 * sound.c (Fplay_sound_internal):
19585 * process.c (Fstart_process):
19586 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
19587 * mac.c (run_mac_command):
19588 * emacs.c (init_cmdargs):
19589 * callproc.c (Fcall_process): Update call to openp.
19590
19591 * textprop.c (remove_properties): Don't use XCAR without CONSP.
19592
19593 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
19594
19595 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19596
19597 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
19598 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
19599
19600 2002-04-28 Richard M. Stallman <rms@gnu.org>
19601
19602 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
19603
19604 * eval.c (Fcommandp): New arg for_call_interactively.
19605 * lisp.h (Fcommandp): Declare new arg.
19606
19607 2002-04-28 Jason Rumney <jasonr@gnu.org>
19608
19609 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
19610
19611 * w32.c (stat, fstat): Use file index information to generate
19612 inodes for directories where available.
19613
19614 2002-04-26 Andrew Choi <akochoi@shaw.ca>
19615
19616 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
19617 [HAVE_CARBON]: Include Mac object files.
19618
19619 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
19620 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
19621 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
19622 MAC_OSX, and MAC_OS instead of macintosh.
19623
19624 * editfns.c [MAC_OS8]: Include stdio.h.
19625
19626 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
19627
19628 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
19629 Apple Monaco.
19630
19631 * process.c (QCfamily, QCfilte): Declare extern.
19632 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
19633 calling select.
19634
19635 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
19636
19637 * tparam.c [MAC_OSX]: Don't define BC and UP.
19638
19639 * config.in [HAVE_CARBON]: Add.
19640
19641 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
19642 Move here from mac/src and mac/inc.
19643
19644 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
19645
19646 2002-04-26 Gerd Moellmann <gerd@gnu.org>
19647
19648 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
19649 Compute phys_cursor_width from the x position returned
19650 by x_draw_glyhs, which is cheaper.
19651 (x_display_and_set_cursor): Compute the buffer-local value
19652 of `cursor-in-non-selected-windows' only when needed.
19653
19654 2002-04-25 Gerd Moellmann <gerd@gnu.org>
19655
19656 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
19657 cursor on a stretch glyph has a width that depends on
19658 x_stretch_cursor_p.
19659
19660 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19661
19662 * abbrev.c (abbrev-start-location): Doc fix.
19663
19664 * indent.c (Fvertical_motion): Fix last change.
19665
19666 2002-04-25 Gerd Moellmann <gerd@gnu.org>
19667
19668 * indent.c (Fvertical_motion): Move to the start of the line
19669 containing PT before moving up or down.
19670
19671 2002-04-24 Gerd Moellmann <gerd@gnu.org>
19672
19673 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
19674 case of writing a whole row, more or less analogous to the case of
19675 writing only parts of a row.
19676
19677 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
19678 0 for NO_CURSOR.
19679
19680 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
19681
19682 2002-04-23 Colin Walters <walters@verbum.org>
19683
19684 * buffer.c (syms_of_buffer): Doc fix.
19685
19686 2002-04-23 Gerd Moellmann <gerd@gnu.org>
19687
19688 * xterm.c (notice_overwritten_cursor): Handle the special case
19689 of the cursor being in the first blank non-text line at the
19690 end of a window.
19691
19692 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
19693 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
19694 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
19695 bar cursors only, to make phys_cursor_width contain what its name
19696 suggests.
19697 (notice_overwritten_cursor): Consider the cursor image erased if
19698 the output area intersects the cursor image in y-direction.
19699
19700 2002-04-23 Simon Marshall <simon@gnu.org>
19701
19702 * xfns.c (x_set_mouse_color): Change default for cross_cursor
19703 to XC_hand2.
19704
19705 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19706
19707 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
19708
19709 2002-04-22 Kim F. Storm <storm@cua.dk>
19710
19711 * textprop.c (remove_properties): Fixed trap for malformed plist.
19712
19713 2002-04-22 Richard M. Stallman <rms@gnu.org>
19714
19715 * cmds.c (Fend_of_line): Handle intangible text in mid line.
19716
19717 * window.c (make_window): Initialize height_fixed_p,
19718 last_cursor_off_p, and p->cursor_off_p slots.
19719
19720 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19721
19722 * fns.c (use-dialog-box): Doc fix.
19723
19724 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19725
19726 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
19727 variables `row', `i' and `area'.
19728 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
19729 toolkit library.
19730
19731 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
19732
19733 * xfaces.c (clear_font_table): Don't free the default font of
19734 a frame even if it's on another display.
19735 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
19736 that could be Qt.
19737
19738 2002-04-19 Juanma Barranquero <lektu@terra.es>
19739
19740 * indent.c (Fmove_to_column): Remove unused local variable
19741 `next_boundary_byte'.
19742 (current_column_1): Likewise.
19743
19744 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
19745
19746 * msdos.c (Qhbar): New variable.
19747 (syms_of_msdos): Intern and staticpro it.
19748 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
19749 cursor type.
19750
19751 2002-04-19 Dave Lambert <dlambert@acm.org>
19752
19753 Theses change implement an underscore-like (`hbar') cursor.
19754
19755 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
19756
19757 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
19758 Handle the `hbar' cursor type.
19759 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
19760
19761 * xfns.c (Qhbar): New variable.
19762 (syms_of_xfns): Intern and staticpro it.
19763 (x_specified_cursor_type): Handle `hbar' cursor.
19764
19765 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
19766 not defined.
19767
19768 2002-04-18 Richard M. Stallman <rms@gnu.org>
19769
19770 * textprop.c (remove_properties): New arg LIST allows scanning
19771 either a list or a plist.
19772 (interval_has_some_properties_list): New function, like
19773 interval_has_some_properties using list instead of plist.
19774 All callers changed.
19775 (Fremove_list_of_text_properties): New function.
19776 (syms_of_textprop): Defsubr it.
19777
19778 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
19779
19780 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
19781
19782 2002-04-17 Juanma Barranquero <lektu@terra.es>
19783
19784 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
19785
19786 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
19787
19788 * window.c (coordinates_in_window): Don't report on margin area
19789 if its width is zero.
19790
19791 2002-04-16 Jason Rumney <jasonr@gnu.org>
19792
19793 * w32fns.c (Fx_file_dialog): Decode file name before using.
19794
19795 * w32term.c (construct_drag_n_drop): Likewise.
19796
19797 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
19798
19799 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
19800 store load-history in pure space.
19801
19802 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
19803
19804 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
19805
19806 * xterm.c (Qlatin_1, Qutf_8): New vars.
19807 (syms_of_xterm): Initialize them.
19808 (XTread_socket): Eliminate incorrect optimization that tried to avoid
19809 decoding the output of X*LookupString.
19810 Always use latin-1 to decode the output of XLookupString.
19811 Try Xutf8LookupString if XmbLookupString failed.
19812
19813 * region-cache.c (new_region_cache): Use BEG.
19814
19815 2002-04-16 Gerd Moellmann <gerd@gnu.org>
19816
19817 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
19818 configuration files.
19819 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
19820 returns 0.
19821
19822 2002-04-15 Andreas Schwab <schwab@suse.de>
19823
19824 * config.in: Regenerated using autoheader.
19825
19826 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
19827 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
19828 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
19829 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
19830 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
19831 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
19832 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
19833 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
19834 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
19835 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
19836 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
19837 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
19838 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
19839 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
19840 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
19841 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
19842 STACK_DIRECTION, now set by autoconf.
19843
19844 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19845
19846 * dispnew.c (marginal_area_string): Sort arguments.
19847
19848 * dispextern.h (marginal_area_string): Add prototype.
19849
19850 2002-04-13 Richard M. Stallman <rms@gnu.org>
19851
19852 * fileio.c (Finsert_file_contents):
19853 Don't call temp_output_buffer_setup--do just part, by hand.
19854
19855 * coding.c (run_pre_post_conversion_on_str):
19856 Don't call temp_output_buffer_setup--do just part, by hand.
19857
19858 * keyboard.c (command_loop_1): Don't call start_hourglass
19859 or cancel_hourglass when executing a macro.
19860
19861 * marker.c (count_markers): New function.
19862
19863 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
19864 grow without limit. Move recently used elements to the front.
19865
19866 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
19867
19868 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
19869
19870 2002-04-12 Gerd Moellmann <gerd@gnu.org>
19871
19872 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
19873 rows marginal areas.
19874 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
19875 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
19876
19877 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
19878
19879 2002-04-12 Dave Love <fx@gnu.org>
19880
19881 * dispnew.c (marginal_area_string): New.
19882
19883 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
19884 (Qleft_margin, Qright_margin): Declare.
19885 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
19886
19887 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
19888 note_mode_line_highlight and extended.
19889
19890 * keyboard.c (Qleft_margin, Qright_margin): Declare.
19891 (make_lispy_event): Deal with mouse events in margins.
19892
19893 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
19894
19895 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
19896
19897 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
19898 than deactivating the mark if tmm is set to `lambda'.
19899 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
19900 Use a single event for HELP_EVENT.
19901 (Fexecute_extended_command): Save last_point_position.
19902
19903 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19904
19905 * lisp.h (Fpropertize): Add prototype.
19906
19907 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
19908
19909 2002-04-10 Colin Walters <walters@verbum.org>
19910
19911 * config.in: Add HAVE_SHARED_GAME_DIR.
19912
19913 * callproc.c (Vgame_score_directory): New variable.
19914 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
19915
19916 2002-04-10 Richard M. Stallman <rms@gnu.org>
19917
19918 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
19919
19920 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
19921
19922 * minibuf.c (read_minibuf): Use empty_string.
19923 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
19924 Short-circuit the search as soon as it "failed".
19925 (Fall_completions): Allow lambda forms and lists of strings for alist.
19926 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
19927 when require_match is nil.
19928 (Ftest_completion): Rename from `test_completion' and export to elisp.
19929 Call the predicate also when alist is a list.
19930 Obey Vcompletion_regexp_list.
19931 (do_completion, Fminibuffer_complete_and_exit): Use it.
19932 (Fassoc_string): Rename from `assoc_for_completion'.
19933 Allow list of strings as well and export to elisp.
19934
19935 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
19936
19937 * puresize.h (BASE_PURESIZE): Increase to 900KB.
19938
19939 2002-04-08 Juanma Barranquero <lektu@terra.es>
19940
19941 * w32.c (sys_accept): Don't hide variable `s'.
19942
19943 2002-04-05 Gerd Moellmann <gerd@gnu.org>
19944
19945 * callint.c (Fcall_interactively): Use INTEGERP instead of
19946 NUMBERP for checking Vhistory_length.
19947
19948 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19949
19950 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
19951 Doc fix to reflect it.
19952
19953 2002-04-04 Richard M. Stallman <rms@gnu.org>
19954
19955 * xdisp.c (display_mode_element): New arg RISKY.
19956 Disregard text props found or specified within a variable
19957 that isn't marked risky-local-variable.
19958 (Qrisky_local_variable): New variable.
19959 (syms_of_xdisp): Init and staticpro it.
19960
19961 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
19962
19963 * undo.c (record_point): New fun.
19964 (record_delete, record_insert): Use it.
19965
19966 2002-04-03 Juanma Barranquero <lektu@terra.es>
19967
19968 * doc.c (Fdocumentation): Add missing parentheses.
19969 (Fdocumentation_property): Likewise.
19970
19971 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
19972
19973 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
19974 data is 0, just return nil.
19975
19976 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
19977
19978 * msdos.c (syms_of_msdos): Fix last change with
19979 mouse_autoselect_window.
19980
19981 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19982
19983 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
19984 mouse_autoselect_window.
19985
19986 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
19987
19988 * keyboard.c (make_lispy_event): Handle unknown keysyms together
19989 with system-specific keysyms. Use it also for unknown function keys.
19990
19991 * doc.c (reread_doc_file): Return whether reload was attempted.
19992 (Fdocumentation, Fdocumentation_property): Don't try to reload
19993 if the doc is 0 and only ask once.
19994
19995 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
19996
19997 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
19998
19999 * keyboard.c (read_char): If the event was Qselect_window,
20000 restore timer_idleness_start_time to its previous value.
20001
20002 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
20003
20004 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
20005
20006 * region-cache.c (new_region_cache): Use BEG.
20007
20008 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
20009 Use BEG and BEG_BYTE.
20010
20011 * doc.c (get_doc_string): Return nil if the location is wrong.
20012 (reread_doc_file): New fun.
20013 (Fdocumentation, Fdocumentation_property):
20014 Call it if get_doc_string fails.
20015 (Fsnarf_documentation): Make it work for a dumped Emacs.
20016
20017 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
20018 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
20019
20020 * charset.c (Fstring): Allow 0 arguments.
20021
20022 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
20023
20024 * process.c (DATAGRAM_CONN_P, list_processes_1)
20025 (Fprocess_datagram_address, Fset_process_datagram_address)
20026 (Fset_network_process_options, server_accept_connection):
20027 Fix some int/Lisp_Object confusions (thank you union types).
20028
20029 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20030
20031 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
20032
20033 * w32term.c: Likewise.
20034 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
20035
20036 * keyboard.c (Qselect_window): New symbol.
20037 (head_table): Use it.
20038 (keys_of_keyboard): Bound select-window event to handle-select-window.
20039 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
20040
20041 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
20042 (last_window): New variable.
20043 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
20044 (note_mouse_movement): Remove reimplemented code in #if 0.
20045 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
20046 Emacs windows.
20047
20048 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
20049
20050 2002-03-31 Gerd Moellmann <gerd@gnu.org>
20051
20052 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
20053 Callers changed.
20054
20055 2002-03-30 Richard M. Stallman <rms@gnu.org>
20056
20057 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
20058 loop whenever it stops making progress.
20059
20060 * widget.c (set_frame_size): Don't call change_frame_size.
20061
20062 2002-03-30 Gerd Moellmann <gerd@gnu.org>
20063
20064 * dispnew.c (direct_output_for_insert):
20065 Call mark_window_display_accurate.
20066
20067 2002-03-29 Jason Rumney <jasonr@gnu.org>
20068
20069 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
20070
20071 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
20072
20073 * Makefile.in (lread.o): Depend on coding.h.
20074
20075 * lread.c (openp, Fload): Encode the file name before passing it
20076 to `stat', `access', and `emacs_open'.
20077 (openp): GCPRO the encoded file name. Don't recompute Lisp
20078 strings unnecessarily.
20079
20080 2002-03-29 Kim F. Storm <storm@cua.dk>
20081
20082 * fns.c (Flax_plist_put): Doc fix.
20083
20084 2002-03-28 Miles Bader <miles@gnu.org>
20085
20086 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
20087
20088 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20089
20090 * process.c (set-network-process-options): Add usage.
20091 (make-network-process): Doc fix.
20092
20093 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
20094
20095 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
20096
20097 2002-03-26 Richard M. Stallman <rms@gnu.org>
20098
20099 * fns.c (Fsubstring_no_properties): New function.
20100 (Flax_plist_get, Flax_plist_put): New functions.
20101 (syms_of_fns): defsubr them.
20102
20103 * xdisp.c (update_menu_bar): Test only update_mode_lines;
20104 don't test or alter w->update_mode_line.
20105
20106 * window.c (Fdisplay_buffer): Doc fix.
20107
20108 2002-03-24 Richard M. Stallman <rms@gnu.org>
20109
20110 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
20111
20112 2002-03-24 Gerd Moellmann <gerd@gnu.org>
20113
20114 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
20115 (Fdefmacro): Handle `(declare ...)'.
20116 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
20117 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
20118
20119 2002-03-24 Jason Rumney <jasonr@gnu.org>
20120
20121 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
20122 (xbm_file_p): Add prototypes.
20123 (xbm_format, xbm_image_p): Sync with xfns.c.
20124 (reflect_byte): New function.
20125 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
20126 (xbm_load_image): Create bitmaps with a depth of 1.
20127 (init_xfns): Enable XBM images.
20128
20129 2002-03-23 Jason Rumney <jasonr@gnu.org>
20130
20131 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
20132 correctly. Do not pass up_modifier to keyboard buffer.
20133
20134 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
20135
20136 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
20137
20138 * Makefile.in (bootstrapclean): New target.
20139 (bootstrap-temacs, bootstrap-doc): Remove.
20140 (bootstrap-emacs): Use a bog-standard `temacs'.
20141 Don't bother to build a DOC file.
20142
20143 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
20144
20145 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
20146 in temacs even if !CANNOT_DUMP.
20147 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
20148
20149 * alloc.c (check_pure_size): Only output a warning.
20150
20151 2002-03-22 Jason Rumney <jasonr@gnu.org>
20152
20153 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
20154 supported.
20155
20156 * w32term.c (zv_bits): Declare as short, for word alignment.
20157 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
20158 (syms_of_w32term): Define x-use-underline-position-properties.
20159
20160 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
20161 (clear_image_cache): Block input, fix logic, clear matrices in
20162 all frames that share this cache.
20163
20164 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
20165
20166 * emacs.c (main): Update the Copyright year in the blurb printed
20167 by "emacs --version".
20168
20169 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
20170
20171 * xterm.c (XTread_socket): If XK_ISO_Lock and
20172 XK_ISO_Last_Group_Lock are defined, handle keysyms between
20173 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
20174
20175 2002-03-21 Kim F. Storm <storm@cua.dk>
20176
20177 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
20178 menu-bar bindings in keymap and local-map properties _are_ used.
20179 But try keymap property first in accordance with 2002-01-03 patch.
20180 Added comment describing why this is not always reliable.
20181 (tool_bar_items): Ditto for tool-bar.
20182
20183 2002-03-21 Jason Rumney <jasonr@gnu.org>
20184
20185 * w32fns.c (x_clear_image_1): Disable color table code.
20186
20187 2002-03-21 Kim F. Storm <storm@cua.dk>
20188
20189 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
20190 removed the wrong version of the DEFUN macro; fixed it.
20191
20192 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
20193 Fmember rather than Fmemq).
20194 (Fprovide): Check that subfeatures is a list.
20195
20196 * process.c (QCfeature, QCdatagram): Removed variables.
20197 (QCtype, Qdatagram): New variables.
20198 (network_process_featurep): Removed function.
20199 (Fmake_network_process): Removed :feature check.
20200 Use :type 'datagram instead of :datagram t to create a datagram
20201 socket. This allows us to add other connection types (e.g. raw
20202 sockets) later in a consistent manner.
20203 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
20204 supported subfeatures for feature make-network-process.
20205 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
20206 Intern and staticpro QCtype and Qdatagram.
20207 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
20208
20209 * xfns.c (QCtype): Remove duplicate declaration and
20210 initialization (is now declared in process.c).
20211
20212 * w32fns.c (QCtype): Remove duplicate declaration and
20213 initialization (is now declared in process.c).
20214
20215 2002-03-21 Richard M. Stallman <rms@gnu.org>
20216
20217 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
20218 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
20219 when jumping to `fail' to avoid undoing reg changes in the
20220 last iteration of the loop.
20221 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
20222
20223 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
20224 Depend on process.h.
20225
20226 2002-03-20 Jason Rumney <jasonr@gnu.org>
20227
20228 Most of the following changes are still conditional on HAVE_IMAGES
20229 which is not set by default on Windows.
20230
20231 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
20232
20233 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
20234 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
20235 (four_corners_best, x_clear_image_1, x_clear_image)
20236 (x_alloc_image_color, postprocess_image)
20237 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
20238 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
20239 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
20240
20241 * w32gui.h (struct XImage): Define.
20242
20243 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
20244 extract mouse co-ordinates.
20245
20246 2002-03-20 Jason Rumney <jasonr@gnu.org>
20247
20248 * w32.c (init_winsock): Dynamically load new server and UDP
20249 socket functions.
20250 (socket_to_fd): New function.
20251 (sys_socket): Use it.
20252 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
20253 (sys_recvfrom, sys_sendto): New wrapper functions.
20254
20255 * process.c (QCfamily, QCfilter): Remove duplicate declaration
20256 and initialization.
20257
20258 * makefile.w32-in (LIBS): Remove $(WSOCK32).
20259
20260 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
20261
20262 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
20263 Don't use "sun" as a variable, it's a predefined constant on Sun
20264 machines.
20265
20266 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20267
20268 * bytecode.c (Fbyte_code): Revert last change.
20269
20270 2002-03-19 Kim F. Storm <storm@cua.dk>
20271
20272 * makefile.w32-in (LIBS): Add $(WSOCK32).
20273 From David Ponce <dponce@voila.fr>.
20274
20275 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20276
20277 * process.c (wait_reading_process_input): Move variables `pname'
20278 and `pnamelen' down where they are used.
20279
20280 * bytecode.c (Fbyte_code): Discard unused computed value to
20281 prevent gcc warning.
20282
20283 * lisp.h (Fplist_member): Add prototype.
20284
20285 2002-03-18 Kim F. Storm <storm@cua.dk>
20286
20287 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
20288 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
20289
20290 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
20291 Remove explicit GNU_LINUX settings for datagram support.
20292
20293 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20294
20295 * process.c (Fmake_network_process): Remove unused variable `sa'.
20296 Doc fix. Add usage:.
20297 (set_socket_options): Remove unused variables `optnum' and `opttype'.
20298
20299 2002-03-17 Richard M. Stallman <rms@gnu.org>
20300
20301 * xdisp.c (cursor_type_changed): New variable.
20302 (redisplay_internal): Redisplay all windows if cursor_type_changed.
20303 Clear it when clearing windows_or_buffers_changed.
20304 (try_cursor_movement, redisplay_window, try_window_id)
20305 (try_window_reusing_current_matrix): Test cursor_type_changed
20306 along with windows_or_buffers_changed.
20307
20308 * window.h (cursor_type_changed): New variable.
20309
20310 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
20311 not update_mode_lines, and always set it to 1.
20312
20313 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
20314 if no frames needed redrawing.
20315
20316 2002-03-17 Kim F. Storm <storm@cua.dk>
20317
20318 The following changes add support for network server processes,
20319 datagram connections, and local (unix) sockets.
20320
20321 * process.h (struct Lisp_Process): New member log.
20322 Doc fix: Member command used to indicate stopped network process.
20323 Doc fix: Member childp contains plist for network process.
20324 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
20325
20326 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
20327 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
20328 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
20329 New variables.
20330 (NETCONN1_P): New macro.
20331 (DATAGRAM_SOCKETS): New conditional symbol.
20332 (datagram_address): New array.
20333 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
20334 (status_message): Use concat3.
20335 (Fprocess_status): Add `listen' status to doc string. Return `stop'
20336 for a stopped network process.
20337 (Fset_process_buffer): Update contact plist for network process.
20338 (Fset_process_filter): Ditto. Don't enable input for stopped
20339 network processes. Server must listen, even if filter is t.
20340 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
20341 New functions.
20342 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
20343 (Fprocess_contact): Added KEY argument. Handle datagrams.
20344 (list_processes_1): Optionally show only processes with the query
20345 on exit flag set. Dynamically adjust column widths. Omit tty
20346 column if not needed. Report stopped network processes.
20347 Identify server and datagram network processes.
20348 (Flist_processes): New optional arg `query-only'.
20349 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
20350 (conv_lisp_to_sockaddr, set_socket_options)
20351 (network_process_featurep, unwind_request_sigio): New helper functions.
20352 (Fprocess_datagram_address, Fset_process_datagram_address):
20353 (Fset_network_process_options): New lisp functions.
20354 (Fopen_network_stream): Removed. Now defined in simple.el.
20355 (Fmake_network_process): New lisp function. Code is based on previous
20356 Fopen_network_stream, but heavily reworked with new property list based
20357 argument list, support for datagrams, server processes, and local
20358 sockets in addition to old client-only functionality.
20359 (server_accept_connection): New function.
20360 (wait_reading_process_input): Use it to handle incoming connects.
20361 Do not enable input on a new connection if process is stopped.
20362 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
20363 (send_process): Handle datagram sockets.
20364 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
20365 network process is indicated by setting command field to t .
20366 (Fprocess_send_eof): No-op if datagram connection.
20367 (Fstatus_notify): Don't read input for a stream server socket or a
20368 stopped network process.
20369 (init_process): Initialize datagram_address array.
20370 (syms_of_process): Intern and staticpro new variables, defsubr new
20371 functions.
20372
20373 2002-03-16 Jason Rumney <jasonr@gnu.org>
20374
20375 * w32fns.c (w32_to_all_x_charsets): Return correct type in
20376 startup case.
20377
20378 2002-03-16 Richard M. Stallman <rms@gnu.org>
20379
20380 * xdisp.c (redisplay_internal, redisplay_windows):
20381 Use list_of_error to call internal_condition_case_1.
20382 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
20383 so as to catch all errors with no possibility of debugger redisplay.
20384 (list_of_error): New variable.
20385 (syms_of_xdisp): Init and staticpro it.
20386
20387 * print.c (print_object): Delete `\ ' from printed rep of frame.
20388
20389 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
20390
20391 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
20392 until its implementation is fixed.
20393
20394 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20395
20396 * xfns.c (png_load): Remove unused variable `gamma_str'.
20397
20398 2002-03-14 Richard M. Stallman <rms@gnu.org>
20399
20400 * xfns.c (x_real_positions): Handle failure in XQueryTree.
20401
20402 2002-03-14 Miles Bader <miles@gnu.org>
20403
20404 * intervals.c (adjust_for_invis_intang): New function.
20405 (set_point_both): Use `adjust_for_invis_intang' to do most of the
20406 work for dealing with invisible+intangible regions. Do so before
20407 and after both forward and backward movements, to handle both
20408 front-sticky and rear-sticky cases.
20409 * textprop.c (text_property_stickiness): Function moved here from
20410 `editfns.c'.
20411 * intervals.h (text_property_stickiness): New declaration.
20412 * editfns.c (char_property_eq): Function removed.
20413 (text_property_stickiness): Function moved to `textprop.c'.
20414
20415 2002-03-13 Jason Rumney <jasonr@gnu.org>
20416
20417 * config.in: Add STRFTIME_NO_POSIX2.
20418
20419 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
20420 and %OX when underlying strftime does not.
20421
20422 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
20423
20424 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
20425 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
20426 line) to avoid annoying flicker.
20427 (xm_scroll_callback): Get rid of the now unnecessary kludge.
20428 (XTread_socket): Mark it static.
20429
20430 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
20431
20432 2002-03-13 Kim F. Storm <storm@cua.dk>
20433
20434 * puresize.h (BASE_PURESIZE): Increase to 775000.
20435
20436 2002-03-12 Juanma Barranquero <lektu@terra.es>
20437
20438 * editfns.c (syms_of_editfns): Fix typo.
20439
20440 2002-03-12 Gerd Moellmann <gerd@gnu.org>
20441
20442 * xsmfns.c: Include stdio.h because termhooks.h needs it.
20443 Include termopt.h for interrupt_input.
20444
20445 2002-03-11 Andreas Schwab <schwab@suse.de>
20446
20447 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
20448
20449 2002-03-11 Gerd Moellmann <gerd@gnu.org>
20450
20451 * xterm.c (note_mouse_movement): Put code for
20452 x_autoselect_window_p in #if 0.
20453
20454 * lread.c (Fload): Don't assume that message_with_string uses the
20455 string it is given like a C string.
20456
20457 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20458
20459 * xterm.h (x_session_check_input, x_session_initialize): Declare.
20460
20461 * xterm.c (XTread_socket): Add call to x_session_check_input and
20462 x_session_have_connection.
20463 (x_initialize): Add call to x_session_initialize.
20464
20465 * termhooks.h (enum event_kind): Add save_session_event.
20466
20467 * keyboard.c: Add Emacs event save_session_event.
20468
20469 * emacs.c (main): Add call to syms_of_xsmfns.
20470
20471 * lisp.h (syms_of_xsmfns): Declare extern.
20472
20473 * config.in: Add HAVE_X_SM.
20474
20475 * Makefile.in (LIBXT): Add -lSM -lICE
20476 if HAVE_X_SM and not USE_X_TOOLKIT.
20477 (XOBJ): New file xsmfns.c added.
20478
20479 * xsmfns.c: New file for X session management.
20480
20481 2002-03-09 Jason Rumney <jasonr@gnu.org>
20482
20483 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
20484 read-only when setting modified time.
20485
20486 2002-03-08 Gerd Moellmann <gerd@gnu.org>
20487
20488 * xdisp.c (move_it_vertically_backward): At the end of the function,
20489 when moving forward by lines, treat terminal frames specially.
20490
20491 * keyboard.c (echo_char): Make sure to add a separator between
20492 keys even if echo_dash hasn't been called.
20493
20494 * xdisp.c: Use new string macros.
20495 (update_echo_area): Pass number of bytes to message3 instead of
20496 number of chars.
20497 (set_message_1): Don't access a string's size_byte directly.
20498 (decode_mode_spec_coding): Use number of bytes of eoltype string
20499 instead number of chars.
20500
20501 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
20502
20503 2002-03-08 Juanma Barranquero <lektu@terra.es>
20504
20505 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
20506 24-bit.
20507
20508 2002-03-06 Jason Rumney <jasonr@gnu.org>
20509
20510 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
20511
20512 2002-03-06 Gerd Moellmann <gerd@gnu.org>
20513
20514 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
20515 (cancel_echoing, echo_length, echo_truncate): Changed to
20516 work with new kboard definition.
20517 (echo_now): Use message3_nolog instead of message2_nolog.
20518
20519 * alloc.c (mark_kboards): Mark echo_string.
20520
20521 * keyboard.h (ECHOBUFSIZE): Removed.
20522 (struct kboard): Member echoptr removed, member echobuf renamed
20523 to echo_string.
20524
20525 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
20526 message3 instead of message2 to display the message using STRING's
20527 text properties.
20528
20529 2002-03-05 Andreas Schwab <schwab@suse.de>
20530
20531 * xdisp.c (hscroll_margin): Change to EMACS_INT.
20532
20533 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
20534
20535 * frame.c (default-frame-alist): Explain that setting it doesn't
20536 affect existing frames.
20537
20538 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
20539
20540 * indent.c (skip_invisible): Fix my brain fart.
20541
20542 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
20543
20544 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
20545
20546 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
20547 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
20548 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
20549 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
20550 and variables to use EMACS_INT instead of just int.
20551
20552 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
20553
20554 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
20555
20556 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
20557 environment, pass it down with corrected value.
20558
20559 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20560
20561 * lread.c (read_filtered_event): Do not call start_hourglass
20562 before returning.
20563
20564 2002-03-04 Juanma Barranquero <lektu@terra.es>
20565
20566 * w32term.c (x_display_and_set_cursor): Fix typo.
20567
20568 2002-03-03 Richard M. Stallman <rms@gnu.org>
20569
20570 * fileio.c (Fmake_temp_name): Doc fix.
20571
20572 2002-03-03 Gary Wong <gtw@gnu.org>
20573
20574 * termcap.c [!emacs]: Replace ospeed for building standalone
20575 libtermcap, for binary compatibility.
20576
20577 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
20578
20579 2002-03-03 Richard M. Stallman <rms@gnu.org>
20580
20581 * xrdb.c (file_p): Rename arg `path' to `filename'.
20582
20583 * abbrev.c (Fexpand_abbrev): Increment plist as use count
20584 only if it is an integer.
20585
20586 * xfns.c (png_load): Set screen_gamma based on f->gamma.
20587 If png_get_sRGB gives an answer, call png_set_gamma
20588 using the default image gamma value.
20589
20590 * lread.c (read1): When reading from a file, default string to
20591 multibyte only if it has some multibyte characters.
20592
20593 * print.c (print_object): Output multibyte chars 128...255
20594 using \x even if ! print_escape_multibyte.
20595
20596 * xdisp.c (display_mode_element): Move the places where
20597 bytepos, charpos, this, and lisp_string are set.
20598 Use lisp_string to set bytepos.
20599
20600 * xdisp.c (redisplay_internal):
20601 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
20602
20603 * xdisp.c (display_mode_element): Merge properties specified with
20604 :propertize onto those that come with the string.
20605
20606 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
20607
20608 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
20609 automatic-hscrolling. Users changed.
20610 <hscroll-margin>: Renamed from automatic-hscroll-margin.
20611 Users changed.
20612 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
20613
20614 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
20615
20616 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
20617
20618 2002-03-02 Kim F. Storm <storm@cua.dk>
20619
20620 * window.c (Fminibuffer_selected_window): New function.
20621 (syms_of_window): Defsubr it.
20622
20623 2002-03-01 Kim F. Storm <storm@cua.dk>
20624
20625 * window.h (struct window): New member phys_cursor_width.
20626
20627 * window.c (make_window, replace_window): Init phys_cursor_width.
20628
20629 * xterm.c (x_display_and_set_cursor): Blink box cursor using
20630 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
20631
20632 * w32term.c (x_display_and_set_cursor): Blink box cursor using
20633 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
20634
20635 * lisp.h (GCPRO6): New macro.
20636
20637 * process.c (Fopen_network_stream): Use GCPRO6.
20638
20639 2002-03-01 Kim F. Storm <storm@cua.dk>
20640
20641 * process.c (Qconnect, Qfailed): New variables.
20642 (syms_of_process): Intern and staticpro them.
20643 (Fprocess_status): Document connect and failed return values.
20644 [NON_BLOCKING_CONNECT]: New conditional.
20645 (connect_wait_mask, num_pending_connects): New variables.
20646 (status_message): Convert Qfailed status.
20647 (Fopen_network_stream): Added support for non-blocking connect.
20648 New optional args: filter, sentinel, non_blocking. Doc updated.
20649 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
20650 (deactivate_process): Handle pending non-blocking connect.
20651 (wait_reading_process_input): Poll for status of non-blocking
20652 connects. Exec sentinel directly when connect succeeds.
20653 (status_notify): Don't read process output if not yet connected.
20654
20655 2002-02-28 Kim F. Storm <storm@cua.dk>
20656
20657 * window.c (minibuf_selected_window): Renamed from
20658 Vminibuf_selected_window. Users changed.
20659 (syms_of_window): Staticpro it.
20660
20661 2002-02-26 Kim F. Storm <storm@cua.dk>
20662
20663 The following changes add a new Vminibuf_selected_window variable
20664 which is similar to Vminibuf_scroll_window, but which is only set
20665 on entry to the minibuffer (from a non-minibuffer window):
20666
20667 * window.c (Vminibuf_selected_window): New variable.
20668 (struct save_window_data): New member minibuf_selected_window.
20669 (Fset_window_configuration): Restore Vminibuf_selected_window.
20670 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
20671 Set minibuf_scroll_window member to nil if minibuf_level is 0.
20672 (compare_window_configurations): Compare minibuf_selected_window.
20673
20674 * window.h (Vminibuf_selected_window): Declare extern.
20675
20676 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
20677 entry to minibuffer or on entry from a non-minibuffer window.
20678
20679 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
20680 Vminibuf_selected_window instead of Vminibuf_scroll_window.
20681
20682 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
20683 instead of Vminibuf_scroll_window when deciding in which window
20684 the region should be highlighted. Consequently, the region remains
20685 highlighteded even when a completion buffer is also displayed.
20686
20687 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
20688
20689 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
20690
20691 * xselect.c (Qcompound_text_with_extensions): Renamed from
20692 Qcompound_text_no_extensions.
20693 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
20694
20695 2002-02-26 Juanma Barranquero <lektu@terra.es>
20696
20697 * w32proc.c (syms_of_ntproc): Doc fix.
20698
20699 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20700
20701 * intervals.h: Include "dispextern.h" unconditionally.
20702
20703 2002-02-24 Jason Rumney <jasonr@gnu.org>
20704
20705 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
20706 and disp-table.elc.
20707 (lisp): Add emacs-lisp/backquote.elc.
20708
20709 2002-02-24 Kim F. Storm <storm@cua.dk>
20710
20711 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
20712 The validation of the event type was too strict as it didn't
20713 allow string events; buffer names are used in bindings for
20714 menu-bar-select-buffer (see `menu-bar-update-buffers').
20715
20716 2002-02-23 Kim F. Storm <storm@cua.dk>
20717
20718 The following changes rework my patch of 2002-02-06 which
20719 added command remapping by entering the commands directly into
20720 the keymaps. Now, command remapping uses an explicit `remap'
20721 prefix in the keymaps, i.e. [remap COMMAND].
20722
20723 * keymap.c (Qremap, remap_command_vector): New variables.
20724 (is_command_symbol): Remove function.
20725 (Fdefine_key): No longer accept a symbol for KEY.
20726 Added validation of [remap COMMAND] argument for KEY.
20727 The DEF is no longer required to be a symbol when remapping a command.
20728 (Fremap_command): New function to remap command through keymaps.
20729 (Flookup_key): Perform command remapping initiated by
20730 Fremap_command directly for speed.
20731 (Fkey_binding): Use Fremap_command for command remapping.
20732 (where_is_internal): Handle new command remapping representation.
20733 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
20734 staticpro them. Defsubr Fremap_command.
20735
20736 * keymap.h (Fremap_command): Declare extern.
20737 (is_command_symbol): Remove extern.
20738
20739 * keyboard.c (command_loop_1): Use Fremap_command for command
20740 remapping; now try command remapping for all symbols.
20741
20742 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
20743
20744 * coding.h (run_pre_post_conversion_on_str): Add prototype.
20745
20746 2002-02-23 Jason Rumney <jasonr@gnu.org>
20747
20748 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
20749 on the string before encoding it.
20750 (Fw32_get_clipboard_data): Run post-read-conversion on the string
20751 after decoding it.
20752
20753 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
20754
20755 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20756
20757 * w32term.c (enter_timestamp): Remove unused static variable to
20758 prevent warning.
20759
20760 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
20761
20762 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
20763
20764 * w16select.c (Fw16_get_clipboard_data): Fix last change.
20765
20766 * xselect.c (selection_data_to_lisp_data): Fix last change.
20767
20768 2002-02-22 Jason Rumney <jasonr@gnu.org>
20769
20770 * w32term.h (struct w32_output): New member menu_command_in_progress.
20771
20772 * w32menu.c (menubar_selection_callback): Free the menu and
20773 clear the menu_command_in_progress flag.
20774
20775 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
20776 (menu_free_timer): New variable.
20777 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
20778 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
20779 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
20780 menu command is in progress.
20781 <WM_COMMAND>: Set the menu_command_in_progress flag.
20782 Kill any menu_free_timer that is running.
20783
20784 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
20785 Call ExtTextOutA rather than ExtTextOut.
20786
20787 2002-02-22 Eli Zaretskii <eliz@gnu.org>
20788
20789 * puresize.h (BASE_PURESIZE): Increase to 755000.
20790
20791 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
20792
20793 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
20794 on the string before encoding it.
20795 (Fw16_get_clipboard_data): Run post-read-conversion on the string
20796 after decoding it.
20797
20798 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
20799
20800 Support for ICCCM Extended Segments in X selections:
20801
20802 * xselect.c <Qcompound_text_no_extensions>: New variable.
20803 (syms_of_xselect): Intern and staticpro it.
20804 (selection_data_to_lisp_data): Run post-read-conversion on decoded
20805 selection text.
20806 (lisp_data_to_selection_data): If next-selection-coding-system is
20807 compound-text-no-extensions, set the type of selection to be
20808 compound-text.
20809
20810 * xterm.h (x_encode_text): Update prototype.
20811
20812 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
20813 callers changed. If SELECTIONP is non-zero, run the
20814 pre-write-conversion function before encoding the selection text.
20815
20816 2002-02-21 Kim F. Storm <storm@cua.dk>
20817
20818 * frame.c (syms_of_frame): Change mouse-highlight default to t.
20819
20820 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
20821 Correct composing of language-change event.
20822
20823 2002-02-20 Kim F. Storm <storm@cua.dk>
20824
20825 * keyboard.c (menu_bar_items): Don't include keymap or local-map
20826 bindings at PT when building menu (the menu is not updated often
20827 enough for this to work reliable).
20828 (tool_bar_items): Likewise.
20829 (current_active_maps): Removed unused (and buggy) function.
20830
20831 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20832
20833 * xfns.c (gif_load): Use correct width and height for GIF images.
20834
20835 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
20836
20837 * floatfns.c (Fatan): Accept an optional second arg and call
20838 atan2 if passed 2 args.
20839
20840 2002-02-18 Jason Rumney <jasonr@gnu.org>
20841
20842 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
20843
20844 2002-02-17 Jason Rumney <jasonr@gnu.org>
20845
20846 * w32term.c (x_autoselect_window_p): New variable.
20847 (syms_of_w32term): DEFVAR_BOOL and initialize it.
20848 (note_mouse_movement): Use it.
20849
20850 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
20851
20852 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
20853
20854 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
20855 New variables.
20856 (syms_of_w32fns): Intern and staticpro them.
20857 (x_frame_parms) <"fullscreen">: New parameter.
20858 (x_fullscreen_move, x_set_fullscreen): New functions.
20859 (x_set_frame_parameters): Support Qfullscreen.
20860 (x_real_positions): Save x/y_pixels_diff frame params.
20861 (x_figure_window_size): Support full-screen frames.
20862 (Fx_create_frame): Default the fullscreen parameter.
20863
20864 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
20865 (x_fullscreen_adjust): New functions.
20866 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
20867 fullscreen. Call x_check_fullscreen_move, and set the
20868 want_fullscreen member of output_data.w32
20869 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
20870
20871 * w32term.h: New enum for FULLSCREEN_* constants.
20872 (struct w32_output): New members want_fullscreen, x_pixels_diff,
20873 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
20874 (x-fullscreen-adjust): New prototype.
20875
20876 2002-02-17 Kim F. Storm <storm@cua.dk>
20877
20878 * frame.c (Vmouse_highlight): New variable.
20879 (syms_of_frame): DEFVAR_LISP it.
20880
20881 * frame.h (Vmouse_highlight): Declare extern.
20882
20883 * xterm.h (struct x_display_info): Add mouse_face_hidden.
20884
20885 * xterm.c (disable_mouse_highlight): Removed variable.
20886 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
20887 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
20888 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
20889 and on after keyboard input.
20890 (x_term_init): Initialize mouse_face_hidden.
20891
20892 * msdos.h (struct display_info): Add mouse_face_hidden.
20893
20894 * msdos.c (disable_mouse_highlight): Removed variable.
20895 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
20896 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
20897 (internal_terminal_init): Initialize mouse_face_hidden.
20898 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
20899 and on after keyboard input.
20900
20901 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
20902
20903 * w32term.c (disable_mouse_highlight): Removed variable.
20904 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
20905 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
20906 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
20907 and on after keyboard input.
20908 (w32_initialize_display_info): Initialize mouse_face_hidden.
20909
20910 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
20911
20912 * msdos.c (last_mouse_window): New variable.
20913 (dos_rawgetc): Fix last change--if the mouse is in the same window
20914 as recorded in last_mouse_window, don't select this window.
20915
20916 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
20917
20918 * msdos.c (x_autoselect_window_p): New variable.
20919 (syms_of_msdos): Defvar it.
20920 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
20921 which the last mouse movement occured, unless it is already selected.
20922
20923 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
20924 New variables.
20925 (syms_of_xdisp): DEVFAR them.
20926 (hscroll_window_tree): Use automatic_hscroll_margin and
20927 Vautomatic_hscroll_step to compute the amount of window scrolling.
20928
20929 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20930
20931 * xterm.c (x-autoselect-window): New variable.
20932 (note_mouse_movement): Use it.
20933
20934 * keyboard.c: Do not include "systime.h" twice.
20935
20936 2002-02-15 Andreas Schwab <schwab@suse.de>
20937
20938 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
20939
20940 * alloc.c (NSTATICS): Increase to 1280.
20941
20942 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
20943
20944 * alloc.c (NSTATICS): Bump to 1026.
20945
20946 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
20947 (Vx_super_keysym): New variables.
20948 (syms_of_xterm): DEFVAR_LISP them.
20949 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
20950 variables to determine which keys to use for the various modifiers.
20951
20952 2002-02-13 Kim F. Storm <storm@cua.dk>
20953
20954 * window.c (Vmode_line_in_non_selected_windows): Removed.
20955 (mode_line_in_non_selected_windows): New variable.
20956 (syms_of_window): DEFVAR_BOOL it.
20957
20958 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
20959 Use mode_line_in_non_selected_windows.
20960 (mode_line_in_non_selected_windows): Declare extern.
20961 (Vmode_line_in_non_selected_windows): Removed extern.
20962
20963 2002-02-13 Richard M. Stallman <rms@gnu.org>
20964
20965 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
20966 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
20967 (Fclear_this_command_keys): Doc fixes.
20968
20969 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
20970 (update_face_from_frame_parameter): Increment face_change_count
20971 and windows_or_buffers_changed to force redisplay using changed faces.
20972
20973 * xdisp.c (QCpropertize): New variable.
20974 (mode_line_proptrans_alist): New variable.
20975 (display_mode_element): New arg PROPS; all calls changed.
20976 Implement this, for strings.
20977 Handle literal output of strings by sharing the
20978 main-line code for strings, using local var `literal'.
20979 Handle :propertize feature.
20980 (syms_of_xdisp): Initialze and staticpro QCpropertize and
20981 mode_line_proptrans_alist.
20982
20983 2002-02-11 Kim F. Storm <storm@cua.dk>
20984
20985 * window.c (Vmode_line_in_non_selected_windows): New variable.
20986 (syms_of_window): DEFVAR_LISP it.
20987
20988 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
20989 (CURRENT_MODE_LINE_FACE_ID): Use it.
20990 (Vmode_line_in_non_selected_windows): Declare extern.
20991
20992 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
20993 to get mode line face.
20994
20995 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
20996
20997 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
20998 variables; cus-start.el doesn't need them anymore.
20999
21000 2002-02-09 Kim F. Storm <storm@cua.dk>
21001
21002 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
21003 reduction. This fixes a display problem where stray newlines were
21004 inserted in the window (corrected by C-l). Clarified code (IMHO).
21005
21006 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
21007
21008 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
21009
21010 * xdisp.c (display_mode_lines): Fix last change.
21011
21012 2002-02-09 Jason Rumney <jasonr@gnu.org>
21013
21014 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
21015 match each other.
21016 (w32_load_system_font): Prevent Cleartype fonts from loading.
21017 (Fx_show_tip): Ensure tip frames are above other topmost windows.
21018
21019 2002-02-09 Kim F. Storm <storm@cua.dk>
21020
21021 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
21022 (CURRENT_MODE_LINE_HEIGHT): Use it.
21023 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
21024
21025 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
21026 (pos_visible_p, handle_face_prop): Likewise.
21027 (display_mode_lines): Likewise, but for the real selected window.
21028 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
21029
21030 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
21031 in non-selected windows.
21032 (realize_basic_faces): Realize it.
21033 (syms_of_term): Intern and staticpro it.
21034
21035 2002-02-08 Kim F. Storm <storm@cua.dk>
21036
21037 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
21038 Changed mail addresses to emacs-devel@gnu.org.
21039
21040 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
21041
21042 * fileio.c (Fsubstitute_in_file_name): If the file name includes
21043 ~user, and there's no such user, don't discard everything before ~user.
21044
21045 * floatfns.c (Fround): Doc fix.
21046
21047 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21048
21049 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
21050
21051 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
21052
21053 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
21054
21055 2002-02-07 Kim F. Storm <storm@cua.dk>
21056
21057 * keymap.c (where_is_internal): Only check whether definition is
21058 remapped if it fulfills is_command_symbol.
21059
21060 2002-02-07 Andreas Schwab <schwab@suse.de>
21061
21062 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
21063
21064 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
21065
21066 2002-02-06 Kim F. Storm <storm@cua.dk>
21067
21068 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
21069 defining command remapping. Doc updated.
21070 (Flookup_key): Remap command through keymap if KEY is a symbol.
21071 (is_command_symbol): New function.
21072 (Fkey_binding): Use it. New optional argument NO-REMAP.
21073 Doc updated. Callers changed. Perform command remapping via
21074 recursive call unless that arg is non-nil.
21075 (where_is_internal): New argument no_remap. Callers changed.
21076 Call recursively to find original key bindings for a remapped
21077 comand unless that arg is non-nil.
21078 (Fwhere_is_internal): New optional argument NO-REMAP.
21079 Doc updated. Callers changed. Pass arg to where_is_internal.
21080
21081 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
21082 (is_command_symbol): Add prototype.
21083
21084 * keyboard.c (Vthis_original_command): New variable.
21085 (syms_of_keyboard): DEFVAR_LISP it.
21086 (command_loop_1): Set it, and perform command remapping.
21087
21088 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21089
21090 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
21091
21092 2002-02-06 Jason Rumney <jasonr@gnu.org>
21093
21094 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
21095
21096 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
21097
21098 * charset.c (get_charset_id): Use if-else instead of ?:.
21099
21100 2002-02-06 Richard M. Stallman <rms@gnu.org>
21101
21102 * filelock.c (S_ISLNK): Define if not defined.
21103
21104 2002-02-03 Richard M. Stallman <rms@gnu.org>
21105
21106 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
21107
21108 * lread.c (read1): Redesign strategy for force_multibyte and
21109 force_singlebyte. Now is_multibyte records whether read_buffer
21110 is multibyte. Encountering any multibyte character makes it so.
21111
21112 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
21113
21114 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
21115 with the same sequence, map that sequence to f10 rather than f0.
21116
21117 2002-02-03 Andreas Schwab <schwab@suse.de>
21118
21119 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
21120 latter never being defined on GNU/Linux.
21121
21122 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
21123
21124 * xfaces.c (realize_default_face): Don't set the weight and slant of
21125 the default face to Qnormal, unless these attributes are unspecified.
21126
21127 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21128
21129 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
21130 Call cancel_hourglass unconditionally.
21131
21132 * eval.c (Fsignal): Remove duplicated declaration of
21133 the variable `display_hourglass_p'.
21134
21135 2002-01-31 Richard M. Stallman <rms@gnu.org>
21136
21137 * editfns.c (region_limit): Nicer error message.
21138
21139 * coding.c (decode_composition_emacs_mule):
21140 Give up if NCOMPONENT gets too large to index `component'.
21141
21142 * callint.c (check_mark): New arg to specify clearer error message.
21143 Callers changed.
21144
21145 2002-01-27 Richard M. Stallman <rms@gnu.org>
21146
21147 * minibuf.c (Fcompleting_read): Doc fix.
21148
21149 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21150
21151 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
21152 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
21153 Fix doc-strings.
21154
21155 2002-01-26 Richard M. Stallman <rms@gnu.org>
21156
21157 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
21158
21159 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
21160 and scroll_up_aggressively.
21161
21162 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21163
21164 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
21165
21166 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
21167
21168 * textprop.c (Fnext_property_change, Fnext_single_property_change)
21169 (Fprevious_property_change, Fprevious_single_property_change):
21170 Stay within the narrowed-buffer boundaries.
21171
21172 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
21173
21174 * term.c (Ftty_display_color_cells): New function.
21175 (syms_of_term): Defsubr it.
21176 (Ftty_display_color_cells, Ftty_display_color_p): Change the
21177 argument name to DISPLAY. Doc fix.
21178
21179 * dispextern.h: Add prototype for set_tty_color_mode and
21180 tty_setup_colors.
21181
21182 2002-01-24 Jason Rumney <jasonr@gnu.org>
21183
21184 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
21185 If region left to draw is not what was expected, mark the frame as
21186 garbaged.
21187
21188 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
21189 Combine the regions returned by BeginPaint and GetUpdateRect.
21190
21191 2002-01-23 Jason Rumney <jasonr@gnu.org>
21192
21193 * w32term.c (x_update_window_begin): Only hide caret if
21194 w32_use_visible_system_caret is set.
21195 (x_update_window_end): Only show caret if
21196 w32_use_visible_system_caret is set.
21197 (syms_of_w32term): Handle SystemParametersInfo call failing.
21198
21199 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
21200
21201 2002-01-22 Richard M. Stallman <rms@gnu.org>
21202
21203 * unexelf.c (unexec): Define n so as to cause compilation error
21204 for the code where people have often written n instead of nn.
21205
21206 * .gdbinit (hookpost-run): Defined.
21207
21208 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21209
21210 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
21211
21212 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21213
21214 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
21215 if fullscreen is being set.
21216
21217 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21218
21219 * minibuf.c (Fminibuffer_contents)
21220 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
21221 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
21222
21223 2002-01-21 Richard M. Stallman <rms@gnu.org>
21224
21225 * window.c (check_frame_size): Fix minimum height calculation.
21226
21227 2002-01-20 Ken Raeburn <raeburn@gnu.org>
21228
21229 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
21230 height before comparison.
21231 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
21232
21233 2002-01-20 Jason Rumney <jasonr@gnu.org>
21234
21235 * w32term.c (w32_system_caret_width): Remove.
21236 (w32_use_visible_system_caret): New user flag.
21237 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
21238 Windows reports a screen reader running.
21239 (x_update_window_begin): Hide the system caret.
21240 (x_update_window_end): Show the system caret.
21241 (x_display_and_set_cursor): Don't draw a cursor when
21242 w32_use_visible_system_caret is set. Do not adjust width.
21243
21244 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
21245 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
21246 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
21247 the user requests it. Use system default width when creating.
21248 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
21249
21250 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
21251 New window messages.
21252
21253 2002-01-20 Richard M. Stallman <rms@gnu.org>
21254
21255 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
21256
21257 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21258
21259 * doprnt.c (doprnt1): Fix typos in error call.
21260
21261 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
21262
21263 * unexelf.c (unexec) [__sgi]: Support the .got sections.
21264
21265 2002-01-20 Jason Rumney <jasonr@gnu.org>
21266
21267 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
21268 that Windows returns. If a double check fails, try to guess how
21269 ExtTextOut is going to act.
21270
21271 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
21272 in place of stricmp.
21273 (w32_list_synthesized_fonts): Removed.
21274 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
21275 (struct enumfont_t): New element; list.
21276 (enum_font_cb2): List all style and charset variations of a font.
21277 (Fw32_select_font): New optional argument; include_proportional.
21278 Exclude vertical fonts. Exclude proportional fonts unless
21279 include_proportional is non-nil.
21280 (w32_enable_synthesized_fonts): Change to a boolean.
21281 (Fw32_send_sys_command): Doc fix.
21282
21283 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21284
21285 * dispnew.c (update_frame): Move the variable `tem' to the block
21286 where it is used.
21287
21288 2002-01-19 Jason Rumney <jasonr@gnu.org>
21289
21290 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
21291 call to face-set-after-frame-default.
21292
21293 2002-01-18 Richard M. Stallman <rms@gnu.org>
21294
21295 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
21296 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
21297
21298 2002-01-17 Richard M. Stallman <rms@gnu.org>
21299
21300 * window.c (enlarge_window): When exceeding size of parent,
21301 directly delete all the siblings instead of trying to resize it.
21302
21303 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21304
21305 * term.c (set_tty_color_mode): Remove unused variable `tem'.
21306
21307 2002-01-16 Henrik Enberg <henrik@enberg.org>
21308
21309 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
21310
21311 2002-01-16 Kim F. Storm <storm@cua.dk>
21312
21313 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
21314 is invisible. This can happen if cursor is on top line of a
21315 window, and we switch to a buffer with a header line.
21316
21317 * w32term.c (x_erase_phys_cursor): Ditto.
21318
21319 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21320
21321 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
21322 `dont_resize' only when used.
21323
21324 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
21325
21326 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
21327
21328 * xdisp.c (display_mode_element): When computing charpos, depend
21329 on multibyteness of elt, not the text in field.
21330
21331 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21332
21333 * buffer.c (Fkill_all_local_variables):
21334 Increment `update_mode_lines' only once.
21335
21336 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21337
21338 * lisp.h (adjust_after_replace_noundo)
21339 (Fupdate_coding_systems_internal): Add prototypes.
21340
21341 * sound.c (Fplay_sound): Initialize header_size also for :data case.
21342
21343 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
21344
21345 Support for the --color command-line argument and tty-color-mode
21346 frame parameter:
21347
21348 * term.c (tty_default_color_capabilities, tty_setup_colors)
21349 (set_tty_color_mode): New functions.
21350 (term_init): Call tty_default_color_capabilities.
21351 (Qtty_color_mode_alist): New variable.
21352 (syms_of_term): Intern and staticpro it.
21353
21354 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
21355 frames.
21356 (do_switch_frame): For termcap frames, switch the tty
21357 color mode as specified by the frame's parameters.
21358 (Qtty_color_mode): New variable.
21359 (syms_of_frame): Intern and staticpro it.
21360
21361 * emacs.c (USAGE2): Add the --color option.
21362 (standard_args): Ditto.
21363
21364 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21365
21366 * xterm.h (struct x_output): New members want_fullscreen,
21367 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
21368 y_pixels_outer_diff.
21369 New enum for FULLSCREEN_* constants.
21370 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
21371 is NULL.
21372 (x_fullscreen_adjust): Add prototype.
21373
21374 * emacs.c (USAGE2): Add the new full-screen arguments.
21375 (standard_args): Ditto.
21376
21377 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
21378 New variables.
21379 (syms_of_xfns): Intern and staticpro them.
21380 (x_frame_parms) <"fullscreen">: New parameter.
21381 (x_fullscreen_move, x_set_fullscreen): New functions.
21382 (x_set_frame_parameters): Support for Qfullscreen.
21383 (x_real_positions): More accurate computation of the frame position.
21384 (x_figure_window_size): Support full-screen frames.
21385 (Fx_create_frame): Default the fullscreen parameter.
21386
21387 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
21388 (XTread_socket) <Expose>: Call x_check_fullscreen.
21389 <ConfigureNotify>: Don't resize to fullscreen.
21390 Call x_check_fullscreen_move, and set the want_fullscreen member of
21391 output_data.x.
21392
21393 2002-01-13 Jason Rumney <jasonr@gnu.org>
21394
21395 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
21396 for mice with more than 3 buttons.
21397
21398 * w32term.c (parse_button): New parameter xbutton. Callers changed.
21399 (w32_read_socket): Handle new "XBUTTON" messages.
21400
21401 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
21402 (syms_of_w32fns): DEFVAR_BOOL it.
21403 (w32_wnd_proc): Handle new "XBUTTON" messages.
21404
21405 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21406
21407 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
21408
21409 2002-01-13 Andreas Schwab <schwab@suse.de>
21410
21411 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
21412
21413 2002-01-12 Andreas Schwab <schwab@suse.de>
21414
21415 * .gdbinit (xbuffer): Remove address operator since data is now a
21416 pointer.
21417
21418 2002-01-11 Richard M. Stallman <rms@gnu.org>
21419
21420 * insdel.c (adjust_after_replace_noundo): New function.
21421
21422 * coding.c (code_convert_region): Don't copy old text if undo disabled.
21423
21424 2002-01-09 Jason Rumney <jasonr@gnu.org>
21425
21426 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
21427 when checking for multiple frames.
21428
21429 2002-01-08 Richard M. Stallman <rms@gnu.org>
21430
21431 * window.c (delete_window): Rewrite the code for changing the
21432 selected window to handle the case where WINDOW is not a leaf.
21433
21434 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
21435
21436 * process.c (send_process): Set src_multibyte to 1 after the call
21437 top setup_coding_system, not before the call.
21438
21439 2002-01-07 Jason Rumney <jasonr@gnu.org>
21440
21441 * xmenu.c (set_frame_menubar, xmenu_show):
21442 (xdialog_show): Initialize wv->help to Qnil.
21443
21444 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
21445 (w32_dialog_show): Initialize wv->help to Qnil.
21446
21447 2002-01-06 Jason Rumney <jasonr@gnu.org>
21448
21449 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
21450
21451 * w32menu.c (w32_menu_display_help): Revert last change.
21452
21453 * xmenu.c (menu_highlight_callback): Revert last change.
21454
21455 2002-01-06 Andreas Schwab <schwab@suse.de>
21456
21457 * insdel.c (make_gap_larger): Make sure buffer size does not
21458 overflow range of int.
21459
21460 2002-01-05 Jason Rumney <jasonr@gnu.org>
21461
21462 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
21463 OVERLAPS_P.
21464
21465 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
21466
21467 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
21468 to the left or to the right of the pointer, put it against
21469 the left screen edge.
21470 (x_frame_parms): Add missing braces around initializer.
21471
21472 * w32term.c (x_setup_relief_colors): Don't compute an image's
21473 background color if it doesn't have a Pixmap.
21474 (notice_overwritten_cursor): Don't depend on
21475 output_cursor and updated_area. Compare pixel coordinates with
21476 window's cursor pixel coordinates.
21477 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
21478 Call notice_overwritten_cursor with new arg list.
21479 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
21480 unconditionally.
21481 (x_draw_image_relief): Use predefined macro instead of
21482 constant when the value of `tool_bar_button_relief' is negative.
21483
21484 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
21485
21486 2002-01-04 Richard M. Stallman <rms@gnu.org>
21487
21488 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
21489
21490 2002-01-03 Richard M. Stallman <rms@gnu.org>
21491
21492 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
21493 (Fkey_binding): Try the `keymap' property map first.
21494 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
21495 minor mode bindings.
21496
21497 2002-01-03 Kim F. Storm <storm@cua.dk>
21498
21499 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
21500
21501 2002-01-02 Richard M. Stallman <rms@gnu.org>
21502
21503 * keyboard.c (read_key_sequence): Handle the keymap property
21504 before minor mode maps.
21505
21506 * editfns.c (Fformat): Update thissize from field_width
21507 based on the actual width, in the string case.
21508
21509 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21510
21511 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
21512 when used as truth value to prevent gcc warnings.
21513
21514 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
21515 * w32proc.c: Include <config.h>.
21516
21517 2002-01-01 Andreas Schwab <schwab@suse.de>
21518
21519 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
21520 not EMACS_INT, to make them compatible with DEFVAR_INT.
21521 * lisp.h (max_specpdl_size): Adjust declaration.
21522
21523 2002-01-01 Richard M. Stallman <rms@gnu.org>
21524
21525 * print.c (print_object): Test print_escape_nonascii only for
21526 unibyte strings.
21527 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
21528 when outputting to a multibyte buffer.
21529
21530 2001-12-29 Richard M. Stallman <rms@gnu.org>
21531
21532 * print.c (print_object): In multibyte string, use hex escapes.
21533 Use octal only for unibyte strings.
21534 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
21535
21536 * lread.c (read_escape): New arg BYTEREP for reporting whether
21537 escape forces unibyte or multibyte.
21538 (read1): When reading a string, take note of that info.
21539
21540 2001-12-29 Ken Raeburn <raeburn@gnu.org>
21541
21542 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
21543 comparison to test lisp value returned by Fget.
21544
21545 2001-12-29 Richard M. Stallman <rms@gnu.org>
21546
21547 * lisp.h (max_specpdl_size): Add declaration.
21548
21549 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
21550
21551 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
21552 Handle modifier bits. Correct typo in error message.
21553
21554 2001-12-28 Richard M. Stallman <rms@gnu.org>
21555
21556 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
21557 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
21558 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
21559 Update calls to Fdefine_abbrev.
21560 (write_abbrev): Update for changed data format.
21561 Don't list "system" abbrevs.
21562 (Fexpand_abbrev): Update use count with new data format.
21563 (describe_abbrev): Update for changed data format.
21564 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
21565
21566 * config.in (HAVE_MBSINIT): Add #undef.
21567
21568 * strftime.c (mbsinit): Define as no-op if not available.
21569
21570 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
21571 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
21572
21573 * keymap.c (Flookup_key): Error message if key has wrong data type.
21574 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
21575 (exclude_key): New variable.
21576
21577 2001-12-28 Gerd Moellmann <gerd@gnu.org>
21578
21579 * xterm.c (x_setup_relief_colors): Don't compute an image's
21580 background color if it doesn't have a Pixmap.
21581
21582 * xterm.c (notice_overwritten_cursor): Don't depend on
21583 output_cursor and updated_area. Compare pixel coordinates with
21584 window's cursor pixel coordinates.
21585 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
21586 Call notice_overwritten_cursor with new arg list.
21587 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
21588 unconditionally.
21589
21590 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
21591 height of the cursor line to the amount to scroll.
21592
21593 2001-12-27 Richard M. Stallman <rms@gnu.org>
21594
21595 * intervals.c (set_point_both): The position after an invisible,
21596 intangible character is not an acceptable stopping point.
21597
21598 2001-12-27 Ken Raeburn <raeburn@gnu.org>
21599
21600 * window.c (enlarge_window): In new preserve_before code, convert
21601 CURBEG from lisp object to integer before doing arithmetic.
21602
21603 2001-12-27 Richard M. Stallman <rms@gnu.org>
21604
21605 * bytecode.c (Fbyte_code): Undo previous change.
21606
21607 2001-12-26 Kim F. Storm <storm@cua.dk>
21608
21609 * keyboard.c (record_char): Ignore duplicate help-echo events only
21610 separated by mouse-movement. When tracking mouse, only record
21611 first and last mouse-movement event in same window.
21612 Don't record mouse-movement events in keyboard macros.
21613
21614 2001-12-25 Richard M. Stallman <rms@gnu.org>
21615
21616 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
21617 (Fenlarge_window): New arg PRESERVE_BEFORE.
21618
21619 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
21620 instead of Fstring_as_unibyte.
21621
21622 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21623
21624 The following changes remove mocklisp support:
21625
21626 * mocklisp.h, mocklisp.c: Files removed.
21627
21628 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
21629 `Qmocklisp' and `Qmocklisp_arguments'.
21630 Remove prototype of syms_of_mocklisp.
21631
21632 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
21633
21634 * callint.c: Do not include mocklisp.h.
21635 (Fcall_interactively): Do not test for mocklisp case.
21636
21637 * eval.c: Remove variables `Qmocklisp_arguments',
21638 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
21639 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
21640 Do not test for mocklisp case.
21641 (Fwhile): Remove unused variable `tem'.
21642 (syms_of_eval): Remove variable `moclisp-arguments'.
21643
21644 * data.c (wrong_type_argument): Remove mocklisp case.
21645
21646 * doc.c (Fdocumentation): Remove mocklisp case.
21647
21648 * emacs.c (main): Do not call syms_of_mocklisp.
21649
21650 2001-12-21 Richard M. Stallman <rms@gnu.org>
21651
21652 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
21653 to the left or to the right of the pointer, put it against
21654 the left screen edge.
21655
21656 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
21657
21658 * Makefile.in (distclean): Remove .gdbinit if we are building
21659 outside the source tree.
21660
21661 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
21662
21663 * w32.c (emacs_root_dir): New function.
21664
21665 * msdos.c (emacs_root_dir): New function.
21666
21667 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
21668 of the current drive as the fallback for default_directory.
21669
21670 * dired.c (file_name_completion): Run the elements of
21671 completion-ignored-extensions through ENCODE_FILE.
21672
21673 * lisp.h (scmp): Remove prototype, since it's now a static
21674 function private to dired.c.
21675
21676 2001-12-18 Richard M. Stallman <rms@gnu.org>
21677
21678 * dired.c (scmp): Function moved from minibuf.c.
21679 Delete multibyte handling--used only on encoded strings.
21680
21681 * minibuf.c (scmp): Function moved to dired.c.
21682
21683 * fns.c (merge): Add QUIT call.
21684
21685 2001-12-18 Dave Love <fx@gnu.org>
21686
21687 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
21688 language/georgian.el.
21689
21690 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
21691
21692 * Makefile.in (lisp, shortlisp): Synchronize with changes to
21693 lisp/Makefile.in:DONTCOMPILE.
21694
21695 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21696
21697 * xdisp.c (window_box_height): Do not return negative values.
21698 From Gerd Moellmann <gerd@gnu.org>.
21699
21700 * keyboard.c (head_table): Add missing braces around initializer.
21701
21702 * term.c (keys): Likewise.
21703
21704 * xfns.c (x_frame_parms, visual_classes): Likewise.
21705
21706 2001-12-17 Sam Steingold <sds@gnu.org>
21707
21708 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
21709 patch (COMPOSING_P, not COMPOSING).
21710
21711 2001-12-17 Richard M. Stallman <rms@gnu.org>
21712
21713 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
21714
21715 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
21716 before calling decode_coding.
21717
21718 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
21719
21720 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
21721 instead of only for COMPOSITION_DISABLED.
21722
21723 2001-12-16 Richard M. Stallman <rms@gnu.org>
21724
21725 * alloc.c (pure_alloc): After overflow, allocate just a small block.
21726
21727 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
21728
21729 * buffer.h (struct buffer): New field `display_error_modiff'.
21730 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
21731
21732 * window.c (Frecenter): Clear display_error_modiff field.
21733
21734 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
21735 Call redisplay_window, but not if display_error_modiff field says no.
21736 (redisplay_window_error): New function.
21737 (displayed_buffer): New variable.
21738 (redisplay_internal, redisplay_windows): Call the new functions
21739 instead of redisplay_window directly.
21740
21741 2001-12-15 Richard M. Stallman <rms@gnu.org>
21742
21743 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
21744
21745 2001-12-14 Andrew Innes <andrewi@gnu.org>
21746
21747 * makefile.w32-in (EMACSLOADPATH): Define.
21748 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
21749 (bootstrap-temacs): Remove dependency on bootstrap-clean.
21750
21751 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
21752
21753 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
21754 parameter have a numeric value all the time.
21755
21756 * w32fns.c (x_report_frame_params): Likewise.
21757
21758 2001-12-12 Richard M. Stallman <rms@gnu.org>
21759
21760 * fileio.c (Fwrite_region): Doc fix.
21761
21762 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
21763 (redisplay_internal): Call clear_image_cache only for window terminals.
21764
21765 2001-12-12 Gerd Moellmann <gerd@gnu.org>
21766
21767 * xdisp.c (move_it_vertically_backward): Change heuristic
21768 for the case that we didn't move far enough initially.
21769
21770 * window.c (Frecenter): Simplify computation in the case of window
21771 system frames and ARG < 0; use window_box_height.
21772
21773 2001-12-11 Richard M. Stallman <rms@gnu.org>
21774
21775 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
21776 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
21777
21778 2001-12-11 Andrew Innes <andrewi@gnu.org>
21779
21780 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
21781 arg is negative.
21782
21783 2001-12-11 Richard M. Stallman <rms@gnu.org>
21784
21785 * m/hp800.h: Split the __hpux conditional into the parts
21786 that are right for GNU/Linux too and the parts that are not.
21787 Use the former if GNU_LINUX.
21788 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
21789
21790 * s/gnu-linux.h (GNU_LINUX): Defined.
21791
21792 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21793
21794 * macros.c, msdos.c, w16select.c: Change doc-string comments to
21795 `new style' [w/`doc:' keyword].
21796
21797 2001-12-10 Jason Rumney <jasonr@gnu.org>
21798
21799 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
21800 before using.
21801
21802 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21803
21804 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
21805 keyword].
21806
21807 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
21808
21809 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
21810
21811 * s/hpux10.h (srand48): Don't undefine.
21812
21813 2001-12-09 Jason Rumney <jasonr@gnu.org>
21814
21815 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
21816 Add comment to explain where the struct came from.
21817 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
21818 (add_menu_item): Process pop-up menus first to avoid memory leak.
21819 (add_menu_item, w32_menu_display_help): Use `help' field as
21820 Lisp_Object.
21821 (w32_free_submenu_strings): Only free owner-drawn strings.
21822
21823 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21824
21825 * COPYING: Moved back.
21826
21827 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
21828 Add parentheses around && within ||.
21829
21830 * indent.c (compute_motion): Likewise.
21831
21832 * intervals.c (merge_properties_sticky): Likewise.
21833
21834 * coding.c (setup_coding_system, shrink_encoding_region)
21835 (Fdecode_sjis_char): Likewise.
21836
21837 2001-12-07 Andreas Schwab <schwab@suse.de>
21838
21839 * xdisp.c (display_mode_element): Don't read past end of string if
21840 it ends with '%'.
21841
21842 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
21843 can hold.
21844
21845 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
21846 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
21847 type changed to Lisp_Object.
21848 (syms_of_data): DEFVAR_LISP them.
21849
21850 2001-12-07 Richard M. Stallman <rms@gnu.org>
21851
21852 * callproc.c (init_callproc): Set Vdata_directory based on the source
21853 location whenever Emacs was run uninstalled.
21854
21855 2001-12-06 Paul Eggert <eggert@twinsun.com>
21856
21857 * config.in (HAVE_WORKING_VFORK): New #undefs.
21858 * process.c (create_process):
21859 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
21860 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
21861 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
21862 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
21863 * m/intel386.h (HAVE_VFORK): Likewise.
21864 * m/mips-siemens.h (HAVE_VFORK): Likewise.
21865 * m/mips.h (HAVE_VFORK): Likewise.
21866 * s/freebsd.h (vfork): Remove #define.
21867 * s/lynxos.h (HAVE_VFORK): Remove #undef.
21868 * s/usg5-4-2.h: Fix comment about vfork.
21869
21870 2001-12-06 Richard M. Stallman <rms@gnu.org>
21871
21872 * s/hpux10.h (random): Add undef.
21873 (HAVE_RANDOM): Define it just once.
21874
21875 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
21876
21877 * eval.c: Undo last change: the standard syntax is not wanted.
21878
21879 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
21880
21881 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
21882 scroll bars of the frame before deleting the frame itself. If the
21883 frame has a widget, delete the frame with XtDestroyWidget, and do
21884 not call XDestroyWindow before that.
21885
21886 2001-12-06 Kim F. Storm <storm@cua.dk>
21887
21888 * xfns.c (x_report_frame_params): Return actual fringe widths.
21889
21890 * w32fns.c (x_report_frame_params): Return actual fringe widths.
21891
21892 2001-12-05 Andrew Innes <andrewi@gnu.org>
21893
21894 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
21895 excessively large.
21896
21897 * insdel.c (make_gap_larger): New function.
21898 (make_gap_smaller): New function.
21899 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
21900 Call make_gap_smaller if arg is negative.
21901
21902 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
21903
21904 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
21905 Pass a dummy argument when calling interrupt_signal.
21906 (parse_menu_item): Mark disabled items before checking for empty def.
21907 (read_char_minibuf_menu_prompt): Make safety more visible.
21908 (read_key_sequence): Add a `first_unbound' variable.
21909 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
21910 unbound prefix as soon as we can detect it.
21911
21912 * doc.c (Fsnarf_documentation): Add prototype.
21913 (get_doc_string): Handle negative arguments.
21914 (Fdocumentation): Use AREF and ASIZE.
21915 Move the calls to get_doc_string to a single place.
21916 Don't confuse an interactive-spec for a docstring reference.
21917 (Fdocumentation_property): Take advantage of the fact that
21918 get_doc_string now ignores the sign of the docstring position.
21919
21920 * eval.c: Use standard syntax for usage in docstrings.
21921
21922 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21923
21924 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
21925
21926 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21927
21928 * xterm.c (x_draw_image_relief): Use predefined macro instead of
21929 constant when the value of `tool_bar_button_relief' is negative.
21930
21931 2001-12-02 Richard M. Stallman <rms@gnu.org>
21932
21933 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
21934 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
21935
21936 * fileio.c (read_non_regular): Delete Fsignal call.
21937
21938 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
21939
21940 * lisp.h (run_hook_list_with_args): Undo last change.
21941
21942 2001-12-01 Gerd Moellmann <gerd@gnu.org>
21943
21944 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
21945
21946 2001-12-01 Jason Rumney <jasonr@gnu.org>
21947
21948 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
21949
21950 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
21951 [!WM_MOUSELEAVE]: Define.
21952
21953 * w32menu.c (current_popup_menu, get_menu_item_info):
21954 (set_menu_item_info): New vars.
21955 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
21956 (w32_menu_show): Set current_popup_menu.
21957 (add_menu_item): Allocate new strings for owner-drawn menu items
21958 and help strings.
21959 Use owner-draw for disabled menu items again.
21960 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
21961 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
21962
21963 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
21964 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
21965 <WM_EXITMENULOOP>: Free menu strings.
21966 <WM_MOUSELEAVE>: Stop tracking mouse.
21967 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
21968
21969 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
21970 and mouse face.
21971
21972 2001-12-01 Kim F. Storm <storm@cua.dk>
21973
21974 The following changes add left-fringe and right-fringe
21975 frame parameters to adjust fringe widths, or remove one or
21976 both fringes.
21977
21978 * frame.h (struct frame): Remove trunc_area_pixel_width and
21979 trunc_area_cols fields.
21980 (Qleft_fringe, Qright_fringe): Declare.
21981 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
21982
21983 * frame.c (Qleft_fringe, Qright_fringe): New vars.
21984 (syms_of_frame): Initialize them.
21985
21986 * window.c (coordinates_in_window): Handle separate left and right
21987 fringe widths.
21988
21989 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
21990 and fringe_cols fields.
21991 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
21992 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
21993 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
21994 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
21995 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
21996 (x_compute_fringe_widths): Add prototype.
21997
21998 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
21999 fill fringe evenly with small dashes.
22000 (x_draw_fringe_bitmap): Clear background if necessary. Align and
22001 clip the new ZV bitmap to avoid jitter between rows.
22002 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
22003 background. Don't draw fringe bitmaps if fringe width is zero.
22004 (x_compute_fringe_widths): New function.
22005 (x_new_font, x_set_window_size_1): Use it.
22006
22007 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
22008 (x_set_frame_parameters): Process `font' parameter before other
22009 parameters as fringe widths depend on it.
22010 (x_set_fringe_width): New function.
22011 (x_figure_window_size): Use x_compute_fringe_widths.
22012 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
22013 parameters.
22014
22015 * widget.c (set_frame_size): Use x_compute_fringe_widths.
22016 (EmacsFrameSetCharSize): Ditto.
22017
22018 * w32term.h: Merged changes from xterm.h.
22019 * w32term.c: Merged changes from xterm.c.
22020 * w32fns.c: Merged changes from xfns.c.
22021
22022 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22023
22024 * COPYING: Removed.
22025
22026 2001-11-29 Dave Love <fx@gnu.org>
22027
22028 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
22029 extra extra slot.
22030 (detect_coding_mask): Fix call of detect_coding_iso2022.
22031
22032 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22033
22034 * fileio.c (file-name-coding-system)
22035 (default-file-name-coding-system): Doc fix (links to referenced
22036 variables added).
22037
22038 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
22039
22040 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
22041 Add dummy uses of gcproN variables.
22042
22043 * category.c (describe_category, describe_category_1)
22044 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
22045 (syms_of_category): Don't defsubr Sdescribe_categories.
22046
22047 2001-11-28 Richard M. Stallman <rms@gnu.org>
22048
22049 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
22050
22051 * Makefile.in (lispdir): New variable, referring to build dir.
22052 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
22053
22054 2001-11-28 Andrew Innes <andrewi@gnu.org>
22055
22056 * w32menu.c (w32_menu_display_help): Actually add the new argument
22057 OWNER.
22058
22059 2001-11-28 Jason Rumney <jasonr@gnu.org>
22060
22061 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
22062 menu items. From David Ponce <dponce@wanadoo.fr>.
22063 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
22064 conditionally.
22065 (w32_menu_display_help): New argument OWNER. Rewritten to store a
22066 help event in the owner frame's keyboard buffer.
22067
22068 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
22069 (Fx_show_tip): Don't subtract last width from row width.
22070
22071 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
22072 (w32_read_socket): Use EQ to compare frames.
22073
22074 2001-11-28 Gerd Moellmann <gerd@gnu.org>
22075
22076 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
22077 OVERLAPS_P.
22078
22079 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22080
22081 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
22082 `gcpro3' and `gcpro4'.
22083
22084 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
22085
22086 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
22087
22088 * ccl.c: Use AREF and ASIZE.
22089
22090 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
22091
22092 * lisp.h (run_hook_list_with_args): Remove.
22093 (LIST_END_P): Fix call to wrong_type_argument.
22094 (make_fixnum_or_float): Use EMACS_INT rather than int.
22095
22096 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
22097
22098 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
22099 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
22100
22101 * eval.c: Use AREF and ASIZE.
22102 (Ffetch_bytecode): Add the file name to the error message.
22103
22104 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
22105 which match the end of the file-name.
22106 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
22107 is not a valid env var, but leave it as is instead.
22108
22109 * keymap.c (access_keymap): Handle t bindings like nil bindings.
22110 Make nil bindings in char-tables transparent.
22111 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
22112
22113 2001-11-26 Richard M. Stallman <rms@gnu.org>
22114
22115 * textprop.c (set_text_properties_1): Allow START, END in either order.
22116 Do nothing if range is empty.
22117
22118 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
22119
22120 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
22121 (clean): Not here.
22122
22123 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
22124
22125 * textprop.c (set_text_properties_1): Clearly mark that the
22126 interval should not be empty.
22127
22128 * intervals.c (graft_intervals_into_buffer):
22129 Don't call set_text_properties_1 on an empty interval.
22130
22131 2001-11-25 Richard M. Stallman <rms@gnu.org>
22132
22133 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
22134
22135 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
22136 don't lose the data in it.
22137
22138 2001-11-25 Juanma Barranquero <lektu@terra.es>
22139
22140 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
22141
22142 * buffer.c (Fkill_buffer): Likewise.
22143
22144 * print.c (temp_output_buffer_setup): Likewise.
22145
22146 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
22147
22148 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
22149
22150 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
22151
22152 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
22153 Niemitalo <kon@iki.fi>.
22154
22155 2001-11-25 Jason Rumney <jasonr@gnu.org>
22156
22157 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
22158
22159 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
22160 (Fx_show_tip): Block input during frame creation.
22161 (Fx_show_tip, Fx_hide_tip): Enable.
22162
22163 2001-11-24 Richard M. Stallman <rms@gnu.org>
22164
22165 * lread.c (Fload): Detect recursive load error for more than 3
22166 nestings of the same file.
22167 (Vrecursive_load_depth_limit): Variable deleted.
22168 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
22169
22170 2001-11-24 Jason Rumney <jasonr@gnu.org>
22171
22172 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
22173 mouse position if either left or top is not specified.
22174
22175 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
22176 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
22177 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
22178 (my_create_tip_window): Assign tip_window.
22179 (x_create_tip_frame): Use same defaults as X.
22180 (compute_tip_xy): Remove unused variable. Use full screen width.
22181 (Fx_show_tip): Do not double height. Call ShowWindow directly.
22182
22183 * w32term.c (x_after_update_window_line): Doc fix.
22184 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
22185 frames.
22186 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
22187
22188 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
22189 for all Windowed systems.
22190
22191 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
22192
22193 * msdos.c (IT_clear_screen): If the frame's faces are not yet
22194 realized, use the initial screen colors to clear the screen.
22195
22196 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22197
22198 * textprop.c (Fset_text_properties): Remove unused variables
22199 `unchanged', `prev_changed', `s' and `len'.
22200
22201 * search.c (Freplace_match): Remove unused variable `inslen'.
22202
22203 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
22204
22205 2001-11-22 Jason Rumney <jasonr@gnu.org>
22206
22207 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
22208 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
22209 (my_create_tip_window): New function.
22210 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
22211 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
22212
22213 2001-11-20 Jason Rumney <jasonr@gnu.org>
22214
22215 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
22216 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
22217
22218 * w32fns.c (Vw32_system_coding_system): Remove.
22219 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
22220
22221 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
22222
22223 * fileio.c (Fwrite_region): Move choose_write_coding_system to
22224 after build_annotations.
22225
22226 * syntax.c (describe_syntax): Add dummy arg.
22227 (describe_syntax_1): Update call to describe_vector.
22228
22229 * category.c (describe_category): Add dummy arg.
22230 (describe_category_1): Update call to describe_vector.
22231
22232 * keymap.c (Fdescribe_vector): Add `describer' parameter.
22233 (describe_command, describe_translation): Add dummy second param.
22234 (describe_map): Call elt_describer with two arguments.
22235 (describe_vector_princ): Add `fun' parameter.
22236 Call it instead of the hardcoded `princ'.
22237 (describe_vector): Add arg `args'.
22238 Pass it as a new second argument to elt_describer.
22239
22240 * keymap.h (describe_vector): Update prototype.
22241
22242 * frame.c: Don't include keymap.h any more.
22243 (keys_of_frame): Remove.
22244
22245 * lisp.h (keys_of_frame): Remove declaration.
22246
22247 * emacs.c (main): Don't call `keys_of_frame' any more.
22248
22249 2001-11-14 Andreas Schwab <schwab@suse.de>
22250
22251 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
22252 if defined, 0 otherwise.
22253 (MAP_FAILED): Define if not defined and use it to test mmap failure.
22254 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
22255
22256 2001-11-19 Richard M. Stallman <rms@gnu.org>
22257
22258 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
22259
22260 2001-11-18 Jason Rumney <jasonr@gnu.org>
22261
22262 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
22263 (x_draw_bar_cursor): If the background color of the glyph under
22264 the cursor equals the frame's cursor color, use the glyph's
22265 foreground color for drawing the bar cursor.
22266 (x_after_update_window_line): Clear internal border in different
22267 circumstances.
22268 (w32_set_vertical_scroll_bar): Check for width and height > 0.
22269 (w32_draw_relief_rect): Correct relief by 1 pixel.
22270 (x_set_glyph_string_background_width):
22271 Set extends_to_end_of_line_p if the row's fill_line_p is set and
22272 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
22273 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
22274 if cursor_in_non_selected_windows is false.
22275 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
22276 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
22277 Notice if cursor gets overwritten.
22278 (notice_overwritten_cursor): Renamed from
22279 note_overwritten_text_cursor. Rewritten to take glyph widths
22280 into account, and to take X positions as parameters.
22281 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
22282 around call to x_draw_glyphs.
22283 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
22284 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
22285 color to use for image glyph reliefs.
22286 (x_draw_image_relief): Accept zero tool_bar_button_relief.
22287 (glyph_rect): Remove unused variable `area'.
22288
22289 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
22290 some items.
22291 (x_set_internal_border_width): Set frame garbaged when window
22292 doesn't exist yet.
22293 (Fx_create_frame): Accept zero tool_bar_button_relief.
22294 (x_clear_image_1, four_corners_best, image_background)
22295 (image_background_transparent): New functions.
22296 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
22297 (gs_format): Add `:background' entry.
22298 (lookup_image): Set IMG's background color if specified.
22299 (pbm_load, xbm_load_image, png_load): Set IMG's background field
22300 when appropriate.
22301 (x_clear_image_1): Reset `background_valid' and
22302 `background_transparent_valid' fields.
22303 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
22304 calculating it here. Set IMG's background_transparent field.
22305 (enum xpm_keyword_index): Add XPM_BACKGROUND.
22306 (enum png_keyword_index): Add PNG_BACKGROUND.
22307 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
22308 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
22309 (enum gif_keyword_index): Add GIF_BACKGROUND.
22310 (enum gs_keyword_index): Add GS_BACKGROUND.
22311 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
22312 Pre-calculate image background color where necessary.
22313 (x_create_x_image_and_pixmap, xbm_load, gs_load):
22314 Use display info's n_cbits entry for screen depth.
22315 (Fx_show_tip): Remove unused variables `buffer', `top',
22316 `left', `max_width' and `max_height'.
22317
22318 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
22319
22320 2001-11-18 Gerd Moellmann <gerd@gnu.org>
22321
22322 * puresize.h (BASE_PURESIZE): Increase to 750000.
22323
22324 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22325
22326 * frame.c (Fframe_live_p): Doc fix.
22327
22328 2001-11-18 Richard M. Stallman <rms@gnu.org>
22329
22330 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
22331 (message_dolog_marker3): New static variables hold three markers.
22332 (syms_of_xdisp): Initialize and staticpro them.
22333 (message_dolog): Use message_dolog_marker1..3 instead of
22334 allocating markers each time. Unchain them when done.
22335
22336 2001-11-17 Richard M. Stallman <rms@gnu.org>
22337
22338 * doc.c (Fsnarf_documentation): Doc fix.
22339
22340 2001-11-17 Andreas Schwab <schwab@suse.de>
22341
22342 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
22343
22344 2001-11-17 Richard M. Stallman <rms@gnu.org>
22345
22346 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
22347
22348 2001-11-17 Jason Rumney <jasonr@gnu.org>
22349
22350 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
22351
22352 2001-11-17 Gerd Moellmann <gerd@gnu.org>
22353
22354 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
22355 with invalid position.
22356
22357 2001-11-16 Richard M. Stallman <rms@gnu.org>
22358
22359 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
22360
22361 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
22362 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
22363 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
22364
22365 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
22366
22367 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22368
22369 * fileio.c (build_annotations): Split off the tail.
22370 (build_annotations_2): New fun. Extracted from build_annotations.
22371 (Fwrite_region): Split the call to build_annotations into two
22372 calls to build_annotations and build_annotations_2.
22373
22374 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22375
22376 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
22377 clear_waiting_for_input with argument.
22378
22379 * xterm.h (x_update_cursor): Remove duplicated prototype.
22380
22381 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
22382
22383 * xterm.c (waiting_for_input): Remove unnecessary declaration.
22384
22385 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
22386
22387 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22388
22389 * fileio.c (choose_write_coding_system): New fun, extracted
22390 from Fwrite_region.
22391 (Fwrite_region): Use it.
22392
22393 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
22394 (funcall_lambda, run_hook_with_args): Make static and add prototype.
22395 (ml_apply, find_handler_clause): Add prototype.
22396
22397 2001-11-16 Eli Zaretskii <eliz@gnu.org>
22398
22399 * config.in: Add #undef HAVE_COFF_H.
22400
22401 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
22402 Required for ISC 4.1.
22403
22404 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
22405
22406 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
22407 Andrew Wiseman <a.wiseman@btclick.com>.
22408
22409 2001-11-16 Kim F. Storm <storm@cua.dk>
22410
22411 The following changes are made to clean up the various internal
22412 references to the fringes to actually use the term `fringe' for
22413 them. Previously, they were called `flags areas', `bitmap areas',
22414 `left/right side of windows', or implicitly as `flags' or
22415 `bitmaps':
22416
22417 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
22418 Comments fixed. Use renamed symbols.
22419
22420 * dispnew.c: Comment fix. Use renamed symbols.
22421
22422 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
22423 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
22424 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
22425
22426 * msdos.c: Comment fix.
22427
22428 * w32fns.c: Use renamed symbols.
22429
22430 * w32term.c: Comment fixes. Use renamed symbols.
22431 (fringe_bitmap_type): Renamed from bitmap_type.
22432 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
22433 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
22434 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
22435
22436 * w32term.h: Comment fixes. Use renamed symbols.
22437 (fringes_extra): Renamed from flags_areas_extra.
22438 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
22439 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
22440 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
22441 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
22442 (FRAME_X_LEFT_FRINGE_WIDTH):
22443 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
22444 (FRAME_X_RIGHT_FRINGE_WIDTH):
22445 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
22446
22447 * widget.c: Use renamed symbols.
22448
22449 * window.c: Comment fixes. Use renamed symbols.
22450 (coordinates-in-window-p): Doc fix.
22451
22452 * xdisp.c: Comment fixes. Use renamed symbols.
22453
22454 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
22455
22456 * xfns.c: Use renamed symbols.
22457
22458 * xterm.c: Comment fixes. Use renamed symbols.
22459 (fringe_bitmap_type): Renamed from bitmap_type.
22460 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
22461 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
22462 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
22463
22464 * xterm.h: Comment fixes. Use renamed symbols.
22465 (fringes_extra): Renamed from flags_areas_extra.
22466 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
22467 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
22468 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
22469 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
22470 (FRAME_X_LEFT_FRINGE_WIDTH):
22471 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
22472 (FRAME_X_RIGHT_FRINGE_WIDTH):
22473 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
22474
22475 2001-11-15 Jason Rumney <jasonr@gnu.org>
22476
22477 * w32menu.c (add-menu-item): Make help_echo and radio buttons
22478 work for most menu items. From David Ponce
22479 <david.ponce@wanadoo.fr>.
22480
22481 2001-11-15 Gerd Moellmann <gerd@gnu.org>
22482
22483 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
22484 Some x_set_* function expect to be called even if old and new
22485 value are equal.
22486
22487 * xdisp.c (build_desired_tool_bar_string): Accept zero
22488 tool_bar_button_relief.
22489
22490 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
22491
22492 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
22493
22494 * xterm.c (x_draw_bar_cursor): If the background color of the
22495 glyph under the cursor equals the frame's cursor color, use
22496 the glyph's foreground color for drawing the bar cursor.
22497
22498 * dispnew.c (direct_output_forward_char): Fix character/byte
22499 position comparison.
22500
22501 2001-11-15 Miles Bader <miles@gnu.org>
22502
22503 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
22504 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
22505 Update arguments to find_field.
22506 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
22507 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
22508 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
22509 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
22510
22511 2001-11-14 Richard M. Stallman <rms@gnu.org>
22512
22513 * editfns.c (Fpropertize): Allow call with 1 arg.
22514
22515 * dispextern.h (image_background, image_background_transparent):
22516 Conditionalize on HAVE_X_WINDOWS.
22517
22518 2001-11-13 Richard M. Stallman <rms@gnu.org>
22519
22520 * print.c (Fprin1_to_string): Doc fix.
22521
22522 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
22523
22524 * floatfns.c (Fceiling, Ffloor): Doc fixes.
22525
22526 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
22527
22528 * fileio.c (Ffile_accessible_directory_p): Doc fix.
22529
22530 * eval.c (syms_of_eval): Doc fix.
22531
22532 * coding.c (syms_of_coding): Doc fix.
22533
22534 * doc.c (Fsnarf_documentation): Doc fix.
22535
22536 * dispnew.c (syms_of_display): Doc fix.
22537
22538 * category.c (Fget_unused_category): Doc fix.
22539
22540 * buffer.c (syms_of_buffer): Doc fixes.
22541
22542 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
22543
22544 * print.c (prin1, print): Doc fix.
22545
22546 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22547
22548 * fontset.h: Remove declarations of variables
22549 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
22550
22551 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
22552 `Vclip_large_size_font'.
22553
22554 2001-11-13 Jason Rumney <jasonr@gnu.org>
22555
22556 * w32fns.c: Doc fix.
22557
22558 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22559
22560 * xfaces.c (Fface_attributes_as_vector): Doc fix.
22561
22562 * fns.c: Doc fix.
22563
22564 * emacs.c: Doc fix.
22565
22566 * coding.c: Doc fix.
22567
22568 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
22569 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
22570 `new style' [w/`doc:' keyword].
22571
22572 2001-11-12 Richard M. Stallman <rms@gnu.org>
22573
22574 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
22575 LeaveNotify events. Only FocusIn and FocusOut do that now.
22576 (x_display_and_set_cursor): Do display hollow cursors in active
22577 minibuffer windows when they are not selected.
22578
22579 2001-11-12 Jason Rumney <jasonr@gnu.org>
22580
22581 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
22582 * w32term.c: Change doc-string comments to `new style'
22583 [w/`doc:' keyword]. Doc fixes.
22584
22585 * w32fns.c: Don't define max.
22586 (Fx_open_connection): Only execute once.
22587
22588 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22589
22590 * ccl.c: Change macros to use do-while block instead of if-else.
22591 Use braces to follow GNU Coding Standards.
22592
22593 2001-11-11 Richard M. Stallman <rms@gnu.org>
22594
22595 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
22596
22597 * lread.c (read_escape): Use end_of_file_error for reporting eof.
22598
22599 * insdel.c (replace_range): Use adjust_markers_for_replace
22600 instead of adjust_markers_for_delete and adjust_markers_for_insert.
22601
22602 * intervals.h (set_text_properties, set_text_properties_1): Declare.
22603
22604 * textprop.c (set_text_properties_1): New subroutine
22605 broken out of set_text_properties.
22606 (set_text_properties): Use set_text_properties_1.
22607
22608 * intervals.c (graft_intervals_into_buffer):
22609 Use set_text_properties_1 to clear out properties.
22610
22611 * search.c (Freplace_match): Use replace_range to insert
22612 and delete. Don't request property inheritance from
22613 surrounding text.
22614
22615 2001-11-10 Jason Rumney <jasonr@gnu.org>
22616
22617 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
22618 vertical fonts. Allow them if face name is explicitly specified.
22619 Do not give up if we find a font that cannot be converted to an xlfd.
22620
22621 2001-11-10 Gerd Moellmann <gerd@gnu.org>
22622
22623 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
22624 instead of malloc/free.
22625
22626 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22627
22628 * xfaces.c (merge_face_vectors): Use braces to follow GNU
22629 Coding Standards.
22630 (Finternal_set_lisp_face_attribute): Likewise.
22631
22632 * buffer.c (Fbury_buffer): Likewise.
22633
22634 * indent.c (current_column_1): Remove unused variable `prev_col'.
22635
22636 * coding.c (encode_coding): Use precomputed value of `src'.
22637 (encode_coding): Remove unused variable `src_end'.
22638 (code_convert_region): Remove unused variables `count'.
22639
22640 2001-11-07 Jason Rumney <jasonr@gnu.org>
22641
22642 * w32term.c (x_display_and_set_cursor): Do not move system caret
22643 if cursor_glyph is NULL.
22644
22645 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22646
22647 * keymap.c (access_keymap): Fix compilation error.
22648
22649 2001-11-07 Miles Bader <miles@gnu.org>
22650
22651 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
22652
22653 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22654
22655 * intervals.c (graft_intervals_into_buffer):
22656 Remove #ifdef'd-out code.
22657 (graft_intervals_into_buffer): Remove unused variable `middle'.
22658
22659 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
22660 code (eval-current-buffer).
22661 Change doc-string comments to `new style' [w/`doc:' keyword].
22662
22663 2001-11-06 Richard M. Stallman <rms@gnu.org>
22664
22665 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
22666
22667 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
22668
22669 * lread.c (read1): Fix behavior with nested backquoting.
22670
22671 * keyboard.c (make_lispy_event): Check integerness and fix
22672 Lisp_Object/int mixup.
22673
22674 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22675
22676 * fns.c (copy_hash_table): Remove unused variable `v'.
22677
22678 * fontset.c (fontset_font_pattern): Remove unused variable
22679 `family_registry'.
22680
22681 * indent.c (current_column_1): Remove unused variable `prev_col'.
22682
22683 2001-11-05 Richard M. Stallman <rms@gnu.org>
22684
22685 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
22686
22687 * buffer.c (Fkill_buffer): Don't delete auto save file
22688 if buffer is modified.
22689
22690 2001-11-05 Andrew Innes <andrewi@gnu.org>
22691
22692 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
22693 CHECK_NUMBER_CDR.
22694
22695 2001-11-05 Richard M. Stallman <rms@gnu.org>
22696
22697 * unexelf.c (unexec): Minor changes; clean up comments.
22698
22699 2001-11-05 Sam Steingold <sds@gnu.org>
22700
22701 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
22702
22703 2001-11-05 Andreas Schwab <schwab@suse.de>
22704
22705 * sound.c (sound_perror): Save errno from being clobbered.
22706
22707 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
22708
22709 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
22710 the program image directly.
22711
22712 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22713
22714 * buffer.h (Fbuffer_local_value): Add prototype.
22715
22716 2001-11-04 Richard M. Stallman <rms@gnu.org>
22717
22718 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
22719 and CHECK_BUFFER.
22720
22721 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
22722 (record_char): Likewise.
22723
22724 * keyboard.c (make_lispy_event): Don't insist a drag event must
22725 move to a different buffer position. Instead, check for moving at
22726 least double_click_fuzz.
22727
22728 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
22729
22730 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
22731
22732 * indent.c (current_column_1, Fmove_to_column): Separate the code
22733 for display-table glyphs from the code for buffer text, to fix
22734 bugs in the former.
22735
22736 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
22737
22738 * buffer.c (Fbuffer_local_value): New function.
22739 (syms_of_buffer): Defsubr it.
22740
22741 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
22742 value of `cursor-in-non-selected-windows'.
22743
22744 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
22745 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
22746 (syms_of_xdisp): Initialize it.
22747
22748 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22749
22750 * xfns.c (Fx_create_frame): Doc fix.
22751
22752 * coding.c: Change doc-string comments to `new style' [w/`doc:'
22753 keyword].
22754
22755 * eval.c (top_level_value, top_level_set): Remove commented and
22756 #ifdef'd-out code.
22757 (Fdefvar): Fix usage in doc-string.
22758
22759 2001-11-03 Richard M. Stallman <rms@gnu.org>
22760
22761 * xfns.c: Include unistd.h, if it exists.
22762
22763 * editfns.c: Move the include of ctype.h after unistd.h.
22764
22765 * gmalloc.c: Test BROKEN_PROTOTYPES.
22766
22767 2001-11-03 Ken Raeburn <raeburn@gnu.org>
22768
22769 * lisp.h (CHECK_STRING_CAR): New macro.
22770 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
22771 treating XCAR and XCDR as lvalues.
22772 (openp): Use CHECK_STRING_CAR.
22773 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
22774
22775 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
22776
22777 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
22778 (SIGMASKTYPE): Define.
22779
22780 * syssignal.h (sigunblock): Don't define if already defined.
22781
22782 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22783
22784 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
22785 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
22786 Fix typos in comments.
22787
22788 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
22789 and #ifdef'd-out code.
22790 Fix and reindent comments.
22791
22792 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
22793
22794 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
22795 argument `i' in macros.
22796
22797 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
22798 `i' in macros.
22799
22800 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
22801 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
22802 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
22803 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
22804 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
22805 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
22806 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
22807 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
22808 in macros.
22809
22810 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
22811 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
22812 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
22813 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
22814 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
22815 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
22816 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
22817 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
22818 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
22819 (remove unused second argument).
22820
22821 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
22822
22823 * syntax.c (describe_syntax): New wrapper.
22824 (Finternal_describe_syntax_value): Rename from describe_syntax.
22825 Don't insert space at front and \n at the end.
22826 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
22827
22828 * regex.c (re_wctype): Try to fix some warnings.
22829 (regcomp, regexec): Don't forget the __restrict.
22830
22831 2001-11-02 Richard M. Stallman <rms@gnu.org>
22832
22833 * textprop.c (Fget_char_property): Doc fix.
22834
22835 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22836
22837 * process.c (Fstart_process): Add usage to doc-string.
22838
22839 * data.c (Fsetq_default): Ditto.
22840
22841 * callint.c (Finteractive): Ditto.
22842
22843 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
22844
22845 * macros.c: Don't include keymap.h any more.
22846
22847 2001-11-01 Richard M. Stallman <rms@gnu.org>
22848
22849 * data.c (Fmake_local_variable): Doc fix.
22850
22851 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
22852 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
22853
22854 * keymap.c (Fdescribe_buffer_bindings): Print character property
22855 bindings along with or instead of the buffer local map.
22856 Make the overriding maps override what they should.
22857
22858 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22859
22860 * window.c (grow_mini_window): Fix typo in comment.
22861
22862 2001-11-01 Gerd Moellmann <gerd@gnu.org>
22863
22864 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
22865 (XTset_vertical_scroll_bar): Likewise.
22866
22867 * xfns.c (x_build_heuristic_mask): Use four_corners_best
22868 instead of IMAGE_BACKGROUND.
22869
22870 * xfns.c (four_corners_best): Reindent.
22871
22872 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
22873 Handle :box so that it is possible to specify sexprs.
22874
22875 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
22876
22877 * s/hpux11.h: New file.
22878
22879 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22880
22881 * emacs.c (USAGE1): Show command line option --no-window-system
22882 instead of --no-windows in usage.
22883 (standard_args): Rename --no-windows to --no-window-system.
22884 (bug_reporting_address): Follow Emacs coding conventions.
22885
22886 * eval.c (Fcommandp): Doc fix.
22887 Change doc-string comments to `new style' [w/`doc:' keyword].
22888
22889 * frame.c (Fframe_live_p): Doc fix.
22890
22891 * buffer.c (selective-display-ellipses): Doc fix.
22892
22893 2001-10-31 Gerd Moellmann <gerd@gnu.org>
22894
22895 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
22896
22897 * xfaces.c (realize_x_face): If C is not a single-byte character,
22898 set the face's colors_copied_bitwise_p instead of the defaulted_p
22899 members which have a different meaning.
22900 (free_face_colors): Do nothing for a face whose colors have been
22901 copied bitwise.
22902
22903 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
22904
22905 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22906
22907 * marker.c, mocklisp.c: Change doc-string comments to `new style'
22908 [w/`doc:' keyword].
22909
22910 2001-10-31 Gerd Moellmann <gerd@gnu.org>
22911
22912 * fns.c (require_unwind): Return Lisp_Object.
22913
22914 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22915
22916 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
22917 (last-input-char): Revert doc-string to be the same as the
22918 doc-string of `last-input-event'.
22919
22920 * xdisp.c: Fix typos in comments.
22921
22922 2001-10-31 Gerd Moellmann <gerd@gnu.org>
22923
22924 * window.c (grow_mini_window): Handle case that the root
22925 window is already smaller than the nominal mininum height.
22926
22927 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
22928
22929 * emacs.c (main): Don't call keys_of_macros any more.
22930
22931 * lisp.h (keys_of_macros): Remove.
22932
22933 * macros.c (keys_of_macros): Remove.
22934
22935 * xfaces.c (Fface_attribute_relative_p): Declare args.
22936
22937 2001-10-30 Jason Rumney <jasonr@gnu.org>
22938
22939 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
22940 (enum_font_cb2): Ignore fonts with vertical orientation.
22941
22942 2001-10-30 Richard M. Stallman <rms@gnu.org>
22943
22944 * keyboard.c (Finput_pending_p): Doc fix.
22945
22946 2001-10-30 Gerd Moellmann <gerd@gnu.org>
22947
22948 * xterm.c (x_after_update_window_line): Don't run the code
22949 clearing in borders for rows whose visible height is 0.
22950
22951 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
22952 resized_p flag is set. If not set, use the much less flickering
22953 method previously used.
22954
22955 * dispnew.c (change_frame_size_1): Set frame's resized_p.
22956
22957 * frame.h (struct frame) <resized_p>: New member.
22958
22959 * lread.c (to_multibyte): Ensure read_buffer is at least twice
22960 as large as the number of bytes to convert.
22961
22962 * lread.c (to_multibyte): New function.
22963 (read1): Use it.
22964
22965 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
22966
22967 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
22968
22969 2001-10-30 Gerd Moellmann <gerd@gnu.org>
22970
22971 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
22972 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
22973 if the row's fill_line_p is set and drawing the last glyph with
22974 DRAW_IMAGE_{RAISED,SUNKEN}.
22975
22976 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
22977
22978 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
22979
22980 * xmenu.c: Include coding.h and charset.h.
22981 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
22982 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
22983 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
22984 Explicitly set wv->help. Use `TRUE' rather than `True'.
22985 (menu_help_callback): Use empty_string.
22986
22987 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
22988 (Fx_popup_dialog): Explicitly init f.
22989 (w32_menu_display_help): Use empty_string.
22990
22991 2001-10-29 Richard M. Stallman <rms@gnu.org>
22992
22993 * fns.c (Frequire): Detect recursive try to require the same
22994 feature 3 or more levels deep, and get error.
22995 (require_unwind): New subroutine.
22996 (require_nesting_list): New variable.
22997 (syms_of_fns): Init and staticpro it.
22998
22999 * print.c (print_object): Clarify indication of insertion type.
23000
23001 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
23002
23003 * coding.c (syms_of_coding): Document that locale-coding-system is
23004 used for decoding input on X.
23005
23006 * window.c (Fscroll_left, Fscroll_right): Doc fix.
23007
23008 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23009
23010 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
23011 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
23012
23013 2001-10-29 Gerd Moellmann <gerd@gnu.org>
23014
23015 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
23016 use NO_CURSOR if cursor_in_non_selected_windows is false.
23017
23018 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
23019 the slant attribute if FRAME is t.
23020
23021 * xfns.c (x_set_internal_border_width): Set frame garbaged
23022 when X window doesn't exist yet.
23023
23024 * xterm.c (x_after_update_window_line): Clear internal border
23025 in different circumstances.
23026
23027 * xterm.c (XTread_socket) <KeyPress>: Don't use
23028 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
23029 <handa@etl.go.jp>.
23030
23031 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
23032
23033 * m/ibms390.h: New file. From Adam Thornton
23034 <athornton@sinenomine.net>.
23035
23036 2001-10-28 Gerd Moellmann <gerd@gnu.org>
23037
23038 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
23039
23040 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
23041 a loop counter.
23042
23043 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23044
23045 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
23046
23047 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
23048 keyword].
23049 Fix typos in comments.
23050
23051 * emacs.c (bug_reporting_address): New function.
23052 Use it when displaying usage message.
23053
23054 * minibuf.c (read_minibuf): Remove unused external declaration of
23055 variable `Qread_only'.
23056
23057 * keymap.c (access_keymap): Remove unused variable `charset'.
23058
23059 2001-10-28 Miles Bader <miles@gnu.org>
23060
23061 * xfaces.c (merge_face_heights): Handle TO being relative as well.
23062 Remove #ifdef'd-out code.
23063 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
23064 (syms_of_xfaces): Initialize them.
23065
23066 2001-10-27 Jason Rumney <jasonr@gnu.org>
23067
23068 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
23069 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
23070 position using the system caret.
23071
23072 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
23073 (w32_system_caret_height, w32_system_caret_x)
23074 (w32_system_caret_y): New variables for tracking system caret.
23075 (w32_initialize): Initialize them.
23076 (x_display_and_set_cursor): Make system caret follow the active cursor.
23077
23078 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
23079 New messages types.
23080
23081 * w32term.c (note_mouse_highlight): Clear old help_echo.
23082
23083 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23084
23085 * xterm.c: Fix typo in a comment.
23086
23087 * emacs.c: Fix typos in comments.
23088 Remove unnecessary spaces.
23089 Change doc-string comments to `new style' [w/`doc:' keyword].
23090 (USAGE2): Fix typos in usage string.
23091
23092 * xterm.c: Fix typo in a comment.
23093
23094 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
23095 emacs.c.
23096
23097 2001-10-27 Gerd Moellmann <gerd@gnu.org>
23098
23099 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
23100 instead of 1/2 line_height in the heuristic for skipping
23101 farther backward when target_y was not reached.
23102
23103 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
23104 Display errno only if non-zero.
23105 (sound_warning): New function.
23106 (vox_configure): Don't treat failing to set sample rate as error.
23107 (various places): Improve error messages.
23108
23109 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
23110
23111 * fileio.c (Faccess_file): Run the argument filename through
23112 Fexpand_file_name, before using it.
23113
23114 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
23115 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
23116
23117 2001-10-26 Gerd Moellmann <gerd@gnu.org>
23118
23119 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
23120
23121 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
23122 Fix clearing in the case of scroll bars on the right.
23123
23124 2001-10-26 Juanma Barranquero <lektu@terra.es>
23125
23126 * w32gui.h (XImage): Add a dummy typedef.
23127
23128 2001-10-26 Gerd Moellmann <gerd@gnu.org>
23129
23130 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
23131
23132 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
23133
23134 * frame.c (Fframe_parameter): Fix last change.
23135
23136 * fileio.c: Revert last change (which removed old commented-out
23137 version of expand-file-name). Add a comment that explains why
23138 this old version should not be removed.
23139
23140 2001-10-25 Gerd Moellmann <gerd@gnu.org>
23141
23142 * frame.c (Fframe_parameter): Fix a bug whereby some
23143 ``artificial'' frame parameters, like `minibuffer' were not
23144 obtained by calling Fframe_parameters.
23145
23146 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
23147 cursor differently.
23148
23149 * xdisp.c (move_it_vertically_backward): Compute line height
23150 differently. Add heuristic to try to be more compatible to 20.x.
23151
23152 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
23153
23154 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
23155
23156 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
23157 boolean.
23158
23159 2001-10-25 Miles Bader <miles@gnu.org>
23160
23161 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
23162 BG is a pointer to a structure, not a structure.
23163 (gif_format, png_format): Add missing commas.
23164
23165 2001-10-24 Richard M. Stallman <rms@gnu.org>
23166
23167 * xfaces.c (Fface_attributes_as_vector): New function.
23168 (syms_of_xfaces): Defsubr it.
23169
23170 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23171
23172 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
23173 variable `area'.
23174
23175 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23176
23177 * search.c (scan_newline): Remove unused variable `selective_display'.
23178
23179 2001-10-25 Miles Bader <miles@gnu.org>
23180
23181 * dispextern.h (struct image): Add `background',
23182 `background_valid', and `background_transparent' fields.
23183 (image_background, image_background_transparent): New declarations.
23184 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
23185 * xfns.c (image_background, image_background_transparent)
23186 (four_corners_best): New functions.
23187 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
23188 (gs_format): Add `:background' entry.
23189 (lookup_image): Set IMG's background color if specified.
23190 (pbm_load, xbm_load_image, png_load): Set IMG's background field
23191 when appropriate.
23192 (x_clear_image_1): Reset `background_valid' and
23193 `background_transparent_valid' fields.
23194 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
23195 calculating it here. Set IMG's background_transparent field.
23196 (enum xpm_keyword_index): Add XPM_BACKGROUND.
23197 (enum png_keyword_index): Add PNG_BACKGROUND.
23198 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
23199 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
23200 (enum gif_keyword_index): Add GIF_BACKGROUND.
23201 (enum gs_keyword_index): Add GS_BACKGROUND.
23202 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
23203 Pre-calculate image background color where necessary.
23204 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
23205 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
23206 color to use for image glyph reliefs.
23207
23208 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23209
23210 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
23211 in full-width rows.
23212
23213 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
23214 Fix clearing of area not covered by scroll bar.
23215
23216 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23217
23218 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
23219 and `real_start'.
23220 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
23221 (glyph_rect): Remove unused variable `area'.
23222
23223 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23224
23225 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
23226
23227 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
23228 (row_containing_pos): Take additional argument DY.
23229 Treat rows ending in middle of char differently.
23230 (display_line): Handle tabs on window systems differently.
23231
23232 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
23233 with additional argument.
23234
23235 * dispextern.h (row_containing_pos): Adjust prototype.
23236
23237 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
23238 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
23239 (try_window_id, try_window_reusing_current_matrix)
23240 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
23241 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
23242
23243 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23244
23245 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
23246 gnuemacs).
23247 (HAVE_BOXES): Fix typo in comment.
23248 (push_menu_pane): Fix typo in comment.
23249
23250 * xdisp.c (display_prop_string_p): Remove unused local declaration
23251 of `Qwhen'.
23252 (single_display_prop_string_p): Remove unused local declarations
23253 of `Qwhen' and `Qmargin'.
23254 (string_buffer_position): Remove unused variable `around'.
23255 (store_frame_title): Remove unused variable `width'.
23256
23257 * window.c: Don't define max.
23258 (coordinates_in_window): Remove unused variable `uy'.
23259
23260 * widget.c: Don't define max.
23261
23262 * process.c: Don't define max.
23263 (create_process): Remove unused variable `buffer'.
23264
23265 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23266
23267 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
23268
23269 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
23270
23271 * xfaces.c (Finternal_set_lisp_face_attribute)
23272 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
23273 frame is on a windowed display.
23274
23275 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23276
23277 * dispnew.c (sync_window_with_frame_matrix_rows):
23278 Fix handling of windows which aren't full-width, fix handling
23279 of marginal areas.
23280
23281 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
23282
23283 2001-10-23 Andreas Schwab <schwab@suse.de>
23284
23285 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
23286 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
23287
23288 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23289
23290 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
23291 REAL_END. Notice if cursor gets overwritten.
23292 (notice_overwritten_cursor): Take X positions as parameters.
23293 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
23294 around call to x_draw_glyphs.
23295
23296 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23297
23298 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
23299 instead of C) and usage.
23300
23301 * editfns.c (char-to-string): Fix argument names (use CHAR instead
23302 of C) and usage.
23303
23304 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
23305 `left', `max_width' and `max_height'.
23306
23307 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23308
23309 * xdisp.c (display_line): For a tab continued to the next line,
23310 set row's ends_in_middle_of_char_p.
23311
23312 2001-10-22 Gerd Moellmann <gerd@gnu.org>
23313
23314 * xdisp.c (display_line): Fix computation of continuation lines
23315 width for TABs.
23316
23317 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23318
23319 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
23320 `Qlaplace'.
23321
23322 * fileio.c: Remove unused code.
23323
23324 2001-10-22 Miles Bader <miles@gnu.org>
23325
23326 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
23327 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
23328 Remove `DOC_STRINGS_IN_COMMENTS' cases.
23329
23330 2001-10-21 Jason Rumney <jasonr@gnu.org>
23331
23332 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
23333
23334 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
23335
23336 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
23337 (Finsert_string): Avoid the multi-line string literals warning.
23338
23339 2001-10-22 Miles Bader <miles@gnu.org>
23340
23341 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
23342 (Fdocumentation): Don't use it.
23343 (syms_of_doc): Don't initialize it.
23344
23345 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
23346 * print.c (Fwith_output_to_temp_buffer): Likewise.
23347 * window.c (Fsave_window_excursion): Likewise.
23348 * editfns.c (Fsave_excursion, Fsave_current_buffer)
23349 (Fsave_restriction): Likewise.
23350 * eval.c (Frun_hooks, Frun_hook_with_args)
23351 (Frun_hook_with_args_until_failure)
23352 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
23353 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
23354 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
23355 (Funwind_protect, Fcondition_case): Likewise.
23356 * coding.c (Ffind_operation_coding_system): Likewise.
23357 * keyboard.c (Ftrack_mouse): Likewise.
23358
23359 2001-10-21 Miles Bader <miles@gnu.org>
23360
23361 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
23362 (Fmake_hash_table): Add usage: string to doc string.
23363 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
23364 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
23365 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
23366 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
23367 (Fml_prefix_argument_loop): Likewise.
23368
23369 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23370
23371 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
23372
23373 * sysdep.c (init_sys_modes): Change doc-string comments to `new
23374 style' [w/`doc:' keyword].
23375
23376 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
23377 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
23378 comments to `new style' [w/`doc:' keyword].
23379
23380 2001-10-21 Jason Rumney <jasonr@gnu.org>
23381
23382 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
23383
23384 * w32term.c (remember_mouse_glyph): New function.
23385 (w32_mouse_position): Use it.
23386 (note_mouse_movement): If the mouse moved off the glyph, remember
23387 its new position.
23388
23389 * w32term.h (struct w32_output): Correct spelling of x_compatible.
23390 (w32_display_info): Add mouse_face_overlay.
23391
23392 * w32term.c (notice_overwritten_cursor): Renamed from
23393 note_overwritten_text_cursor. Rewritten to take glyph widths into
23394 account.
23395 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
23396 (fast_find_string_pos): New function.
23397 (fast_find_position): Return the correct vpos. Add parameter
23398 STOP. In the final row, stop before glyphs having STOP as object.
23399 Don't consider glyphs that are not from a buffer.
23400 (fast_find_position) [0]: Add a presumably more correct version
23401 for after 21.1.
23402 (expose_window_tree, expose_frame): Don't compute intersections here.
23403 (expose_window): Do it here instead.
23404 (expose_window_tree, expose_window, expose_line): Return 1 when
23405 overwriting mouse-face.
23406 (expose_window): If W is the window currently being updated, mark
23407 the frame garbaged.
23408 (expose_frame): If mouse-face was overwritten, redo it.
23409 (x_use_underline_position_properties): New variable.
23410 (syms_of_xterm): DEFVAR_BOOL it.
23411 (x_draw_glyph_string): Add comment to use it in future.
23412 (x_draw_glyph_string): Restore clipping after drawing box.
23413 Fix a computation of the underline position.
23414 (w32_get_glyph_string_clip_rect): Minor cleanup.
23415 (x_fill_stretch_glyph_string): Remove an assertion.
23416 (x_produce_glyphs): Don't convert multibyte characters
23417 to unibyte characters in unibyte buffers.
23418 (cursor_in_mouse_face_p): New function.
23419 (x_draw_stretch_glyph_string): Use it to choose a different GC
23420 when drawing a cursor within highlighted text. Don't draw
23421 background again if it has already been drawn.
23422 (x_draw_glyph_string_box): Don't draw a full-width
23423 box just because the glyph row's full_width_p flag is set.
23424 (x_draw_glyphs): Fix computation of rightmost x for
23425 full-width rows.
23426 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
23427 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
23428 change bottom shadow accordingly. Some cleanup.
23429 (x_update_window_end): Handle overwritten mouse face
23430 also for tool bar windows.
23431 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
23432 DRAW is DRAW_IMAGE_RAISED.
23433 (clear_mouse_face): Return 1 if text with mouse face was
23434 actually redrawn. Make the function static.
23435 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
23436 optimize away highlighting if we pass over that same overlay again.
23437 (note_mouse_highlight): Call mouse_face_overlay_overlaps
23438 to detect a case where we have to highlight a different region
23439 despite not having left the currently highlighted region.
23440 Set mouse_face_overlay in the x_display_info. Avoid changing the
23441 mouse pointer shape when show_mouse_face has already done it, or
23442 there is no need. Handle mouse-face and help-echo in strings.
23443 (glyph_rect): New function.
23444 (w32_mouse_position): Use it to raise the threshold for mouse
23445 movement event generation.
23446 (w32_initialize_display_info): Initialize the x_display_info's
23447 mouse_face_overlay.
23448 (w32_set_vertical_scroll_bar): Don't clear a zero height
23449 or width area.
23450 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
23451 a widget to zero height.
23452
23453 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
23454 Protect unibyte strings created by replacing their multibyte
23455 equivalents in menu_items.
23456 (w32_menu_show): Don't overwrite an item's name with its key
23457 description in case the description is a multibyte string.
23458 (single_submenu): Some cleanup.
23459
23460 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
23461 (postprocess_image): New function.
23462 (lookup_image): Call it for all image types except PostScript.
23463 (x_kill_gs_process): Call postprocess_image.
23464 (tiff_error_handler, tiff_warning_handler): New functions.
23465 (tiff_load): Install them as handlers.
23466 (x_kill_gs_process): Recognize if someone has cleared the image
23467 cache under us.
23468 (valid_image_p): Protect better against invalid image
23469 specifications. Previous code could signal an error.
23470 (Fx_hide_tip, Fshow_tip): Doc fix.
23471 (Fv_max_tooltip_size): New variable.
23472 (syns_of_xfns): DEFVAR_LISP it.
23473 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
23474 window buffer to *tip* right after creating the frame. Set frame's
23475 window_width. Use a maximum tooltip size specified by
23476 Vx_max_tooltip_size, if that has valid contents.
23477 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
23478 Make sure the tooltip is completely visible.
23479 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
23480 (Fx_create_frame): Adjust the frame's height for presence
23481 of the tool bar before calling x_figure_window_size.
23482 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
23483 when the window gets smaller.
23484 (x_set_foreground_color): Set frame's cursor_pixel.
23485 (x_set_foreground_color, x_set_background_color): Cleaned up.
23486 (x_set_font): Handle case of x_new_fontset returning the same name
23487 as before, although there was a change in fontsets.
23488
23489 2001-10-21 Miles Bader <miles@gnu.org>
23490
23491 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
23492 (Flogxor): Add usage: string to doc string.
23493 * charset.c (Fstring): Likewise.
23494 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
23495 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
23496
23497 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23498
23499 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
23500
23501 * alloc.c: Reindent DEFUNs with doc: keywords.
23502
23503 * abbrev.c (Finsert_abbrev_table_description): Reindent.
23504
23505 * frame.c: Change doc-string comments to `new style' [w/`doc:'
23506 keyword].
23507
23508 See ChangeLog.9 for earlier changes.
23509
23510 ;; Local Variables:
23511 ;; coding: iso-2022-7bit
23512 ;; End:
23513
23514 Copyright (C) 2001, 2002, 2003, 2004, 2005,
23515 2006 Free Software Foundation, Inc.
23516 Copying and distribution of this file, with or without modification,
23517 are permitted provided the copyright notice and this notice are preserved.
23518
23519 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4